8154 lines
623 KiB
HTML
8154 lines
623 KiB
HTML
<!DOCTYPE html>
|
||
|
||
<html lang="en">
|
||
<head><meta charset="utf-8"/>
|
||
<meta content="width=device-width, initial-scale=1.0" name="viewport"/>
|
||
<title>tutorial</title><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script><script>
|
||
(function() {
|
||
function addWidgetsRenderer() {
|
||
var mimeElement = document.querySelector('script[type="application/vnd.jupyter.widget-view+json"]');
|
||
var scriptElement = document.createElement('script');
|
||
|
||
var widgetRendererSrc = 'https://unpkg.com/@jupyter-widgets/html-manager@*/dist/embed-amd.js';
|
||
|
||
var widgetState;
|
||
|
||
// Fallback for older version:
|
||
try {
|
||
widgetState = mimeElement && JSON.parse(mimeElement.innerHTML);
|
||
|
||
if (widgetState && (widgetState.version_major < 2 || !widgetState.version_major)) {
|
||
|
||
var widgetRendererSrc = 'https://unpkg.com/@jupyter-js-widgets@*/dist/embed.js';
|
||
|
||
}
|
||
} catch(e) {}
|
||
|
||
scriptElement.src = widgetRendererSrc;
|
||
document.body.appendChild(scriptElement);
|
||
}
|
||
|
||
document.addEventListener('DOMContentLoaded', addWidgetsRenderer);
|
||
}());
|
||
</script>
|
||
<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: var(--jp-cell-editor-active-background) }
|
||
.highlight { background: var(--jp-cell-editor-background); color: var(--jp-mirror-editor-variable-color) }
|
||
.highlight .c { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment */
|
||
.highlight .err { color: var(--jp-mirror-editor-error-color) } /* Error */
|
||
.highlight .k { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword */
|
||
.highlight .o { color: var(--jp-mirror-editor-operator-color); font-weight: bold } /* Operator */
|
||
.highlight .p { color: var(--jp-mirror-editor-punctuation-color) } /* Punctuation */
|
||
.highlight .ch { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Hashbang */
|
||
.highlight .cm { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Multiline */
|
||
.highlight .cp { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Preproc */
|
||
.highlight .cpf { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.PreprocFile */
|
||
.highlight .c1 { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Single */
|
||
.highlight .cs { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Special */
|
||
.highlight .kc { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Constant */
|
||
.highlight .kd { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Declaration */
|
||
.highlight .kn { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Namespace */
|
||
.highlight .kp { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Pseudo */
|
||
.highlight .kr { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Reserved */
|
||
.highlight .kt { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Type */
|
||
.highlight .m { color: var(--jp-mirror-editor-number-color) } /* Literal.Number */
|
||
.highlight .s { color: var(--jp-mirror-editor-string-color) } /* Literal.String */
|
||
.highlight .ow { color: var(--jp-mirror-editor-operator-color); font-weight: bold } /* Operator.Word */
|
||
.highlight .pm { color: var(--jp-mirror-editor-punctuation-color) } /* Punctuation.Marker */
|
||
.highlight .w { color: var(--jp-mirror-editor-variable-color) } /* Text.Whitespace */
|
||
.highlight .mb { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Bin */
|
||
.highlight .mf { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Float */
|
||
.highlight .mh { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Hex */
|
||
.highlight .mi { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer */
|
||
.highlight .mo { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Oct */
|
||
.highlight .sa { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Affix */
|
||
.highlight .sb { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Backtick */
|
||
.highlight .sc { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Char */
|
||
.highlight .dl { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Delimiter */
|
||
.highlight .sd { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Doc */
|
||
.highlight .s2 { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Double */
|
||
.highlight .se { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Escape */
|
||
.highlight .sh { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Heredoc */
|
||
.highlight .si { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Interpol */
|
||
.highlight .sx { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Other */
|
||
.highlight .sr { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Regex */
|
||
.highlight .s1 { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Single */
|
||
.highlight .ss { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Symbol */
|
||
.highlight .il { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer.Long */
|
||
</style>
|
||
<style type="text/css">
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*
|
||
* Mozilla scrollbar styling
|
||
*/
|
||
|
||
/* use standard opaque scrollbars for most nodes */
|
||
[data-jp-theme-scrollbars='true'] {
|
||
scrollbar-color: rgb(var(--jp-scrollbar-thumb-color))
|
||
var(--jp-scrollbar-background-color);
|
||
}
|
||
|
||
/* for code nodes, use a transparent style of scrollbar. These selectors
|
||
* will match lower in the tree, and so will override the above */
|
||
[data-jp-theme-scrollbars='true'] .CodeMirror-hscrollbar,
|
||
[data-jp-theme-scrollbars='true'] .CodeMirror-vscrollbar {
|
||
scrollbar-color: rgba(var(--jp-scrollbar-thumb-color), 0.5) transparent;
|
||
}
|
||
|
||
/* tiny scrollbar */
|
||
|
||
.jp-scrollbar-tiny {
|
||
scrollbar-color: rgba(var(--jp-scrollbar-thumb-color), 0.5) transparent;
|
||
scrollbar-width: thin;
|
||
}
|
||
|
||
/* tiny scrollbar */
|
||
|
||
.jp-scrollbar-tiny::-webkit-scrollbar,
|
||
.jp-scrollbar-tiny::-webkit-scrollbar-corner {
|
||
background-color: transparent;
|
||
height: 4px;
|
||
width: 4px;
|
||
}
|
||
|
||
.jp-scrollbar-tiny::-webkit-scrollbar-thumb {
|
||
background: rgba(var(--jp-scrollbar-thumb-color), 0.5);
|
||
}
|
||
|
||
.jp-scrollbar-tiny::-webkit-scrollbar-track:horizontal {
|
||
border-left: 0 solid transparent;
|
||
border-right: 0 solid transparent;
|
||
}
|
||
|
||
.jp-scrollbar-tiny::-webkit-scrollbar-track:vertical {
|
||
border-top: 0 solid transparent;
|
||
border-bottom: 0 solid transparent;
|
||
}
|
||
|
||
/*
|
||
* Lumino
|
||
*/
|
||
|
||
.lm-ScrollBar[data-orientation='horizontal'] {
|
||
min-height: 16px;
|
||
max-height: 16px;
|
||
min-width: 45px;
|
||
border-top: 1px solid #a0a0a0;
|
||
}
|
||
|
||
.lm-ScrollBar[data-orientation='vertical'] {
|
||
min-width: 16px;
|
||
max-width: 16px;
|
||
min-height: 45px;
|
||
border-left: 1px solid #a0a0a0;
|
||
}
|
||
|
||
.lm-ScrollBar-button {
|
||
background-color: #f0f0f0;
|
||
background-position: center center;
|
||
min-height: 15px;
|
||
max-height: 15px;
|
||
min-width: 15px;
|
||
max-width: 15px;
|
||
}
|
||
|
||
.lm-ScrollBar-button:hover {
|
||
background-color: #dadada;
|
||
}
|
||
|
||
.lm-ScrollBar-button.lm-mod-active {
|
||
background-color: #cdcdcd;
|
||
}
|
||
|
||
.lm-ScrollBar-track {
|
||
background: #f0f0f0;
|
||
}
|
||
|
||
.lm-ScrollBar-thumb {
|
||
background: #cdcdcd;
|
||
}
|
||
|
||
.lm-ScrollBar-thumb:hover {
|
||
background: #bababa;
|
||
}
|
||
|
||
.lm-ScrollBar-thumb.lm-mod-active {
|
||
background: #a0a0a0;
|
||
}
|
||
|
||
.lm-ScrollBar[data-orientation='horizontal'] .lm-ScrollBar-thumb {
|
||
height: 100%;
|
||
min-width: 15px;
|
||
border-left: 1px solid #a0a0a0;
|
||
border-right: 1px solid #a0a0a0;
|
||
}
|
||
|
||
.lm-ScrollBar[data-orientation='vertical'] .lm-ScrollBar-thumb {
|
||
width: 100%;
|
||
min-height: 15px;
|
||
border-top: 1px solid #a0a0a0;
|
||
border-bottom: 1px solid #a0a0a0;
|
||
}
|
||
|
||
.lm-ScrollBar[data-orientation='horizontal']
|
||
.lm-ScrollBar-button[data-action='decrement'] {
|
||
background-image: var(--jp-icon-caret-left);
|
||
background-size: 17px;
|
||
}
|
||
|
||
.lm-ScrollBar[data-orientation='horizontal']
|
||
.lm-ScrollBar-button[data-action='increment'] {
|
||
background-image: var(--jp-icon-caret-right);
|
||
background-size: 17px;
|
||
}
|
||
|
||
.lm-ScrollBar[data-orientation='vertical']
|
||
.lm-ScrollBar-button[data-action='decrement'] {
|
||
background-image: var(--jp-icon-caret-up);
|
||
background-size: 17px;
|
||
}
|
||
|
||
.lm-ScrollBar[data-orientation='vertical']
|
||
.lm-ScrollBar-button[data-action='increment'] {
|
||
background-image: var(--jp-icon-caret-down);
|
||
background-size: 17px;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-Widget {
|
||
box-sizing: border-box;
|
||
position: relative;
|
||
overflow: hidden;
|
||
}
|
||
|
||
.lm-Widget.lm-mod-hidden {
|
||
display: none !important;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
.lm-AccordionPanel[data-orientation='horizontal'] > .lm-AccordionPanel-title {
|
||
/* Title is rotated for horizontal accordion panel using CSS */
|
||
display: block;
|
||
transform-origin: top left;
|
||
transform: rotate(-90deg) translate(-100%);
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-CommandPalette {
|
||
display: flex;
|
||
flex-direction: column;
|
||
-webkit-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
.lm-CommandPalette-search {
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
.lm-CommandPalette-content {
|
||
flex: 1 1 auto;
|
||
margin: 0;
|
||
padding: 0;
|
||
min-height: 0;
|
||
overflow: auto;
|
||
list-style-type: none;
|
||
}
|
||
|
||
.lm-CommandPalette-header {
|
||
overflow: hidden;
|
||
white-space: nowrap;
|
||
text-overflow: ellipsis;
|
||
}
|
||
|
||
.lm-CommandPalette-item {
|
||
display: flex;
|
||
flex-direction: row;
|
||
}
|
||
|
||
.lm-CommandPalette-itemIcon {
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
.lm-CommandPalette-itemContent {
|
||
flex: 1 1 auto;
|
||
overflow: hidden;
|
||
}
|
||
|
||
.lm-CommandPalette-itemShortcut {
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
.lm-CommandPalette-itemLabel {
|
||
overflow: hidden;
|
||
white-space: nowrap;
|
||
text-overflow: ellipsis;
|
||
}
|
||
|
||
.lm-close-icon {
|
||
border: 1px solid transparent;
|
||
background-color: transparent;
|
||
position: absolute;
|
||
z-index: 1;
|
||
right: 3%;
|
||
top: 0;
|
||
bottom: 0;
|
||
margin: auto;
|
||
padding: 7px 0;
|
||
display: none;
|
||
vertical-align: middle;
|
||
outline: 0;
|
||
cursor: pointer;
|
||
}
|
||
.lm-close-icon:after {
|
||
content: 'X';
|
||
display: block;
|
||
width: 15px;
|
||
height: 15px;
|
||
text-align: center;
|
||
color: #000;
|
||
font-weight: normal;
|
||
font-size: 12px;
|
||
cursor: pointer;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-DockPanel {
|
||
z-index: 0;
|
||
}
|
||
|
||
.lm-DockPanel-widget {
|
||
z-index: 0;
|
||
}
|
||
|
||
.lm-DockPanel-tabBar {
|
||
z-index: 1;
|
||
}
|
||
|
||
.lm-DockPanel-handle {
|
||
z-index: 2;
|
||
}
|
||
|
||
.lm-DockPanel-handle.lm-mod-hidden {
|
||
display: none !important;
|
||
}
|
||
|
||
.lm-DockPanel-handle:after {
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
width: 100%;
|
||
height: 100%;
|
||
content: '';
|
||
}
|
||
|
||
.lm-DockPanel-handle[data-orientation='horizontal'] {
|
||
cursor: ew-resize;
|
||
}
|
||
|
||
.lm-DockPanel-handle[data-orientation='vertical'] {
|
||
cursor: ns-resize;
|
||
}
|
||
|
||
.lm-DockPanel-handle[data-orientation='horizontal']:after {
|
||
left: 50%;
|
||
min-width: 8px;
|
||
transform: translateX(-50%);
|
||
}
|
||
|
||
.lm-DockPanel-handle[data-orientation='vertical']:after {
|
||
top: 50%;
|
||
min-height: 8px;
|
||
transform: translateY(-50%);
|
||
}
|
||
|
||
.lm-DockPanel-overlay {
|
||
z-index: 3;
|
||
box-sizing: border-box;
|
||
pointer-events: none;
|
||
}
|
||
|
||
.lm-DockPanel-overlay.lm-mod-hidden {
|
||
display: none !important;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-Menu {
|
||
z-index: 10000;
|
||
position: absolute;
|
||
white-space: nowrap;
|
||
overflow-x: hidden;
|
||
overflow-y: auto;
|
||
outline: none;
|
||
-webkit-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
.lm-Menu-content {
|
||
margin: 0;
|
||
padding: 0;
|
||
display: table;
|
||
list-style-type: none;
|
||
}
|
||
|
||
.lm-Menu-item {
|
||
display: table-row;
|
||
}
|
||
|
||
.lm-Menu-item.lm-mod-hidden,
|
||
.lm-Menu-item.lm-mod-collapsed {
|
||
display: none !important;
|
||
}
|
||
|
||
.lm-Menu-itemIcon,
|
||
.lm-Menu-itemSubmenuIcon {
|
||
display: table-cell;
|
||
text-align: center;
|
||
}
|
||
|
||
.lm-Menu-itemLabel {
|
||
display: table-cell;
|
||
text-align: left;
|
||
}
|
||
|
||
.lm-Menu-itemShortcut {
|
||
display: table-cell;
|
||
text-align: right;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-MenuBar {
|
||
outline: none;
|
||
-webkit-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
.lm-MenuBar-content {
|
||
margin: 0;
|
||
padding: 0;
|
||
display: flex;
|
||
flex-direction: row;
|
||
list-style-type: none;
|
||
}
|
||
|
||
.lm-MenuBar-item {
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
.lm-MenuBar-itemIcon,
|
||
.lm-MenuBar-itemLabel {
|
||
display: inline-block;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-ScrollBar {
|
||
display: flex;
|
||
-webkit-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
.lm-ScrollBar[data-orientation='horizontal'] {
|
||
flex-direction: row;
|
||
}
|
||
|
||
.lm-ScrollBar[data-orientation='vertical'] {
|
||
flex-direction: column;
|
||
}
|
||
|
||
.lm-ScrollBar-button {
|
||
box-sizing: border-box;
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
.lm-ScrollBar-track {
|
||
box-sizing: border-box;
|
||
position: relative;
|
||
overflow: hidden;
|
||
flex: 1 1 auto;
|
||
}
|
||
|
||
.lm-ScrollBar-thumb {
|
||
box-sizing: border-box;
|
||
position: absolute;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-SplitPanel-child {
|
||
z-index: 0;
|
||
}
|
||
|
||
.lm-SplitPanel-handle {
|
||
z-index: 1;
|
||
}
|
||
|
||
.lm-SplitPanel-handle.lm-mod-hidden {
|
||
display: none !important;
|
||
}
|
||
|
||
.lm-SplitPanel-handle:after {
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
width: 100%;
|
||
height: 100%;
|
||
content: '';
|
||
}
|
||
|
||
.lm-SplitPanel[data-orientation='horizontal'] > .lm-SplitPanel-handle {
|
||
cursor: ew-resize;
|
||
}
|
||
|
||
.lm-SplitPanel[data-orientation='vertical'] > .lm-SplitPanel-handle {
|
||
cursor: ns-resize;
|
||
}
|
||
|
||
.lm-SplitPanel[data-orientation='horizontal'] > .lm-SplitPanel-handle:after {
|
||
left: 50%;
|
||
min-width: 8px;
|
||
transform: translateX(-50%);
|
||
}
|
||
|
||
.lm-SplitPanel[data-orientation='vertical'] > .lm-SplitPanel-handle:after {
|
||
top: 50%;
|
||
min-height: 8px;
|
||
transform: translateY(-50%);
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-TabBar {
|
||
display: flex;
|
||
-webkit-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
.lm-TabBar[data-orientation='horizontal'] {
|
||
flex-direction: row;
|
||
align-items: flex-end;
|
||
}
|
||
|
||
.lm-TabBar[data-orientation='vertical'] {
|
||
flex-direction: column;
|
||
align-items: flex-end;
|
||
}
|
||
|
||
.lm-TabBar-content {
|
||
margin: 0;
|
||
padding: 0;
|
||
display: flex;
|
||
flex: 1 1 auto;
|
||
list-style-type: none;
|
||
}
|
||
|
||
.lm-TabBar[data-orientation='horizontal'] > .lm-TabBar-content {
|
||
flex-direction: row;
|
||
}
|
||
|
||
.lm-TabBar[data-orientation='vertical'] > .lm-TabBar-content {
|
||
flex-direction: column;
|
||
}
|
||
|
||
.lm-TabBar-tab {
|
||
display: flex;
|
||
flex-direction: row;
|
||
box-sizing: border-box;
|
||
overflow: hidden;
|
||
touch-action: none; /* Disable native Drag/Drop */
|
||
}
|
||
|
||
.lm-TabBar-tabIcon,
|
||
.lm-TabBar-tabCloseIcon {
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
.lm-TabBar-tabLabel {
|
||
flex: 1 1 auto;
|
||
overflow: hidden;
|
||
white-space: nowrap;
|
||
}
|
||
|
||
.lm-TabBar-tabInput {
|
||
user-select: all;
|
||
width: 100%;
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
.lm-TabBar-tab.lm-mod-hidden {
|
||
display: none !important;
|
||
}
|
||
|
||
.lm-TabBar-addButton.lm-mod-hidden {
|
||
display: none !important;
|
||
}
|
||
|
||
.lm-TabBar.lm-mod-dragging .lm-TabBar-tab {
|
||
position: relative;
|
||
}
|
||
|
||
.lm-TabBar.lm-mod-dragging[data-orientation='horizontal'] .lm-TabBar-tab {
|
||
left: 0;
|
||
transition: left 150ms ease;
|
||
}
|
||
|
||
.lm-TabBar.lm-mod-dragging[data-orientation='vertical'] .lm-TabBar-tab {
|
||
top: 0;
|
||
transition: top 150ms ease;
|
||
}
|
||
|
||
.lm-TabBar.lm-mod-dragging .lm-TabBar-tab.lm-mod-dragging {
|
||
transition: none;
|
||
}
|
||
|
||
.lm-TabBar-tabLabel .lm-TabBar-tabInput {
|
||
user-select: all;
|
||
width: 100%;
|
||
box-sizing: border-box;
|
||
background: inherit;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-TabPanel-tabBar {
|
||
z-index: 1;
|
||
}
|
||
|
||
.lm-TabPanel-stackedPanel {
|
||
z-index: 0;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Collapse {
|
||
display: flex;
|
||
flex-direction: column;
|
||
align-items: stretch;
|
||
}
|
||
|
||
.jp-Collapse-header {
|
||
padding: 1px 12px;
|
||
background-color: var(--jp-layout-color1);
|
||
border-bottom: solid var(--jp-border-width) var(--jp-border-color2);
|
||
color: var(--jp-ui-font-color1);
|
||
cursor: pointer;
|
||
display: flex;
|
||
align-items: center;
|
||
font-size: var(--jp-ui-font-size0);
|
||
font-weight: 600;
|
||
text-transform: uppercase;
|
||
user-select: none;
|
||
}
|
||
|
||
.jp-Collapser-icon {
|
||
height: 16px;
|
||
}
|
||
|
||
.jp-Collapse-header-collapsed .jp-Collapser-icon {
|
||
transform: rotate(-90deg);
|
||
margin: auto 0;
|
||
}
|
||
|
||
.jp-Collapser-title {
|
||
line-height: 25px;
|
||
}
|
||
|
||
.jp-Collapse-contents {
|
||
padding: 0 12px;
|
||
background-color: var(--jp-layout-color1);
|
||
color: var(--jp-ui-font-color1);
|
||
overflow: auto;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/* This file was auto-generated by ensureUiComponents() in @jupyterlab/buildutils */
|
||
|
||
/**
|
||
* (DEPRECATED) Support for consuming icons as CSS background images
|
||
*/
|
||
|
||
/* Icons urls */
|
||
|
||
:root {
|
||
--jp-icon-add-above: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzEzN18xOTQ5MikiPgo8cGF0aCBjbGFzcz0ianAtaWNvbjMiIGQ9Ik00Ljc1IDQuOTMwNjZINi42MjVWNi44MDU2NkM2LjYyNSA3LjAxMTkxIDYuNzkzNzUgNy4xODA2NiA3IDcuMTgwNjZDNy4yMDYyNSA3LjE4MDY2IDcuMzc1IDcuMDExOTEgNy4zNzUgNi44MDU2NlY0LjkzMDY2SDkuMjVDOS40NTYyNSA0LjkzMDY2IDkuNjI1IDQuNzYxOTEgOS42MjUgNC41NTU2NkM5LjYyNSA0LjM0OTQxIDkuNDU2MjUgNC4xODA2NiA5LjI1IDQuMTgwNjZINy4zNzVWMi4zMDU2NkM3LjM3NSAyLjA5OTQxIDcuMjA2MjUgMS45MzA2NiA3IDEuOTMwNjZDNi43OTM3NSAxLjkzMDY2IDYuNjI1IDIuMDk5NDEgNi42MjUgMi4zMDU2NlY0LjE4MDY2SDQuNzVDNC41NDM3NSA0LjE4MDY2IDQuMzc1IDQuMzQ5NDEgNC4zNzUgNC41NTU2NkM0LjM3NSA0Ljc2MTkxIDQuNTQzNzUgNC45MzA2NiA0Ljc1IDQuOTMwNjZaIiBmaWxsPSIjNjE2MTYxIiBzdHJva2U9IiM2MTYxNjEiIHN0cm9rZS13aWR0aD0iMC43Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImpwLWljb24zIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTExLjUgOS41VjExLjVMMi41IDExLjVWOS41TDExLjUgOS41Wk0xMiA4QzEyLjU1MjMgOCAxMyA4LjQ0NzcyIDEzIDlWMTJDMTMgMTIuNTUyMyAxMi41NTIzIDEzIDEyIDEzTDIgMTNDMS40NDc3MiAxMyAxIDEyLjU1MjMgMSAxMlY5QzEgOC40NDc3MiAxLjQ0NzcxIDggMiA4TDEyIDhaIiBmaWxsPSIjNjE2MTYxIi8+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzEzN18xOTQ5MiI+CjxyZWN0IGNsYXNzPSJqcC1pY29uMyIgd2lkdGg9IjYiIGhlaWdodD0iNiIgZmlsbD0id2hpdGUiIHRyYW5zZm9ybT0ibWF0cml4KC0xIDAgMCAxIDEwIDEuNTU1NjYpIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==);
|
||
--jp-icon-add-below: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzEzN18xOTQ5OCkiPgo8cGF0aCBjbGFzcz0ianAtaWNvbjMiIGQ9Ik05LjI1IDEwLjA2OTNMNy4zNzUgMTAuMDY5M0w3LjM3NSA4LjE5NDM0QzcuMzc1IDcuOTg4MDkgNy4yMDYyNSA3LjgxOTM0IDcgNy44MTkzNEM2Ljc5Mzc1IDcuODE5MzQgNi42MjUgNy45ODgwOSA2LjYyNSA4LjE5NDM0TDYuNjI1IDEwLjA2OTNMNC43NSAxMC4wNjkzQzQuNTQzNzUgMTAuMDY5MyA0LjM3NSAxMC4yMzgxIDQuMzc1IDEwLjQ0NDNDNC4zNzUgMTAuNjUwNiA0LjU0Mzc1IDEwLjgxOTMgNC43NSAxMC44MTkzTDYuNjI1IDEwLjgxOTNMNi42MjUgMTIuNjk0M0M2LjYyNSAxMi45MDA2IDYuNzkzNzUgMTMuMDY5MyA3IDEzLjA2OTNDNy4yMDYyNSAxMy4wNjkzIDcuMzc1IDEyLjkwMDYgNy4zNzUgMTIuNjk0M0w3LjM3NSAxMC44MTkzTDkuMjUgMTAuODE5M0M5LjQ1NjI1IDEwLjgxOTMgOS42MjUgMTAuNjUwNiA5LjYyNSAxMC40NDQzQzkuNjI1IDEwLjIzODEgOS40NTYyNSAxMC4wNjkzIDkuMjUgMTAuMDY5M1oiIGZpbGw9IiM2MTYxNjEiIHN0cm9rZT0iIzYxNjE2MSIgc3Ryb2tlLXdpZHRoPSIwLjciLz4KPC9nPgo8cGF0aCBjbGFzcz0ianAtaWNvbjMiIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMi41IDUuNUwyLjUgMy41TDExLjUgMy41TDExLjUgNS41TDIuNSA1LjVaTTIgN0MxLjQ0NzcyIDcgMSA2LjU1MjI4IDEgNkwxIDNDMSAyLjQ0NzcyIDEuNDQ3NzIgMiAyIDJMMTIgMkMxMi41NTIzIDIgMTMgMi40NDc3MiAxMyAzTDEzIDZDMTMgNi41NTIyOSAxMi41NTIzIDcgMTIgN0wyIDdaIiBmaWxsPSIjNjE2MTYxIi8+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzEzN18xOTQ5OCI+CjxyZWN0IGNsYXNzPSJqcC1pY29uMyIgd2lkdGg9IjYiIGhlaWdodD0iNiIgZmlsbD0id2hpdGUiIHRyYW5zZm9ybT0ibWF0cml4KDEgMS43NDg0NmUtMDcgMS43NDg0NmUtMDcgLTEgNCAxMy40NDQzKSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=);
|
||
--jp-icon-add: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTE5IDEzaC02djZoLTJ2LTZINXYtMmg2VjVoMnY2aDZ2MnoiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-bell: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE2IDE2IiB2ZXJzaW9uPSIxLjEiPgogICA8cGF0aCBjbGFzcz0ianAtaWNvbjIganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjMzMzMzMzIgogICAgICBkPSJtOCAwLjI5Yy0xLjQgMC0yLjcgMC43My0zLjYgMS44LTEuMiAxLjUtMS40IDMuNC0xLjUgNS4yLTAuMTggMi4yLTAuNDQgNC0yLjMgNS4zbDAuMjggMS4zaDVjMC4wMjYgMC42NiAwLjMyIDEuMSAwLjcxIDEuNSAwLjg0IDAuNjEgMiAwLjYxIDIuOCAwIDAuNTItMC40IDAuNi0xIDAuNzEtMS41aDVsMC4yOC0xLjNjLTEuOS0wLjk3LTIuMi0zLjMtMi4zLTUuMy0wLjEzLTEuOC0wLjI2LTMuNy0xLjUtNS4yLTAuODUtMS0yLjItMS44LTMuNi0xLjh6bTAgMS40YzAuODggMCAxLjkgMC41NSAyLjUgMS4zIDAuODggMS4xIDEuMSAyLjcgMS4yIDQuNCAwLjEzIDEuNyAwLjIzIDMuNiAxLjMgNS4yaC0xMGMxLjEtMS42IDEuMi0zLjQgMS4zLTUuMiAwLjEzLTEuNyAwLjMtMy4zIDEuMi00LjQgMC41OS0wLjcyIDEuNi0xLjMgMi41LTEuM3ptLTAuNzQgMTJoMS41Yy0wLjAwMTUgMC4yOCAwLjAxNSAwLjc5LTAuNzQgMC43OS0wLjczIDAuMDAxNi0wLjcyLTAuNTMtMC43NC0wLjc5eiIgLz4KPC9zdmc+Cg==);
|
||
--jp-icon-bug-dot: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiM2MTYxNjEiPgogICAgICAgIDxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTcuMTkgOEgyMFYxMEgxNy45MUMxNy45NiAxMC4zMyAxOCAxMC42NiAxOCAxMVYxMkgyMFYxNEgxOC41SDE4VjE0LjAyNzVDMTUuNzUgMTQuMjc2MiAxNCAxNi4xODM3IDE0IDE4LjVDMTQgMTkuMjA4IDE0LjE2MzUgMTkuODc3OSAxNC40NTQ5IDIwLjQ3MzlDMTMuNzA2MyAyMC44MTE3IDEyLjg3NTcgMjEgMTIgMjFDOS43OCAyMSA3Ljg1IDE5Ljc5IDYuODEgMThINFYxNkg2LjA5QzYuMDQgMTUuNjcgNiAxNS4zNCA2IDE1VjE0SDRWMTJINlYxMUM2IDEwLjY2IDYuMDQgMTAuMzMgNi4wOSAxMEg0VjhINi44MUM3LjI2IDcuMjIgNy44OCA2LjU1IDguNjIgNi4wNEw3IDQuNDFMOC40MSAzTDEwLjU5IDUuMTdDMTEuMDQgNS4wNiAxMS41MSA1IDEyIDVDMTIuNDkgNSAxMi45NiA1LjA2IDEzLjQyIDUuMTdMMTUuNTkgM0wxNyA0LjQxTDE1LjM3IDYuMDRDMTYuMTIgNi41NSAxNi43NCA3LjIyIDE3LjE5IDhaTTEwIDE2SDE0VjE0SDEwVjE2Wk0xMCAxMkgxNFYxMEgxMFYxMloiIGZpbGw9IiM2MTYxNjEiLz4KICAgICAgICA8cGF0aCBkPSJNMjIgMTguNUMyMiAyMC40MzMgMjAuNDMzIDIyIDE4LjUgMjJDMTYuNTY3IDIyIDE1IDIwLjQzMyAxNSAxOC41QzE1IDE2LjU2NyAxNi41NjcgMTUgMTguNSAxNUMyMC40MzMgMTUgMjIgMTYuNTY3IDIyIDE4LjVaIiBmaWxsPSIjNjE2MTYxIi8+CiAgICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-bug: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxwYXRoIGQ9Ik0yMCA4aC0yLjgxYy0uNDUtLjc4LTEuMDctMS40NS0xLjgyLTEuOTZMMTcgNC40MSAxNS41OSAzbC0yLjE3IDIuMTdDMTIuOTYgNS4wNiAxMi40OSA1IDEyIDVjLS40OSAwLS45Ni4wNi0xLjQxLjE3TDguNDEgMyA3IDQuNDFsMS42MiAxLjYzQzcuODggNi41NSA3LjI2IDcuMjIgNi44MSA4SDR2MmgyLjA5Yy0uMDUuMzMtLjA5LjY2LS4wOSAxdjFINHYyaDJ2MWMwIC4zNC4wNC42Ny4wOSAxSDR2MmgyLjgxYzEuMDQgMS43OSAyLjk3IDMgNS4xOSAzczQuMTUtMS4yMSA1LjE5LTNIMjB2LTJoLTIuMDljLjA1LS4zMy4wOS0uNjYuMDktMXYtMWgydi0yaC0ydi0xYzAtLjM0LS4wNC0uNjctLjA5LTFIMjBWOHptLTYgOGgtNHYtMmg0djJ6bTAtNGgtNHYtMmg0djJ6Ii8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-build: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTE0LjkgMTcuNDVDMTYuMjUgMTcuNDUgMTcuMzUgMTYuMzUgMTcuMzUgMTVDMTcuMzUgMTMuNjUgMTYuMjUgMTIuNTUgMTQuOSAxMi41NUMxMy41NCAxMi41NSAxMi40NSAxMy42NSAxMi40NSAxNUMxMi40NSAxNi4zNSAxMy41NCAxNy40NSAxNC45IDE3LjQ1Wk0yMC4xIDE1LjY4TDIxLjU4IDE2Ljg0QzIxLjcxIDE2Ljk1IDIxLjc1IDE3LjEzIDIxLjY2IDE3LjI5TDIwLjI2IDE5LjcxQzIwLjE3IDE5Ljg2IDIwIDE5LjkyIDE5LjgzIDE5Ljg2TDE4LjA5IDE5LjE2QzE3LjczIDE5LjQ0IDE3LjMzIDE5LjY3IDE2LjkxIDE5Ljg1TDE2LjY0IDIxLjdDMTYuNjIgMjEuODcgMTYuNDcgMjIgMTYuMyAyMkgxMy41QzEzLjMyIDIyIDEzLjE4IDIxLjg3IDEzLjE1IDIxLjdMMTIuODkgMTkuODVDMTIuNDYgMTkuNjcgMTIuMDcgMTkuNDQgMTEuNzEgMTkuMTZMOS45NjAwMiAxOS44NkM5LjgxMDAyIDE5LjkyIDkuNjIwMDIgMTkuODYgOS41NDAwMiAxOS43MUw4LjE0MDAyIDE3LjI5QzguMDUwMDIgMTcuMTMgOC4wOTAwMiAxNi45NSA4LjIyMDAyIDE2Ljg0TDkuNzAwMDIgMTUuNjhMOS42NTAwMSAxNUw5LjcwMDAyIDE0LjMxTDguMjIwMDIgMTMuMTZDOC4wOTAwMiAxMy4wNSA4LjA1MDAyIDEyLjg2IDguMTQwMDIgMTIuNzFMOS41NDAwMiAxMC4yOUM5LjYyMDAyIDEwLjEzIDkuODEwMDIgMTAuMDcgOS45NjAwMiAxMC4xM0wxMS43MSAxMC44NEMxMi4wNyAxMC41NiAxMi40NiAxMC4zMiAxMi44OSAxMC4xNUwxMy4xNSA4LjI4OTk4QzEzLjE4IDguMTI5OTggMTMuMzIgNy45OTk5OCAxMy41IDcuOTk5OThIMTYuM0MxNi40NyA3Ljk5OTk4IDE2LjYyIDguMTI5OTggMTYuNjQgOC4yODk5OEwxNi45MSAxMC4xNUMxNy4zMyAxMC4zMiAxNy43MyAxMC41NiAxOC4wOSAxMC44NEwxOS44MyAxMC4xM0MyMCAxMC4wNyAyMC4xNyAxMC4xMyAyMC4yNiAxMC4yOUwyMS42NiAxMi43MUMyMS43NSAxMi44NiAyMS43MSAxMy4wNSAyMS41OCAxMy4xNkwyMC4xIDE0LjMxTDIwLjE1IDE1TDIwLjEgMTUuNjhaIi8+CiAgICA8cGF0aCBkPSJNNy4zMjk2NiA3LjQ0NDU0QzguMDgzMSA3LjAwOTU0IDguMzM5MzIgNi4wNTMzMiA3LjkwNDMyIDUuMjk5ODhDNy40NjkzMiA0LjU0NjQzIDYuNTA4MSA0LjI4MTU2IDUuNzU0NjYgNC43MTY1NkM1LjM5MTc2IDQuOTI2MDggNS4xMjY5NSA1LjI3MTE4IDUuMDE4NDkgNS42NzU5NEM0LjkxMDA0IDYuMDgwNzEgNC45NjY4MiA2LjUxMTk4IDUuMTc2MzQgNi44NzQ4OEM1LjYxMTM0IDcuNjI4MzIgNi41NzYyMiA3Ljg3OTU0IDcuMzI5NjYgNy40NDQ1NFpNOS42NTcxOCA0Ljc5NTkzTDEwLjg2NzIgNC45NTE3OUMxMC45NjI4IDQuOTc3NDEgMTEuMDQwMiA1LjA3MTMzIDExLjAzODIgNS4xODc5M0wxMS4wMzg4IDYuOTg4OTNDMTEuMDQ1NSA3LjEwMDU0IDEwLjk2MTYgNy4xOTUxOCAxMC44NTUgNy4yMTA1NEw5LjY2MDAxIDcuMzgwODNMOS4yMzkxNSA4LjEzMTg4TDkuNjY5NjEgOS4yNTc0NUM5LjcwNzI5IDkuMzYyNzEgOS42NjkzNCA5LjQ3Njk5IDkuNTc0MDggOS41MzE5OUw4LjAxNTIzIDEwLjQzMkM3LjkxMTMxIDEwLjQ5MiA3Ljc5MzM3IDEwLjQ2NzcgNy43MjEwNSAxMC4zODI0TDYuOTg3NDggOS40MzE4OEw2LjEwOTMxIDkuNDMwODNMNS4zNDcwNCAxMC4zOTA1QzUuMjg5MDkgMTAuNDcwMiA1LjE3MzgzIDEwLjQ5MDUgNS4wNzE4NyAxMC40MzM5TDMuNTEyNDUgOS41MzI5M0MzLjQxMDQ5IDkuNDc2MzMgMy4zNzY0NyA5LjM1NzQxIDMuNDEwNzUgOS4yNTY3OUwzLjg2MzQ3IDguMTQwOTNMMy42MTc0OSA3Ljc3NDg4TDMuNDIzNDcgNy4zNzg4M0wyLjIzMDc1IDcuMjEyOTdDMi4xMjY0NyA3LjE5MjM1IDIuMDQwNDkgNy4xMDM0MiAyLjA0MjQ1IDYuOTg2ODJMMi4wNDE4NyA1LjE4NTgyQzIuMDQzODMgNS4wNjkyMiAyLjExOTA5IDQuOTc5NTggMi4yMTcwNCA0Ljk2OTIyTDMuNDIwNjUgNC43OTM5M0wzLjg2NzQ5IDQuMDI3ODhMMy40MTEwNSAyLjkxNzMxQzMuMzczMzcgMi44MTIwNCAzLjQxMTMxIDIuNjk3NzYgMy41MTUyMyAyLjYzNzc2TDUuMDc0MDggMS43Mzc3NkM1LjE2OTM0IDEuNjgyNzYgNS4yODcyOSAxLjcwNzA0IDUuMzU5NjEgMS43OTIzMUw2LjExOTE1IDIuNzI3ODhMNi45ODAwMSAyLjczODkzTDcuNzI0OTYgMS43ODkyMkM3Ljc5MTU2IDEuNzA0NTggNy45MTU0OCAxLjY3OTIyIDguMDA4NzkgMS43NDA4Mkw5LjU2ODIxIDIuNjQxODJDOS42NzAxNyAyLjY5ODQyIDkuNzEyODUgMi44MTIzNCA5LjY4NzIzIDIuOTA3OTdMOS4yMTcxOCA0LjAzMzgzTDkuNDYzMTYgNC4zOTk4OEw5LjY1NzE4IDQuNzk1OTNaIi8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-caret-down-empty-thin: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwIDIwIj4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgoJCTxwb2x5Z29uIGNsYXNzPSJzdDEiIHBvaW50cz0iOS45LDEzLjYgMy42LDcuNCA0LjQsNi42IDkuOSwxMi4yIDE1LjQsNi43IDE2LjEsNy40ICIvPgoJPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-caret-down-empty: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KICAgIDxwYXRoIGQ9Ik01LjIsNS45TDksOS43bDMuOC0zLjhsMS4yLDEuMmwtNC45LDVsLTQuOS01TDUuMiw1Ljl6Ii8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-caret-down: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KICAgIDxwYXRoIGQ9Ik01LjIsNy41TDksMTEuMmwzLjgtMy44SDUuMnoiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-caret-left: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgoJCTxwYXRoIGQ9Ik0xMC44LDEyLjhMNy4xLDlsMy44LTMuOGwwLDcuNkgxMC44eiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-caret-right: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KICAgIDxwYXRoIGQ9Ik03LjIsNS4yTDEwLjksOWwtMy44LDMuOFY1LjJINy4yeiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-caret-up-empty-thin: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwIDIwIj4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgoJCTxwb2x5Z29uIGNsYXNzPSJzdDEiIHBvaW50cz0iMTUuNCwxMy4zIDkuOSw3LjcgNC40LDEzLjIgMy42LDEyLjUgOS45LDYuMyAxNi4xLDEyLjYgIi8+Cgk8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-caret-up: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgoJCTxwYXRoIGQ9Ik01LjIsMTAuNUw5LDYuOGwzLjgsMy44SDUuMnoiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-case-sensitive: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwIDIwIj4KICA8ZyBjbGFzcz0ianAtaWNvbjIiIGZpbGw9IiM0MTQxNDEiPgogICAgPHJlY3QgeD0iMiIgeT0iMiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ii8+CiAgPC9nPgogIDxnIGNsYXNzPSJqcC1pY29uLWFjY2VudDIiIGZpbGw9IiNGRkYiPgogICAgPHBhdGggZD0iTTcuNiw4aDAuOWwzLjUsOGgtMS4xTDEwLDE0SDZsLTAuOSwySDRMNy42LDh6IE04LDkuMUw2LjQsMTNoMy4yTDgsOS4xeiIvPgogICAgPHBhdGggZD0iTTE2LjYsOS44Yy0wLjIsMC4xLTAuNCwwLjEtMC43LDAuMWMtMC4yLDAtMC40LTAuMS0wLjYtMC4yYy0wLjEtMC4xLTAuMi0wLjQtMC4yLTAuNyBjLTAuMywwLjMtMC42LDAuNS0wLjksMC43Yy0wLjMsMC4xLTAuNywwLjItMS4xLDAuMmMtMC4zLDAtMC41LDAtMC43LTAuMWMtMC4yLTAuMS0wLjQtMC4yLTAuNi0wLjNjLTAuMi0wLjEtMC4zLTAuMy0wLjQtMC41IGMtMC4xLTAuMi0wLjEtMC40LTAuMS0wLjdjMC0wLjMsMC4xLTAuNiwwLjItMC44YzAuMS0wLjIsMC4zLTAuNCwwLjQtMC41QzEyLDcsMTIuMiw2LjksMTIuNSw2LjhjMC4yLTAuMSwwLjUtMC4xLDAuNy0wLjIgYzAuMy0wLjEsMC41LTAuMSwwLjctMC4xYzAuMiwwLDAuNC0wLjEsMC42LTAuMWMwLjIsMCwwLjMtMC4xLDAuNC0wLjJjMC4xLTAuMSwwLjItMC4yLDAuMi0wLjRjMC0xLTEuMS0xLTEuMy0xIGMtMC40LDAtMS40LDAtMS40LDEuMmgtMC45YzAtMC40LDAuMS0wLjcsMC4yLTFjMC4xLTAuMiwwLjMtMC40LDAuNS0wLjZjMC4yLTAuMiwwLjUtMC4zLDAuOC0wLjNDMTMuMyw0LDEzLjYsNCwxMy45LDQgYzAuMywwLDAuNSwwLDAuOCwwLjFjMC4zLDAsMC41LDAuMSwwLjcsMC4yYzAuMiwwLjEsMC40LDAuMywwLjUsMC41QzE2LDUsMTYsNS4yLDE2LDUuNnYyLjljMCwwLjIsMCwwLjQsMCwwLjUgYzAsMC4xLDAuMSwwLjIsMC4zLDAuMmMwLjEsMCwwLjIsMCwwLjMsMFY5Ljh6IE0xNS4yLDYuOWMtMS4yLDAuNi0zLjEsMC4yLTMuMSwxLjRjMCwxLjQsMy4xLDEsMy4xLTAuNVY2Ljl6Ii8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-check: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxwYXRoIGQ9Ik05IDE2LjE3TDQuODMgMTJsLTEuNDIgMS40MUw5IDE5IDIxIDdsLTEuNDEtMS40MXoiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-circle-empty: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTEyIDJDNi40NyAyIDIgNi40NyAyIDEyczQuNDcgMTAgMTAgMTAgMTAtNC40NyAxMC0xMFMxNy41MyAyIDEyIDJ6bTAgMThjLTQuNDEgMC04LTMuNTktOC04czMuNTktOCA4LTggOCAzLjU5IDggOC0zLjU5IDgtOCA4eiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-circle: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPGNpcmNsZSBjeD0iOSIgY3k9IjkiIHI9IjgiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-clear: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8bWFzayBpZD0iZG9udXRIb2xlIj4KICAgIDxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiIC8+CiAgICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI4IiBmaWxsPSJibGFjayIvPgogIDwvbWFzaz4KCiAgPGcgY2xhc3M9ImpwLWljb24zIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxyZWN0IGhlaWdodD0iMTgiIHdpZHRoPSIyIiB4PSIxMSIgeT0iMyIgdHJhbnNmb3JtPSJyb3RhdGUoMzE1LCAxMiwgMTIpIi8+CiAgICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIgbWFzaz0idXJsKCNkb251dEhvbGUpIi8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-close: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbi1ub25lIGpwLWljb24tc2VsZWN0YWJsZS1pbnZlcnNlIGpwLWljb24zLWhvdmVyIiBmaWxsPSJub25lIj4KICAgIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjExIi8+CiAgPC9nPgoKICA8ZyBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIGpwLWljb24tYWNjZW50Mi1ob3ZlciIgZmlsbD0iIzYxNjE2MSI+CiAgICA8cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPgogIDwvZz4KCiAgPGcgY2xhc3M9ImpwLWljb24tbm9uZSBqcC1pY29uLWJ1c3kiIGZpbGw9Im5vbmUiPgogICAgPGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iNyIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-code-check: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CiAgICA8cGF0aCBkPSJNNi41OSwzLjQxTDIsOEw2LjU5LDEyLjZMOCwxMS4xOEw0LjgyLDhMOCw0LjgyTDYuNTksMy40MU0xMi40MSwzLjQxTDExLDQuODJMMTQuMTgsOEwxMSwxMS4xOEwxMi40MSwxMi42TDE3LDhMMTIuNDEsMy40MU0yMS41OSwxMS41OUwxMy41LDE5LjY4TDkuODMsMTZMOC40MiwxNy40MUwxMy41LDIyLjVMMjMsMTNMMjEuNTksMTEuNTlaIiAvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-code: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyOCAyOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CgkJPHBhdGggZD0iTTExLjQgMTguNkw2LjggMTRMMTEuNCA5LjRMMTAgOEw0IDE0TDEwIDIwTDExLjQgMTguNlpNMTYuNiAxOC42TDIxLjIgMTRMMTYuNiA5LjRMMTggOEwyNCAxNEwxOCAyMEwxNi42IDE4LjZWMTguNloiLz4KCTwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-collapse-all: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGgKICAgICAgICAgICAgZD0iTTggMmMxIDAgMTEgMCAxMiAwczIgMSAyIDJjMCAxIDAgMTEgMCAxMnMwIDItMiAyQzIwIDE0IDIwIDQgMjAgNFMxMCA0IDYgNGMwLTIgMS0yIDItMnoiIC8+CiAgICAgICAgPHBhdGgKICAgICAgICAgICAgZD0iTTE4IDhjMC0xLTEtMi0yLTJTNSA2IDQgNnMtMiAxLTIgMmMwIDEgMCAxMSAwIDEyczEgMiAyIDJjMSAwIDExIDAgMTIgMHMyLTEgMi0yYzAtMSAwLTExIDAtMTJ6bS0yIDB2MTJINFY4eiIgLz4KICAgICAgICA8cGF0aCBkPSJNNiAxM3YyaDh2LTJ6IiAvPgogICAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-console: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwMCAyMDAiPgogIDxnIGNsYXNzPSJqcC1jb25zb2xlLWljb24tYmFja2dyb3VuZC1jb2xvciBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiMwMjg4RDEiPgogICAgPHBhdGggZD0iTTIwIDE5LjhoMTYwdjE1OS45SDIweiIvPgogIDwvZz4KICA8ZyBjbGFzcz0ianAtY29uc29sZS1pY29uLWNvbG9yIGpwLWljb24tc2VsZWN0YWJsZS1pbnZlcnNlIiBmaWxsPSIjZmZmIj4KICAgIDxwYXRoIGQ9Ik0xMDUgMTI3LjNoNDB2MTIuOGgtNDB6TTUxLjEgNzdMNzQgOTkuOWwtMjMuMyAyMy4zIDEwLjUgMTAuNSAyMy4zLTIzLjNMOTUgOTkuOSA4NC41IDg5LjQgNjEuNiA2Ni41eiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-copy: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTExLjksMUgzLjJDMi40LDEsMS43LDEuNywxLjcsMi41djEwLjJoMS41VjIuNWg4LjdWMXogTTE0LjEsMy45aC04Yy0wLjgsMC0xLjUsMC43LTEuNSwxLjV2MTAuMmMwLDAuOCwwLjcsMS41LDEuNSwxLjVoOCBjMC44LDAsMS41LTAuNywxLjUtMS41VjUuNEMxNS41LDQuNiwxNC45LDMuOSwxNC4xLDMuOXogTTE0LjEsMTUuNWgtOFY1LjRoOFYxNS41eiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-copyright: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDI0IDI0IiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCI+CiAgPGcgY2xhc3M9ImpwLWljb24zIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxwYXRoIGQ9Ik0xMS44OCw5LjE0YzEuMjgsMC4wNiwxLjYxLDEuMTUsMS42MywxLjY2aDEuNzljLTAuMDgtMS45OC0xLjQ5LTMuMTktMy40NS0zLjE5QzkuNjQsNy42MSw4LDksOCwxMi4xNCBjMCwxLjk0LDAuOTMsNC4yNCwzLjg0LDQuMjRjMi4yMiwwLDMuNDEtMS42NSwzLjQ0LTIuOTVoLTEuNzljLTAuMDMsMC41OS0wLjQ1LDEuMzgtMS42MywxLjQ0QzEwLjU1LDE0LjgzLDEwLDEzLjgxLDEwLDEyLjE0IEMxMCw5LjI1LDExLjI4LDkuMTYsMTEuODgsOS4xNHogTTEyLDJDNi40OCwyLDIsNi40OCwyLDEyczQuNDgsMTAsMTAsMTBzMTAtNC40OCwxMC0xMFMxNy41MiwyLDEyLDJ6IE0xMiwyMGMtNC40MSwwLTgtMy41OS04LTggczMuNTktOCw4LThzOCwzLjU5LDgsOFMxNi40MSwyMCwxMiwyMHoiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-cut: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTkuNjQgNy42NGMuMjMtLjUuMzYtMS4wNS4zNi0xLjY0IDAtMi4yMS0xLjc5LTQtNC00UzIgMy43OSAyIDZzMS43OSA0IDQgNGMuNTkgMCAxLjE0LS4xMyAxLjY0LS4zNkwxMCAxMmwtMi4zNiAyLjM2QzcuMTQgMTQuMTMgNi41OSAxNCA2IDE0Yy0yLjIxIDAtNCAxLjc5LTQgNHMxLjc5IDQgNCA0IDQtMS43OSA0LTRjMC0uNTktLjEzLTEuMTQtLjM2LTEuNjRMMTIgMTRsNyA3aDN2LTFMOS42NCA3LjY0ek02IDhjLTEuMSAwLTItLjg5LTItMnMuOS0yIDItMiAyIC44OSAyIDItLjkgMi0yIDJ6bTAgMTJjLTEuMSAwLTItLjg5LTItMnMuOS0yIDItMiAyIC44OSAyIDItLjkgMi0yIDJ6bTYtNy41Yy0uMjggMC0uNS0uMjItLjUtLjVzLjIyLS41LjUtLjUuNS4yMi41LjUtLjIyLjUtLjUuNXpNMTkgM2wtNiA2IDIgMiA3LTdWM3oiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-delete: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE2cHgiIGhlaWdodD0iMTZweCI+CiAgICA8cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIiAvPgogICAgPHBhdGggY2xhc3M9ImpwLWljb24zIiBmaWxsPSIjNjI2MjYyIiBkPSJNNiAxOWMwIDEuMS45IDIgMiAyaDhjMS4xIDAgMi0uOSAyLTJWN0g2djEyek0xOSA0aC0zLjVsLTEtMWgtNWwtMSAxSDV2MmgxNFY0eiIgLz4KPC9zdmc+Cg==);
|
||
--jp-icon-download: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTE5IDloLTRWM0g5djZINWw3IDcgNy03ek01IDE4djJoMTR2LTJINXoiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-duplicate: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggY2xhc3M9ImpwLWljb24zIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTIuNzk5OTggMC44NzVIOC44OTU4MkM5LjIwMDYxIDAuODc1IDkuNDQ5OTggMS4xMzkxNCA5LjQ0OTk4IDEuNDYxOThDOS40NDk5OCAxLjc4NDgyIDkuMjAwNjEgMi4wNDg5NiA4Ljg5NTgyIDIuMDQ4OTZIMy4zNTQxNUMzLjA0OTM2IDIuMDQ4OTYgMi43OTk5OCAyLjMxMzEgMi43OTk5OCAyLjYzNTk0VjkuNjc5NjlDMi43OTk5OCAxMC4wMDI1IDIuNTUwNjEgMTAuMjY2NyAyLjI0NTgyIDEwLjI2NjdDMS45NDEwMyAxMC4yNjY3IDEuNjkxNjUgMTAuMDAyNSAxLjY5MTY1IDkuNjc5NjlWMi4wNDg5NkMxLjY5MTY1IDEuNDAzMjggMi4xOTA0IDAuODc1IDIuNzk5OTggMC44NzVaTTUuMzY2NjUgMTEuOVY0LjU1SDExLjA4MzNWMTEuOUg1LjM2NjY1Wk00LjE0MTY1IDQuMTQxNjdDNC4xNDE2NSAzLjY5MDYzIDQuNTA3MjggMy4zMjUgNC45NTgzMiAzLjMyNUgxMS40OTE3QzExLjk0MjcgMy4zMjUgMTIuMzA4MyAzLjY5MDYzIDEyLjMwODMgNC4xNDE2N1YxMi4zMDgzQzEyLjMwODMgMTIuNzU5NCAxMS45NDI3IDEzLjEyNSAxMS40OTE3IDEzLjEyNUg0Ljk1ODMyQzQuNTA3MjggMTMuMTI1IDQuMTQxNjUgMTIuNzU5NCA0LjE0MTY1IDEyLjMwODNWNC4xNDE2N1oiIGZpbGw9IiM2MTYxNjEiLz4KPHBhdGggY2xhc3M9ImpwLWljb24zIiBkPSJNOS40MzU3NCA4LjI2NTA3SDguMzY0MzFWOS4zMzY1QzguMzY0MzEgOS40NTQzNSA4LjI2Nzg4IDkuNTUwNzggOC4xNTAwMiA5LjU1MDc4QzguMDMyMTcgOS41NTA3OCA3LjkzNTc0IDkuNDU0MzUgNy45MzU3NCA5LjMzNjVWOC4yNjUwN0g2Ljg2NDMxQzYuNzQ2NDUgOC4yNjUwNyA2LjY1MDAyIDguMTY4NjQgNi42NTAwMiA4LjA1MDc4QzYuNjUwMDIgNy45MzI5MiA2Ljc0NjQ1IDcuODM2NSA2Ljg2NDMxIDcuODM2NUg3LjkzNTc0VjYuNzY1MDdDNy45MzU3NCA2LjY0NzIxIDguMDMyMTcgNi41NTA3OCA4LjE1MDAyIDYuNTUwNzhDOC4yNjc4OCA2LjU1MDc4IDguMzY0MzEgNi42NDcyMSA4LjM2NDMxIDYuNzY1MDdWNy44MzY1SDkuNDM1NzRDOS41NTM2IDcuODM2NSA5LjY1MDAyIDcuOTMyOTIgOS42NTAwMiA4LjA1MDc4QzkuNjUwMDIgOC4xNjg2NCA5LjU1MzYgOC4yNjUwNyA5LjQzNTc0IDguMjY1MDdaIiBmaWxsPSIjNjE2MTYxIiBzdHJva2U9IiM2MTYxNjEiIHN0cm9rZS13aWR0aD0iMC41Ii8+Cjwvc3ZnPgo=);
|
||
--jp-icon-edit: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTMgMTcuMjVWMjFoMy43NUwxNy44MSA5Ljk0bC0zLjc1LTMuNzVMMyAxNy4yNXpNMjAuNzEgNy4wNGMuMzktLjM5LjM5LTEuMDIgMC0xLjQxbC0yLjM0LTIuMzRjLS4zOS0uMzktMS4wMi0uMzktMS40MSAwbC0xLjgzIDEuODMgMy43NSAzLjc1IDEuODMtMS44M3oiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-ellipses: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPGNpcmNsZSBjeD0iNSIgY3k9IjEyIiByPSIyIi8+CiAgICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIyIi8+CiAgICA8Y2lyY2xlIGN4PSIxOSIgY3k9IjEyIiByPSIyIi8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-error: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KPGcgY2xhc3M9ImpwLWljb24zIiBmaWxsPSIjNjE2MTYxIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjE5IiByPSIyIi8+PHBhdGggZD0iTTEwIDNoNHYxMmgtNHoiLz48L2c+CjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-expand-all: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGgKICAgICAgICAgICAgZD0iTTggMmMxIDAgMTEgMCAxMiAwczIgMSAyIDJjMCAxIDAgMTEgMCAxMnMwIDItMiAyQzIwIDE0IDIwIDQgMjAgNFMxMCA0IDYgNGMwLTIgMS0yIDItMnoiIC8+CiAgICAgICAgPHBhdGgKICAgICAgICAgICAgZD0iTTE4IDhjMC0xLTEtMi0yLTJTNSA2IDQgNnMtMiAxLTIgMmMwIDEgMCAxMSAwIDEyczEgMiAyIDJjMSAwIDExIDAgMTIgMHMyLTEgMi0yYzAtMSAwLTExIDAtMTJ6bS0yIDB2MTJINFY4eiIgLz4KICAgICAgICA8cGF0aCBkPSJNMTEgMTBIOXYzSDZ2MmgzdjNoMnYtM2gzdi0yaC0zeiIgLz4KICAgIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-extension: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTIwLjUgMTFIMTlWN2MwLTEuMS0uOS0yLTItMmgtNFYzLjVDMTMgMi4xMiAxMS44OCAxIDEwLjUgMVM4IDIuMTIgOCAzLjVWNUg0Yy0xLjEgMC0xLjk5LjktMS45OSAydjMuOEgzLjVjMS40OSAwIDIuNyAxLjIxIDIuNyAyLjdzLTEuMjEgMi43LTIuNyAyLjdIMlYyMGMwIDEuMS45IDIgMiAyaDMuOHYtMS41YzAtMS40OSAxLjIxLTIuNyAyLjctMi43IDEuNDkgMCAyLjcgMS4yMSAyLjcgMi43VjIySDE3YzEuMSAwIDItLjkgMi0ydi00aDEuNWMxLjM4IDAgMi41LTEuMTIgMi41LTIuNVMyMS44OCAxMSAyMC41IDExeiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-fast-forward: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTQgMThsOC41LTZMNCA2djEyem05LTEydjEybDguNS02TDEzIDZ6Ii8+CiAgICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-file-upload: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTkgMTZoNnYtNmg0bC03LTctNyA3aDR6bS00IDJoMTR2Mkg1eiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-file: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMTkuMyA4LjJsLTUuNS01LjVjLS4zLS4zLS43LS41LTEuMi0uNUgzLjljLS44LjEtMS42LjktMS42IDEuOHYxNC4xYzAgLjkuNyAxLjYgMS42IDEuNmgxNC4yYy45IDAgMS42LS43IDEuNi0xLjZWOS40Yy4xLS41LS4xLS45LS40LTEuMnptLTUuOC0zLjNsMy40IDMuNmgtMy40VjQuOXptMy45IDEyLjdINC43Yy0uMSAwLS4yIDAtLjItLjJWNC43YzAtLjIuMS0uMy4yLS4zaDcuMnY0LjRzMCAuOC4zIDEuMWMuMy4zIDEuMS4zIDEuMS4zaDQuM3Y3LjJzLS4xLjItLjIuMnoiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-filter-dot: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiNGRkYiPgogICAgPHBhdGggZD0iTTE0LDEyVjE5Ljg4QzE0LjA0LDIwLjE4IDEzLjk0LDIwLjUgMTMuNzEsMjAuNzFDMTMuMzIsMjEuMSAxMi42OSwyMS4xIDEyLjMsMjAuNzFMMTAuMjksMTguN0MxMC4wNiwxOC40NyA5Ljk2LDE4LjE2IDEwLDE3Ljg3VjEySDkuOTdMNC4yMSw0LjYyQzMuODcsNC4xOSAzLjk1LDMuNTYgNC4zOCwzLjIyQzQuNTcsMy4wOCA0Ljc4LDMgNSwzVjNIMTlWM0MxOS4yMiwzIDE5LjQzLDMuMDggMTkuNjIsMy4yMkMyMC4wNSwzLjU2IDIwLjEzLDQuMTkgMTkuNzksNC42MkwxNC4wMywxMkgxNFoiIC8+CiAgPC9nPgogIDxnIGNsYXNzPSJqcC1pY29uLWRvdCIgZmlsbD0iI0ZGRiI+CiAgICA8Y2lyY2xlIGN4PSIxOCIgY3k9IjE3IiByPSIzIj48L2NpcmNsZT4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-filter-list: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTEwIDE4aDR2LTJoLTR2MnpNMyA2djJoMThWNkgzem0zIDdoMTJ2LTJINnYyeiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-filter: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiNGRkYiPgogICAgPHBhdGggZD0iTTE0LDEyVjE5Ljg4QzE0LjA0LDIwLjE4IDEzLjk0LDIwLjUgMTMuNzEsMjAuNzFDMTMuMzIsMjEuMSAxMi42OSwyMS4xIDEyLjMsMjAuNzFMMTAuMjksMTguN0MxMC4wNiwxOC40NyA5Ljk2LDE4LjE2IDEwLDE3Ljg3VjEySDkuOTdMNC4yMSw0LjYyQzMuODcsNC4xOSAzLjk1LDMuNTYgNC4zOCwzLjIyQzQuNTcsMy4wOCA0Ljc4LDMgNSwzVjNIMTlWM0MxOS4yMiwzIDE5LjQzLDMuMDggMTkuNjIsMy4yMkMyMC4wNSwzLjU2IDIwLjEzLDQuMTkgMTkuNzksNC42MkwxNC4wMywxMkgxNFoiIC8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-folder-favorite: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMjRweCIgZmlsbD0iIzAwMDAwMCI+CiAgPHBhdGggZD0iTTAgMGgyNHYyNEgwVjB6IiBmaWxsPSJub25lIi8+PHBhdGggY2xhc3M9ImpwLWljb24zIGpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iIzYxNjE2MSIgZD0iTTIwIDZoLThsLTItMkg0Yy0xLjEgMC0yIC45LTIgMnYxMmMwIDEuMS45IDIgMiAyaDE2YzEuMSAwIDItLjkgMi0yVjhjMC0xLjEtLjktMi0yLTJ6bS0yLjA2IDExTDE1IDE1LjI4IDEyLjA2IDE3bC43OC0zLjMzLTIuNTktMi4yNCAzLjQxLS4yOUwxNSA4bDEuMzQgMy4xNCAzLjQxLjI5LTIuNTkgMi4yNC43OCAzLjMzeiIvPgo8L3N2Zz4K);
|
||
--jp-icon-folder: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMTAgNEg0Yy0xLjEgMC0xLjk5LjktMS45OSAyTDIgMThjMCAxLjEuOSAyIDIgMmgxNmMxLjEgMCAyLS45IDItMlY4YzAtMS4xLS45LTItMi0yaC04bC0yLTJ6Ii8+Cjwvc3ZnPgo=);
|
||
--jp-icon-home: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMjRweCIgZmlsbD0iIzAwMDAwMCI+CiAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjxwYXRoIGNsYXNzPSJqcC1pY29uMyBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiM2MTYxNjEiIGQ9Ik0xMCAyMHYtNmg0djZoNXYtOGgzTDEyIDMgMiAxMmgzdjh6Ii8+Cjwvc3ZnPgo=);
|
||
--jp-icon-html5: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDUxMiA1MTIiPgogIDxwYXRoIGNsYXNzPSJqcC1pY29uMCBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiMwMDAiIGQ9Ik0xMDguNCAwaDIzdjIyLjhoMjEuMlYwaDIzdjY5aC0yM1Y0NmgtMjF2MjNoLTIzLjJNMjA2IDIzaC0yMC4zVjBoNjMuN3YyM0gyMjl2NDZoLTIzbTUzLjUtNjloMjQuMWwxNC44IDI0LjNMMzEzLjIgMGgyNC4xdjY5aC0yM1YzNC44bC0xNi4xIDI0LjgtMTYuMS0yNC44VjY5aC0yMi42bTg5LjItNjloMjN2NDYuMmgzMi42VjY5aC01NS42Ii8+CiAgPHBhdGggY2xhc3M9ImpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iI2U0NGQyNiIgZD0iTTEwNy42IDQ3MWwtMzMtMzcwLjRoMzYyLjhsLTMzIDM3MC4yTDI1NS43IDUxMiIvPgogIDxwYXRoIGNsYXNzPSJqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiNmMTY1MjkiIGQ9Ik0yNTYgNDgwLjVWMTMxaDE0OC4zTDM3NiA0NDciLz4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1zZWxlY3RhYmxlLWludmVyc2UiIGZpbGw9IiNlYmViZWIiIGQ9Ik0xNDIgMTc2LjNoMTE0djQ1LjRoLTY0LjJsNC4yIDQ2LjVoNjB2NDUuM0gxNTQuNG0yIDIyLjhIMjAybDMuMiAzNi4zIDUwLjggMTMuNnY0Ny40bC05My4yLTI2Ii8+CiAgPHBhdGggY2xhc3M9ImpwLWljb24tc2VsZWN0YWJsZS1pbnZlcnNlIiBmaWxsPSIjZmZmIiBkPSJNMzY5LjYgMTc2LjNIMjU1Ljh2NDUuNGgxMDkuNm0tNC4xIDQ2LjVIMjU1Ljh2NDUuNGg1NmwtNS4zIDU5LTUwLjcgMTMuNnY0Ny4ybDkzLTI1LjgiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1icmFuZDQganAtaWNvbi1zZWxlY3RhYmxlLWludmVyc2UiIGZpbGw9IiNGRkYiIGQ9Ik0yLjIgMi4yaDE3LjV2MTcuNUgyLjJ6Ii8+CiAgPHBhdGggY2xhc3M9ImpwLWljb24tYnJhbmQwIGpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iIzNGNTFCNSIgZD0iTTIuMiAyLjJ2MTcuNWgxNy41bC4xLTE3LjVIMi4yem0xMi4xIDIuMmMxLjIgMCAyLjIgMSAyLjIgMi4ycy0xIDIuMi0yLjIgMi4yLTIuMi0xLTIuMi0yLjIgMS0yLjIgMi4yLTIuMnpNNC40IDE3LjZsMy4zLTguOCAzLjMgNi42IDIuMi0zLjIgNC40IDUuNEg0LjR6Ii8+Cjwvc3ZnPgo=);
|
||
--jp-icon-info: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDUwLjk3OCA1MC45NzgiPgoJPGcgY2xhc3M9ImpwLWljb24zIiBmaWxsPSIjNjE2MTYxIj4KCQk8cGF0aCBkPSJNNDMuNTIsNy40NThDMzguNzExLDIuNjQ4LDMyLjMwNywwLDI1LjQ4OSwwQzE4LjY3LDAsMTIuMjY2LDIuNjQ4LDcuNDU4LDcuNDU4CgkJCWMtOS45NDMsOS45NDEtOS45NDMsMjYuMTE5LDAsMzYuMDYyYzQuODA5LDQuODA5LDExLjIxMiw3LjQ1NiwxOC4wMzEsNy40NThjMCwwLDAuMDAxLDAsMC4wMDIsMAoJCQljNi44MTYsMCwxMy4yMjEtMi42NDgsMTguMDI5LTcuNDU4YzQuODA5LTQuODA5LDcuNDU3LTExLjIxMiw3LjQ1Ny0xOC4wM0M1MC45NzcsMTguNjcsNDguMzI4LDEyLjI2Niw0My41Miw3LjQ1OHoKCQkJIE00Mi4xMDYsNDIuMTA1Yy00LjQzMiw0LjQzMS0xMC4zMzIsNi44NzItMTYuNjE1LDYuODcyaC0wLjAwMmMtNi4yODUtMC4wMDEtMTIuMTg3LTIuNDQxLTE2LjYxNy02Ljg3MgoJCQljLTkuMTYyLTkuMTYzLTkuMTYyLTI0LjA3MSwwLTMzLjIzM0MxMy4zMDMsNC40NCwxOS4yMDQsMiwyNS40ODksMmM2LjI4NCwwLDEyLjE4NiwyLjQ0LDE2LjYxNyw2Ljg3MgoJCQljNC40MzEsNC40MzEsNi44NzEsMTAuMzMyLDYuODcxLDE2LjYxN0M0OC45NzcsMzEuNzcyLDQ2LjUzNiwzNy42NzUsNDIuMTA2LDQyLjEwNXoiLz4KCQk8cGF0aCBkPSJNMjMuNTc4LDMyLjIxOGMtMC4wMjMtMS43MzQsMC4xNDMtMy4wNTksMC40OTYtMy45NzJjMC4zNTMtMC45MTMsMS4xMS0xLjk5NywyLjI3Mi0zLjI1MwoJCQljMC40NjgtMC41MzYsMC45MjMtMS4wNjIsMS4zNjctMS41NzVjMC42MjYtMC43NTMsMS4xMDQtMS40NzgsMS40MzYtMi4xNzVjMC4zMzEtMC43MDcsMC40OTUtMS41NDEsMC40OTUtMi41CgkJCWMwLTEuMDk2LTAuMjYtMi4wODgtMC43NzktMi45NzljLTAuNTY1LTAuODc5LTEuNTAxLTEuMzM2LTIuODA2LTEuMzY5Yy0xLjgwMiwwLjA1Ny0yLjk4NSwwLjY2Ny0zLjU1LDEuODMyCgkJCWMtMC4zMDEsMC41MzUtMC41MDMsMS4xNDEtMC42MDcsMS44MTRjLTAuMTM5LDAuNzA3LTAuMjA3LDEuNDMyLTAuMjA3LDIuMTc0aC0yLjkzN2MtMC4wOTEtMi4yMDgsMC40MDctNC4xMTQsMS40OTMtNS43MTkKCQkJYzEuMDYyLTEuNjQsMi44NTUtMi40ODEsNS4zNzgtMi41MjdjMi4xNiwwLjAyMywzLjg3NCwwLjYwOCw1LjE0MSwxLjc1OGMxLjI3OCwxLjE2LDEuOTI5LDIuNzY0LDEuOTUsNC44MTEKCQkJYzAsMS4xNDItMC4xMzcsMi4xMTEtMC40MSwyLjkxMWMtMC4zMDksMC44NDUtMC43MzEsMS41OTMtMS4yNjgsMi4yNDNjLTAuNDkyLDAuNjUtMS4wNjgsMS4zMTgtMS43MywyLjAwMgoJCQljLTAuNjUsMC42OTctMS4zMTMsMS40NzktMS45ODcsMi4zNDZjLTAuMjM5LDAuMzc3LTAuNDI5LDAuNzc3LTAuNTY1LDEuMTk5Yy0wLjE2LDAuOTU5LTAuMjE3LDEuOTUxLTAuMTcxLDIuOTc5CgkJCUMyNi41ODksMzIuMjE4LDIzLjU3OCwzMi4yMTgsMjMuNTc4LDMyLjIxOHogTTIzLjU3OCwzOC4yMnYtMy40ODRoMy4wNzZ2My40ODRIMjMuNTc4eiIvPgoJPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-inspector: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaW5zcGVjdG9yLWljb24tY29sb3IganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMjAgNEg0Yy0xLjEgMC0xLjk5LjktMS45OSAyTDIgMThjMCAxLjEuOSAyIDIgMmgxNmMxLjEgMCAyLS45IDItMlY2YzAtMS4xLS45LTItMi0yem0tNSAxNEg0di00aDExdjR6bTAtNUg0VjloMTF2NHptNSA1aC00VjloNHY5eiIvPgo8L3N2Zz4K);
|
||
--jp-icon-json: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8ZyBjbGFzcz0ianAtanNvbi1pY29uLWNvbG9yIGpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iI0Y5QTgyNSI+CiAgICA8cGF0aCBkPSJNMjAuMiAxMS44Yy0xLjYgMC0xLjcuNS0xLjcgMSAwIC40LjEuOS4xIDEuMy4xLjUuMS45LjEgMS4zIDAgMS43LTEuNCAyLjMtMy41IDIuM2gtLjl2LTEuOWguNWMxLjEgMCAxLjQgMCAxLjQtLjggMC0uMyAwLS42LS4xLTEgMC0uNC0uMS0uOC0uMS0xLjIgMC0xLjMgMC0xLjggMS4zLTItMS4zLS4yLTEuMy0uNy0xLjMtMiAwLS40LjEtLjguMS0xLjIuMS0uNC4xLS43LjEtMSAwLS44LS40LS43LTEuNC0uOGgtLjVWNC4xaC45YzIuMiAwIDMuNS43IDMuNSAyLjMgMCAuNC0uMS45LS4xIDEuMy0uMS41LS4xLjktLjEgMS4zIDAgLjUuMiAxIDEuNyAxdjEuOHpNMS44IDEwLjFjMS42IDAgMS43LS41IDEuNy0xIDAtLjQtLjEtLjktLjEtMS4zLS4xLS41LS4xLS45LS4xLTEuMyAwLTEuNiAxLjQtMi4zIDMuNS0yLjNoLjl2MS45aC0uNWMtMSAwLTEuNCAwLTEuNC44IDAgLjMgMCAuNi4xIDEgMCAuMi4xLjYuMSAxIDAgMS4zIDAgMS44LTEuMyAyQzYgMTEuMiA2IDExLjcgNiAxM2MwIC40LS4xLjgtLjEgMS4yLS4xLjMtLjEuNy0uMSAxIDAgLjguMy44IDEuNC44aC41djEuOWgtLjljLTIuMSAwLTMuNS0uNi0zLjUtMi4zIDAtLjQuMS0uOS4xLTEuMy4xLS41LjEtLjkuMS0xLjMgMC0uNS0uMi0xLTEuNy0xdi0xLjl6Ii8+CiAgICA8Y2lyY2xlIGN4PSIxMSIgY3k9IjEzLjgiIHI9IjIuMSIvPgogICAgPGNpcmNsZSBjeD0iMTEiIGN5PSI4LjIiIHI9IjIuMSIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-julia: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDMyNSAzMDAiPgogIDxnIGNsYXNzPSJqcC1icmFuZDAganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjY2IzYzMzIj4KICAgIDxwYXRoIGQ9Ik0gMTUwLjg5ODQzOCAyMjUgQyAxNTAuODk4NDM4IDI2Ni40MjE4NzUgMTE3LjMyMDMxMiAzMDAgNzUuODk4NDM4IDMwMCBDIDM0LjQ3NjU2MiAzMDAgMC44OTg0MzggMjY2LjQyMTg3NSAwLjg5ODQzOCAyMjUgQyAwLjg5ODQzOCAxODMuNTc4MTI1IDM0LjQ3NjU2MiAxNTAgNzUuODk4NDM4IDE1MCBDIDExNy4zMjAzMTIgMTUwIDE1MC44OTg0MzggMTgzLjU3ODEyNSAxNTAuODk4NDM4IDIyNSIvPgogIDwvZz4KICA8ZyBjbGFzcz0ianAtYnJhbmQwIGpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iIzM4OTgyNiI+CiAgICA8cGF0aCBkPSJNIDIzNy41IDc1IEMgMjM3LjUgMTE2LjQyMTg3NSAyMDMuOTIxODc1IDE1MCAxNjIuNSAxNTAgQyAxMjEuMDc4MTI1IDE1MCA4Ny41IDExNi40MjE4NzUgODcuNSA3NSBDIDg3LjUgMzMuNTc4MTI1IDEyMS4wNzgxMjUgMCAxNjIuNSAwIEMgMjAzLjkyMTg3NSAwIDIzNy41IDMzLjU3ODEyNSAyMzcuNSA3NSIvPgogIDwvZz4KICA8ZyBjbGFzcz0ianAtYnJhbmQwIGpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iIzk1NThiMiI+CiAgICA8cGF0aCBkPSJNIDMyNC4xMDE1NjIgMjI1IEMgMzI0LjEwMTU2MiAyNjYuNDIxODc1IDI5MC41MjM0MzggMzAwIDI0OS4xMDE1NjIgMzAwIEMgMjA3LjY3OTY4OCAzMDAgMTc0LjEwMTU2MiAyNjYuNDIxODc1IDE3NC4xMDE1NjIgMjI1IEMgMTc0LjEwMTU2MiAxODMuNTc4MTI1IDIwNy42Nzk2ODggMTUwIDI0OS4xMDE1NjIgMTUwIEMgMjkwLjUyMzQzOCAxNTAgMzI0LjEwMTU2MiAxODMuNTc4MTI1IDMyNC4xMDE1NjIgMjI1Ii8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-jupyter-favicon: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUyIiBoZWlnaHQ9IjE2NSIgdmlld0JveD0iMCAwIDE1MiAxNjUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgPGcgY2xhc3M9ImpwLWp1cHl0ZXItaWNvbi1jb2xvciIgZmlsbD0iI0YzNzcyNiI+CiAgICA8cGF0aCB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjA3ODk0NywgMTEwLjU4MjkyNykiIGQ9Ik03NS45NDIyODQyLDI5LjU4MDQ1NjEgQzQzLjMwMjM5NDcsMjkuNTgwNDU2MSAxNC43OTY3ODMyLDE3LjY1MzQ2MzQgMCwwIEM1LjUxMDgzMjExLDE1Ljg0MDY4MjkgMTUuNzgxNTM4OSwyOS41NjY3NzMyIDI5LjM5MDQ5NDcsMzkuMjc4NDE3MSBDNDIuOTk5Nyw0OC45ODk4NTM3IDU5LjI3MzcsNTQuMjA2NzgwNSA3NS45NjA1Nzg5LDU0LjIwNjc4MDUgQzkyLjY0NzQ1NzksNTQuMjA2NzgwNSAxMDguOTIxNDU4LDQ4Ljk4OTg1MzcgMTIyLjUzMDY2MywzOS4yNzg0MTcxIEMxMzYuMTM5NDUzLDI5LjU2Njc3MzIgMTQ2LjQxMDI4NCwxNS44NDA2ODI5IDE1MS45MjExNTgsMCBDMTM3LjA4Nzg2OCwxNy42NTM0NjM0IDEwOC41ODI1ODksMjkuNTgwNDU2MSA3NS45NDIyODQyLDI5LjU4MDQ1NjEgTDc1Ljk0MjI4NDIsMjkuNTgwNDU2MSBaIiAvPgogICAgPHBhdGggdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC4wMzczNjgsIDAuNzA0ODc4KSIgZD0iTTc1Ljk3ODQ1NzksMjQuNjI2NDA3MyBDMTA4LjYxODc2MywyNC42MjY0MDczIDEzNy4xMjQ0NTgsMzYuNTUzNDQxNSAxNTEuOTIxMTU4LDU0LjIwNjc4MDUgQzE0Ni40MTAyODQsMzguMzY2MjIyIDEzNi4xMzk0NTMsMjQuNjQwMTMxNyAxMjIuNTMwNjYzLDE0LjkyODQ4NzggQzEwOC45MjE0NTgsNS4yMTY4NDM5IDkyLjY0NzQ1NzksMCA3NS45NjA1Nzg5LDAgQzU5LjI3MzcsMCA0Mi45OTk3LDUuMjE2ODQzOSAyOS4zOTA0OTQ3LDE0LjkyODQ4NzggQzE1Ljc4MTUzODksMjQuNjQwMTMxNyA1LjUxMDgzMjExLDM4LjM2NjIyMiAwLDU0LjIwNjc4MDUgQzE0LjgzMzA4MTYsMzYuNTg5OTI5MyA0My4zMzg1Njg0LDI0LjYyNjQwNzMgNzUuOTc4NDU3OSwyNC42MjY0MDczIEw3NS45Nzg0NTc5LDI0LjYyNjQwNzMgWiIgLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-jupyter: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzkiIGhlaWdodD0iNTEiIHZpZXdCb3g9IjAgMCAzOSA1MSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTYzOCAtMjI4MSkiPgogICAgIDxnIGNsYXNzPSJqcC1qdXB5dGVyLWljb24tY29sb3IiIGZpbGw9IiNGMzc3MjYiPgogICAgICA8cGF0aCB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNjM5Ljc0IDIzMTEuOTgpIiBkPSJNIDE4LjI2NDYgNy4xMzQxMUMgMTAuNDE0NSA3LjEzNDExIDMuNTU4NzIgNC4yNTc2IDAgMEMgMS4zMjUzOSAzLjgyMDQgMy43OTU1NiA3LjEzMDgxIDcuMDY4NiA5LjQ3MzAzQyAxMC4zNDE3IDExLjgxNTIgMTQuMjU1NyAxMy4wNzM0IDE4LjI2OSAxMy4wNzM0QyAyMi4yODIzIDEzLjA3MzQgMjYuMTk2MyAxMS44MTUyIDI5LjQ2OTQgOS40NzMwM0MgMzIuNzQyNCA3LjEzMDgxIDM1LjIxMjYgMy44MjA0IDM2LjUzOCAwQyAzMi45NzA1IDQuMjU3NiAyNi4xMTQ4IDcuMTM0MTEgMTguMjY0NiA3LjEzNDExWiIvPgogICAgICA8cGF0aCB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNjM5LjczIDIyODUuNDgpIiBkPSJNIDE4LjI3MzMgNS45MzkzMUMgMjYuMTIzNSA1LjkzOTMxIDMyLjk3OTMgOC44MTU4MyAzNi41MzggMTMuMDczNEMgMzUuMjEyNiA5LjI1MzAzIDMyLjc0MjQgNS45NDI2MiAyOS40Njk0IDMuNjAwNEMgMjYuMTk2MyAxLjI1ODE4IDIyLjI4MjMgMCAxOC4yNjkgMEMgMTQuMjU1NyAwIDEwLjM0MTcgMS4yNTgxOCA3LjA2ODYgMy42MDA0QyAzLjc5NTU2IDUuOTQyNjIgMS4zMjUzOSA5LjI1MzAzIDAgMTMuMDczNEMgMy41Njc0NSA4LjgyNDYzIDEwLjQyMzIgNS45MzkzMSAxOC4yNzMzIDUuOTM5MzFaIi8+CiAgICA8L2c+CiAgICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgICA8cGF0aCB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNjY5LjMgMjI4MS4zMSkiIGQ9Ik0gNS44OTM1MyAyLjg0NEMgNS45MTg4OSAzLjQzMTY1IDUuNzcwODUgNC4wMTM2NyA1LjQ2ODE1IDQuNTE2NDVDIDUuMTY1NDUgNS4wMTkyMiA0LjcyMTY4IDUuNDIwMTUgNC4xOTI5OSA1LjY2ODUxQyAzLjY2NDMgNS45MTY4OCAzLjA3NDQ0IDYuMDAxNTEgMi40OTgwNSA1LjkxMTcxQyAxLjkyMTY2IDUuODIxOSAxLjM4NDYzIDUuNTYxNyAwLjk1NDg5OCA1LjE2NDAxQyAwLjUyNTE3IDQuNzY2MzMgMC4yMjIwNTYgNC4yNDkwMyAwLjA4MzkwMzcgMy42Nzc1N0MgLTAuMDU0MjQ4MyAzLjEwNjExIC0wLjAyMTIzIDIuNTA2MTcgMC4xNzg3ODEgMS45NTM2NEMgMC4zNzg3OTMgMS40MDExIDAuNzM2ODA5IDAuOTIwODE3IDEuMjA3NTQgMC41NzM1MzhDIDEuNjc4MjYgMC4yMjYyNTkgMi4yNDA1NSAwLjAyNzU5MTkgMi44MjMyNiAwLjAwMjY3MjI5QyAzLjYwMzg5IC0wLjAzMDcxMTUgNC4zNjU3MyAwLjI0OTc4OSA0Ljk0MTQyIDAuNzgyNTUxQyA1LjUxNzExIDEuMzE1MzEgNS44NTk1NiAyLjA1Njc2IDUuODkzNTMgMi44NDRaIi8+CiAgICAgIDxwYXRoIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE2MzkuOCAyMzIzLjgxKSIgZD0iTSA3LjQyNzg5IDMuNTgzMzhDIDcuNDYwMDggNC4zMjQzIDcuMjczNTUgNS4wNTgxOSA2Ljg5MTkzIDUuNjkyMTNDIDYuNTEwMzEgNi4zMjYwNyA1Ljk1MDc1IDYuODMxNTYgNS4yODQxMSA3LjE0NDZDIDQuNjE3NDcgNy40NTc2MyAzLjg3MzcxIDcuNTY0MTQgMy4xNDcwMiA3LjQ1MDYzQyAyLjQyMDMyIDcuMzM3MTIgMS43NDMzNiA3LjAwODcgMS4yMDE4NCA2LjUwNjk1QyAwLjY2MDMyOCA2LjAwNTIgMC4yNzg2MSA1LjM1MjY4IDAuMTA1MDE3IDQuNjMyMDJDIC0wLjA2ODU3NTcgMy45MTEzNSAtMC4wMjYyMzYxIDMuMTU0OTQgMC4yMjY2NzUgMi40NTg1NkMgMC40Nzk1ODcgMS43NjIxNyAwLjkzMTY5NyAxLjE1NzEzIDEuNTI1NzYgMC43MjAwMzNDIDIuMTE5ODMgMC4yODI5MzUgMi44MjkxNCAwLjAzMzQzOTUgMy41NjM4OSAwLjAwMzEzMzQ0QyA0LjU0NjY3IC0wLjAzNzQwMzMgNS41MDUyOSAwLjMxNjcwNiA2LjIyOTYxIDAuOTg3ODM1QyA2Ljk1MzkzIDEuNjU4OTYgNy4zODQ4NCAyLjU5MjM1IDcuNDI3ODkgMy41ODMzOEwgNy40Mjc4OSAzLjU4MzM4WiIvPgogICAgICA8cGF0aCB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNjM4LjM2IDIyODYuMDYpIiBkPSJNIDIuMjc0NzEgNC4zOTYyOUMgMS44NDM2MyA0LjQxNTA4IDEuNDE2NzEgNC4zMDQ0NSAxLjA0Nzk5IDQuMDc4NDNDIDAuNjc5MjY4IDMuODUyNCAwLjM4NTMyOCAzLjUyMTE0IDAuMjAzMzcxIDMuMTI2NTZDIDAuMDIxNDEzNiAyLjczMTk4IC0wLjA0MDM3OTggMi4yOTE4MyAwLjAyNTgxMTYgMS44NjE4MUMgMC4wOTIwMDMxIDEuNDMxOCAwLjI4MzIwNCAxLjAzMTI2IDAuNTc1MjEzIDAuNzEwODgzQyAwLjg2NzIyMiAwLjM5MDUxIDEuMjQ2OTEgMC4xNjQ3MDggMS42NjYyMiAwLjA2MjA1OTJDIDIuMDg1NTMgLTAuMDQwNTg5NyAyLjUyNTYxIC0wLjAxNTQ3MTQgMi45MzA3NiAwLjEzNDIzNUMgMy4zMzU5MSAwLjI4Mzk0MSAzLjY4NzkyIDAuNTUxNTA1IDMuOTQyMjIgMC45MDMwNkMgNC4xOTY1MiAxLjI1NDYyIDQuMzQxNjkgMS42NzQzNiA0LjM1OTM1IDIuMTA5MTZDIDQuMzgyOTkgMi42OTEwNyA0LjE3Njc4IDMuMjU4NjkgMy43ODU5NyAzLjY4NzQ2QyAzLjM5NTE2IDQuMTE2MjQgMi44NTE2NiA0LjM3MTE2IDIuMjc0NzEgNC4zOTYyOUwgMi4yNzQ3MSA0LjM5NjI5WiIvPgogICAgPC9nPgogIDwvZz4+Cjwvc3ZnPgo=);
|
||
--jp-icon-jupyterlab-wordmark: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIHZpZXdCb3g9IjAgMCAxODYwLjggNDc1Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjIiIGZpbGw9IiM0RTRFNEUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDQ4MC4xMzY0MDEsIDY0LjI3MTQ5MykiPgogICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC4wMDAwMDAsIDU4Ljg3NTU2NikiPgogICAgICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjA4NzYwMywgMC4xNDAyOTQpIj4KICAgICAgICA8cGF0aCBkPSJNLTQyNi45LDE2OS44YzAsNDguNy0zLjcsNjQuNy0xMy42LDc2LjRjLTEwLjgsMTAtMjUsMTUuNS0zOS43LDE1LjVsMy43LDI5IGMyMi44LDAuMyw0NC44LTcuOSw2MS45LTIzLjFjMTcuOC0xOC41LDI0LTQ0LjEsMjQtODMuM1YwSC00Mjd2MTcwLjFMLTQyNi45LDE2OS44TC00MjYuOSwxNjkuOHoiLz4KICAgICAgPC9nPgogICAgPC9nPgogICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTU1LjA0NTI5NiwgNTYuODM3MTA0KSI+CiAgICAgIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEuNTYyNDUzLCAxLjc5OTg0MikiPgogICAgICAgIDxwYXRoIGQ9Ik0tMzEyLDE0OGMwLDIxLDAsMzkuNSwxLjcsNTUuNGgtMzEuOGwtMi4xLTMzLjNoLTAuOGMtNi43LDExLjYtMTYuNCwyMS4zLTI4LDI3LjkgYy0xMS42LDYuNi0yNC44LDEwLTM4LjIsOS44Yy0zMS40LDAtNjktMTcuNy02OS04OVYwaDM2LjR2MTEyLjdjMCwzOC43LDExLjYsNjQuNyw0NC42LDY0LjdjMTAuMy0wLjIsMjAuNC0zLjUsMjguOS05LjQgYzguNS01LjksMTUuMS0xNC4zLDE4LjktMjMuOWMyLjItNi4xLDMuMy0xMi41LDMuMy0xOC45VjAuMmgzNi40VjE0OEgtMzEyTC0zMTIsMTQ4eiIvPgogICAgICA8L2c+CiAgICA8L2c+CiAgICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzOTAuMDEzMzIyLCA1My40Nzk2MzgpIj4KICAgICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMS43MDY0NTgsIDAuMjMxNDI1KSI+CiAgICAgICAgPHBhdGggZD0iTS00NzguNiw3MS40YzAtMjYtMC44LTQ3LTEuNy02Ni43aDMyLjdsMS43LDM0LjhoMC44YzcuMS0xMi41LDE3LjUtMjIuOCwzMC4xLTI5LjcgYzEyLjUtNywyNi43LTEwLjMsNDEtOS44YzQ4LjMsMCw4NC43LDQxLjcsODQuNywxMDMuM2MwLDczLjEtNDMuNywxMDkuMi05MSwxMDkuMmMtMTIuMSwwLjUtMjQuMi0yLjItMzUtNy44IGMtMTAuOC01LjYtMTkuOS0xMy45LTI2LjYtMjQuMmgtMC44VjI5MWgtMzZ2LTIyMEwtNDc4LjYsNzEuNEwtNDc4LjYsNzEuNHogTS00NDIuNiwxMjUuNmMwLjEsNS4xLDAuNiwxMC4xLDEuNywxNS4xIGMzLDEyLjMsOS45LDIzLjMsMTkuOCwzMS4xYzkuOSw3LjgsMjIuMSwxMi4xLDM0LjcsMTIuMWMzOC41LDAsNjAuNy0zMS45LDYwLjctNzguNWMwLTQwLjctMjEuMS03NS42LTU5LjUtNzUuNiBjLTEyLjksMC40LTI1LjMsNS4xLTM1LjMsMTMuNGMtOS45LDguMy0xNi45LDE5LjctMTkuNiwzMi40Yy0xLjUsNC45LTIuMywxMC0yLjUsMTUuMVYxMjUuNkwtNDQyLjYsMTI1LjZMLTQ0Mi42LDEyNS42eiIvPgogICAgICA8L2c+CiAgICA8L2c+CiAgICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2MDYuNzQwNzI2LCA1Ni44MzcxMDQpIj4KICAgICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC43NTEyMjYsIDEuOTg5Mjk5KSI+CiAgICAgICAgPHBhdGggZD0iTS00NDAuOCwwbDQzLjcsMTIwLjFjNC41LDEzLjQsOS41LDI5LjQsMTIuOCw0MS43aDAuOGMzLjctMTIuMiw3LjktMjcuNywxMi44LTQyLjQgbDM5LjctMTE5LjJoMzguNUwtMzQ2LjksMTQ1Yy0yNiw2OS43LTQzLjcsMTA1LjQtNjguNiwxMjcuMmMtMTIuNSwxMS43LTI3LjksMjAtNDQuNiwyMy45bC05LjEtMzEuMSBjMTEuNy0zLjksMjIuNS0xMC4xLDMxLjgtMTguMWMxMy4yLTExLjEsMjMuNy0yNS4yLDMwLjYtNDEuMmMxLjUtMi44LDIuNS01LjcsMi45LTguOGMtMC4zLTMuMy0xLjItNi42LTIuNS05LjdMLTQ4MC4yLDAuMSBoMzkuN0wtNDQwLjgsMEwtNDQwLjgsMHoiLz4KICAgICAgPC9nPgogICAgPC9nPgogICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoODIyLjc0ODEwNCwgMC4wMDAwMDApIj4KICAgICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMS40NjQwNTAsIDAuMzc4OTE0KSI+CiAgICAgICAgPHBhdGggZD0iTS00MTMuNywwdjU4LjNoNTJ2MjguMmgtNTJWMTk2YzAsMjUsNywzOS41LDI3LjMsMzkuNWM3LjEsMC4xLDE0LjItMC43LDIxLjEtMi41IGwxLjcsMjcuN2MtMTAuMywzLjctMjEuMyw1LjQtMzIuMiw1Yy03LjMsMC40LTE0LjYtMC43LTIxLjMtMy40Yy02LjgtMi43LTEyLjktNi44LTE3LjktMTIuMWMtMTAuMy0xMC45LTE0LjEtMjktMTQuMS01Mi45IFY4Ni41aC0zMVY1OC4zaDMxVjkuNkwtNDEzLjcsMEwtNDEzLjcsMHoiLz4KICAgICAgPC9nPgogICAgPC9nPgogICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOTc0LjQzMzI4NiwgNTMuNDc5NjM4KSI+CiAgICAgIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAuOTkwMDM0LCAwLjYxMDMzOSkiPgogICAgICAgIDxwYXRoIGQ9Ik0tNDQ1LjgsMTEzYzAuOCw1MCwzMi4yLDcwLjYsNjguNiw3MC42YzE5LDAuNiwzNy45LTMsNTUuMy0xMC41bDYuMiwyNi40IGMtMjAuOSw4LjktNDMuNSwxMy4xLTY2LjIsMTIuNmMtNjEuNSwwLTk4LjMtNDEuMi05OC4zLTEwMi41Qy00ODAuMiw0OC4yLTQ0NC43LDAtMzg2LjUsMGM2NS4yLDAsODIuNyw1OC4zLDgyLjcsOTUuNyBjLTAuMSw1LjgtMC41LDExLjUtMS4yLDE3LjJoLTE0MC42SC00NDUuOEwtNDQ1LjgsMTEzeiBNLTMzOS4yLDg2LjZjMC40LTIzLjUtOS41LTYwLjEtNTAuNC02MC4xIGMtMzYuOCwwLTUyLjgsMzQuNC01NS43LDYwLjFILTMzOS4yTC0zMzkuMiw4Ni42TC0zMzkuMiw4Ni42eiIvPgogICAgICA8L2c+CiAgICA8L2c+CiAgICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjAxLjk2MTA1OCwgNTMuNDc5NjM4KSI+CiAgICAgIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEuMTc5NjQwLCAwLjcwNTA2OCkiPgogICAgICAgIDxwYXRoIGQ9Ik0tNDc4LjYsNjhjMC0yMy45LTAuNC00NC41LTEuNy02My40aDMxLjhsMS4yLDM5LjloMS43YzkuMS0yNy4zLDMxLTQ0LjUsNTUuMy00NC41IGMzLjUtMC4xLDcsMC40LDEwLjMsMS4ydjM0LjhjLTQuMS0wLjktOC4yLTEuMy0xMi40LTEuMmMtMjUuNiwwLTQzLjcsMTkuNy00OC43LDQ3LjRjLTEsNS43LTEuNiwxMS41LTEuNywxNy4ydjEwOC4zaC0zNlY2OCBMLTQ3OC42LDY4eiIvPgogICAgICA8L2c+CiAgICA8L2c+CiAgPC9nPgoKICA8ZyBjbGFzcz0ianAtaWNvbi13YXJuMCIgZmlsbD0iI0YzNzcyNiI+CiAgICA8cGF0aCBkPSJNMTM1Mi4zLDMyNi4yaDM3VjI4aC0zN1YzMjYuMnogTTE2MDQuOCwzMjYuMmMtMi41LTEzLjktMy40LTMxLjEtMy40LTQ4Ljd2LTc2IGMwLTQwLjctMTUuMS04My4xLTc3LjMtODMuMWMtMjUuNiwwLTUwLDcuMS02Ni44LDE4LjFsOC40LDI0LjRjMTQuMy05LjIsMzQtMTUuMSw1My0xNS4xYzQxLjYsMCw0Ni4yLDMwLjIsNDYuMiw0N3Y0LjIgYy03OC42LTAuNC0xMjIuMywyNi41LTEyMi4zLDc1LjZjMCwyOS40LDIxLDU4LjQsNjIuMiw1OC40YzI5LDAsNTAuOS0xNC4zLDYyLjItMzAuMmgxLjNsMi45LDI1LjZIMTYwNC44eiBNMTU2NS43LDI1Ny43IGMwLDMuOC0wLjgsOC0yLjEsMTEuOGMtNS45LDE3LjItMjIuNywzNC00OS4yLDM0Yy0xOC45LDAtMzQuOS0xMS4zLTM0LjktMzUuM2MwLTM5LjUsNDUuOC00Ni42LDg2LjItNDUuOFYyNTcuN3ogTTE2OTguNSwzMjYuMiBsMS43LTMzLjZoMS4zYzE1LjEsMjYuOSwzOC43LDM4LjIsNjguMSwzOC4yYzQ1LjQsMCw5MS4yLTM2LjEsOTEuMi0xMDguOGMwLjQtNjEuNy0zNS4zLTEwMy43LTg1LjctMTAzLjcgYy0zMi44LDAtNTYuMywxNC43LTY5LjMsMzcuNGgtMC44VjI4aC0zNi42djI0NS43YzAsMTguMS0wLjgsMzguNi0xLjcsNTIuNUgxNjk4LjV6IE0xNzA0LjgsMjA4LjJjMC01LjksMS4zLTEwLjksMi4xLTE1LjEgYzcuNi0yOC4xLDMxLjEtNDUuNCw1Ni4zLTQ1LjRjMzkuNSwwLDYwLjUsMzQuOSw2MC41LDc1LjZjMCw0Ni42LTIzLjEsNzguMS02MS44LDc4LjFjLTI2LjksMC00OC4zLTE3LjYtNTUuNS00My4zIGMtMC44LTQuMi0xLjctOC44LTEuNy0xMy40VjIwOC4yeiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-kernel: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uMiIgZmlsbD0iIzYxNjE2MSIgZD0iTTE1IDlIOXY2aDZWOXptLTIgNGgtMnYtMmgydjJ6bTgtMlY5aC0yVjdjMC0xLjEtLjktMi0yLTJoLTJWM2gtMnYyaC0yVjNIOXYySDdjLTEuMSAwLTIgLjktMiAydjJIM3YyaDJ2MkgzdjJoMnYyYzAgMS4xLjkgMiAyIDJoMnYyaDJ2LTJoMnYyaDJ2LTJoMmMxLjEgMCAyLS45IDItMnYtMmgydi0yaC0ydi0yaDJ6bS00IDZIN1Y3aDEwdjEweiIvPgo8L3N2Zz4K);
|
||
--jp-icon-keyboard: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMjAgNUg0Yy0xLjEgMC0xLjk5LjktMS45OSAyTDIgMTdjMCAxLjEuOSAyIDIgMmgxNmMxLjEgMCAyLS45IDItMlY3YzAtMS4xLS45LTItMi0yem0tOSAzaDJ2MmgtMlY4em0wIDNoMnYyaC0ydi0yek04IDhoMnYySDhWOHptMCAzaDJ2Mkg4di0yem0tMSAySDV2LTJoMnYyem0wLTNINVY4aDJ2MnptOSA3SDh2LTJoOHYyem0wLTRoLTJ2LTJoMnYyem0wLTNoLTJWOGgydjJ6bTMgM2gtMnYtMmgydjJ6bTAtM2gtMlY4aDJ2MnoiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-launch: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMzIgMzIiIHdpZHRoPSIzMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxwYXRoIGQ9Ik0yNiwyOEg2YTIuMDAyNywyLjAwMjcsMCwwLDEtMi0yVjZBMi4wMDI3LDIuMDAyNywwLDAsMSw2LDRIMTZWNkg2VjI2SDI2VjE2aDJWMjZBMi4wMDI3LDIuMDAyNywwLDAsMSwyNiwyOFoiLz4KICAgIDxwb2x5Z29uIHBvaW50cz0iMjAgMiAyMCA0IDI2LjU4NiA0IDE4IDEyLjU4NiAxOS40MTQgMTQgMjggNS40MTQgMjggMTIgMzAgMTIgMzAgMiAyMCAyIi8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-launcher: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMTkgMTlINVY1aDdWM0g1YTIgMiAwIDAwLTIgMnYxNGEyIDIgMCAwMDIgMmgxNGMxLjEgMCAyLS45IDItMnYtN2gtMnY3ek0xNCAzdjJoMy41OWwtOS44MyA5LjgzIDEuNDEgMS40MUwxOSA2LjQxVjEwaDJWM2gtN3oiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-line-form: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICAgIDxwYXRoIGZpbGw9IndoaXRlIiBkPSJNNS44OCA0LjEyTDEzLjc2IDEybC03Ljg4IDcuODhMOCAyMmwxMC0xMEw4IDJ6Ii8+Cjwvc3ZnPgo=);
|
||
--jp-icon-link: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTMuOSAxMmMwLTEuNzEgMS4zOS0zLjEgMy4xLTMuMWg0VjdIN2MtMi43NiAwLTUgMi4yNC01IDVzMi4yNCA1IDUgNWg0di0xLjlIN2MtMS43MSAwLTMuMS0xLjM5LTMuMS0zLjF6TTggMTNoOHYtMkg4djJ6bTktNmgtNHYxLjloNGMxLjcxIDAgMy4xIDEuMzkgMy4xIDMuMXMtMS4zOSAzLjEtMy4xIDMuMWgtNFYxN2g0YzIuNzYgMCA1LTIuMjQgNS01cy0yLjI0LTUtNS01eiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-list: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uMiBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiM2MTYxNjEiIGQ9Ik0xOSA1djE0SDVWNWgxNG0xLjEtMkgzLjljLS41IDAtLjkuNC0uOS45djE2LjJjMCAuNC40LjkuOS45aDE2LjJjLjQgMCAuOS0uNS45LS45VjMuOWMwLS41LS41LS45LS45LS45ek0xMSA3aDZ2MmgtNlY3em0wIDRoNnYyaC02di0yem0wIDRoNnYyaC02ek03IDdoMnYySDd6bTAgNGgydjJIN3ptMCA0aDJ2Mkg3eiIvPgo8L3N2Zz4K);
|
||
--jp-icon-markdown: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1jb250cmFzdDAganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjN0IxRkEyIiBkPSJNNSAxNC45aDEybC02LjEgNnptOS40LTYuOGMwLTEuMy0uMS0yLjktLjEtNC41LS40IDEuNC0uOSAyLjktMS4zIDQuM2wtMS4zIDQuM2gtMkw4LjUgNy45Yy0uNC0xLjMtLjctMi45LTEtNC4zLS4xIDEuNi0uMSAzLjItLjIgNC42TDcgMTIuNEg0LjhsLjctMTFoMy4zTDEwIDVjLjQgMS4yLjcgMi43IDEgMy45LjMtMS4yLjctMi42IDEtMy45bDEuMi0zLjdoMy4zbC42IDExaC0yLjRsLS4zLTQuMnoiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-move-down: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggY2xhc3M9ImpwLWljb24zIiBkPSJNMTIuNDcxIDcuNTI4OTlDMTIuNzYzMiA3LjIzNjg0IDEyLjc2MzIgNi43NjMxNiAxMi40NzEgNi40NzEwMVY2LjQ3MTAxQzEyLjE3OSA2LjE3OTA1IDExLjcwNTcgNi4xNzg4NCAxMS40MTM1IDYuNDcwNTRMNy43NSAxMC4xMjc1VjEuNzVDNy43NSAxLjMzNTc5IDcuNDE0MjEgMSA3IDFWMUM2LjU4NTc5IDEgNi4yNSAxLjMzNTc5IDYuMjUgMS43NVYxMC4xMjc1TDIuNTk3MjYgNi40NjgyMkMyLjMwMzM4IDYuMTczODEgMS44MjY0MSA2LjE3MzU5IDEuNTMyMjYgNi40Njc3NFY2LjQ2Nzc0QzEuMjM4MyA2Ljc2MTcgMS4yMzgzIDcuMjM4MyAxLjUzMjI2IDcuNTMyMjZMNi4yOTI4OSAxMi4yOTI5QzYuNjgzNDIgMTIuNjgzNCA3LjMxNjU4IDEyLjY4MzQgNy43MDcxMSAxMi4yOTI5TDEyLjQ3MSA3LjUyODk5WiIgZmlsbD0iIzYxNjE2MSIvPgo8L3N2Zz4K);
|
||
--jp-icon-move-up: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggY2xhc3M9ImpwLWljb24zIiBkPSJNMS41Mjg5OSA2LjQ3MTAxQzEuMjM2ODQgNi43NjMxNiAxLjIzNjg0IDcuMjM2ODQgMS41Mjg5OSA3LjUyODk5VjcuNTI4OTlDMS44MjA5NSA3LjgyMDk1IDIuMjk0MjYgNy44MjExNiAyLjU4NjQ5IDcuNTI5NDZMNi4yNSAzLjg3MjVWMTIuMjVDNi4yNSAxMi42NjQyIDYuNTg1NzkgMTMgNyAxM1YxM0M3LjQxNDIxIDEzIDcuNzUgMTIuNjY0MiA3Ljc1IDEyLjI1VjMuODcyNUwxMS40MDI3IDcuNTMxNzhDMTEuNjk2NiA3LjgyNjE5IDEyLjE3MzYgNy44MjY0MSAxMi40Njc3IDcuNTMyMjZWNy41MzIyNkMxMi43NjE3IDcuMjM4MyAxMi43NjE3IDYuNzYxNyAxMi40Njc3IDYuNDY3NzRMNy43MDcxMSAxLjcwNzExQzcuMzE2NTggMS4zMTY1OCA2LjY4MzQyIDEuMzE2NTggNi4yOTI4OSAxLjcwNzExTDEuNTI4OTkgNi40NzEwMVoiIGZpbGw9IiM2MTYxNjEiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-new-folder: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTIwIDZoLThsLTItMkg0Yy0xLjExIDAtMS45OS44OS0xLjk5IDJMMiAxOGMwIDEuMTEuODkgMiAyIDJoMTZjMS4xMSAwIDItLjg5IDItMlY4YzAtMS4xMS0uODktMi0yLTJ6bS0xIDhoLTN2M2gtMnYtM2gtM3YtMmgzVjloMnYzaDN2MnoiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-not-trusted: url(data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI1IDI1Ij4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uMiIgc3Ryb2tlPSIjMzMzMzMzIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMgMykiIGQ9Ik0xLjg2MDk0IDExLjQ0MDlDMC44MjY0NDggOC43NzAyNyAwLjg2Mzc3OSA2LjA1NzY0IDEuMjQ5MDcgNC4xOTkzMkMyLjQ4MjA2IDMuOTMzNDcgNC4wODA2OCAzLjQwMzQ3IDUuNjAxMDIgMi44NDQ5QzcuMjM1NDkgMi4yNDQ0IDguODU2NjYgMS41ODE1IDkuOTg3NiAxLjA5NTM5QzExLjA1OTcgMS41ODM0MSAxMi42MDk0IDIuMjQ0NCAxNC4yMTggMi44NDMzOUMxNS43NTAzIDMuNDEzOTQgMTcuMzk5NSAzLjk1MjU4IDE4Ljc1MzkgNC4yMTM4NUMxOS4xMzY0IDYuMDcxNzcgMTkuMTcwOSA4Ljc3NzIyIDE4LjEzOSAxMS40NDA5QzE3LjAzMDMgMTQuMzAzMiAxNC42NjY4IDE3LjE4NDQgOS45OTk5OSAxOC45MzU0QzUuMzMzMTkgMTcuMTg0NCAyLjk2OTY4IDE0LjMwMzIgMS44NjA5NCAxMS40NDA5WiIvPgogICAgPHBhdGggY2xhc3M9ImpwLWljb24yIiBzdHJva2U9IiMzMzMzMzMiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOS4zMTU5MiA5LjMyMDMxKSIgZD0iTTcuMzY4NDIgMEwwIDcuMzY0NzkiLz4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uMiIgc3Ryb2tlPSIjMzMzMzMzIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDkuMzE1OTIgMTYuNjgzNikgc2NhbGUoMSAtMSkiIGQ9Ik03LjM2ODQyIDBMMCA3LjM2NDc5Ii8+Cjwvc3ZnPgo=);
|
||
--jp-icon-notebook: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8ZyBjbGFzcz0ianAtbm90ZWJvb2staWNvbi1jb2xvciBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiNFRjZDMDAiPgogICAgPHBhdGggZD0iTTE4LjcgMy4zdjE1LjRIMy4zVjMuM2gxNS40bTEuNS0xLjVIMS44djE4LjNoMTguM2wuMS0xOC4zeiIvPgogICAgPHBhdGggZD0iTTE2LjUgMTYuNWwtNS40LTQuMy01LjYgNC4zdi0xMWgxMXoiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-numbering: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyOCAyOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CgkJPHBhdGggZD0iTTQgMTlINlYxOS41SDVWMjAuNUg2VjIxSDRWMjJIN1YxOEg0VjE5Wk01IDEwSDZWNkg0VjdINVYxMFpNNCAxM0g1LjhMNCAxNS4xVjE2SDdWMTVINS4yTDcgMTIuOVYxMkg0VjEzWk05IDdWOUgyM1Y3SDlaTTkgMjFIMjNWMTlIOVYyMVpNOSAxNUgyM1YxM0g5VjE1WiIvPgoJPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-offline-bolt: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE2Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTEyIDIuMDJjLTUuNTEgMC05Ljk4IDQuNDctOS45OCA5Ljk4czQuNDcgOS45OCA5Ljk4IDkuOTggOS45OC00LjQ3IDkuOTgtOS45OFMxNy41MSAyLjAyIDEyIDIuMDJ6TTExLjQ4IDIwdi02LjI2SDhMMTMgNHY2LjI2aDMuMzVMMTEuNDggMjB6Ii8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-palette: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTE4IDEzVjIwSDRWNkg5LjAyQzkuMDcgNS4yOSA5LjI0IDQuNjIgOS41IDRINEMyLjkgNCAyIDQuOSAyIDZWMjBDMiAyMS4xIDIuOSAyMiA0IDIySDE4QzE5LjEgMjIgMjAgMjEuMSAyMCAyMFYxNUwxOCAxM1pNMTkuMyA4Ljg5QzE5Ljc0IDguMTkgMjAgNy4zOCAyMCA2LjVDMjAgNC4wMSAxNy45OSAyIDE1LjUgMkMxMy4wMSAyIDExIDQuMDEgMTEgNi41QzExIDguOTkgMTMuMDEgMTEgMTUuNDkgMTFDMTYuMzcgMTEgMTcuMTkgMTAuNzQgMTcuODggMTAuM0wyMSAxMy40MkwyMi40MiAxMkwxOS4zIDguODlaTTE1LjUgOUMxNC4xMiA5IDEzIDcuODggMTMgNi41QzEzIDUuMTIgMTQuMTIgNCAxNS41IDRDMTYuODggNCAxOCA1LjEyIDE4IDYuNUMxOCA3Ljg4IDE2Ljg4IDkgMTUuNSA5WiIvPgogICAgPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00IDZIOS4wMTg5NEM5LjAwNjM5IDYuMTY1MDIgOSA2LjMzMTc2IDkgNi41QzkgOC44MTU3NyAxMC4yMTEgMTAuODQ4NyAxMi4wMzQzIDEySDlWMTRIMTZWMTIuOTgxMUMxNi41NzAzIDEyLjkzNzcgMTcuMTIgMTIuODIwNyAxNy42Mzk2IDEyLjYzOTZMMTggMTNWMjBINFY2Wk04IDhINlYxMEg4VjhaTTYgMTJIOFYxNEg2VjEyWk04IDE2SDZWMThIOFYxNlpNOSAxNkgxNlYxOEg5VjE2WiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-paste: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTE5IDJoLTQuMThDMTQuNC44NCAxMy4zIDAgMTIgMGMtMS4zIDAtMi40Ljg0LTIuODIgMkg1Yy0xLjEgMC0yIC45LTIgMnYxNmMwIDEuMS45IDIgMiAyaDE0YzEuMSAwIDItLjkgMi0yVjRjMC0xLjEtLjktMi0yLTJ6bS03IDBjLjU1IDAgMSAuNDUgMSAxcy0uNDUgMS0xIDEtMS0uNDUtMS0xIC40NS0xIDEtMXptNyAxOEg1VjRoMnYzaDEwVjRoMnYxNnoiLz4KICAgIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-pdf: url(data:image/svg+xml;base64,PHN2ZwogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMiAyMiIgd2lkdGg9IjE2Ij4KICAgIDxwYXRoIHRyYW5zZm9ybT0icm90YXRlKDQ1KSIgY2xhc3M9ImpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iI0ZGMkEyQSIKICAgICAgIGQ9Im0gMjIuMzQ0MzY5LC0zLjAxNjM2NDIgaCA1LjYzODYwNCB2IDEuNTc5MjQzMyBoIC0zLjU0OTIyNyB2IDEuNTA4NjkyOTkgaCAzLjMzNzU3NiBWIDEuNjUwODE1NCBoIC0zLjMzNzU3NiB2IDMuNDM1MjYxMyBoIC0yLjA4OTM3NyB6IG0gLTcuMTM2NDQ0LDEuNTc5MjQzMyB2IDQuOTQzOTU0MyBoIDAuNzQ4OTIgcSAxLjI4MDc2MSwwIDEuOTUzNzAzLC0wLjYzNDk1MzUgMC42NzgzNjksLTAuNjM0OTUzNSAwLjY3ODM2OSwtMS44NDUxNjQxIDAsLTEuMjA0NzgzNTUgLTAuNjcyOTQyLC0xLjgzNDMxMDExIC0wLjY3Mjk0MiwtMC42Mjk1MjY1OSAtMS45NTkxMywtMC42Mjk1MjY1OSB6IG0gLTIuMDg5Mzc3LC0xLjU3OTI0MzMgaCAyLjIwMzM0MyBxIDEuODQ1MTY0LDAgMi43NDYwMzksMC4yNjU5MjA3IDAuOTA2MzAxLDAuMjYwNDkzNyAxLjU1MjEwOCwwLjg5MDAyMDMgMC41Njk4MywwLjU0ODEyMjMgMC44NDY2MDUsMS4yNjQ0ODAwNiAwLjI3Njc3NCwwLjcxNjM1NzgxIDAuMjc2Nzc0LDEuNjIyNjU4OTQgMCwwLjkxNzE1NTEgLTAuMjc2Nzc0LDEuNjM4OTM5OSAtMC4yNzY3NzUsMC43MTYzNTc4IC0wLjg0NjYwNSwxLjI2NDQ4IC0wLjY1MTIzNCwwLjYyOTUyNjYgLTEuNTYyOTYyLDAuODk1NDQ3MyAtMC45MTE3MjgsMC4yNjA0OTM3IC0yLjczNTE4NSwwLjI2MDQ5MzcgaCAtMi4yMDMzNDMgeiBtIC04LjE0NTg1NjUsMCBoIDMuNDY3ODIzIHEgMS41NDY2ODE2LDAgMi4zNzE1Nzg1LDAuNjg5MjIzIDAuODMwMzI0LDAuNjgzNzk2MSAwLjgzMDMyNCwxLjk1MzcwMzE0IDAsMS4yNzUzMzM5NyAtMC44MzAzMjQsMS45NjQ1NTcwNiBRIDkuOTg3MTk2MSwyLjI3NDkxNSA4LjQ0MDUxNDUsMi4yNzQ5MTUgSCA3LjA2MjA2ODQgViA1LjA4NjA3NjcgSCA0Ljk3MjY5MTUgWiBtIDIuMDg5Mzc2OSwxLjUxNDExOTkgdiAyLjI2MzAzOTQzIGggMS4xNTU5NDEgcSAwLjYwNzgxODgsMCAwLjkzODg2MjksLTAuMjkzMDU1NDcgMC4zMzEwNDQxLC0wLjI5ODQ4MjQxIDAuMzMxMDQ0MSwtMC44NDExNzc3MiAwLC0wLjU0MjY5NTMxIC0wLjMzMTA0NDEsLTAuODM1NzUwNzQgLTAuMzMxMDQ0MSwtMC4yOTMwNTU1IC0wLjkzODg2MjksLTAuMjkzMDU1NSB6IgovPgo8L3N2Zz4K);
|
||
--jp-icon-python: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iLTEwIC0xMCAxMzEuMTYxMzYxNjk0MzM1OTQgMTMyLjM4ODk5OTkzODk2NDg0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjMzA2OTk4IiBkPSJNIDU0LjkxODc4NSw5LjE5Mjc0MjFlLTQgQyA1MC4zMzUxMzIsMC4wMjIyMTcyNyA0NS45NTc4NDYsMC40MTMxMzY5NyA0Mi4xMDYyODUsMS4wOTQ2NjkzIDMwLjc2MDA2OSwzLjA5OTE3MzEgMjguNzAwMDM2LDcuMjk0NzcxNCAyOC43MDAwMzUsMTUuMDMyMTY5IHYgMTAuMjE4NzUgaCAyNi44MTI1IHYgMy40MDYyNSBoIC0yNi44MTI1IC0xMC4wNjI1IGMgLTcuNzkyNDU5LDAgLTE0LjYxNTc1ODgsNC42ODM3MTcgLTE2Ljc0OTk5OTgsMTMuNTkzNzUgLTIuNDYxODE5OTgsMTAuMjEyOTY2IC0yLjU3MTAxNTA4LDE2LjU4NjAyMyAwLDI3LjI1IDEuOTA1OTI4Myw3LjkzNzg1MiA2LjQ1NzU0MzIsMTMuNTkzNzQ4IDE0LjI0OTk5OTgsMTMuNTkzNzUgaCA5LjIxODc1IHYgLTEyLjI1IGMgMCwtOC44NDk5MDIgNy42NTcxNDQsLTE2LjY1NjI0OCAxNi43NSwtMTYuNjU2MjUgaCAyNi43ODEyNSBjIDcuNDU0OTUxLDAgMTMuNDA2MjUzLC02LjEzODE2NCAxMy40MDYyNSwtMTMuNjI1IHYgLTI1LjUzMTI1IGMgMCwtNy4yNjYzMzg2IC02LjEyOTk4LC0xMi43MjQ3NzcxIC0xMy40MDYyNSwtMTMuOTM3NDk5NyBDIDY0LjI4MTU0OCwwLjMyNzk0Mzk3IDU5LjUwMjQzOCwtMC4wMjAzNzkwMyA1NC45MTg3ODUsOS4xOTI3NDIxZS00IFogbSAtMTQuNSw4LjIxODc1MDEyNTc5IGMgMi43Njk1NDcsMCA1LjAzMTI1LDIuMjk4NjQ1NiA1LjAzMTI1LDUuMTI0OTk5NiAtMmUtNiwyLjgxNjMzNiAtMi4yNjE3MDMsNS4wOTM3NSAtNS4wMzEyNSw1LjA5Mzc1IC0yLjc3OTQ3NiwtMWUtNiAtNS4wMzEyNSwtMi4yNzc0MTUgLTUuMDMxMjUsLTUuMDkzNzUgLTEwZS03LC0yLjgyNjM1MyAyLjI1MTc3NCwtNS4xMjQ5OTk2IDUuMDMxMjUsLTUuMTI0OTk5NiB6Ii8+CiAgPHBhdGggY2xhc3M9ImpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iI2ZmZDQzYiIgZD0ibSA4NS42Mzc1MzUsMjguNjU3MTY5IHYgMTEuOTA2MjUgYyAwLDkuMjMwNzU1IC03LjgyNTg5NSwxNi45OTk5OTkgLTE2Ljc1LDE3IGggLTI2Ljc4MTI1IGMgLTcuMzM1ODMzLDAgLTEzLjQwNjI0OSw2LjI3ODQ4MyAtMTMuNDA2MjUsMTMuNjI1IHYgMjUuNTMxMjQ3IGMgMCw3LjI2NjM0NCA2LjMxODU4OCwxMS41NDAzMjQgMTMuNDA2MjUsMTMuNjI1MDA0IDguNDg3MzMxLDIuNDk1NjEgMTYuNjI2MjM3LDIuOTQ2NjMgMjYuNzgxMjUsMCA2Ljc1MDE1NSwtMS45NTQzOSAxMy40MDYyNTMsLTUuODg3NjEgMTMuNDA2MjUsLTEzLjYyNTAwNCBWIDg2LjUwMDkxOSBoIC0yNi43ODEyNSB2IC0zLjQwNjI1IGggMjYuNzgxMjUgMTMuNDA2MjU0IGMgNy43OTI0NjEsMCAxMC42OTYyNTEsLTUuNDM1NDA4IDEzLjQwNjI0MSwtMTMuNTkzNzUgMi43OTkzMywtOC4zOTg4ODYgMi42ODAyMiwtMTYuNDc1Nzc2IDAsLTI3LjI1IC0xLjkyNTc4LC03Ljc1NzQ0MSAtNS42MDM4NywtMTMuNTkzNzUgLTEzLjQwNjI0MSwtMTMuNTkzNzUgeiBtIC0xNS4wNjI1LDY0LjY1NjI1IGMgMi43Nzk0NzgsM2UtNiA1LjAzMTI1LDIuMjc3NDE3IDUuMDMxMjUsNS4wOTM3NDcgLTJlLTYsMi44MjYzNTQgLTIuMjUxNzc1LDUuMTI1MDA0IC01LjAzMTI1LDUuMTI1MDA0IC0yLjc2OTU1LDAgLTUuMDMxMjUsLTIuMjk4NjUgLTUuMDMxMjUsLTUuMTI1MDA0IDJlLTYsLTIuODE2MzMgMi4yNjE2OTcsLTUuMDkzNzQ3IDUuMDMxMjUsLTUuMDkzNzQ3IHoiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-r-kernel: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1jb250cmFzdDMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjMjE5NkYzIiBkPSJNNC40IDIuNWMxLjItLjEgMi45LS4zIDQuOS0uMyAyLjUgMCA0LjEuNCA1LjIgMS4zIDEgLjcgMS41IDEuOSAxLjUgMy41IDAgMi0xLjQgMy41LTIuOSA0LjEgMS4yLjQgMS43IDEuNiAyLjIgMyAuNiAxLjkgMSAzLjkgMS4zIDQuNmgtMy44Yy0uMy0uNC0uOC0xLjctMS4yLTMuN3MtMS4yLTIuNi0yLjYtMi42aC0uOXY2LjRINC40VjIuNXptMy43IDYuOWgxLjRjMS45IDAgMi45LS45IDIuOS0yLjNzLTEtMi4zLTIuOC0yLjNjLS43IDAtMS4zIDAtMS42LjJ2NC41aC4xdi0uMXoiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-react: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMTUwIDE1MCA1NDEuOSAyOTUuMyI+CiAgPGcgY2xhc3M9ImpwLWljb24tYnJhbmQyIGpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iIzYxREFGQiI+CiAgICA8cGF0aCBkPSJNNjY2LjMgMjk2LjVjMC0zMi41LTQwLjctNjMuMy0xMDMuMS04Mi40IDE0LjQtNjMuNiA4LTExNC4yLTIwLjItMTMwLjQtNi41LTMuOC0xNC4xLTUuNi0yMi40LTUuNnYyMi4zYzQuNiAwIDguMy45IDExLjQgMi42IDEzLjYgNy44IDE5LjUgMzcuNSAxNC45IDc1LjctMS4xIDkuNC0yLjkgMTkuMy01LjEgMjkuNC0xOS42LTQuOC00MS04LjUtNjMuNS0xMC45LTEzLjUtMTguNS0yNy41LTM1LjMtNDEuNi01MCAzMi42LTMwLjMgNjMuMi00Ni45IDg0LTQ2LjlWNzhjLTI3LjUgMC02My41IDE5LjYtOTkuOSA1My42LTM2LjQtMzMuOC03Mi40LTUzLjItOTkuOS01My4ydjIyLjNjMjAuNyAwIDUxLjQgMTYuNSA4NCA0Ni42LTE0IDE0LjctMjggMzEuNC00MS4zIDQ5LjktMjIuNiAyLjQtNDQgNi4xLTYzLjYgMTEtMi4zLTEwLTQtMTkuNy01LjItMjktNC43LTM4LjIgMS4xLTY3LjkgMTQuNi03NS44IDMtMS44IDYuOS0yLjYgMTEuNS0yLjZWNzguNWMtOC40IDAtMTYgMS44LTIyLjYgNS42LTI4LjEgMTYuMi0zNC40IDY2LjctMTkuOSAxMzAuMS02Mi4yIDE5LjItMTAyLjcgNDkuOS0xMDIuNyA4Mi4zIDAgMzIuNSA0MC43IDYzLjMgMTAzLjEgODIuNC0xNC40IDYzLjYtOCAxMTQuMiAyMC4yIDEzMC40IDYuNSAzLjggMTQuMSA1LjYgMjIuNSA1LjYgMjcuNSAwIDYzLjUtMTkuNiA5OS45LTUzLjYgMzYuNCAzMy44IDcyLjQgNTMuMiA5OS45IDUzLjIgOC40IDAgMTYtMS44IDIyLjYtNS42IDI4LjEtMTYuMiAzNC40LTY2LjcgMTkuOS0xMzAuMSA2Mi0xOS4xIDEwMi41LTQ5LjkgMTAyLjUtODIuM3ptLTEzMC4yLTY2LjdjLTMuNyAxMi45LTguMyAyNi4yLTEzLjUgMzkuNS00LjEtOC04LjQtMTYtMTMuMS0yNC00LjYtOC05LjUtMTUuOC0xNC40LTIzLjQgMTQuMiAyLjEgMjcuOSA0LjcgNDEgNy45em0tNDUuOCAxMDYuNWMtNy44IDEzLjUtMTUuOCAyNi4zLTI0LjEgMzguMi0xNC45IDEuMy0zMCAyLTQ1LjIgMi0xNS4xIDAtMzAuMi0uNy00NS0xLjktOC4zLTExLjktMTYuNC0yNC42LTI0LjItMzgtNy42LTEzLjEtMTQuNS0yNi40LTIwLjgtMzkuOCA2LjItMTMuNCAxMy4yLTI2LjggMjAuNy0zOS45IDcuOC0xMy41IDE1LjgtMjYuMyAyNC4xLTM4LjIgMTQuOS0xLjMgMzAtMiA0NS4yLTIgMTUuMSAwIDMwLjIuNyA0NSAxLjkgOC4zIDExLjkgMTYuNCAyNC42IDI0LjIgMzggNy42IDEzLjEgMTQuNSAyNi40IDIwLjggMzkuOC02LjMgMTMuNC0xMy4yIDI2LjgtMjAuNyAzOS45em0zMi4zLTEzYzUuNCAxMy40IDEwIDI2LjggMTMuOCAzOS44LTEzLjEgMy4yLTI2LjkgNS45LTQxLjIgOCA0LjktNy43IDkuOC0xNS42IDE0LjQtMjMuNyA0LjYtOCA4LjktMTYuMSAxMy0yNC4xek00MjEuMiA0MzBjLTkuMy05LjYtMTguNi0yMC4zLTI3LjgtMzIgOSAuNCAxOC4yLjcgMjcuNS43IDkuNCAwIDE4LjctLjIgMjcuOC0uNy05IDExLjctMTguMyAyMi40LTI3LjUgMzJ6bS03NC40LTU4LjljLTE0LjItMi4xLTI3LjktNC43LTQxLTcuOSAzLjctMTIuOSA4LjMtMjYuMiAxMy41LTM5LjUgNC4xIDggOC40IDE2IDEzLjEgMjQgNC43IDggOS41IDE1LjggMTQuNCAyMy40ek00MjAuNyAxNjNjOS4zIDkuNiAxOC42IDIwLjMgMjcuOCAzMi05LS40LTE4LjItLjctMjcuNS0uNy05LjQgMC0xOC43LjItMjcuOC43IDktMTEuNyAxOC4zLTIyLjQgMjcuNS0zMnptLTc0IDU4LjljLTQuOSA3LjctOS44IDE1LjYtMTQuNCAyMy43LTQuNiA4LTguOSAxNi0xMyAyNC01LjQtMTMuNC0xMC0yNi44LTEzLjgtMzkuOCAxMy4xLTMuMSAyNi45LTUuOCA0MS4yLTcuOXptLTkwLjUgMTI1LjJjLTM1LjQtMTUuMS01OC4zLTM0LjktNTguMy01MC42IDAtMTUuNyAyMi45LTM1LjYgNTguMy01MC42IDguNi0zLjcgMTgtNyAyNy43LTEwLjEgNS43IDE5LjYgMTMuMiA0MCAyMi41IDYwLjktOS4yIDIwLjgtMTYuNiA0MS4xLTIyLjIgNjAuNi05LjktMy4xLTE5LjMtNi41LTI4LTEwLjJ6TTMxMCA0OTBjLTEzLjYtNy44LTE5LjUtMzcuNS0xNC45LTc1LjcgMS4xLTkuNCAyLjktMTkuMyA1LjEtMjkuNCAxOS42IDQuOCA0MSA4LjUgNjMuNSAxMC45IDEzLjUgMTguNSAyNy41IDM1LjMgNDEuNiA1MC0zMi42IDMwLjMtNjMuMiA0Ni45LTg0IDQ2LjktNC41LS4xLTguMy0xLTExLjMtMi43em0yMzcuMi03Ni4yYzQuNyAzOC4yLTEuMSA2Ny45LTE0LjYgNzUuOC0zIDEuOC02LjkgMi42LTExLjUgMi42LTIwLjcgMC01MS40LTE2LjUtODQtNDYuNiAxNC0xNC43IDI4LTMxLjQgNDEuMy00OS45IDIyLjYtMi40IDQ0LTYuMSA2My42LTExIDIuMyAxMC4xIDQuMSAxOS44IDUuMiAyOS4xem0zOC41LTY2LjdjLTguNiAzLjctMTggNy0yNy43IDEwLjEtNS43LTE5LjYtMTMuMi00MC0yMi41LTYwLjkgOS4yLTIwLjggMTYuNi00MS4xIDIyLjItNjAuNiA5LjkgMy4xIDE5LjMgNi41IDI4LjEgMTAuMiAzNS40IDE1LjEgNTguMyAzNC45IDU4LjMgNTAuNi0uMSAxNS43LTIzIDM1LjYtNTguNCA1MC42ek0zMjAuOCA3OC40eiIvPgogICAgPGNpcmNsZSBjeD0iNDIwLjkiIGN5PSIyOTYuNSIgcj0iNDUuNyIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-redo: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE2Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgICA8cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PHBhdGggZD0iTTE4LjQgMTAuNkMxNi41NSA4Ljk5IDE0LjE1IDggMTEuNSA4Yy00LjY1IDAtOC41OCAzLjAzLTkuOTYgNy4yMkwzLjkgMTZjMS4wNS0zLjE5IDQuMDUtNS41IDcuNi01LjUgMS45NSAwIDMuNzMuNzIgNS4xMiAxLjg4TDEzIDE2aDlWN2wtMy42IDMuNnoiLz4KICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-refresh: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTkgMTMuNWMtMi40OSAwLTQuNS0yLjAxLTQuNS00LjVTNi41MSA0LjUgOSA0LjVjMS4yNCAwIDIuMzYuNTIgMy4xNyAxLjMzTDEwIDhoNVYzbC0xLjc2IDEuNzZDMTIuMTUgMy42OCAxMC42NiAzIDkgMyA1LjY5IDMgMy4wMSA1LjY5IDMuMDEgOVM1LjY5IDE1IDkgMTVjMi45NyAwIDUuNDMtMi4xNiA1LjktNWgtMS41MmMtLjQ2IDItMi4yNCAzLjUtNC4zOCAzLjV6Ii8+CiAgICA8L2c+Cjwvc3ZnPgo=);
|
||
--jp-icon-regex: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwIDIwIj4KICA8ZyBjbGFzcz0ianAtaWNvbjIiIGZpbGw9IiM0MTQxNDEiPgogICAgPHJlY3QgeD0iMiIgeT0iMiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ii8+CiAgPC9nPgoKICA8ZyBjbGFzcz0ianAtaWNvbi1hY2NlbnQyIiBmaWxsPSIjRkZGIj4KICAgIDxjaXJjbGUgY2xhc3M9InN0MiIgY3g9IjUuNSIgY3k9IjE0LjUiIHI9IjEuNSIvPgogICAgPHJlY3QgeD0iMTIiIHk9IjQiIGNsYXNzPSJzdDIiIHdpZHRoPSIxIiBoZWlnaHQ9IjgiLz4KICAgIDxyZWN0IHg9IjguNSIgeT0iNy41IiB0cmFuc2Zvcm09Im1hdHJpeCgwLjg2NiAtMC41IDAuNSAwLjg2NiAtMi4zMjU1IDcuMzIxOSkiIGNsYXNzPSJzdDIiIHdpZHRoPSI4IiBoZWlnaHQ9IjEiLz4KICAgIDxyZWN0IHg9IjEyIiB5PSI0IiB0cmFuc2Zvcm09Im1hdHJpeCgwLjUgLTAuODY2IDAuODY2IDAuNSAtMC42Nzc5IDE0LjgyNTIpIiBjbGFzcz0ic3QyIiB3aWR0aD0iMSIgaGVpZ2h0PSI4Ii8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-run: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTggNXYxNGwxMS03eiIvPgogICAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-running: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDUxMiA1MTIiPgogIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICA8cGF0aCBkPSJNMjU2IDhDMTE5IDggOCAxMTkgOCAyNTZzMTExIDI0OCAyNDggMjQ4IDI0OC0xMTEgMjQ4LTI0OFMzOTMgOCAyNTYgOHptOTYgMzI4YzAgOC44LTcuMiAxNi0xNiAxNkgxNzZjLTguOCAwLTE2LTcuMi0xNi0xNlYxNzZjMC04LjggNy4yLTE2IDE2LTE2aDE2MGM4LjggMCAxNiA3LjIgMTYgMTZ2MTYweiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-save: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTE3IDNINWMtMS4xMSAwLTIgLjktMiAydjE0YzAgMS4xLjg5IDIgMiAyaDE0YzEuMSAwIDItLjkgMi0yVjdsLTQtNHptLTUgMTZjLTEuNjYgMC0zLTEuMzQtMy0zczEuMzQtMyAzLTMgMyAxLjM0IDMgMy0xLjM0IDMtMyAzem0zLTEwSDVWNWgxMHY0eiIvPgogICAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-search: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTEyLjEsMTAuOWgtMC43bC0wLjItMC4yYzAuOC0wLjksMS4zLTIuMiwxLjMtMy41YzAtMy0yLjQtNS40LTUuNC01LjRTMS44LDQuMiwxLjgsNy4xczIuNCw1LjQsNS40LDUuNCBjMS4zLDAsMi41LTAuNSwzLjUtMS4zbDAuMiwwLjJ2MC43bDQuMSw0LjFsMS4yLTEuMkwxMi4xLDEwLjl6IE03LjEsMTAuOWMtMi4xLDAtMy43LTEuNy0zLjctMy43czEuNy0zLjcsMy43LTMuN3MzLjcsMS43LDMuNywzLjcgUzkuMiwxMC45LDcuMSwxMC45eiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-settings: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMTkuNDMgMTIuOThjLjA0LS4zMi4wNy0uNjQuMDctLjk4cy0uMDMtLjY2LS4wNy0uOThsMi4xMS0xLjY1Yy4xOS0uMTUuMjQtLjQyLjEyLS42NGwtMi0zLjQ2Yy0uMTItLjIyLS4zOS0uMy0uNjEtLjIybC0yLjQ5IDFjLS41Mi0uNC0xLjA4LS43My0xLjY5LS45OGwtLjM4LTIuNjVBLjQ4OC40ODggMCAwMDE0IDJoLTRjLS4yNSAwLS40Ni4xOC0uNDkuNDJsLS4zOCAyLjY1Yy0uNjEuMjUtMS4xNy41OS0xLjY5Ljk4bC0yLjQ5LTFjLS4yMy0uMDktLjQ5IDAtLjYxLjIybC0yIDMuNDZjLS4xMy4yMi0uMDcuNDkuMTIuNjRsMi4xMSAxLjY1Yy0uMDQuMzItLjA3LjY1LS4wNy45OHMuMDMuNjYuMDcuOThsLTIuMTEgMS42NWMtLjE5LjE1LS4yNC40Mi0uMTIuNjRsMiAzLjQ2Yy4xMi4yMi4zOS4zLjYxLjIybDIuNDktMWMuNTIuNCAxLjA4LjczIDEuNjkuOThsLjM4IDIuNjVjLjAzLjI0LjI0LjQyLjQ5LjQyaDRjLjI1IDAgLjQ2LS4xOC40OS0uNDJsLjM4LTIuNjVjLjYxLS4yNSAxLjE3LS41OSAxLjY5LS45OGwyLjQ5IDFjLjIzLjA5LjQ5IDAgLjYxLS4yMmwyLTMuNDZjLjEyLS4yMi4wNy0uNDktLjEyLS42NGwtMi4xMS0xLjY1ek0xMiAxNS41Yy0xLjkzIDAtMy41LTEuNTctMy41LTMuNXMxLjU3LTMuNSAzLjUtMy41IDMuNSAxLjU3IDMuNSAzLjUtMS41NyAzLjUtMy41IDMuNXoiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-share: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTSAxOCAyIEMgMTYuMzU0OTkgMiAxNSAzLjM1NDk5MDQgMTUgNSBDIDE1IDUuMTkwOTUyOSAxNS4wMjE3OTEgNS4zNzcxMjI0IDE1LjA1NjY0MSA1LjU1ODU5MzggTCA3LjkyMTg3NSA5LjcyMDcwMzEgQyA3LjM5ODUzOTkgOS4yNzc4NTM5IDYuNzMyMDc3MSA5IDYgOSBDIDQuMzU0OTkwNCA5IDMgMTAuMzU0OTkgMyAxMiBDIDMgMTMuNjQ1MDEgNC4zNTQ5OTA0IDE1IDYgMTUgQyA2LjczMjA3NzEgMTUgNy4zOTg1Mzk5IDE0LjcyMjE0NiA3LjkyMTg3NSAxNC4yNzkyOTcgTCAxNS4wNTY2NDEgMTguNDM5NDUzIEMgMTUuMDIxNTU1IDE4LjYyMTUxNCAxNSAxOC44MDgzODYgMTUgMTkgQyAxNSAyMC42NDUwMSAxNi4zNTQ5OSAyMiAxOCAyMiBDIDE5LjY0NTAxIDIyIDIxIDIwLjY0NTAxIDIxIDE5IEMgMjEgMTcuMzU0OTkgMTkuNjQ1MDEgMTYgMTggMTYgQyAxNy4yNjc0OCAxNiAxNi42MDE1OTMgMTYuMjc5MzI4IDE2LjA3ODEyNSAxNi43MjI2NTYgTCA4Ljk0MzM1OTQgMTIuNTU4NTk0IEMgOC45NzgyMDk1IDEyLjM3NzEyMiA5IDEyLjE5MDk1MyA5IDEyIEMgOSAxMS44MDkwNDcgOC45NzgyMDk1IDExLjYyMjg3OCA4Ljk0MzM1OTQgMTEuNDQxNDA2IEwgMTYuMDc4MTI1IDcuMjc5Mjk2OSBDIDE2LjYwMTQ2IDcuNzIyMTQ2MSAxNy4yNjc5MjMgOCAxOCA4IEMgMTkuNjQ1MDEgOCAyMSA2LjY0NTAwOTYgMjEgNSBDIDIxIDMuMzU0OTkwNCAxOS42NDUwMSAyIDE4IDIgeiBNIDE4IDQgQyAxOC41NjQxMjkgNCAxOSA0LjQzNTg3MDYgMTkgNSBDIDE5IDUuNTY0MTI5NCAxOC41NjQxMjkgNiAxOCA2IEMgMTcuNDM1ODcxIDYgMTcgNS41NjQxMjk0IDE3IDUgQyAxNyA0LjQzNTg3MDYgMTcuNDM1ODcxIDQgMTggNCB6IE0gNiAxMSBDIDYuNTY0MTI5NCAxMSA3IDExLjQzNTg3MSA3IDEyIEMgNyAxMi41NjQxMjkgNi41NjQxMjk0IDEzIDYgMTMgQyA1LjQzNTg3MDYgMTMgNSAxMi41NjQxMjkgNSAxMiBDIDUgMTEuNDM1ODcxIDUuNDM1ODcwNiAxMSA2IDExIHogTSAxOCAxOCBDIDE4LjU2NDEyOSAxOCAxOSAxOC40MzU4NzEgMTkgMTkgQyAxOSAxOS41NjQxMjkgMTguNTY0MTI5IDIwIDE4IDIwIEMgMTcuNDM1ODcxIDIwIDE3IDE5LjU2NDEyOSAxNyAxOSBDIDE3IDE4LjQzNTg3MSAxNy40MzU4NzEgMTggMTggMTggeiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-spreadsheet: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1jb250cmFzdDEganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNENBRjUwIiBkPSJNMi4yIDIuMnYxNy42aDE3LjZWMi4ySDIuMnptMTUuNCA3LjdoLTUuNVY0LjRoNS41djUuNXpNOS45IDQuNHY1LjVINC40VjQuNGg1LjV6bS01LjUgNy43aDUuNXY1LjVINC40di01LjV6bTcuNyA1LjV2LTUuNWg1LjV2NS41aC01LjV6Ii8+Cjwvc3ZnPgo=);
|
||
--jp-icon-stop: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPgogICAgICAgIDxwYXRoIGQ9Ik02IDZoMTJ2MTJINnoiLz4KICAgIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-tab: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTIxIDNIM2MtMS4xIDAtMiAuOS0yIDJ2MTRjMCAxLjEuOSAyIDIgMmgxOGMxLjEgMCAyLS45IDItMlY1YzAtMS4xLS45LTItMi0yem0wIDE2SDNWNWgxMHY0aDh2MTB6Ii8+CiAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-table-rows: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPgogICAgICAgIDxwYXRoIGQ9Ik0yMSw4SDNWNGgxOFY4eiBNMjEsMTBIM3Y0aDE4VjEweiBNMjEsMTZIM3Y0aDE4VjE2eiIvPgogICAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-tag: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCA0MyAyOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CgkJPHBhdGggZD0iTTI4LjgzMzIgMTIuMzM0TDMyLjk5OTggMTYuNTAwN0wzNy4xNjY1IDEyLjMzNEgyOC44MzMyWiIvPgoJCTxwYXRoIGQ9Ik0xNi4yMDk1IDIxLjYxMDRDMTUuNjg3MyAyMi4xMjk5IDE0Ljg0NDMgMjIuMTI5OSAxNC4zMjQ4IDIxLjYxMDRMNi45ODI5IDE0LjcyNDVDNi41NzI0IDE0LjMzOTQgNi4wODMxMyAxMy42MDk4IDYuMDQ3ODYgMTMuMDQ4MkM1Ljk1MzQ3IDExLjUyODggNi4wMjAwMiA4LjYxOTQ0IDYuMDY2MjEgNy4wNzY5NUM2LjA4MjgxIDYuNTE0NzcgNi41NTU0OCA2LjA0MzQ3IDcuMTE4MDQgNi4wMzA1NUM5LjA4ODYzIDUuOTg0NzMgMTMuMjYzOCA1LjkzNTc5IDEzLjY1MTggNi4zMjQyNUwyMS43MzY5IDEzLjYzOUMyMi4yNTYgMTQuMTU4NSAyMS43ODUxIDE1LjQ3MjQgMjEuMjYyIDE1Ljk5NDZMMTYuMjA5NSAyMS42MTA0Wk05Ljc3NTg1IDguMjY1QzkuMzM1NTEgNy44MjU2NiA4LjYyMzUxIDcuODI1NjYgOC4xODI4IDguMjY1QzcuNzQzNDYgOC43MDU3MSA3Ljc0MzQ2IDkuNDE3MzMgOC4xODI4IDkuODU2NjdDOC42MjM4MiAxMC4yOTY0IDkuMzM1ODIgMTAuMjk2NCA5Ljc3NTg1IDkuODU2NjdDMTAuMjE1NiA5LjQxNzMzIDEwLjIxNTYgOC43MDUzMyA5Ljc3NTg1IDguMjY1WiIvPgoJPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-terminal: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiA+CiAgICA8cmVjdCBjbGFzcz0ianAtdGVybWluYWwtaWNvbi1iYWNrZ3JvdW5kLWNvbG9yIGpwLWljb24tc2VsZWN0YWJsZSIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyIDIpIiBmaWxsPSIjMzMzMzMzIi8+CiAgICA8cGF0aCBjbGFzcz0ianAtdGVybWluYWwtaWNvbi1jb2xvciBqcC1pY29uLXNlbGVjdGFibGUtaW52ZXJzZSIgZD0iTTUuMDU2NjQgOC43NjE3MkM1LjA1NjY0IDguNTk3NjYgNS4wMzEyNSA4LjQ1MzEyIDQuOTgwNDcgOC4zMjgxMkM0LjkzMzU5IDguMTk5MjIgNC44NTU0NyA4LjA4MjAzIDQuNzQ2MDkgNy45NzY1NkM0LjY0MDYyIDcuODcxMDkgNC41IDcuNzc1MzkgNC4zMjQyMiA3LjY4OTQ1QzQuMTUyMzQgNy41OTk2MSAzLjk0MzM2IDcuNTExNzIgMy42OTcyNyA3LjQyNTc4QzMuMzAyNzMgNy4yODUxNiAyLjk0MzM2IDcuMTM2NzIgMi42MTkxNCA2Ljk4MDQ3QzIuMjk0OTIgNi44MjQyMiAyLjAxNzU4IDYuNjQyNTggMS43ODcxMSA2LjQzNTU1QzEuNTYwNTUgNi4yMjg1MiAxLjM4NDc3IDUuOTg4MjggMS4yNTk3NyA1LjcxNDg0QzEuMTM0NzcgNS40Mzc1IDEuMDcyMjcgNS4xMDkzOCAxLjA3MjI3IDQuNzMwNDdDMS4wNzIyNyA0LjM5ODQ0IDEuMTI4OTEgNC4wOTU3IDEuMjQyMTkgMy44MjIyN0MxLjM1NTQ3IDMuNTQ0OTIgMS41MTU2MiAzLjMwNDY5IDEuNzIyNjYgMy4xMDE1NkMxLjkyOTY5IDIuODk4NDQgMi4xNzk2OSAyLjczNDM3IDIuNDcyNjYgMi42MDkzOEMyLjc2NTYyIDIuNDg0MzggMy4wOTE4IDIuNDA0MyAzLjQ1MTE3IDIuMzY5MTRWMS4xMDkzOEg0LjM4ODY3VjIuMzgwODZDNC43NDAyMyAyLjQyNzczIDUuMDU2NjQgMi41MjM0NCA1LjMzNzg5IDIuNjY3OTdDNS42MTkxNCAyLjgxMjUgNS44NTc0MiAzLjAwMTk1IDYuMDUyNzMgMy4yMzYzM0M2LjI1MTk1IDMuNDY2OCA2LjQwNDMgMy43NDAyMyA2LjUwOTc3IDQuMDU2NjRDNi42MTkxNCA0LjM2OTE0IDYuNjczODMgNC43MjA3IDYuNjczODMgNS4xMTEzM0g1LjA0NDkyQzUuMDQ0OTIgNC42Mzg2NyA0LjkzNzUgNC4yODEyNSA0LjcyMjY2IDQuMDM5MDZDNC41MDc4MSAzLjc5Mjk3IDQuMjE2OCAzLjY2OTkyIDMuODQ5NjEgMy42Njk5MkMzLjY1MDM5IDMuNjY5OTIgMy40NzY1NiAzLjY5NzI3IDMuMzI4MTIgMy43NTE5NUMzLjE4MzU5IDMuODAyNzMgMy4wNjQ0NSAzLjg3Njk1IDIuOTcwNyAzLjk3NDYxQzIuODc2OTUgNC4wNjgzNiAyLjgwNjY0IDQuMTc5NjkgMi43NTk3NyA0LjMwODU5QzIuNzE2OCA0LjQzNzUgMi42OTUzMSA0LjU3ODEyIDIuNjk1MzEgNC43MzA0N0MyLjY5NTMxIDQuODgyODEgMi43MTY4IDUuMDE5NTMgMi43NTk3NyA1LjE0MDYyQzIuODA2NjQgNS4yNTc4MSAyLjg4MjgxIDUuMzY3MTkgMi45ODgyOCA1LjQ2ODc1QzMuMDk3NjYgNS41NzAzMSAzLjI0MDIzIDUuNjY3OTcgMy40MTYwMiA1Ljc2MTcyQzMuNTkxOCA1Ljg1MTU2IDMuODEwNTUgNS45NDMzNiA0LjA3MjI3IDYuMDM3MTFDNC40NjY4IDYuMTg1NTUgNC44MjQyMiA2LjMzOTg0IDUuMTQ0NTMgNi41QzUuNDY0ODQgNi42NTYyNSA1LjczODI4IDYuODM5ODQgNS45NjQ4NCA3LjA1MDc4QzYuMTk1MzEgNy4yNTc4MSA2LjM3MTA5IDcuNSA2LjQ5MjE5IDcuNzc3MzRDNi42MTcxOSA4LjA1MDc4IDYuNjc5NjkgOC4zNzUgNi42Nzk2OSA4Ljc1QzYuNjc5NjkgOS4wOTM3NSA2LjYyMzA1IDkuNDA0MyA2LjUwOTc3IDkuNjgxNjRDNi4zOTY0OCA5Ljk1NTA4IDYuMjM0MzggMTAuMTkxNCA2LjAyMzQ0IDEwLjM5MDZDNS44MTI1IDEwLjU4OTggNS41NTg1OSAxMC43NSA1LjI2MTcyIDEwLjg3MTFDNC45NjQ4NCAxMC45ODgzIDQuNjMyODEgMTEuMDY0NSA0LjI2NTYyIDExLjA5OTZWMTIuMjQ4SDMuMzMzOThWMTEuMDk5NkMzLjAwMTk1IDExLjA2ODQgMi42Nzk2OSAxMC45OTYxIDIuMzY3MTkgMTAuODgyOEMyLjA1NDY5IDEwLjc2NTYgMS43NzczNCAxMC41OTc3IDEuNTM1MTYgMTAuMzc4OUMxLjI5Njg4IDEwLjE2MDIgMS4xMDU0NyA5Ljg4NDc3IDAuOTYwOTM4IDkuNTUyNzNDMC44MTY0MDYgOS4yMTY4IDAuNzQ0MTQxIDguODE0NDUgMC43NDQxNDEgOC4zNDU3SDIuMzc4OTFDMi4zNzg5MSA4LjYyNjk1IDIuNDE5OTIgOC44NjMyOCAyLjUwMTk1IDkuMDU0NjlDMi41ODM5OCA5LjI0MjE5IDIuNjg5NDUgOS4zOTI1OCAyLjgxODM2IDkuNTA1ODZDMi45NTExNyA5LjYxNTIzIDMuMTAxNTYgOS42OTMzNiAzLjI2OTUzIDkuNzQwMjNDMy40Mzc1IDkuNzg3MTEgMy42MDkzOCA5LjgxMDU1IDMuNzg1MTYgOS44MTA1NUM0LjIwMzEyIDkuODEwNTUgNC41MTk1MyA5LjcxMjg5IDQuNzM0MzggOS41MTc1OEM0Ljk0OTIyIDkuMzIyMjcgNS4wNTY2NCA5LjA3MDMxIDUuMDU2NjQgOC43NjE3MlpNMTMuNDE4IDEyLjI3MTVIOC4wNzQyMlYxMUgxMy40MThWMTIuMjcxNVoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMuOTUyNjQgNikiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=);
|
||
--jp-icon-text-editor: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtdGV4dC1lZGl0b3ItaWNvbi1jb2xvciBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiM2MTYxNjEiIGQ9Ik0xNSAxNUgzdjJoMTJ2LTJ6bTAtOEgzdjJoMTJWN3pNMyAxM2gxOHYtMkgzdjJ6bTAgOGgxOHYtMkgzdjJ6TTMgM3YyaDE4VjNIM3oiLz4KPC9zdmc+Cg==);
|
||
--jp-icon-toc: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxwYXRoIGQ9Ik03LDVIMjFWN0g3VjVNNywxM1YxMUgyMVYxM0g3TTQsNC41QTEuNSwxLjUgMCAwLDEgNS41LDZBMS41LDEuNSAwIDAsMSA0LDcuNUExLjUsMS41IDAgMCwxIDIuNSw2QTEuNSwxLjUgMCAwLDEgNCw0LjVNNCwxMC41QTEuNSwxLjUgMCAwLDEgNS41LDEyQTEuNSwxLjUgMCAwLDEgNCwxMy41QTEuNSwxLjUgMCAwLDEgMi41LDEyQTEuNSwxLjUgMCAwLDEgNCwxMC41TTcsMTlWMTdIMjFWMTlIN000LDE2LjVBMS41LDEuNSAwIDAsMSA1LjUsMThBMS41LDEuNSAwIDAsMSA0LDE5LjVBMS41LDEuNSAwIDAsMSAyLjUsMThBMS41LDEuNSAwIDAsMSA0LDE2LjVaIiAvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-tree-view: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPgogICAgICAgIDxwYXRoIGQ9Ik0yMiAxMVYzaC03djNIOVYzSDJ2OGg3VjhoMnYxMGg0djNoN3YtOGgtN3YzaC0yVjhoMnYzeiIvPgogICAgPC9nPgo8L3N2Zz4K);
|
||
--jp-icon-trusted: url(data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI1Ij4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uMiIgc3Ryb2tlPSIjMzMzMzMzIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIgMykiIGQ9Ik0xLjg2MDk0IDExLjQ0MDlDMC44MjY0NDggOC43NzAyNyAwLjg2Mzc3OSA2LjA1NzY0IDEuMjQ5MDcgNC4xOTkzMkMyLjQ4MjA2IDMuOTMzNDcgNC4wODA2OCAzLjQwMzQ3IDUuNjAxMDIgMi44NDQ5QzcuMjM1NDkgMi4yNDQ0IDguODU2NjYgMS41ODE1IDkuOTg3NiAxLjA5NTM5QzExLjA1OTcgMS41ODM0MSAxMi42MDk0IDIuMjQ0NCAxNC4yMTggMi44NDMzOUMxNS43NTAzIDMuNDEzOTQgMTcuMzk5NSAzLjk1MjU4IDE4Ljc1MzkgNC4yMTM4NUMxOS4xMzY0IDYuMDcxNzcgMTkuMTcwOSA4Ljc3NzIyIDE4LjEzOSAxMS40NDA5QzE3LjAzMDMgMTQuMzAzMiAxNC42NjY4IDE3LjE4NDQgOS45OTk5OSAxOC45MzU0QzUuMzMzMiAxNy4xODQ0IDIuOTY5NjggMTQuMzAzMiAxLjg2MDk0IDExLjQ0MDlaIi8+CiAgICA8cGF0aCBjbGFzcz0ianAtaWNvbjIiIGZpbGw9IiMzMzMzMzMiIHN0cm9rZT0iIzMzMzMzMyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOCA5Ljg2NzE5KSIgZD0iTTIuODYwMTUgNC44NjUzNUwwLjcyNjU0OSAyLjk5OTU5TDAgMy42MzA0NUwyLjg2MDE1IDYuMTMxNTdMOCAwLjYzMDg3Mkw3LjI3ODU3IDBMMi44NjAxNSA0Ljg2NTM1WiIvPgo8L3N2Zz4K);
|
||
--jp-icon-undo: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTEyLjUgOGMtMi42NSAwLTUuMDUuOTktNi45IDIuNkwyIDd2OWg5bC0zLjYyLTMuNjJjMS4zOS0xLjE2IDMuMTYtMS44OCA1LjEyLTEuODggMy41NCAwIDYuNTUgMi4zMSA3LjYgNS41bDIuMzctLjc4QzIxLjA4IDExLjAzIDE3LjE1IDggMTIuNSA4eiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-user: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTE2IDdhNCA0IDAgMTEtOCAwIDQgNCAwIDAxOCAwek0xMiAxNGE3IDcgMCAwMC03IDdoMTRhNyA3IDAgMDAtNy03eiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-users: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDM2IDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogPGcgY2xhc3M9ImpwLWljb24zIiB0cmFuc2Zvcm09Im1hdHJpeCgxLjczMjcgMCAwIDEuNzMyNyAtMy42MjgyIC4wOTk1NzcpIiBmaWxsPSIjNjE2MTYxIj4KICA8cGF0aCB0cmFuc2Zvcm09Im1hdHJpeCgxLjUsMCwwLDEuNSwwLC02KSIgZD0ibTEyLjE4NiA3LjUwOThjLTEuMDUzNSAwLTEuOTc1NyAwLjU2NjUtMi40Nzg1IDEuNDEwMiAwLjc1MDYxIDAuMzEyNzcgMS4zOTc0IDAuODI2NDggMS44NzMgMS40NzI3aDMuNDg2M2MwLTEuNTkyLTEuMjg4OS0yLjg4MjgtMi44ODA5LTIuODgyOHoiLz4KICA8cGF0aCBkPSJtMjAuNDY1IDIuMzg5NWEyLjE4ODUgMi4xODg1IDAgMCAxLTIuMTg4NCAyLjE4ODUgMi4xODg1IDIuMTg4NSAwIDAgMS0yLjE4ODUtMi4xODg1IDIuMTg4NSAyLjE4ODUgMCAwIDEgMi4xODg1LTIuMTg4NSAyLjE4ODUgMi4xODg1IDAgMCAxIDIuMTg4NCAyLjE4ODV6Ii8+CiAgPHBhdGggdHJhbnNmb3JtPSJtYXRyaXgoMS41LDAsMCwxLjUsMCwtNikiIGQ9Im0zLjU4OTggOC40MjE5Yy0xLjExMjYgMC0yLjAxMzcgMC45MDExMS0yLjAxMzcgMi4wMTM3aDIuODE0NWMwLjI2Nzk3LTAuMzczMDkgMC41OTA3LTAuNzA0MzUgMC45NTg5OC0wLjk3ODUyLTAuMzQ0MzMtMC42MTY4OC0xLjAwMzEtMS4wMzUyLTEuNzU5OC0xLjAzNTJ6Ii8+CiAgPHBhdGggZD0ibTYuOTE1NCA0LjYyM2ExLjUyOTQgMS41Mjk0IDAgMCAxLTEuNTI5NCAxLjUyOTQgMS41Mjk0IDEuNTI5NCAwIDAgMS0xLjUyOTQtMS41Mjk0IDEuNTI5NCAxLjUyOTQgMCAwIDEgMS41Mjk0LTEuNTI5NCAxLjUyOTQgMS41Mjk0IDAgMCAxIDEuNTI5NCAxLjUyOTR6Ii8+CiAgPHBhdGggZD0ibTYuMTM1IDEzLjUzNWMwLTMuMjM5MiAyLjYyNTktNS44NjUgNS44NjUtNS44NjUgMy4yMzkyIDAgNS44NjUgMi42MjU5IDUuODY1IDUuODY1eiIvPgogIDxjaXJjbGUgY3g9IjEyIiBjeT0iMy43Njg1IiByPSIyLjk2ODUiLz4KIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-vega: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8ZyBjbGFzcz0ianAtaWNvbjEganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjMjEyMTIxIj4KICAgIDxwYXRoIGQ9Ik0xMC42IDUuNGwyLjItMy4ySDIuMnY3LjNsNC02LjZ6Ii8+CiAgICA8cGF0aCBkPSJNMTUuOCAyLjJsLTQuNCA2LjZMNyA2LjNsLTQuOCA4djUuNWgxNy42VjIuMmgtNHptLTcgMTUuNEg1LjV2LTQuNGgzLjN2NC40em00LjQgMEg5LjhWOS44aDMuNHY3Ljh6bTQuNCAwaC0zLjRWNi41aDMuNHYxMS4xeiIvPgogIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-word: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwIDIwIj4KIDxnIGNsYXNzPSJqcC1pY29uMiIgZmlsbD0iIzQxNDE0MSI+CiAgPHJlY3QgeD0iMiIgeT0iMiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ii8+CiA8L2c+CiA8ZyBjbGFzcz0ianAtaWNvbi1hY2NlbnQyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSguNDMgLjA0MDEpIiBmaWxsPSIjZmZmIj4KICA8cGF0aCBkPSJtNC4xNCA4Ljc2cTAuMDY4Mi0xLjg5IDIuNDItMS44OSAxLjE2IDAgMS42OCAwLjQyIDAuNTY3IDAuNDEgMC41NjcgMS4xNnYzLjQ3cTAgMC40NjIgMC41MTQgMC40NjIgMC4xMDMgMCAwLjItMC4wMjMxdjAuNzE0cS0wLjM5OSAwLjEwMy0wLjY1MSAwLjEwMy0wLjQ1MiAwLTAuNjkzLTAuMjItMC4yMzEtMC4yLTAuMjg0LTAuNjYyLTAuOTU2IDAuODcyLTIgMC44NzItMC45MDMgMC0xLjQ3LTAuNDcyLTAuNTI1LTAuNDcyLTAuNTI1LTEuMjYgMC0wLjI2MiAwLjA0NTItMC40NzIgMC4wNTY3LTAuMjIgMC4xMTYtMC4zNzggMC4wNjgyLTAuMTY4IDAuMjMxLTAuMzA0IDAuMTU4LTAuMTQ3IDAuMjYyLTAuMjQyIDAuMTE2LTAuMDkxNCAwLjM2OC0wLjE2OCAwLjI2Mi0wLjA5MTQgMC4zOTktMC4xMjYgMC4xMzYtMC4wNDUyIDAuNDcyLTAuMTAzIDAuMzM2LTAuMDU3OCAwLjUwNC0wLjA3OTggMC4xNTgtMC4wMjMxIDAuNTY3LTAuMDc5OCAwLjU1Ni0wLjA2ODIgMC43NzctMC4yMjEgMC4yMi0wLjE1MiAwLjIyLTAuNDQxdi0wLjI1MnEwLTAuNDMtMC4zNTctMC42NjItMC4zMzYtMC4yMzEtMC45NzYtMC4yMzEtMC42NjIgMC0wLjk5OCAwLjI2Mi0wLjMzNiAwLjI1Mi0wLjM5OSAwLjc5OHptMS44OSAzLjY4cTAuNzg4IDAgMS4yNi0wLjQxIDAuNTA0LTAuNDIgMC41MDQtMC45MDN2LTEuMDVxLTAuMjg0IDAuMTM2LTAuODYxIDAuMjMxLTAuNTY3IDAuMDkxNC0wLjk4NyAwLjE1OC0wLjQyIDAuMDY4Mi0wLjc2NiAwLjMyNi0wLjMzNiAwLjI1Mi0wLjMzNiAwLjcwNHQwLjMwNCAwLjcwNCAwLjg2MSAwLjI1MnoiIHN0cm9rZS13aWR0aD0iMS4wNSIvPgogIDxwYXRoIGQ9Im0xMCA0LjU2aDAuOTQ1djMuMTVxMC42NTEtMC45NzYgMS44OS0wLjk3NiAxLjE2IDAgMS44OSAwLjg0IDAuNjgyIDAuODQgMC42ODIgMi4zMSAwIDEuNDctMC43MDQgMi40Mi0wLjcwNCAwLjg4Mi0xLjg5IDAuODgyLTEuMjYgMC0xLjg5LTEuMDJ2MC43NjZoLTAuODV6bTIuNjIgMy4wNHEtMC43NDYgMC0xLjE2IDAuNjQtMC40NTIgMC42My0wLjQ1MiAxLjY4IDAgMS4wNSAwLjQ1MiAxLjY4dDEuMTYgMC42M3EwLjc3NyAwIDEuMjYtMC42MyAwLjQ5NC0wLjY0IDAuNDk0LTEuNjggMC0xLjA1LTAuNDcyLTEuNjgtMC40NjItMC42NC0xLjI2LTAuNjR6IiBzdHJva2Utd2lkdGg9IjEuMDUiLz4KICA8cGF0aCBkPSJtMi43MyAxNS44IDEzLjYgMC4wMDgxYzAuMDA2OSAwIDAtMi42IDAtMi42IDAtMC4wMDc4LTEuMTUgMC0xLjE1IDAtMC4wMDY5IDAtMC4wMDgzIDEuNS0wLjAwODMgMS41LTJlLTMgLTAuMDAxNC0xMS4zLTAuMDAxNC0xMS4zLTAuMDAxNGwtMC4wMDU5Mi0xLjVjMC0wLjAwNzgtMS4xNyAwLjAwMTMtMS4xNyAwLjAwMTN6IiBzdHJva2Utd2lkdGg9Ii45NzUiLz4KIDwvZz4KPC9zdmc+Cg==);
|
||
--jp-icon-yaml: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8ZyBjbGFzcz0ianAtaWNvbi1jb250cmFzdDIganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjRDgxQjYwIj4KICAgIDxwYXRoIGQ9Ik03LjIgMTguNnYtNS40TDMgNS42aDMuM2wxLjQgMy4xYy4zLjkuNiAxLjYgMSAyLjUuMy0uOC42LTEuNiAxLTIuNWwxLjQtMy4xaDMuNGwtNC40IDcuNnY1LjVsLTIuOS0uMXoiLz4KICAgIDxjaXJjbGUgY2xhc3M9InN0MCIgY3g9IjE3LjYiIGN5PSIxNi41IiByPSIyLjEiLz4KICAgIDxjaXJjbGUgY2xhc3M9InN0MCIgY3g9IjE3LjYiIGN5PSIxMSIgcj0iMi4xIi8+CiAgPC9nPgo8L3N2Zz4K);
|
||
}
|
||
|
||
/* Icon CSS class declarations */
|
||
|
||
.jp-AddAboveIcon {
|
||
background-image: var(--jp-icon-add-above);
|
||
}
|
||
|
||
.jp-AddBelowIcon {
|
||
background-image: var(--jp-icon-add-below);
|
||
}
|
||
|
||
.jp-AddIcon {
|
||
background-image: var(--jp-icon-add);
|
||
}
|
||
|
||
.jp-BellIcon {
|
||
background-image: var(--jp-icon-bell);
|
||
}
|
||
|
||
.jp-BugDotIcon {
|
||
background-image: var(--jp-icon-bug-dot);
|
||
}
|
||
|
||
.jp-BugIcon {
|
||
background-image: var(--jp-icon-bug);
|
||
}
|
||
|
||
.jp-BuildIcon {
|
||
background-image: var(--jp-icon-build);
|
||
}
|
||
|
||
.jp-CaretDownEmptyIcon {
|
||
background-image: var(--jp-icon-caret-down-empty);
|
||
}
|
||
|
||
.jp-CaretDownEmptyThinIcon {
|
||
background-image: var(--jp-icon-caret-down-empty-thin);
|
||
}
|
||
|
||
.jp-CaretDownIcon {
|
||
background-image: var(--jp-icon-caret-down);
|
||
}
|
||
|
||
.jp-CaretLeftIcon {
|
||
background-image: var(--jp-icon-caret-left);
|
||
}
|
||
|
||
.jp-CaretRightIcon {
|
||
background-image: var(--jp-icon-caret-right);
|
||
}
|
||
|
||
.jp-CaretUpEmptyThinIcon {
|
||
background-image: var(--jp-icon-caret-up-empty-thin);
|
||
}
|
||
|
||
.jp-CaretUpIcon {
|
||
background-image: var(--jp-icon-caret-up);
|
||
}
|
||
|
||
.jp-CaseSensitiveIcon {
|
||
background-image: var(--jp-icon-case-sensitive);
|
||
}
|
||
|
||
.jp-CheckIcon {
|
||
background-image: var(--jp-icon-check);
|
||
}
|
||
|
||
.jp-CircleEmptyIcon {
|
||
background-image: var(--jp-icon-circle-empty);
|
||
}
|
||
|
||
.jp-CircleIcon {
|
||
background-image: var(--jp-icon-circle);
|
||
}
|
||
|
||
.jp-ClearIcon {
|
||
background-image: var(--jp-icon-clear);
|
||
}
|
||
|
||
.jp-CloseIcon {
|
||
background-image: var(--jp-icon-close);
|
||
}
|
||
|
||
.jp-CodeCheckIcon {
|
||
background-image: var(--jp-icon-code-check);
|
||
}
|
||
|
||
.jp-CodeIcon {
|
||
background-image: var(--jp-icon-code);
|
||
}
|
||
|
||
.jp-CollapseAllIcon {
|
||
background-image: var(--jp-icon-collapse-all);
|
||
}
|
||
|
||
.jp-ConsoleIcon {
|
||
background-image: var(--jp-icon-console);
|
||
}
|
||
|
||
.jp-CopyIcon {
|
||
background-image: var(--jp-icon-copy);
|
||
}
|
||
|
||
.jp-CopyrightIcon {
|
||
background-image: var(--jp-icon-copyright);
|
||
}
|
||
|
||
.jp-CutIcon {
|
||
background-image: var(--jp-icon-cut);
|
||
}
|
||
|
||
.jp-DeleteIcon {
|
||
background-image: var(--jp-icon-delete);
|
||
}
|
||
|
||
.jp-DownloadIcon {
|
||
background-image: var(--jp-icon-download);
|
||
}
|
||
|
||
.jp-DuplicateIcon {
|
||
background-image: var(--jp-icon-duplicate);
|
||
}
|
||
|
||
.jp-EditIcon {
|
||
background-image: var(--jp-icon-edit);
|
||
}
|
||
|
||
.jp-EllipsesIcon {
|
||
background-image: var(--jp-icon-ellipses);
|
||
}
|
||
|
||
.jp-ErrorIcon {
|
||
background-image: var(--jp-icon-error);
|
||
}
|
||
|
||
.jp-ExpandAllIcon {
|
||
background-image: var(--jp-icon-expand-all);
|
||
}
|
||
|
||
.jp-ExtensionIcon {
|
||
background-image: var(--jp-icon-extension);
|
||
}
|
||
|
||
.jp-FastForwardIcon {
|
||
background-image: var(--jp-icon-fast-forward);
|
||
}
|
||
|
||
.jp-FileIcon {
|
||
background-image: var(--jp-icon-file);
|
||
}
|
||
|
||
.jp-FileUploadIcon {
|
||
background-image: var(--jp-icon-file-upload);
|
||
}
|
||
|
||
.jp-FilterDotIcon {
|
||
background-image: var(--jp-icon-filter-dot);
|
||
}
|
||
|
||
.jp-FilterIcon {
|
||
background-image: var(--jp-icon-filter);
|
||
}
|
||
|
||
.jp-FilterListIcon {
|
||
background-image: var(--jp-icon-filter-list);
|
||
}
|
||
|
||
.jp-FolderFavoriteIcon {
|
||
background-image: var(--jp-icon-folder-favorite);
|
||
}
|
||
|
||
.jp-FolderIcon {
|
||
background-image: var(--jp-icon-folder);
|
||
}
|
||
|
||
.jp-HomeIcon {
|
||
background-image: var(--jp-icon-home);
|
||
}
|
||
|
||
.jp-Html5Icon {
|
||
background-image: var(--jp-icon-html5);
|
||
}
|
||
|
||
.jp-ImageIcon {
|
||
background-image: var(--jp-icon-image);
|
||
}
|
||
|
||
.jp-InfoIcon {
|
||
background-image: var(--jp-icon-info);
|
||
}
|
||
|
||
.jp-InspectorIcon {
|
||
background-image: var(--jp-icon-inspector);
|
||
}
|
||
|
||
.jp-JsonIcon {
|
||
background-image: var(--jp-icon-json);
|
||
}
|
||
|
||
.jp-JuliaIcon {
|
||
background-image: var(--jp-icon-julia);
|
||
}
|
||
|
||
.jp-JupyterFaviconIcon {
|
||
background-image: var(--jp-icon-jupyter-favicon);
|
||
}
|
||
|
||
.jp-JupyterIcon {
|
||
background-image: var(--jp-icon-jupyter);
|
||
}
|
||
|
||
.jp-JupyterlabWordmarkIcon {
|
||
background-image: var(--jp-icon-jupyterlab-wordmark);
|
||
}
|
||
|
||
.jp-KernelIcon {
|
||
background-image: var(--jp-icon-kernel);
|
||
}
|
||
|
||
.jp-KeyboardIcon {
|
||
background-image: var(--jp-icon-keyboard);
|
||
}
|
||
|
||
.jp-LaunchIcon {
|
||
background-image: var(--jp-icon-launch);
|
||
}
|
||
|
||
.jp-LauncherIcon {
|
||
background-image: var(--jp-icon-launcher);
|
||
}
|
||
|
||
.jp-LineFormIcon {
|
||
background-image: var(--jp-icon-line-form);
|
||
}
|
||
|
||
.jp-LinkIcon {
|
||
background-image: var(--jp-icon-link);
|
||
}
|
||
|
||
.jp-ListIcon {
|
||
background-image: var(--jp-icon-list);
|
||
}
|
||
|
||
.jp-MarkdownIcon {
|
||
background-image: var(--jp-icon-markdown);
|
||
}
|
||
|
||
.jp-MoveDownIcon {
|
||
background-image: var(--jp-icon-move-down);
|
||
}
|
||
|
||
.jp-MoveUpIcon {
|
||
background-image: var(--jp-icon-move-up);
|
||
}
|
||
|
||
.jp-NewFolderIcon {
|
||
background-image: var(--jp-icon-new-folder);
|
||
}
|
||
|
||
.jp-NotTrustedIcon {
|
||
background-image: var(--jp-icon-not-trusted);
|
||
}
|
||
|
||
.jp-NotebookIcon {
|
||
background-image: var(--jp-icon-notebook);
|
||
}
|
||
|
||
.jp-NumberingIcon {
|
||
background-image: var(--jp-icon-numbering);
|
||
}
|
||
|
||
.jp-OfflineBoltIcon {
|
||
background-image: var(--jp-icon-offline-bolt);
|
||
}
|
||
|
||
.jp-PaletteIcon {
|
||
background-image: var(--jp-icon-palette);
|
||
}
|
||
|
||
.jp-PasteIcon {
|
||
background-image: var(--jp-icon-paste);
|
||
}
|
||
|
||
.jp-PdfIcon {
|
||
background-image: var(--jp-icon-pdf);
|
||
}
|
||
|
||
.jp-PythonIcon {
|
||
background-image: var(--jp-icon-python);
|
||
}
|
||
|
||
.jp-RKernelIcon {
|
||
background-image: var(--jp-icon-r-kernel);
|
||
}
|
||
|
||
.jp-ReactIcon {
|
||
background-image: var(--jp-icon-react);
|
||
}
|
||
|
||
.jp-RedoIcon {
|
||
background-image: var(--jp-icon-redo);
|
||
}
|
||
|
||
.jp-RefreshIcon {
|
||
background-image: var(--jp-icon-refresh);
|
||
}
|
||
|
||
.jp-RegexIcon {
|
||
background-image: var(--jp-icon-regex);
|
||
}
|
||
|
||
.jp-RunIcon {
|
||
background-image: var(--jp-icon-run);
|
||
}
|
||
|
||
.jp-RunningIcon {
|
||
background-image: var(--jp-icon-running);
|
||
}
|
||
|
||
.jp-SaveIcon {
|
||
background-image: var(--jp-icon-save);
|
||
}
|
||
|
||
.jp-SearchIcon {
|
||
background-image: var(--jp-icon-search);
|
||
}
|
||
|
||
.jp-SettingsIcon {
|
||
background-image: var(--jp-icon-settings);
|
||
}
|
||
|
||
.jp-ShareIcon {
|
||
background-image: var(--jp-icon-share);
|
||
}
|
||
|
||
.jp-SpreadsheetIcon {
|
||
background-image: var(--jp-icon-spreadsheet);
|
||
}
|
||
|
||
.jp-StopIcon {
|
||
background-image: var(--jp-icon-stop);
|
||
}
|
||
|
||
.jp-TabIcon {
|
||
background-image: var(--jp-icon-tab);
|
||
}
|
||
|
||
.jp-TableRowsIcon {
|
||
background-image: var(--jp-icon-table-rows);
|
||
}
|
||
|
||
.jp-TagIcon {
|
||
background-image: var(--jp-icon-tag);
|
||
}
|
||
|
||
.jp-TerminalIcon {
|
||
background-image: var(--jp-icon-terminal);
|
||
}
|
||
|
||
.jp-TextEditorIcon {
|
||
background-image: var(--jp-icon-text-editor);
|
||
}
|
||
|
||
.jp-TocIcon {
|
||
background-image: var(--jp-icon-toc);
|
||
}
|
||
|
||
.jp-TreeViewIcon {
|
||
background-image: var(--jp-icon-tree-view);
|
||
}
|
||
|
||
.jp-TrustedIcon {
|
||
background-image: var(--jp-icon-trusted);
|
||
}
|
||
|
||
.jp-UndoIcon {
|
||
background-image: var(--jp-icon-undo);
|
||
}
|
||
|
||
.jp-UserIcon {
|
||
background-image: var(--jp-icon-user);
|
||
}
|
||
|
||
.jp-UsersIcon {
|
||
background-image: var(--jp-icon-users);
|
||
}
|
||
|
||
.jp-VegaIcon {
|
||
background-image: var(--jp-icon-vega);
|
||
}
|
||
|
||
.jp-WordIcon {
|
||
background-image: var(--jp-icon-word);
|
||
}
|
||
|
||
.jp-YamlIcon {
|
||
background-image: var(--jp-icon-yaml);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/**
|
||
* (DEPRECATED) Support for consuming icons as CSS background images
|
||
*/
|
||
|
||
.jp-Icon,
|
||
.jp-MaterialIcon {
|
||
background-position: center;
|
||
background-repeat: no-repeat;
|
||
background-size: 16px;
|
||
min-width: 16px;
|
||
min-height: 16px;
|
||
}
|
||
|
||
.jp-Icon-cover {
|
||
background-position: center;
|
||
background-repeat: no-repeat;
|
||
background-size: cover;
|
||
}
|
||
|
||
/**
|
||
* (DEPRECATED) Support for specific CSS icon sizes
|
||
*/
|
||
|
||
.jp-Icon-16 {
|
||
background-size: 16px;
|
||
min-width: 16px;
|
||
min-height: 16px;
|
||
}
|
||
|
||
.jp-Icon-18 {
|
||
background-size: 18px;
|
||
min-width: 18px;
|
||
min-height: 18px;
|
||
}
|
||
|
||
.jp-Icon-20 {
|
||
background-size: 20px;
|
||
min-width: 20px;
|
||
min-height: 20px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-TabBar .lm-TabBar-addButton {
|
||
align-items: center;
|
||
display: flex;
|
||
padding: 4px;
|
||
padding-bottom: 5px;
|
||
margin-right: 1px;
|
||
background-color: var(--jp-layout-color2);
|
||
}
|
||
|
||
.lm-TabBar .lm-TabBar-addButton:hover {
|
||
background-color: var(--jp-layout-color1);
|
||
}
|
||
|
||
.lm-DockPanel-tabBar .lm-TabBar-tab {
|
||
width: var(--jp-private-horizontal-tab-width);
|
||
}
|
||
|
||
.lm-DockPanel-tabBar .lm-TabBar-content {
|
||
flex: unset;
|
||
}
|
||
|
||
.lm-DockPanel-tabBar[data-orientation='horizontal'] {
|
||
flex: 1 1 auto;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/**
|
||
* Support for icons as inline SVG HTMLElements
|
||
*/
|
||
|
||
/* recolor the primary elements of an icon */
|
||
.jp-icon0[fill] {
|
||
fill: var(--jp-inverse-layout-color0);
|
||
}
|
||
|
||
.jp-icon1[fill] {
|
||
fill: var(--jp-inverse-layout-color1);
|
||
}
|
||
|
||
.jp-icon2[fill] {
|
||
fill: var(--jp-inverse-layout-color2);
|
||
}
|
||
|
||
.jp-icon3[fill] {
|
||
fill: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
.jp-icon4[fill] {
|
||
fill: var(--jp-inverse-layout-color4);
|
||
}
|
||
|
||
.jp-icon0[stroke] {
|
||
stroke: var(--jp-inverse-layout-color0);
|
||
}
|
||
|
||
.jp-icon1[stroke] {
|
||
stroke: var(--jp-inverse-layout-color1);
|
||
}
|
||
|
||
.jp-icon2[stroke] {
|
||
stroke: var(--jp-inverse-layout-color2);
|
||
}
|
||
|
||
.jp-icon3[stroke] {
|
||
stroke: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
.jp-icon4[stroke] {
|
||
stroke: var(--jp-inverse-layout-color4);
|
||
}
|
||
|
||
/* recolor the accent elements of an icon */
|
||
.jp-icon-accent0[fill] {
|
||
fill: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-icon-accent1[fill] {
|
||
fill: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-icon-accent2[fill] {
|
||
fill: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-icon-accent3[fill] {
|
||
fill: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-icon-accent4[fill] {
|
||
fill: var(--jp-layout-color4);
|
||
}
|
||
|
||
.jp-icon-accent0[stroke] {
|
||
stroke: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-icon-accent1[stroke] {
|
||
stroke: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-icon-accent2[stroke] {
|
||
stroke: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-icon-accent3[stroke] {
|
||
stroke: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-icon-accent4[stroke] {
|
||
stroke: var(--jp-layout-color4);
|
||
}
|
||
|
||
/* set the color of an icon to transparent */
|
||
.jp-icon-none[fill] {
|
||
fill: none;
|
||
}
|
||
|
||
.jp-icon-none[stroke] {
|
||
stroke: none;
|
||
}
|
||
|
||
/* brand icon colors. Same for light and dark */
|
||
.jp-icon-brand0[fill] {
|
||
fill: var(--jp-brand-color0);
|
||
}
|
||
|
||
.jp-icon-brand1[fill] {
|
||
fill: var(--jp-brand-color1);
|
||
}
|
||
|
||
.jp-icon-brand2[fill] {
|
||
fill: var(--jp-brand-color2);
|
||
}
|
||
|
||
.jp-icon-brand3[fill] {
|
||
fill: var(--jp-brand-color3);
|
||
}
|
||
|
||
.jp-icon-brand4[fill] {
|
||
fill: var(--jp-brand-color4);
|
||
}
|
||
|
||
.jp-icon-brand0[stroke] {
|
||
stroke: var(--jp-brand-color0);
|
||
}
|
||
|
||
.jp-icon-brand1[stroke] {
|
||
stroke: var(--jp-brand-color1);
|
||
}
|
||
|
||
.jp-icon-brand2[stroke] {
|
||
stroke: var(--jp-brand-color2);
|
||
}
|
||
|
||
.jp-icon-brand3[stroke] {
|
||
stroke: var(--jp-brand-color3);
|
||
}
|
||
|
||
.jp-icon-brand4[stroke] {
|
||
stroke: var(--jp-brand-color4);
|
||
}
|
||
|
||
/* warn icon colors. Same for light and dark */
|
||
.jp-icon-warn0[fill] {
|
||
fill: var(--jp-warn-color0);
|
||
}
|
||
|
||
.jp-icon-warn1[fill] {
|
||
fill: var(--jp-warn-color1);
|
||
}
|
||
|
||
.jp-icon-warn2[fill] {
|
||
fill: var(--jp-warn-color2);
|
||
}
|
||
|
||
.jp-icon-warn3[fill] {
|
||
fill: var(--jp-warn-color3);
|
||
}
|
||
|
||
.jp-icon-warn0[stroke] {
|
||
stroke: var(--jp-warn-color0);
|
||
}
|
||
|
||
.jp-icon-warn1[stroke] {
|
||
stroke: var(--jp-warn-color1);
|
||
}
|
||
|
||
.jp-icon-warn2[stroke] {
|
||
stroke: var(--jp-warn-color2);
|
||
}
|
||
|
||
.jp-icon-warn3[stroke] {
|
||
stroke: var(--jp-warn-color3);
|
||
}
|
||
|
||
/* icon colors that contrast well with each other and most backgrounds */
|
||
.jp-icon-contrast0[fill] {
|
||
fill: var(--jp-icon-contrast-color0);
|
||
}
|
||
|
||
.jp-icon-contrast1[fill] {
|
||
fill: var(--jp-icon-contrast-color1);
|
||
}
|
||
|
||
.jp-icon-contrast2[fill] {
|
||
fill: var(--jp-icon-contrast-color2);
|
||
}
|
||
|
||
.jp-icon-contrast3[fill] {
|
||
fill: var(--jp-icon-contrast-color3);
|
||
}
|
||
|
||
.jp-icon-contrast0[stroke] {
|
||
stroke: var(--jp-icon-contrast-color0);
|
||
}
|
||
|
||
.jp-icon-contrast1[stroke] {
|
||
stroke: var(--jp-icon-contrast-color1);
|
||
}
|
||
|
||
.jp-icon-contrast2[stroke] {
|
||
stroke: var(--jp-icon-contrast-color2);
|
||
}
|
||
|
||
.jp-icon-contrast3[stroke] {
|
||
stroke: var(--jp-icon-contrast-color3);
|
||
}
|
||
|
||
.jp-icon-dot[fill] {
|
||
fill: var(--jp-warn-color0);
|
||
}
|
||
|
||
.jp-jupyter-icon-color[fill] {
|
||
fill: var(--jp-jupyter-icon-color, var(--jp-warn-color0));
|
||
}
|
||
|
||
.jp-notebook-icon-color[fill] {
|
||
fill: var(--jp-notebook-icon-color, var(--jp-warn-color0));
|
||
}
|
||
|
||
.jp-json-icon-color[fill] {
|
||
fill: var(--jp-json-icon-color, var(--jp-warn-color1));
|
||
}
|
||
|
||
.jp-console-icon-color[fill] {
|
||
fill: var(--jp-console-icon-color, white);
|
||
}
|
||
|
||
.jp-console-icon-background-color[fill] {
|
||
fill: var(--jp-console-icon-background-color, var(--jp-brand-color1));
|
||
}
|
||
|
||
.jp-terminal-icon-color[fill] {
|
||
fill: var(--jp-terminal-icon-color, var(--jp-layout-color2));
|
||
}
|
||
|
||
.jp-terminal-icon-background-color[fill] {
|
||
fill: var(
|
||
--jp-terminal-icon-background-color,
|
||
var(--jp-inverse-layout-color2)
|
||
);
|
||
}
|
||
|
||
.jp-text-editor-icon-color[fill] {
|
||
fill: var(--jp-text-editor-icon-color, var(--jp-inverse-layout-color3));
|
||
}
|
||
|
||
.jp-inspector-icon-color[fill] {
|
||
fill: var(--jp-inspector-icon-color, var(--jp-inverse-layout-color3));
|
||
}
|
||
|
||
/* CSS for icons in selected filebrowser listing items */
|
||
.jp-DirListing-item.jp-mod-selected .jp-icon-selectable[fill] {
|
||
fill: #fff;
|
||
}
|
||
|
||
.jp-DirListing-item.jp-mod-selected .jp-icon-selectable-inverse[fill] {
|
||
fill: var(--jp-brand-color1);
|
||
}
|
||
|
||
/* stylelint-disable selector-max-class, selector-max-compound-selectors */
|
||
|
||
/**
|
||
* TODO: come up with non css-hack solution for showing the busy icon on top
|
||
* of the close icon
|
||
* CSS for complex behavior of close icon of tabs in the main area tabbar
|
||
*/
|
||
.lm-DockPanel-tabBar
|
||
.lm-TabBar-tab.lm-mod-closable.jp-mod-dirty
|
||
> .lm-TabBar-tabCloseIcon
|
||
> :not(:hover)
|
||
> .jp-icon3[fill] {
|
||
fill: none;
|
||
}
|
||
|
||
.lm-DockPanel-tabBar
|
||
.lm-TabBar-tab.lm-mod-closable.jp-mod-dirty
|
||
> .lm-TabBar-tabCloseIcon
|
||
> :not(:hover)
|
||
> .jp-icon-busy[fill] {
|
||
fill: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
/* stylelint-enable selector-max-class, selector-max-compound-selectors */
|
||
|
||
/* CSS for icons in status bar */
|
||
#jp-main-statusbar .jp-mod-selected .jp-icon-selectable[fill] {
|
||
fill: #fff;
|
||
}
|
||
|
||
#jp-main-statusbar .jp-mod-selected .jp-icon-selectable-inverse[fill] {
|
||
fill: var(--jp-brand-color1);
|
||
}
|
||
|
||
/* special handling for splash icon CSS. While the theme CSS reloads during
|
||
splash, the splash icon can loose theming. To prevent that, we set a
|
||
default for its color variable */
|
||
:root {
|
||
--jp-warn-color0: var(--md-orange-700);
|
||
}
|
||
|
||
/* not sure what to do with this one, used in filebrowser listing */
|
||
.jp-DragIcon {
|
||
margin-right: 4px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/**
|
||
* Support for alt colors for icons as inline SVG HTMLElements
|
||
*/
|
||
|
||
/* alt recolor the primary elements of an icon */
|
||
.jp-icon-alt .jp-icon0[fill] {
|
||
fill: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon1[fill] {
|
||
fill: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon2[fill] {
|
||
fill: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon3[fill] {
|
||
fill: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon4[fill] {
|
||
fill: var(--jp-layout-color4);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon0[stroke] {
|
||
stroke: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon1[stroke] {
|
||
stroke: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon2[stroke] {
|
||
stroke: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon3[stroke] {
|
||
stroke: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon4[stroke] {
|
||
stroke: var(--jp-layout-color4);
|
||
}
|
||
|
||
/* alt recolor the accent elements of an icon */
|
||
.jp-icon-alt .jp-icon-accent0[fill] {
|
||
fill: var(--jp-inverse-layout-color0);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon-accent1[fill] {
|
||
fill: var(--jp-inverse-layout-color1);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon-accent2[fill] {
|
||
fill: var(--jp-inverse-layout-color2);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon-accent3[fill] {
|
||
fill: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon-accent4[fill] {
|
||
fill: var(--jp-inverse-layout-color4);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon-accent0[stroke] {
|
||
stroke: var(--jp-inverse-layout-color0);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon-accent1[stroke] {
|
||
stroke: var(--jp-inverse-layout-color1);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon-accent2[stroke] {
|
||
stroke: var(--jp-inverse-layout-color2);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon-accent3[stroke] {
|
||
stroke: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
.jp-icon-alt .jp-icon-accent4[stroke] {
|
||
stroke: var(--jp-inverse-layout-color4);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-icon-hoverShow:not(:hover) .jp-icon-hoverShow-content {
|
||
display: none !important;
|
||
}
|
||
|
||
/**
|
||
* Support for hover colors for icons as inline SVG HTMLElements
|
||
*/
|
||
|
||
/**
|
||
* regular colors
|
||
*/
|
||
|
||
/* recolor the primary elements of an icon */
|
||
.jp-icon-hover :hover .jp-icon0-hover[fill] {
|
||
fill: var(--jp-inverse-layout-color0);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon1-hover[fill] {
|
||
fill: var(--jp-inverse-layout-color1);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon2-hover[fill] {
|
||
fill: var(--jp-inverse-layout-color2);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon3-hover[fill] {
|
||
fill: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon4-hover[fill] {
|
||
fill: var(--jp-inverse-layout-color4);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon0-hover[stroke] {
|
||
stroke: var(--jp-inverse-layout-color0);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon1-hover[stroke] {
|
||
stroke: var(--jp-inverse-layout-color1);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon2-hover[stroke] {
|
||
stroke: var(--jp-inverse-layout-color2);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon3-hover[stroke] {
|
||
stroke: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon4-hover[stroke] {
|
||
stroke: var(--jp-inverse-layout-color4);
|
||
}
|
||
|
||
/* recolor the accent elements of an icon */
|
||
.jp-icon-hover :hover .jp-icon-accent0-hover[fill] {
|
||
fill: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon-accent1-hover[fill] {
|
||
fill: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon-accent2-hover[fill] {
|
||
fill: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon-accent3-hover[fill] {
|
||
fill: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon-accent4-hover[fill] {
|
||
fill: var(--jp-layout-color4);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon-accent0-hover[stroke] {
|
||
stroke: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon-accent1-hover[stroke] {
|
||
stroke: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon-accent2-hover[stroke] {
|
||
stroke: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon-accent3-hover[stroke] {
|
||
stroke: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon-accent4-hover[stroke] {
|
||
stroke: var(--jp-layout-color4);
|
||
}
|
||
|
||
/* set the color of an icon to transparent */
|
||
.jp-icon-hover :hover .jp-icon-none-hover[fill] {
|
||
fill: none;
|
||
}
|
||
|
||
.jp-icon-hover :hover .jp-icon-none-hover[stroke] {
|
||
stroke: none;
|
||
}
|
||
|
||
/**
|
||
* inverse colors
|
||
*/
|
||
|
||
/* inverse recolor the primary elements of an icon */
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon0-hover[fill] {
|
||
fill: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon1-hover[fill] {
|
||
fill: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon2-hover[fill] {
|
||
fill: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon3-hover[fill] {
|
||
fill: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon4-hover[fill] {
|
||
fill: var(--jp-layout-color4);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon0-hover[stroke] {
|
||
stroke: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon1-hover[stroke] {
|
||
stroke: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon2-hover[stroke] {
|
||
stroke: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon3-hover[stroke] {
|
||
stroke: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon4-hover[stroke] {
|
||
stroke: var(--jp-layout-color4);
|
||
}
|
||
|
||
/* inverse recolor the accent elements of an icon */
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent0-hover[fill] {
|
||
fill: var(--jp-inverse-layout-color0);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent1-hover[fill] {
|
||
fill: var(--jp-inverse-layout-color1);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent2-hover[fill] {
|
||
fill: var(--jp-inverse-layout-color2);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent3-hover[fill] {
|
||
fill: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent4-hover[fill] {
|
||
fill: var(--jp-inverse-layout-color4);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent0-hover[stroke] {
|
||
stroke: var(--jp-inverse-layout-color0);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent1-hover[stroke] {
|
||
stroke: var(--jp-inverse-layout-color1);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent2-hover[stroke] {
|
||
stroke: var(--jp-inverse-layout-color2);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent3-hover[stroke] {
|
||
stroke: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent4-hover[stroke] {
|
||
stroke: var(--jp-inverse-layout-color4);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-IFrame {
|
||
width: 100%;
|
||
height: 100%;
|
||
}
|
||
|
||
.jp-IFrame > iframe {
|
||
border: none;
|
||
}
|
||
|
||
/*
|
||
When drag events occur, `lm-mod-override-cursor` is added to the body.
|
||
Because iframes steal all cursor events, the following two rules are necessary
|
||
to suppress pointer events while resize drags are occurring. There may be a
|
||
better solution to this problem.
|
||
*/
|
||
body.lm-mod-override-cursor .jp-IFrame {
|
||
position: relative;
|
||
}
|
||
|
||
body.lm-mod-override-cursor .jp-IFrame::before {
|
||
content: '';
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
right: 0;
|
||
bottom: 0;
|
||
background: transparent;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) 2014-2016, Jupyter Development Team.
|
||
|
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-HoverBox {
|
||
position: fixed;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-FormGroup-content fieldset {
|
||
border: none;
|
||
padding: 0;
|
||
min-width: 0;
|
||
width: 100%;
|
||
}
|
||
|
||
/* stylelint-disable selector-max-type */
|
||
|
||
.jp-FormGroup-content fieldset .jp-inputFieldWrapper input,
|
||
.jp-FormGroup-content fieldset .jp-inputFieldWrapper select,
|
||
.jp-FormGroup-content fieldset .jp-inputFieldWrapper textarea {
|
||
font-size: var(--jp-content-font-size2);
|
||
border-color: var(--jp-input-border-color);
|
||
border-style: solid;
|
||
border-radius: var(--jp-border-radius);
|
||
border-width: 1px;
|
||
padding: 6px 8px;
|
||
background: none;
|
||
color: var(--jp-ui-font-color0);
|
||
height: inherit;
|
||
}
|
||
|
||
.jp-FormGroup-content fieldset input[type='checkbox'] {
|
||
position: relative;
|
||
top: 2px;
|
||
margin-left: 0;
|
||
}
|
||
|
||
.jp-FormGroup-content button.jp-mod-styled {
|
||
cursor: pointer;
|
||
}
|
||
|
||
.jp-FormGroup-content .checkbox label {
|
||
cursor: pointer;
|
||
font-size: var(--jp-content-font-size1);
|
||
}
|
||
|
||
.jp-FormGroup-content .jp-root > fieldset > legend {
|
||
display: none;
|
||
}
|
||
|
||
.jp-FormGroup-content .jp-root > fieldset > p {
|
||
display: none;
|
||
}
|
||
|
||
/** copy of `input.jp-mod-styled:focus` style */
|
||
.jp-FormGroup-content fieldset input:focus,
|
||
.jp-FormGroup-content fieldset select:focus {
|
||
-moz-outline-radius: unset;
|
||
outline: var(--jp-border-width) solid var(--md-blue-500);
|
||
outline-offset: -1px;
|
||
box-shadow: inset 0 0 4px var(--md-blue-300);
|
||
}
|
||
|
||
.jp-FormGroup-content fieldset input:hover:not(:focus),
|
||
.jp-FormGroup-content fieldset select:hover:not(:focus) {
|
||
background-color: var(--jp-border-color2);
|
||
}
|
||
|
||
/* stylelint-enable selector-max-type */
|
||
|
||
.jp-FormGroup-content .checkbox .field-description {
|
||
/* Disable default description field for checkbox:
|
||
because other widgets do not have description fields,
|
||
we add descriptions to each widget on the field level.
|
||
*/
|
||
display: none;
|
||
}
|
||
|
||
.jp-FormGroup-content #root__description {
|
||
display: none;
|
||
}
|
||
|
||
.jp-FormGroup-content .jp-modifiedIndicator {
|
||
width: 5px;
|
||
background-color: var(--jp-brand-color2);
|
||
margin-top: 0;
|
||
margin-left: calc(var(--jp-private-settingeditor-modifier-indent) * -1);
|
||
flex-shrink: 0;
|
||
}
|
||
|
||
.jp-FormGroup-content .jp-modifiedIndicator.jp-errorIndicator {
|
||
background-color: var(--jp-error-color0);
|
||
margin-right: 0.5em;
|
||
}
|
||
|
||
/* RJSF ARRAY style */
|
||
|
||
.jp-arrayFieldWrapper legend {
|
||
font-size: var(--jp-content-font-size2);
|
||
color: var(--jp-ui-font-color0);
|
||
flex-basis: 100%;
|
||
padding: 4px 0;
|
||
font-weight: var(--jp-content-heading-font-weight);
|
||
border-bottom: 1px solid var(--jp-border-color2);
|
||
}
|
||
|
||
.jp-arrayFieldWrapper .field-description {
|
||
padding: 4px 0;
|
||
white-space: pre-wrap;
|
||
}
|
||
|
||
.jp-arrayFieldWrapper .array-item {
|
||
width: 100%;
|
||
border: 1px solid var(--jp-border-color2);
|
||
border-radius: 4px;
|
||
margin: 4px;
|
||
}
|
||
|
||
.jp-ArrayOperations {
|
||
display: flex;
|
||
margin-left: 8px;
|
||
}
|
||
|
||
.jp-ArrayOperationsButton {
|
||
margin: 2px;
|
||
}
|
||
|
||
.jp-ArrayOperationsButton .jp-icon3[fill] {
|
||
fill: var(--jp-ui-font-color0);
|
||
}
|
||
|
||
button.jp-ArrayOperationsButton.jp-mod-styled:disabled {
|
||
cursor: not-allowed;
|
||
opacity: 0.5;
|
||
}
|
||
|
||
/* RJSF form validation error */
|
||
|
||
.jp-FormGroup-content .validationErrors {
|
||
color: var(--jp-error-color0);
|
||
}
|
||
|
||
/* Hide panel level error as duplicated the field level error */
|
||
.jp-FormGroup-content .panel.errors {
|
||
display: none;
|
||
}
|
||
|
||
/* RJSF normal content (settings-editor) */
|
||
|
||
.jp-FormGroup-contentNormal {
|
||
display: flex;
|
||
align-items: center;
|
||
flex-wrap: wrap;
|
||
}
|
||
|
||
.jp-FormGroup-contentNormal .jp-FormGroup-contentItem {
|
||
margin-left: 7px;
|
||
color: var(--jp-ui-font-color0);
|
||
}
|
||
|
||
.jp-FormGroup-contentNormal .jp-FormGroup-description {
|
||
flex-basis: 100%;
|
||
padding: 4px 7px;
|
||
}
|
||
|
||
.jp-FormGroup-contentNormal .jp-FormGroup-default {
|
||
flex-basis: 100%;
|
||
padding: 4px 7px;
|
||
}
|
||
|
||
.jp-FormGroup-contentNormal .jp-FormGroup-fieldLabel {
|
||
font-size: var(--jp-content-font-size1);
|
||
font-weight: normal;
|
||
min-width: 120px;
|
||
}
|
||
|
||
.jp-FormGroup-contentNormal fieldset:not(:first-child) {
|
||
margin-left: 7px;
|
||
}
|
||
|
||
.jp-FormGroup-contentNormal .field-array-of-string .array-item {
|
||
/* Display `jp-ArrayOperations` buttons side-by-side with content except
|
||
for small screens where flex-wrap will place them one below the other.
|
||
*/
|
||
display: flex;
|
||
align-items: center;
|
||
flex-wrap: wrap;
|
||
}
|
||
|
||
.jp-FormGroup-contentNormal .jp-objectFieldWrapper .form-group {
|
||
padding: 2px 8px 2px var(--jp-private-settingeditor-modifier-indent);
|
||
margin-top: 2px;
|
||
}
|
||
|
||
/* RJSF compact content (metadata-form) */
|
||
|
||
.jp-FormGroup-content.jp-FormGroup-contentCompact {
|
||
width: 100%;
|
||
}
|
||
|
||
.jp-FormGroup-contentCompact .form-group {
|
||
display: flex;
|
||
padding: 0.5em 0.2em 0.5em 0;
|
||
}
|
||
|
||
.jp-FormGroup-contentCompact
|
||
.jp-FormGroup-compactTitle
|
||
.jp-FormGroup-description {
|
||
font-size: var(--jp-ui-font-size1);
|
||
color: var(--jp-ui-font-color2);
|
||
}
|
||
|
||
.jp-FormGroup-contentCompact .jp-FormGroup-fieldLabel {
|
||
padding-bottom: 0.3em;
|
||
}
|
||
|
||
.jp-FormGroup-contentCompact .jp-inputFieldWrapper .form-control {
|
||
width: 100%;
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
.jp-FormGroup-contentCompact .jp-arrayFieldWrapper .jp-FormGroup-compactTitle {
|
||
padding-bottom: 7px;
|
||
}
|
||
|
||
.jp-FormGroup-contentCompact
|
||
.jp-objectFieldWrapper
|
||
.jp-objectFieldWrapper
|
||
.form-group {
|
||
padding: 2px 8px 2px var(--jp-private-settingeditor-modifier-indent);
|
||
margin-top: 2px;
|
||
}
|
||
|
||
.jp-FormGroup-contentCompact ul.error-detail {
|
||
margin-block-start: 0.5em;
|
||
margin-block-end: 0.5em;
|
||
padding-inline-start: 1em;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
.jp-SidePanel {
|
||
display: flex;
|
||
flex-direction: column;
|
||
min-width: var(--jp-sidebar-min-width);
|
||
overflow-y: auto;
|
||
color: var(--jp-ui-font-color1);
|
||
background: var(--jp-layout-color1);
|
||
font-size: var(--jp-ui-font-size1);
|
||
}
|
||
|
||
.jp-SidePanel-header {
|
||
flex: 0 0 auto;
|
||
display: flex;
|
||
border-bottom: var(--jp-border-width) solid var(--jp-border-color2);
|
||
font-size: var(--jp-ui-font-size0);
|
||
font-weight: 600;
|
||
letter-spacing: 1px;
|
||
margin: 0;
|
||
padding: 2px;
|
||
text-transform: uppercase;
|
||
}
|
||
|
||
.jp-SidePanel-toolbar {
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
.jp-SidePanel-content {
|
||
flex: 1 1 auto;
|
||
}
|
||
|
||
.jp-SidePanel-toolbar,
|
||
.jp-AccordionPanel-toolbar {
|
||
height: var(--jp-private-toolbar-height);
|
||
}
|
||
|
||
.jp-SidePanel-toolbar.jp-Toolbar-micro {
|
||
display: none;
|
||
}
|
||
|
||
.lm-AccordionPanel .jp-AccordionPanel-title {
|
||
box-sizing: border-box;
|
||
line-height: 25px;
|
||
margin: 0;
|
||
display: flex;
|
||
align-items: center;
|
||
background: var(--jp-layout-color1);
|
||
color: var(--jp-ui-font-color1);
|
||
border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
|
||
box-shadow: var(--jp-toolbar-box-shadow);
|
||
font-size: var(--jp-ui-font-size0);
|
||
}
|
||
|
||
.jp-AccordionPanel-title {
|
||
cursor: pointer;
|
||
user-select: none;
|
||
-moz-user-select: none;
|
||
-webkit-user-select: none;
|
||
text-transform: uppercase;
|
||
}
|
||
|
||
.lm-AccordionPanel[data-orientation='horizontal'] > .jp-AccordionPanel-title {
|
||
/* Title is rotated for horizontal accordion panel using CSS */
|
||
display: block;
|
||
transform-origin: top left;
|
||
transform: rotate(-90deg) translate(-100%);
|
||
}
|
||
|
||
.jp-AccordionPanel-title .lm-AccordionPanel-titleLabel {
|
||
user-select: none;
|
||
text-overflow: ellipsis;
|
||
white-space: nowrap;
|
||
overflow: hidden;
|
||
}
|
||
|
||
.jp-AccordionPanel-title .lm-AccordionPanel-titleCollapser {
|
||
transform: rotate(-90deg);
|
||
margin: auto 0;
|
||
height: 16px;
|
||
}
|
||
|
||
.jp-AccordionPanel-title.lm-mod-expanded .lm-AccordionPanel-titleCollapser {
|
||
transform: rotate(0deg);
|
||
}
|
||
|
||
.lm-AccordionPanel .jp-AccordionPanel-toolbar {
|
||
background: none;
|
||
box-shadow: none;
|
||
border: none;
|
||
margin-left: auto;
|
||
}
|
||
|
||
.lm-AccordionPanel .lm-SplitPanel-handle:hover {
|
||
background: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-text-truncated {
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
white-space: nowrap;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) 2017, Jupyter Development Team.
|
||
|
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Spinner {
|
||
position: absolute;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
z-index: 10;
|
||
left: 0;
|
||
top: 0;
|
||
width: 100%;
|
||
height: 100%;
|
||
background: var(--jp-layout-color0);
|
||
outline: none;
|
||
}
|
||
|
||
.jp-SpinnerContent {
|
||
font-size: 10px;
|
||
margin: 50px auto;
|
||
text-indent: -9999em;
|
||
width: 3em;
|
||
height: 3em;
|
||
border-radius: 50%;
|
||
background: var(--jp-brand-color3);
|
||
background: linear-gradient(
|
||
to right,
|
||
#f37626 10%,
|
||
rgba(255, 255, 255, 0) 42%
|
||
);
|
||
position: relative;
|
||
animation: load3 1s infinite linear, fadeIn 1s;
|
||
}
|
||
|
||
.jp-SpinnerContent::before {
|
||
width: 50%;
|
||
height: 50%;
|
||
background: #f37626;
|
||
border-radius: 100% 0 0;
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
content: '';
|
||
}
|
||
|
||
.jp-SpinnerContent::after {
|
||
background: var(--jp-layout-color0);
|
||
width: 75%;
|
||
height: 75%;
|
||
border-radius: 50%;
|
||
content: '';
|
||
margin: auto;
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
bottom: 0;
|
||
right: 0;
|
||
}
|
||
|
||
@keyframes fadeIn {
|
||
0% {
|
||
opacity: 0;
|
||
}
|
||
|
||
100% {
|
||
opacity: 1;
|
||
}
|
||
}
|
||
|
||
@keyframes load3 {
|
||
0% {
|
||
transform: rotate(0deg);
|
||
}
|
||
|
||
100% {
|
||
transform: rotate(360deg);
|
||
}
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) 2014-2017, Jupyter Development Team.
|
||
|
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
button.jp-mod-styled {
|
||
font-size: var(--jp-ui-font-size1);
|
||
color: var(--jp-ui-font-color0);
|
||
border: none;
|
||
box-sizing: border-box;
|
||
text-align: center;
|
||
line-height: 32px;
|
||
height: 32px;
|
||
padding: 0 12px;
|
||
letter-spacing: 0.8px;
|
||
outline: none;
|
||
appearance: none;
|
||
-webkit-appearance: none;
|
||
-moz-appearance: none;
|
||
}
|
||
|
||
input.jp-mod-styled {
|
||
background: var(--jp-input-background);
|
||
height: 28px;
|
||
box-sizing: border-box;
|
||
border: var(--jp-border-width) solid var(--jp-border-color1);
|
||
padding-left: 7px;
|
||
padding-right: 7px;
|
||
font-size: var(--jp-ui-font-size2);
|
||
color: var(--jp-ui-font-color0);
|
||
outline: none;
|
||
appearance: none;
|
||
-webkit-appearance: none;
|
||
-moz-appearance: none;
|
||
}
|
||
|
||
input[type='checkbox'].jp-mod-styled {
|
||
appearance: checkbox;
|
||
-webkit-appearance: checkbox;
|
||
-moz-appearance: checkbox;
|
||
height: auto;
|
||
}
|
||
|
||
input.jp-mod-styled:focus {
|
||
border: var(--jp-border-width) solid var(--md-blue-500);
|
||
box-shadow: inset 0 0 4px var(--md-blue-300);
|
||
}
|
||
|
||
.jp-select-wrapper {
|
||
display: flex;
|
||
position: relative;
|
||
flex-direction: column;
|
||
padding: 1px;
|
||
background-color: var(--jp-layout-color1);
|
||
box-sizing: border-box;
|
||
margin-bottom: 12px;
|
||
}
|
||
|
||
.jp-select-wrapper:not(.multiple) {
|
||
height: 28px;
|
||
}
|
||
|
||
.jp-select-wrapper.jp-mod-focused select.jp-mod-styled {
|
||
border: var(--jp-border-width) solid var(--jp-input-active-border-color);
|
||
box-shadow: var(--jp-input-box-shadow);
|
||
background-color: var(--jp-input-active-background);
|
||
}
|
||
|
||
select.jp-mod-styled:hover {
|
||
cursor: pointer;
|
||
color: var(--jp-ui-font-color0);
|
||
background-color: var(--jp-input-hover-background);
|
||
box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.5);
|
||
}
|
||
|
||
select.jp-mod-styled {
|
||
flex: 1 1 auto;
|
||
width: 100%;
|
||
font-size: var(--jp-ui-font-size2);
|
||
background: var(--jp-input-background);
|
||
color: var(--jp-ui-font-color0);
|
||
padding: 0 25px 0 8px;
|
||
border: var(--jp-border-width) solid var(--jp-input-border-color);
|
||
border-radius: 0;
|
||
outline: none;
|
||
appearance: none;
|
||
-webkit-appearance: none;
|
||
-moz-appearance: none;
|
||
}
|
||
|
||
select.jp-mod-styled:not([multiple]) {
|
||
height: 32px;
|
||
}
|
||
|
||
select.jp-mod-styled[multiple] {
|
||
max-height: 200px;
|
||
overflow-y: auto;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-switch {
|
||
display: flex;
|
||
align-items: center;
|
||
padding-left: 4px;
|
||
padding-right: 4px;
|
||
font-size: var(--jp-ui-font-size1);
|
||
background-color: transparent;
|
||
color: var(--jp-ui-font-color1);
|
||
border: none;
|
||
height: 20px;
|
||
}
|
||
|
||
.jp-switch:hover {
|
||
background-color: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-switch-label {
|
||
margin-right: 5px;
|
||
font-family: var(--jp-ui-font-family);
|
||
}
|
||
|
||
.jp-switch-track {
|
||
cursor: pointer;
|
||
background-color: var(--jp-switch-color, var(--jp-border-color1));
|
||
-webkit-transition: 0.4s;
|
||
transition: 0.4s;
|
||
border-radius: 34px;
|
||
height: 16px;
|
||
width: 35px;
|
||
position: relative;
|
||
}
|
||
|
||
.jp-switch-track::before {
|
||
content: '';
|
||
position: absolute;
|
||
height: 10px;
|
||
width: 10px;
|
||
margin: 3px;
|
||
left: 0;
|
||
background-color: var(--jp-ui-inverse-font-color1);
|
||
-webkit-transition: 0.4s;
|
||
transition: 0.4s;
|
||
border-radius: 50%;
|
||
}
|
||
|
||
.jp-switch[aria-checked='true'] .jp-switch-track {
|
||
background-color: var(--jp-switch-true-position-color, var(--jp-warn-color0));
|
||
}
|
||
|
||
.jp-switch[aria-checked='true'] .jp-switch-track::before {
|
||
/* track width (35) - margins (3 + 3) - thumb width (10) */
|
||
left: 19px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) 2014-2016, Jupyter Development Team.
|
||
|
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
:root {
|
||
--jp-private-toolbar-height: calc(
|
||
28px + var(--jp-border-width)
|
||
); /* leave 28px for content */
|
||
}
|
||
|
||
.jp-Toolbar {
|
||
color: var(--jp-ui-font-color1);
|
||
flex: 0 0 auto;
|
||
display: flex;
|
||
flex-direction: row;
|
||
border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
|
||
box-shadow: var(--jp-toolbar-box-shadow);
|
||
background: var(--jp-toolbar-background);
|
||
min-height: var(--jp-toolbar-micro-height);
|
||
padding: 2px;
|
||
z-index: 8;
|
||
overflow-x: hidden;
|
||
}
|
||
|
||
/* Toolbar items */
|
||
|
||
.jp-Toolbar > .jp-Toolbar-item.jp-Toolbar-spacer {
|
||
flex-grow: 1;
|
||
flex-shrink: 1;
|
||
}
|
||
|
||
.jp-Toolbar-item.jp-Toolbar-kernelStatus {
|
||
display: inline-block;
|
||
width: 32px;
|
||
background-repeat: no-repeat;
|
||
background-position: center;
|
||
background-size: 16px;
|
||
}
|
||
|
||
.jp-Toolbar > .jp-Toolbar-item {
|
||
flex: 0 0 auto;
|
||
display: flex;
|
||
padding-left: 1px;
|
||
padding-right: 1px;
|
||
font-size: var(--jp-ui-font-size1);
|
||
line-height: var(--jp-private-toolbar-height);
|
||
height: 100%;
|
||
}
|
||
|
||
/* Toolbar buttons */
|
||
|
||
/* This is the div we use to wrap the react component into a Widget */
|
||
div.jp-ToolbarButton {
|
||
color: transparent;
|
||
border: none;
|
||
box-sizing: border-box;
|
||
outline: none;
|
||
appearance: none;
|
||
-webkit-appearance: none;
|
||
-moz-appearance: none;
|
||
padding: 0;
|
||
margin: 0;
|
||
}
|
||
|
||
button.jp-ToolbarButtonComponent {
|
||
background: var(--jp-layout-color1);
|
||
border: none;
|
||
box-sizing: border-box;
|
||
outline: none;
|
||
appearance: none;
|
||
-webkit-appearance: none;
|
||
-moz-appearance: none;
|
||
padding: 0 6px;
|
||
margin: 0;
|
||
height: 24px;
|
||
border-radius: var(--jp-border-radius);
|
||
display: flex;
|
||
align-items: center;
|
||
text-align: center;
|
||
font-size: 14px;
|
||
min-width: unset;
|
||
min-height: unset;
|
||
}
|
||
|
||
button.jp-ToolbarButtonComponent:disabled {
|
||
opacity: 0.4;
|
||
}
|
||
|
||
button.jp-ToolbarButtonComponent > span {
|
||
padding: 0;
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
button.jp-ToolbarButtonComponent .jp-ToolbarButtonComponent-label {
|
||
font-size: var(--jp-ui-font-size1);
|
||
line-height: 100%;
|
||
padding-left: 2px;
|
||
color: var(--jp-ui-font-color1);
|
||
font-family: var(--jp-ui-font-family);
|
||
}
|
||
|
||
#jp-main-dock-panel[data-mode='single-document']
|
||
.jp-MainAreaWidget
|
||
> .jp-Toolbar.jp-Toolbar-micro {
|
||
padding: 0;
|
||
min-height: 0;
|
||
}
|
||
|
||
#jp-main-dock-panel[data-mode='single-document']
|
||
.jp-MainAreaWidget
|
||
> .jp-Toolbar {
|
||
border: none;
|
||
box-shadow: none;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
.jp-WindowedPanel-outer {
|
||
position: relative;
|
||
overflow-y: auto;
|
||
}
|
||
|
||
.jp-WindowedPanel-inner {
|
||
position: relative;
|
||
}
|
||
|
||
.jp-WindowedPanel-window {
|
||
position: absolute;
|
||
left: 0;
|
||
right: 0;
|
||
overflow: visible;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/* Sibling imports */
|
||
|
||
body {
|
||
color: var(--jp-ui-font-color1);
|
||
font-size: var(--jp-ui-font-size1);
|
||
}
|
||
|
||
/* Disable native link decoration styles everywhere outside of dialog boxes */
|
||
a {
|
||
text-decoration: unset;
|
||
color: unset;
|
||
}
|
||
|
||
a:hover {
|
||
text-decoration: unset;
|
||
color: unset;
|
||
}
|
||
|
||
/* Accessibility for links inside dialog box text */
|
||
.jp-Dialog-content a {
|
||
text-decoration: revert;
|
||
color: var(--jp-content-link-color);
|
||
}
|
||
|
||
.jp-Dialog-content a:hover {
|
||
text-decoration: revert;
|
||
}
|
||
|
||
/* Styles for ui-components */
|
||
.jp-Button {
|
||
color: var(--jp-ui-font-color2);
|
||
border-radius: var(--jp-border-radius);
|
||
padding: 0 12px;
|
||
font-size: var(--jp-ui-font-size1);
|
||
|
||
/* Copy from blueprint 3 */
|
||
display: inline-flex;
|
||
flex-direction: row;
|
||
border: none;
|
||
cursor: pointer;
|
||
align-items: center;
|
||
justify-content: center;
|
||
text-align: left;
|
||
vertical-align: middle;
|
||
min-height: 30px;
|
||
min-width: 30px;
|
||
}
|
||
|
||
.jp-Button:disabled {
|
||
cursor: not-allowed;
|
||
}
|
||
|
||
.jp-Button:empty {
|
||
padding: 0 !important;
|
||
}
|
||
|
||
.jp-Button.jp-mod-small {
|
||
min-height: 24px;
|
||
min-width: 24px;
|
||
font-size: 12px;
|
||
padding: 0 7px;
|
||
}
|
||
|
||
/* Use our own theme for hover styles */
|
||
.jp-Button.jp-mod-minimal:hover {
|
||
background-color: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-Button.jp-mod-minimal {
|
||
background: none;
|
||
}
|
||
|
||
.jp-InputGroup {
|
||
display: block;
|
||
position: relative;
|
||
}
|
||
|
||
.jp-InputGroup input {
|
||
box-sizing: border-box;
|
||
border: none;
|
||
border-radius: 0;
|
||
background-color: transparent;
|
||
color: var(--jp-ui-font-color0);
|
||
box-shadow: inset 0 0 0 var(--jp-border-width) var(--jp-input-border-color);
|
||
padding-bottom: 0;
|
||
padding-top: 0;
|
||
padding-left: 10px;
|
||
padding-right: 28px;
|
||
position: relative;
|
||
width: 100%;
|
||
-webkit-appearance: none;
|
||
-moz-appearance: none;
|
||
appearance: none;
|
||
font-size: 14px;
|
||
font-weight: 400;
|
||
height: 30px;
|
||
line-height: 30px;
|
||
outline: none;
|
||
vertical-align: middle;
|
||
}
|
||
|
||
.jp-InputGroup input:focus {
|
||
box-shadow: inset 0 0 0 var(--jp-border-width)
|
||
var(--jp-input-active-box-shadow-color),
|
||
inset 0 0 0 3px var(--jp-input-active-box-shadow-color);
|
||
}
|
||
|
||
.jp-InputGroup input:disabled {
|
||
cursor: not-allowed;
|
||
resize: block;
|
||
background-color: var(--jp-layout-color2);
|
||
color: var(--jp-ui-font-color2);
|
||
}
|
||
|
||
.jp-InputGroup input:disabled ~ span {
|
||
cursor: not-allowed;
|
||
color: var(--jp-ui-font-color2);
|
||
}
|
||
|
||
.jp-InputGroup input::placeholder,
|
||
input::placeholder {
|
||
color: var(--jp-ui-font-color2);
|
||
}
|
||
|
||
.jp-InputGroupAction {
|
||
position: absolute;
|
||
bottom: 1px;
|
||
right: 0;
|
||
padding: 6px;
|
||
}
|
||
|
||
.jp-HTMLSelect.jp-DefaultStyle select {
|
||
background-color: initial;
|
||
border: none;
|
||
border-radius: 0;
|
||
box-shadow: none;
|
||
color: var(--jp-ui-font-color0);
|
||
display: block;
|
||
font-size: var(--jp-ui-font-size1);
|
||
font-family: var(--jp-ui-font-family);
|
||
height: 24px;
|
||
line-height: 14px;
|
||
padding: 0 25px 0 10px;
|
||
text-align: left;
|
||
-moz-appearance: none;
|
||
-webkit-appearance: none;
|
||
}
|
||
|
||
.jp-HTMLSelect.jp-DefaultStyle select:disabled {
|
||
background-color: var(--jp-layout-color2);
|
||
color: var(--jp-ui-font-color2);
|
||
cursor: not-allowed;
|
||
resize: block;
|
||
}
|
||
|
||
.jp-HTMLSelect.jp-DefaultStyle select:disabled ~ span {
|
||
cursor: not-allowed;
|
||
}
|
||
|
||
/* Use our own theme for hover and option styles */
|
||
/* stylelint-disable-next-line selector-max-type */
|
||
.jp-HTMLSelect.jp-DefaultStyle select:hover,
|
||
.jp-HTMLSelect.jp-DefaultStyle select > option {
|
||
background-color: var(--jp-layout-color2);
|
||
color: var(--jp-ui-font-color0);
|
||
}
|
||
|
||
select {
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Styles
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-StatusBar-Widget {
|
||
display: flex;
|
||
align-items: center;
|
||
background: var(--jp-layout-color2);
|
||
min-height: var(--jp-statusbar-height);
|
||
justify-content: space-between;
|
||
padding: 0 10px;
|
||
}
|
||
|
||
.jp-StatusBar-Left {
|
||
display: flex;
|
||
align-items: center;
|
||
flex-direction: row;
|
||
}
|
||
|
||
.jp-StatusBar-Middle {
|
||
display: flex;
|
||
align-items: center;
|
||
}
|
||
|
||
.jp-StatusBar-Right {
|
||
display: flex;
|
||
align-items: center;
|
||
flex-direction: row-reverse;
|
||
}
|
||
|
||
.jp-StatusBar-Item {
|
||
max-height: var(--jp-statusbar-height);
|
||
margin: 0 2px;
|
||
height: var(--jp-statusbar-height);
|
||
white-space: nowrap;
|
||
text-overflow: ellipsis;
|
||
color: var(--jp-ui-font-color1);
|
||
padding: 0 6px;
|
||
}
|
||
|
||
.jp-mod-highlighted:hover {
|
||
background-color: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-mod-clicked {
|
||
background-color: var(--jp-brand-color1);
|
||
}
|
||
|
||
.jp-mod-clicked:hover {
|
||
background-color: var(--jp-brand-color0);
|
||
}
|
||
|
||
.jp-mod-clicked .jp-StatusBar-TextItem {
|
||
color: var(--jp-ui-inverse-font-color1);
|
||
}
|
||
|
||
.jp-StatusBar-HoverItem {
|
||
box-shadow: '0px 4px 4px rgba(0, 0, 0, 0.25)';
|
||
}
|
||
|
||
.jp-StatusBar-TextItem {
|
||
font-size: var(--jp-ui-font-size1);
|
||
font-family: var(--jp-ui-font-family);
|
||
line-height: 24px;
|
||
color: var(--jp-ui-font-color1);
|
||
}
|
||
|
||
.jp-StatusBar-GroupItem {
|
||
display: flex;
|
||
align-items: center;
|
||
flex-direction: row;
|
||
}
|
||
|
||
.jp-Statusbar-ProgressCircle svg {
|
||
display: block;
|
||
margin: 0 auto;
|
||
width: 16px;
|
||
height: 24px;
|
||
align-self: normal;
|
||
}
|
||
|
||
.jp-Statusbar-ProgressCircle path {
|
||
fill: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
.jp-Statusbar-ProgressBar-progress-bar {
|
||
height: 10px;
|
||
width: 100px;
|
||
border: solid 0.25px var(--jp-brand-color2);
|
||
border-radius: 3px;
|
||
overflow: hidden;
|
||
align-self: center;
|
||
}
|
||
|
||
.jp-Statusbar-ProgressBar-progress-bar > div {
|
||
background-color: var(--jp-brand-color2);
|
||
background-image: linear-gradient(
|
||
-45deg,
|
||
rgba(255, 255, 255, 0.2) 25%,
|
||
transparent 25%,
|
||
transparent 50%,
|
||
rgba(255, 255, 255, 0.2) 50%,
|
||
rgba(255, 255, 255, 0.2) 75%,
|
||
transparent 75%,
|
||
transparent
|
||
);
|
||
background-size: 40px 40px;
|
||
float: left;
|
||
width: 0%;
|
||
height: 100%;
|
||
font-size: 12px;
|
||
line-height: 14px;
|
||
color: #fff;
|
||
text-align: center;
|
||
animation: jp-Statusbar-ExecutionTime-progress-bar 2s linear infinite;
|
||
}
|
||
|
||
.jp-Statusbar-ProgressBar-progress-bar p {
|
||
color: var(--jp-ui-font-color1);
|
||
font-family: var(--jp-ui-font-family);
|
||
font-size: var(--jp-ui-font-size1);
|
||
line-height: 10px;
|
||
width: 100px;
|
||
}
|
||
|
||
@keyframes jp-Statusbar-ExecutionTime-progress-bar {
|
||
0% {
|
||
background-position: 0 0;
|
||
}
|
||
|
||
100% {
|
||
background-position: 40px 40px;
|
||
}
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Variables
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
:root {
|
||
--jp-private-commandpalette-search-height: 28px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Overall styles
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-CommandPalette {
|
||
padding-bottom: 0;
|
||
color: var(--jp-ui-font-color1);
|
||
background: var(--jp-layout-color1);
|
||
|
||
/* This is needed so that all font sizing of children done in ems is
|
||
* relative to this base size */
|
||
font-size: var(--jp-ui-font-size1);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Modal variant
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-ModalCommandPalette {
|
||
position: absolute;
|
||
z-index: 10000;
|
||
top: 38px;
|
||
left: 30%;
|
||
margin: 0;
|
||
padding: 4px;
|
||
width: 40%;
|
||
box-shadow: var(--jp-elevation-z4);
|
||
border-radius: 4px;
|
||
background: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-ModalCommandPalette .lm-CommandPalette {
|
||
max-height: 40vh;
|
||
}
|
||
|
||
.jp-ModalCommandPalette .lm-CommandPalette .lm-close-icon::after {
|
||
display: none;
|
||
}
|
||
|
||
.jp-ModalCommandPalette .lm-CommandPalette .lm-CommandPalette-header {
|
||
display: none;
|
||
}
|
||
|
||
.jp-ModalCommandPalette .lm-CommandPalette .lm-CommandPalette-item {
|
||
margin-left: 4px;
|
||
margin-right: 4px;
|
||
}
|
||
|
||
.jp-ModalCommandPalette
|
||
.lm-CommandPalette
|
||
.lm-CommandPalette-item.lm-mod-disabled {
|
||
display: none;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Search
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-CommandPalette-search {
|
||
padding: 4px;
|
||
background-color: var(--jp-layout-color1);
|
||
z-index: 2;
|
||
}
|
||
|
||
.lm-CommandPalette-wrapper {
|
||
overflow: overlay;
|
||
padding: 0 9px;
|
||
background-color: var(--jp-input-active-background);
|
||
height: 30px;
|
||
box-shadow: inset 0 0 0 var(--jp-border-width) var(--jp-input-border-color);
|
||
}
|
||
|
||
.lm-CommandPalette.lm-mod-focused .lm-CommandPalette-wrapper {
|
||
box-shadow: inset 0 0 0 1px var(--jp-input-active-box-shadow-color),
|
||
inset 0 0 0 3px var(--jp-input-active-box-shadow-color);
|
||
}
|
||
|
||
.jp-SearchIconGroup {
|
||
color: white;
|
||
background-color: var(--jp-brand-color1);
|
||
position: absolute;
|
||
top: 4px;
|
||
right: 4px;
|
||
padding: 5px 5px 1px;
|
||
}
|
||
|
||
.jp-SearchIconGroup svg {
|
||
height: 20px;
|
||
width: 20px;
|
||
}
|
||
|
||
.jp-SearchIconGroup .jp-icon3[fill] {
|
||
fill: var(--jp-layout-color0);
|
||
}
|
||
|
||
.lm-CommandPalette-input {
|
||
background: transparent;
|
||
width: calc(100% - 18px);
|
||
float: left;
|
||
border: none;
|
||
outline: none;
|
||
font-size: var(--jp-ui-font-size1);
|
||
color: var(--jp-ui-font-color0);
|
||
line-height: var(--jp-private-commandpalette-search-height);
|
||
}
|
||
|
||
.lm-CommandPalette-input::-webkit-input-placeholder,
|
||
.lm-CommandPalette-input::-moz-placeholder,
|
||
.lm-CommandPalette-input:-ms-input-placeholder {
|
||
color: var(--jp-ui-font-color2);
|
||
font-size: var(--jp-ui-font-size1);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Results
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-CommandPalette-header:first-child {
|
||
margin-top: 0;
|
||
}
|
||
|
||
.lm-CommandPalette-header {
|
||
border-bottom: solid var(--jp-border-width) var(--jp-border-color2);
|
||
color: var(--jp-ui-font-color1);
|
||
cursor: pointer;
|
||
display: flex;
|
||
font-size: var(--jp-ui-font-size0);
|
||
font-weight: 600;
|
||
letter-spacing: 1px;
|
||
margin-top: 8px;
|
||
padding: 8px 0 8px 12px;
|
||
text-transform: uppercase;
|
||
}
|
||
|
||
.lm-CommandPalette-header.lm-mod-active {
|
||
background: var(--jp-layout-color2);
|
||
}
|
||
|
||
.lm-CommandPalette-header > mark {
|
||
background-color: transparent;
|
||
font-weight: bold;
|
||
color: var(--jp-ui-font-color1);
|
||
}
|
||
|
||
.lm-CommandPalette-item {
|
||
padding: 4px 12px 4px 4px;
|
||
color: var(--jp-ui-font-color1);
|
||
font-size: var(--jp-ui-font-size1);
|
||
font-weight: 400;
|
||
display: flex;
|
||
}
|
||
|
||
.lm-CommandPalette-item.lm-mod-disabled {
|
||
color: var(--jp-ui-font-color2);
|
||
}
|
||
|
||
.lm-CommandPalette-item.lm-mod-active {
|
||
color: var(--jp-ui-inverse-font-color1);
|
||
background: var(--jp-brand-color1);
|
||
}
|
||
|
||
.lm-CommandPalette-item.lm-mod-active .lm-CommandPalette-itemLabel > mark {
|
||
color: var(--jp-ui-inverse-font-color0);
|
||
}
|
||
|
||
.lm-CommandPalette-item.lm-mod-active .jp-icon-selectable[fill] {
|
||
fill: var(--jp-layout-color0);
|
||
}
|
||
|
||
.lm-CommandPalette-item.lm-mod-active:hover:not(.lm-mod-disabled) {
|
||
color: var(--jp-ui-inverse-font-color1);
|
||
background: var(--jp-brand-color1);
|
||
}
|
||
|
||
.lm-CommandPalette-item:hover:not(.lm-mod-active):not(.lm-mod-disabled) {
|
||
background: var(--jp-layout-color2);
|
||
}
|
||
|
||
.lm-CommandPalette-itemContent {
|
||
overflow: hidden;
|
||
}
|
||
|
||
.lm-CommandPalette-itemLabel > mark {
|
||
color: var(--jp-ui-font-color0);
|
||
background-color: transparent;
|
||
font-weight: bold;
|
||
}
|
||
|
||
.lm-CommandPalette-item.lm-mod-disabled mark {
|
||
color: var(--jp-ui-font-color2);
|
||
}
|
||
|
||
.lm-CommandPalette-item .lm-CommandPalette-itemIcon {
|
||
margin: 0 4px 0 0;
|
||
position: relative;
|
||
width: 16px;
|
||
top: 2px;
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
.lm-CommandPalette-item.lm-mod-disabled .lm-CommandPalette-itemIcon {
|
||
opacity: 0.6;
|
||
}
|
||
|
||
.lm-CommandPalette-item .lm-CommandPalette-itemShortcut {
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
.lm-CommandPalette-itemCaption {
|
||
display: none;
|
||
}
|
||
|
||
.lm-CommandPalette-content {
|
||
background-color: var(--jp-layout-color1);
|
||
}
|
||
|
||
.lm-CommandPalette-content:empty::after {
|
||
content: 'No results';
|
||
margin: auto;
|
||
margin-top: 20px;
|
||
width: 100px;
|
||
display: block;
|
||
font-size: var(--jp-ui-font-size2);
|
||
font-family: var(--jp-ui-font-family);
|
||
font-weight: lighter;
|
||
}
|
||
|
||
.lm-CommandPalette-emptyMessage {
|
||
text-align: center;
|
||
margin-top: 24px;
|
||
line-height: 1.32;
|
||
padding: 0 8px;
|
||
color: var(--jp-content-font-color3);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) 2014-2017, Jupyter Development Team.
|
||
|
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Dialog {
|
||
position: absolute;
|
||
z-index: 10000;
|
||
display: flex;
|
||
flex-direction: column;
|
||
align-items: center;
|
||
justify-content: center;
|
||
top: 0;
|
||
left: 0;
|
||
margin: 0;
|
||
padding: 0;
|
||
width: 100%;
|
||
height: 100%;
|
||
background: var(--jp-dialog-background);
|
||
}
|
||
|
||
.jp-Dialog-content {
|
||
display: flex;
|
||
flex-direction: column;
|
||
margin-left: auto;
|
||
margin-right: auto;
|
||
background: var(--jp-layout-color1);
|
||
padding: 24px 24px 12px;
|
||
min-width: 300px;
|
||
min-height: 150px;
|
||
max-width: 1000px;
|
||
max-height: 500px;
|
||
box-sizing: border-box;
|
||
box-shadow: var(--jp-elevation-z20);
|
||
word-wrap: break-word;
|
||
border-radius: var(--jp-border-radius);
|
||
|
||
/* This is needed so that all font sizing of children done in ems is
|
||
* relative to this base size */
|
||
font-size: var(--jp-ui-font-size1);
|
||
color: var(--jp-ui-font-color1);
|
||
resize: both;
|
||
}
|
||
|
||
.jp-Dialog-content.jp-Dialog-content-small {
|
||
max-width: 500px;
|
||
}
|
||
|
||
.jp-Dialog-button {
|
||
overflow: visible;
|
||
}
|
||
|
||
button.jp-Dialog-button:focus {
|
||
outline: 1px solid var(--jp-brand-color1);
|
||
outline-offset: 4px;
|
||
-moz-outline-radius: 0;
|
||
}
|
||
|
||
button.jp-Dialog-button:focus::-moz-focus-inner {
|
||
border: 0;
|
||
}
|
||
|
||
button.jp-Dialog-button.jp-mod-styled.jp-mod-accept:focus,
|
||
button.jp-Dialog-button.jp-mod-styled.jp-mod-warn:focus,
|
||
button.jp-Dialog-button.jp-mod-styled.jp-mod-reject:focus {
|
||
outline-offset: 4px;
|
||
-moz-outline-radius: 0;
|
||
}
|
||
|
||
button.jp-Dialog-button.jp-mod-styled.jp-mod-accept:focus {
|
||
outline: 1px solid var(--jp-accept-color-normal, var(--jp-brand-color1));
|
||
}
|
||
|
||
button.jp-Dialog-button.jp-mod-styled.jp-mod-warn:focus {
|
||
outline: 1px solid var(--jp-warn-color-normal, var(--jp-error-color1));
|
||
}
|
||
|
||
button.jp-Dialog-button.jp-mod-styled.jp-mod-reject:focus {
|
||
outline: 1px solid var(--jp-reject-color-normal, var(--md-grey-600));
|
||
}
|
||
|
||
button.jp-Dialog-close-button {
|
||
padding: 0;
|
||
height: 100%;
|
||
min-width: unset;
|
||
min-height: unset;
|
||
}
|
||
|
||
.jp-Dialog-header {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
flex: 0 0 auto;
|
||
padding-bottom: 12px;
|
||
font-size: var(--jp-ui-font-size3);
|
||
font-weight: 400;
|
||
color: var(--jp-ui-font-color1);
|
||
}
|
||
|
||
.jp-Dialog-body {
|
||
display: flex;
|
||
flex-direction: column;
|
||
flex: 1 1 auto;
|
||
font-size: var(--jp-ui-font-size1);
|
||
background: var(--jp-layout-color1);
|
||
color: var(--jp-ui-font-color1);
|
||
overflow: auto;
|
||
}
|
||
|
||
.jp-Dialog-footer {
|
||
display: flex;
|
||
flex-direction: row;
|
||
justify-content: flex-end;
|
||
align-items: center;
|
||
flex: 0 0 auto;
|
||
margin-left: -12px;
|
||
margin-right: -12px;
|
||
padding: 12px;
|
||
}
|
||
|
||
.jp-Dialog-checkbox {
|
||
padding-right: 5px;
|
||
}
|
||
|
||
.jp-Dialog-checkbox > input:focus-visible {
|
||
outline: 1px solid var(--jp-input-active-border-color);
|
||
outline-offset: 1px;
|
||
}
|
||
|
||
.jp-Dialog-spacer {
|
||
flex: 1 1 auto;
|
||
}
|
||
|
||
.jp-Dialog-title {
|
||
overflow: hidden;
|
||
white-space: nowrap;
|
||
text-overflow: ellipsis;
|
||
}
|
||
|
||
.jp-Dialog-body > .jp-select-wrapper {
|
||
width: 100%;
|
||
}
|
||
|
||
.jp-Dialog-body > button {
|
||
padding: 0 16px;
|
||
}
|
||
|
||
.jp-Dialog-body > label {
|
||
line-height: 1.4;
|
||
color: var(--jp-ui-font-color0);
|
||
}
|
||
|
||
.jp-Dialog-button.jp-mod-styled:not(:last-child) {
|
||
margin-right: 12px;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
.jp-Input-Boolean-Dialog {
|
||
flex-direction: row-reverse;
|
||
align-items: end;
|
||
width: 100%;
|
||
}
|
||
|
||
.jp-Input-Boolean-Dialog > label {
|
||
flex: 1 1 auto;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) 2014-2016, Jupyter Development Team.
|
||
|
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-MainAreaWidget > :focus {
|
||
outline: none;
|
||
}
|
||
|
||
.jp-MainAreaWidget .jp-MainAreaWidget-error {
|
||
padding: 6px;
|
||
}
|
||
|
||
.jp-MainAreaWidget .jp-MainAreaWidget-error > pre {
|
||
width: auto;
|
||
padding: 10px;
|
||
background: var(--jp-error-color3);
|
||
border: var(--jp-border-width) solid var(--jp-error-color1);
|
||
border-radius: var(--jp-border-radius);
|
||
color: var(--jp-ui-font-color1);
|
||
font-size: var(--jp-ui-font-size1);
|
||
white-space: pre-wrap;
|
||
word-wrap: break-word;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/**
|
||
* google-material-color v1.2.6
|
||
* https://github.com/danlevan/google-material-color
|
||
*/
|
||
:root {
|
||
--md-red-50: #ffebee;
|
||
--md-red-100: #ffcdd2;
|
||
--md-red-200: #ef9a9a;
|
||
--md-red-300: #e57373;
|
||
--md-red-400: #ef5350;
|
||
--md-red-500: #f44336;
|
||
--md-red-600: #e53935;
|
||
--md-red-700: #d32f2f;
|
||
--md-red-800: #c62828;
|
||
--md-red-900: #b71c1c;
|
||
--md-red-A100: #ff8a80;
|
||
--md-red-A200: #ff5252;
|
||
--md-red-A400: #ff1744;
|
||
--md-red-A700: #d50000;
|
||
--md-pink-50: #fce4ec;
|
||
--md-pink-100: #f8bbd0;
|
||
--md-pink-200: #f48fb1;
|
||
--md-pink-300: #f06292;
|
||
--md-pink-400: #ec407a;
|
||
--md-pink-500: #e91e63;
|
||
--md-pink-600: #d81b60;
|
||
--md-pink-700: #c2185b;
|
||
--md-pink-800: #ad1457;
|
||
--md-pink-900: #880e4f;
|
||
--md-pink-A100: #ff80ab;
|
||
--md-pink-A200: #ff4081;
|
||
--md-pink-A400: #f50057;
|
||
--md-pink-A700: #c51162;
|
||
--md-purple-50: #f3e5f5;
|
||
--md-purple-100: #e1bee7;
|
||
--md-purple-200: #ce93d8;
|
||
--md-purple-300: #ba68c8;
|
||
--md-purple-400: #ab47bc;
|
||
--md-purple-500: #9c27b0;
|
||
--md-purple-600: #8e24aa;
|
||
--md-purple-700: #7b1fa2;
|
||
--md-purple-800: #6a1b9a;
|
||
--md-purple-900: #4a148c;
|
||
--md-purple-A100: #ea80fc;
|
||
--md-purple-A200: #e040fb;
|
||
--md-purple-A400: #d500f9;
|
||
--md-purple-A700: #a0f;
|
||
--md-deep-purple-50: #ede7f6;
|
||
--md-deep-purple-100: #d1c4e9;
|
||
--md-deep-purple-200: #b39ddb;
|
||
--md-deep-purple-300: #9575cd;
|
||
--md-deep-purple-400: #7e57c2;
|
||
--md-deep-purple-500: #673ab7;
|
||
--md-deep-purple-600: #5e35b1;
|
||
--md-deep-purple-700: #512da8;
|
||
--md-deep-purple-800: #4527a0;
|
||
--md-deep-purple-900: #311b92;
|
||
--md-deep-purple-A100: #b388ff;
|
||
--md-deep-purple-A200: #7c4dff;
|
||
--md-deep-purple-A400: #651fff;
|
||
--md-deep-purple-A700: #6200ea;
|
||
--md-indigo-50: #e8eaf6;
|
||
--md-indigo-100: #c5cae9;
|
||
--md-indigo-200: #9fa8da;
|
||
--md-indigo-300: #7986cb;
|
||
--md-indigo-400: #5c6bc0;
|
||
--md-indigo-500: #3f51b5;
|
||
--md-indigo-600: #3949ab;
|
||
--md-indigo-700: #303f9f;
|
||
--md-indigo-800: #283593;
|
||
--md-indigo-900: #1a237e;
|
||
--md-indigo-A100: #8c9eff;
|
||
--md-indigo-A200: #536dfe;
|
||
--md-indigo-A400: #3d5afe;
|
||
--md-indigo-A700: #304ffe;
|
||
--md-blue-50: #e3f2fd;
|
||
--md-blue-100: #bbdefb;
|
||
--md-blue-200: #90caf9;
|
||
--md-blue-300: #64b5f6;
|
||
--md-blue-400: #42a5f5;
|
||
--md-blue-500: #2196f3;
|
||
--md-blue-600: #1e88e5;
|
||
--md-blue-700: #1976d2;
|
||
--md-blue-800: #1565c0;
|
||
--md-blue-900: #0d47a1;
|
||
--md-blue-A100: #82b1ff;
|
||
--md-blue-A200: #448aff;
|
||
--md-blue-A400: #2979ff;
|
||
--md-blue-A700: #2962ff;
|
||
--md-light-blue-50: #e1f5fe;
|
||
--md-light-blue-100: #b3e5fc;
|
||
--md-light-blue-200: #81d4fa;
|
||
--md-light-blue-300: #4fc3f7;
|
||
--md-light-blue-400: #29b6f6;
|
||
--md-light-blue-500: #03a9f4;
|
||
--md-light-blue-600: #039be5;
|
||
--md-light-blue-700: #0288d1;
|
||
--md-light-blue-800: #0277bd;
|
||
--md-light-blue-900: #01579b;
|
||
--md-light-blue-A100: #80d8ff;
|
||
--md-light-blue-A200: #40c4ff;
|
||
--md-light-blue-A400: #00b0ff;
|
||
--md-light-blue-A700: #0091ea;
|
||
--md-cyan-50: #e0f7fa;
|
||
--md-cyan-100: #b2ebf2;
|
||
--md-cyan-200: #80deea;
|
||
--md-cyan-300: #4dd0e1;
|
||
--md-cyan-400: #26c6da;
|
||
--md-cyan-500: #00bcd4;
|
||
--md-cyan-600: #00acc1;
|
||
--md-cyan-700: #0097a7;
|
||
--md-cyan-800: #00838f;
|
||
--md-cyan-900: #006064;
|
||
--md-cyan-A100: #84ffff;
|
||
--md-cyan-A200: #18ffff;
|
||
--md-cyan-A400: #00e5ff;
|
||
--md-cyan-A700: #00b8d4;
|
||
--md-teal-50: #e0f2f1;
|
||
--md-teal-100: #b2dfdb;
|
||
--md-teal-200: #80cbc4;
|
||
--md-teal-300: #4db6ac;
|
||
--md-teal-400: #26a69a;
|
||
--md-teal-500: #009688;
|
||
--md-teal-600: #00897b;
|
||
--md-teal-700: #00796b;
|
||
--md-teal-800: #00695c;
|
||
--md-teal-900: #004d40;
|
||
--md-teal-A100: #a7ffeb;
|
||
--md-teal-A200: #64ffda;
|
||
--md-teal-A400: #1de9b6;
|
||
--md-teal-A700: #00bfa5;
|
||
--md-green-50: #e8f5e9;
|
||
--md-green-100: #c8e6c9;
|
||
--md-green-200: #a5d6a7;
|
||
--md-green-300: #81c784;
|
||
--md-green-400: #66bb6a;
|
||
--md-green-500: #4caf50;
|
||
--md-green-600: #43a047;
|
||
--md-green-700: #388e3c;
|
||
--md-green-800: #2e7d32;
|
||
--md-green-900: #1b5e20;
|
||
--md-green-A100: #b9f6ca;
|
||
--md-green-A200: #69f0ae;
|
||
--md-green-A400: #00e676;
|
||
--md-green-A700: #00c853;
|
||
--md-light-green-50: #f1f8e9;
|
||
--md-light-green-100: #dcedc8;
|
||
--md-light-green-200: #c5e1a5;
|
||
--md-light-green-300: #aed581;
|
||
--md-light-green-400: #9ccc65;
|
||
--md-light-green-500: #8bc34a;
|
||
--md-light-green-600: #7cb342;
|
||
--md-light-green-700: #689f38;
|
||
--md-light-green-800: #558b2f;
|
||
--md-light-green-900: #33691e;
|
||
--md-light-green-A100: #ccff90;
|
||
--md-light-green-A200: #b2ff59;
|
||
--md-light-green-A400: #76ff03;
|
||
--md-light-green-A700: #64dd17;
|
||
--md-lime-50: #f9fbe7;
|
||
--md-lime-100: #f0f4c3;
|
||
--md-lime-200: #e6ee9c;
|
||
--md-lime-300: #dce775;
|
||
--md-lime-400: #d4e157;
|
||
--md-lime-500: #cddc39;
|
||
--md-lime-600: #c0ca33;
|
||
--md-lime-700: #afb42b;
|
||
--md-lime-800: #9e9d24;
|
||
--md-lime-900: #827717;
|
||
--md-lime-A100: #f4ff81;
|
||
--md-lime-A200: #eeff41;
|
||
--md-lime-A400: #c6ff00;
|
||
--md-lime-A700: #aeea00;
|
||
--md-yellow-50: #fffde7;
|
||
--md-yellow-100: #fff9c4;
|
||
--md-yellow-200: #fff59d;
|
||
--md-yellow-300: #fff176;
|
||
--md-yellow-400: #ffee58;
|
||
--md-yellow-500: #ffeb3b;
|
||
--md-yellow-600: #fdd835;
|
||
--md-yellow-700: #fbc02d;
|
||
--md-yellow-800: #f9a825;
|
||
--md-yellow-900: #f57f17;
|
||
--md-yellow-A100: #ffff8d;
|
||
--md-yellow-A200: #ff0;
|
||
--md-yellow-A400: #ffea00;
|
||
--md-yellow-A700: #ffd600;
|
||
--md-amber-50: #fff8e1;
|
||
--md-amber-100: #ffecb3;
|
||
--md-amber-200: #ffe082;
|
||
--md-amber-300: #ffd54f;
|
||
--md-amber-400: #ffca28;
|
||
--md-amber-500: #ffc107;
|
||
--md-amber-600: #ffb300;
|
||
--md-amber-700: #ffa000;
|
||
--md-amber-800: #ff8f00;
|
||
--md-amber-900: #ff6f00;
|
||
--md-amber-A100: #ffe57f;
|
||
--md-amber-A200: #ffd740;
|
||
--md-amber-A400: #ffc400;
|
||
--md-amber-A700: #ffab00;
|
||
--md-orange-50: #fff3e0;
|
||
--md-orange-100: #ffe0b2;
|
||
--md-orange-200: #ffcc80;
|
||
--md-orange-300: #ffb74d;
|
||
--md-orange-400: #ffa726;
|
||
--md-orange-500: #ff9800;
|
||
--md-orange-600: #fb8c00;
|
||
--md-orange-700: #f57c00;
|
||
--md-orange-800: #ef6c00;
|
||
--md-orange-900: #e65100;
|
||
--md-orange-A100: #ffd180;
|
||
--md-orange-A200: #ffab40;
|
||
--md-orange-A400: #ff9100;
|
||
--md-orange-A700: #ff6d00;
|
||
--md-deep-orange-50: #fbe9e7;
|
||
--md-deep-orange-100: #ffccbc;
|
||
--md-deep-orange-200: #ffab91;
|
||
--md-deep-orange-300: #ff8a65;
|
||
--md-deep-orange-400: #ff7043;
|
||
--md-deep-orange-500: #ff5722;
|
||
--md-deep-orange-600: #f4511e;
|
||
--md-deep-orange-700: #e64a19;
|
||
--md-deep-orange-800: #d84315;
|
||
--md-deep-orange-900: #bf360c;
|
||
--md-deep-orange-A100: #ff9e80;
|
||
--md-deep-orange-A200: #ff6e40;
|
||
--md-deep-orange-A400: #ff3d00;
|
||
--md-deep-orange-A700: #dd2c00;
|
||
--md-brown-50: #efebe9;
|
||
--md-brown-100: #d7ccc8;
|
||
--md-brown-200: #bcaaa4;
|
||
--md-brown-300: #a1887f;
|
||
--md-brown-400: #8d6e63;
|
||
--md-brown-500: #795548;
|
||
--md-brown-600: #6d4c41;
|
||
--md-brown-700: #5d4037;
|
||
--md-brown-800: #4e342e;
|
||
--md-brown-900: #3e2723;
|
||
--md-grey-50: #fafafa;
|
||
--md-grey-100: #f5f5f5;
|
||
--md-grey-200: #eee;
|
||
--md-grey-300: #e0e0e0;
|
||
--md-grey-400: #bdbdbd;
|
||
--md-grey-500: #9e9e9e;
|
||
--md-grey-600: #757575;
|
||
--md-grey-700: #616161;
|
||
--md-grey-800: #424242;
|
||
--md-grey-900: #212121;
|
||
--md-blue-grey-50: #eceff1;
|
||
--md-blue-grey-100: #cfd8dc;
|
||
--md-blue-grey-200: #b0bec5;
|
||
--md-blue-grey-300: #90a4ae;
|
||
--md-blue-grey-400: #78909c;
|
||
--md-blue-grey-500: #607d8b;
|
||
--md-blue-grey-600: #546e7a;
|
||
--md-blue-grey-700: #455a64;
|
||
--md-blue-grey-800: #37474f;
|
||
--md-blue-grey-900: #263238;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) 2014-2017, Jupyter Development Team.
|
||
|
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| RenderedText
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
:root {
|
||
/* This is the padding value to fill the gaps between lines containing spans with background color. */
|
||
--jp-private-code-span-padding: calc(
|
||
(var(--jp-code-line-height) - 1) * var(--jp-code-font-size) / 2
|
||
);
|
||
}
|
||
|
||
.jp-RenderedText {
|
||
text-align: left;
|
||
padding-left: var(--jp-code-padding);
|
||
line-height: var(--jp-code-line-height);
|
||
font-family: var(--jp-code-font-family);
|
||
}
|
||
|
||
.jp-RenderedText pre,
|
||
.jp-RenderedJavaScript pre,
|
||
.jp-RenderedHTMLCommon pre {
|
||
color: var(--jp-content-font-color1);
|
||
font-size: var(--jp-code-font-size);
|
||
border: none;
|
||
margin: 0;
|
||
padding: 0;
|
||
}
|
||
|
||
.jp-RenderedText pre a:link {
|
||
text-decoration: none;
|
||
color: var(--jp-content-link-color);
|
||
}
|
||
|
||
.jp-RenderedText pre a:hover {
|
||
text-decoration: underline;
|
||
color: var(--jp-content-link-color);
|
||
}
|
||
|
||
.jp-RenderedText pre a:visited {
|
||
text-decoration: none;
|
||
color: var(--jp-content-link-color);
|
||
}
|
||
|
||
/* console foregrounds and backgrounds */
|
||
.jp-RenderedText pre .ansi-black-fg {
|
||
color: #3e424d;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-red-fg {
|
||
color: #e75c58;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-green-fg {
|
||
color: #00a250;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-yellow-fg {
|
||
color: #ddb62b;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-blue-fg {
|
||
color: #208ffb;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-magenta-fg {
|
||
color: #d160c4;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-cyan-fg {
|
||
color: #60c6c8;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-white-fg {
|
||
color: #c5c1b4;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-black-bg {
|
||
background-color: #3e424d;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-red-bg {
|
||
background-color: #e75c58;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-green-bg {
|
||
background-color: #00a250;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-yellow-bg {
|
||
background-color: #ddb62b;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-blue-bg {
|
||
background-color: #208ffb;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-magenta-bg {
|
||
background-color: #d160c4;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-cyan-bg {
|
||
background-color: #60c6c8;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-white-bg {
|
||
background-color: #c5c1b4;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-black-intense-fg {
|
||
color: #282c36;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-red-intense-fg {
|
||
color: #b22b31;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-green-intense-fg {
|
||
color: #007427;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-yellow-intense-fg {
|
||
color: #b27d12;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-blue-intense-fg {
|
||
color: #0065ca;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-magenta-intense-fg {
|
||
color: #a03196;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-cyan-intense-fg {
|
||
color: #258f8f;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-white-intense-fg {
|
||
color: #a1a6b2;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-black-intense-bg {
|
||
background-color: #282c36;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-red-intense-bg {
|
||
background-color: #b22b31;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-green-intense-bg {
|
||
background-color: #007427;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-yellow-intense-bg {
|
||
background-color: #b27d12;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-blue-intense-bg {
|
||
background-color: #0065ca;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-magenta-intense-bg {
|
||
background-color: #a03196;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-cyan-intense-bg {
|
||
background-color: #258f8f;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-white-intense-bg {
|
||
background-color: #a1a6b2;
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-default-inverse-fg {
|
||
color: var(--jp-ui-inverse-font-color0);
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-default-inverse-bg {
|
||
background-color: var(--jp-inverse-layout-color0);
|
||
padding: var(--jp-private-code-span-padding) 0;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-bold {
|
||
font-weight: bold;
|
||
}
|
||
|
||
.jp-RenderedText pre .ansi-underline {
|
||
text-decoration: underline;
|
||
}
|
||
|
||
.jp-RenderedText[data-mime-type='application/vnd.jupyter.stderr'] {
|
||
background: var(--jp-rendermime-error-background);
|
||
padding-top: var(--jp-code-padding);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| RenderedLatex
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-RenderedLatex {
|
||
color: var(--jp-content-font-color1);
|
||
font-size: var(--jp-content-font-size1);
|
||
line-height: var(--jp-content-line-height);
|
||
}
|
||
|
||
/* Left-justify outputs.*/
|
||
.jp-OutputArea-output.jp-RenderedLatex {
|
||
padding: var(--jp-code-padding);
|
||
text-align: left;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| RenderedHTML
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-RenderedHTMLCommon {
|
||
color: var(--jp-content-font-color1);
|
||
font-family: var(--jp-content-font-family);
|
||
font-size: var(--jp-content-font-size1);
|
||
line-height: var(--jp-content-line-height);
|
||
|
||
/* Give a bit more R padding on Markdown text to keep line lengths reasonable */
|
||
padding-right: 20px;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon em {
|
||
font-style: italic;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon strong {
|
||
font-weight: bold;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon u {
|
||
text-decoration: underline;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon a:link {
|
||
text-decoration: none;
|
||
color: var(--jp-content-link-color);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon a:hover {
|
||
text-decoration: underline;
|
||
color: var(--jp-content-link-color);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon a:visited {
|
||
text-decoration: none;
|
||
color: var(--jp-content-link-color);
|
||
}
|
||
|
||
/* Headings */
|
||
|
||
.jp-RenderedHTMLCommon h1,
|
||
.jp-RenderedHTMLCommon h2,
|
||
.jp-RenderedHTMLCommon h3,
|
||
.jp-RenderedHTMLCommon h4,
|
||
.jp-RenderedHTMLCommon h5,
|
||
.jp-RenderedHTMLCommon h6 {
|
||
line-height: var(--jp-content-heading-line-height);
|
||
font-weight: var(--jp-content-heading-font-weight);
|
||
font-style: normal;
|
||
margin: var(--jp-content-heading-margin-top) 0
|
||
var(--jp-content-heading-margin-bottom) 0;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon h1:first-child,
|
||
.jp-RenderedHTMLCommon h2:first-child,
|
||
.jp-RenderedHTMLCommon h3:first-child,
|
||
.jp-RenderedHTMLCommon h4:first-child,
|
||
.jp-RenderedHTMLCommon h5:first-child,
|
||
.jp-RenderedHTMLCommon h6:first-child {
|
||
margin-top: calc(0.5 * var(--jp-content-heading-margin-top));
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon h1:last-child,
|
||
.jp-RenderedHTMLCommon h2:last-child,
|
||
.jp-RenderedHTMLCommon h3:last-child,
|
||
.jp-RenderedHTMLCommon h4:last-child,
|
||
.jp-RenderedHTMLCommon h5:last-child,
|
||
.jp-RenderedHTMLCommon h6:last-child {
|
||
margin-bottom: calc(0.5 * var(--jp-content-heading-margin-bottom));
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon h1 {
|
||
font-size: var(--jp-content-font-size5);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon h2 {
|
||
font-size: var(--jp-content-font-size4);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon h3 {
|
||
font-size: var(--jp-content-font-size3);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon h4 {
|
||
font-size: var(--jp-content-font-size2);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon h5 {
|
||
font-size: var(--jp-content-font-size1);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon h6 {
|
||
font-size: var(--jp-content-font-size0);
|
||
}
|
||
|
||
/* Lists */
|
||
|
||
/* stylelint-disable selector-max-type, selector-max-compound-selectors */
|
||
|
||
.jp-RenderedHTMLCommon ul:not(.list-inline),
|
||
.jp-RenderedHTMLCommon ol:not(.list-inline) {
|
||
padding-left: 2em;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon ul {
|
||
list-style: disc;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon ul ul {
|
||
list-style: square;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon ul ul ul {
|
||
list-style: circle;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon ol {
|
||
list-style: decimal;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon ol ol {
|
||
list-style: upper-alpha;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon ol ol ol {
|
||
list-style: lower-alpha;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon ol ol ol ol {
|
||
list-style: lower-roman;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon ol ol ol ol ol {
|
||
list-style: decimal;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon ol,
|
||
.jp-RenderedHTMLCommon ul {
|
||
margin-bottom: 1em;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon ul ul,
|
||
.jp-RenderedHTMLCommon ul ol,
|
||
.jp-RenderedHTMLCommon ol ul,
|
||
.jp-RenderedHTMLCommon ol ol {
|
||
margin-bottom: 0;
|
||
}
|
||
|
||
/* stylelint-enable selector-max-type, selector-max-compound-selectors */
|
||
|
||
.jp-RenderedHTMLCommon hr {
|
||
color: var(--jp-border-color2);
|
||
background-color: var(--jp-border-color1);
|
||
margin-top: 1em;
|
||
margin-bottom: 1em;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon > pre {
|
||
margin: 1.5em 2em;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon pre,
|
||
.jp-RenderedHTMLCommon code {
|
||
border: 0;
|
||
background-color: var(--jp-layout-color0);
|
||
color: var(--jp-content-font-color1);
|
||
font-family: var(--jp-code-font-family);
|
||
font-size: inherit;
|
||
line-height: var(--jp-code-line-height);
|
||
padding: 0;
|
||
white-space: pre-wrap;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon :not(pre) > code {
|
||
background-color: var(--jp-layout-color2);
|
||
padding: 1px 5px;
|
||
}
|
||
|
||
/* Tables */
|
||
|
||
.jp-RenderedHTMLCommon table {
|
||
border-collapse: collapse;
|
||
border-spacing: 0;
|
||
border: none;
|
||
color: var(--jp-ui-font-color1);
|
||
font-size: var(--jp-ui-font-size1);
|
||
table-layout: fixed;
|
||
margin-left: auto;
|
||
margin-bottom: 1em;
|
||
margin-right: auto;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon thead {
|
||
border-bottom: var(--jp-border-width) solid var(--jp-border-color1);
|
||
vertical-align: bottom;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon td,
|
||
.jp-RenderedHTMLCommon th,
|
||
.jp-RenderedHTMLCommon tr {
|
||
vertical-align: middle;
|
||
padding: 0.5em;
|
||
line-height: normal;
|
||
white-space: normal;
|
||
max-width: none;
|
||
border: none;
|
||
}
|
||
|
||
.jp-RenderedMarkdown.jp-RenderedHTMLCommon td,
|
||
.jp-RenderedMarkdown.jp-RenderedHTMLCommon th {
|
||
max-width: none;
|
||
}
|
||
|
||
:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon td,
|
||
:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon th,
|
||
:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon tr {
|
||
text-align: right;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon th {
|
||
font-weight: bold;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon tbody tr:nth-child(odd) {
|
||
background: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon tbody tr:nth-child(even) {
|
||
background: var(--jp-rendermime-table-row-background);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon tbody tr:hover {
|
||
background: var(--jp-rendermime-table-row-hover-background);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon p {
|
||
text-align: left;
|
||
margin: 0;
|
||
margin-bottom: 1em;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon img {
|
||
-moz-force-broken-image-icon: 1;
|
||
}
|
||
|
||
/* Restrict to direct children as other images could be nested in other content. */
|
||
.jp-RenderedHTMLCommon > img {
|
||
display: block;
|
||
margin-left: 0;
|
||
margin-right: 0;
|
||
margin-bottom: 1em;
|
||
}
|
||
|
||
/* Change color behind transparent images if they need it... */
|
||
[data-jp-theme-light='false'] .jp-RenderedImage img.jp-needs-light-background {
|
||
background-color: var(--jp-inverse-layout-color1);
|
||
}
|
||
|
||
[data-jp-theme-light='true'] .jp-RenderedImage img.jp-needs-dark-background {
|
||
background-color: var(--jp-inverse-layout-color1);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon img,
|
||
.jp-RenderedImage img,
|
||
.jp-RenderedHTMLCommon svg,
|
||
.jp-RenderedSVG svg {
|
||
max-width: 100%;
|
||
height: auto;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon img.jp-mod-unconfined,
|
||
.jp-RenderedImage img.jp-mod-unconfined,
|
||
.jp-RenderedHTMLCommon svg.jp-mod-unconfined,
|
||
.jp-RenderedSVG svg.jp-mod-unconfined {
|
||
max-width: none;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert {
|
||
padding: var(--jp-notebook-padding);
|
||
border: var(--jp-border-width) solid transparent;
|
||
border-radius: var(--jp-border-radius);
|
||
margin-bottom: 1em;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-info {
|
||
color: var(--jp-info-color0);
|
||
background-color: var(--jp-info-color3);
|
||
border-color: var(--jp-info-color2);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-info hr {
|
||
border-color: var(--jp-info-color3);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-info > p:last-child,
|
||
.jp-RenderedHTMLCommon .alert-info > ul:last-child {
|
||
margin-bottom: 0;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-warning {
|
||
color: var(--jp-warn-color0);
|
||
background-color: var(--jp-warn-color3);
|
||
border-color: var(--jp-warn-color2);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-warning hr {
|
||
border-color: var(--jp-warn-color3);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-warning > p:last-child,
|
||
.jp-RenderedHTMLCommon .alert-warning > ul:last-child {
|
||
margin-bottom: 0;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-success {
|
||
color: var(--jp-success-color0);
|
||
background-color: var(--jp-success-color3);
|
||
border-color: var(--jp-success-color2);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-success hr {
|
||
border-color: var(--jp-success-color3);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-success > p:last-child,
|
||
.jp-RenderedHTMLCommon .alert-success > ul:last-child {
|
||
margin-bottom: 0;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-danger {
|
||
color: var(--jp-error-color0);
|
||
background-color: var(--jp-error-color3);
|
||
border-color: var(--jp-error-color2);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-danger hr {
|
||
border-color: var(--jp-error-color3);
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon .alert-danger > p:last-child,
|
||
.jp-RenderedHTMLCommon .alert-danger > ul:last-child {
|
||
margin-bottom: 0;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon blockquote {
|
||
margin: 1em 2em;
|
||
padding: 0 1em;
|
||
border-left: 5px solid var(--jp-border-color2);
|
||
}
|
||
|
||
a.jp-InternalAnchorLink {
|
||
visibility: hidden;
|
||
margin-left: 8px;
|
||
color: var(--md-blue-800);
|
||
}
|
||
|
||
h1:hover .jp-InternalAnchorLink,
|
||
h2:hover .jp-InternalAnchorLink,
|
||
h3:hover .jp-InternalAnchorLink,
|
||
h4:hover .jp-InternalAnchorLink,
|
||
h5:hover .jp-InternalAnchorLink,
|
||
h6:hover .jp-InternalAnchorLink {
|
||
visibility: visible;
|
||
}
|
||
|
||
.jp-RenderedHTMLCommon kbd {
|
||
background-color: var(--jp-rendermime-table-row-background);
|
||
border: 1px solid var(--jp-border-color0);
|
||
border-bottom-color: var(--jp-border-color2);
|
||
border-radius: 3px;
|
||
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||
display: inline-block;
|
||
font-size: var(--jp-ui-font-size0);
|
||
line-height: 1em;
|
||
padding: 0.2em 0.5em;
|
||
}
|
||
|
||
/* Most direct children of .jp-RenderedHTMLCommon have a margin-bottom of 1.0.
|
||
* At the bottom of cells this is a bit too much as there is also spacing
|
||
* between cells. Going all the way to 0 gets too tight between markdown and
|
||
* code cells.
|
||
*/
|
||
.jp-RenderedHTMLCommon > *:last-child {
|
||
margin-bottom: 0.5em;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
||
|
|
||
| Distributed under the terms of the BSD 3-Clause License.
|
||
|
|
||
| The full license is in the file LICENSE, distributed with this software.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.lm-cursor-backdrop {
|
||
position: fixed;
|
||
width: 200px;
|
||
height: 200px;
|
||
margin-top: -100px;
|
||
margin-left: -100px;
|
||
will-change: transform;
|
||
z-index: 100;
|
||
}
|
||
|
||
.lm-mod-drag-image {
|
||
will-change: transform;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
.jp-lineFormSearch {
|
||
padding: 4px 12px;
|
||
background-color: var(--jp-layout-color2);
|
||
box-shadow: var(--jp-toolbar-box-shadow);
|
||
z-index: 2;
|
||
font-size: var(--jp-ui-font-size1);
|
||
}
|
||
|
||
.jp-lineFormCaption {
|
||
font-size: var(--jp-ui-font-size0);
|
||
line-height: var(--jp-ui-font-size1);
|
||
margin-top: 4px;
|
||
color: var(--jp-ui-font-color0);
|
||
}
|
||
|
||
.jp-baseLineForm {
|
||
border: none;
|
||
border-radius: 0;
|
||
position: absolute;
|
||
background-size: 16px;
|
||
background-repeat: no-repeat;
|
||
background-position: center;
|
||
outline: none;
|
||
}
|
||
|
||
.jp-lineFormButtonContainer {
|
||
top: 4px;
|
||
right: 8px;
|
||
height: 24px;
|
||
padding: 0 12px;
|
||
width: 12px;
|
||
}
|
||
|
||
.jp-lineFormButtonIcon {
|
||
top: 0;
|
||
right: 0;
|
||
background-color: var(--jp-brand-color1);
|
||
height: 100%;
|
||
width: 100%;
|
||
box-sizing: border-box;
|
||
padding: 4px 6px;
|
||
}
|
||
|
||
.jp-lineFormButton {
|
||
top: 0;
|
||
right: 0;
|
||
background-color: transparent;
|
||
height: 100%;
|
||
width: 100%;
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
.jp-lineFormWrapper {
|
||
overflow: hidden;
|
||
padding: 0 8px;
|
||
border: 1px solid var(--jp-border-color0);
|
||
background-color: var(--jp-input-active-background);
|
||
height: 22px;
|
||
}
|
||
|
||
.jp-lineFormWrapperFocusWithin {
|
||
border: var(--jp-border-width) solid var(--md-blue-500);
|
||
box-shadow: inset 0 0 4px var(--md-blue-300);
|
||
}
|
||
|
||
.jp-lineFormInput {
|
||
background: transparent;
|
||
width: 200px;
|
||
height: 100%;
|
||
border: none;
|
||
outline: none;
|
||
color: var(--jp-ui-font-color0);
|
||
line-height: 28px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) 2014-2016, Jupyter Development Team.
|
||
|
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-JSONEditor {
|
||
display: flex;
|
||
flex-direction: column;
|
||
width: 100%;
|
||
}
|
||
|
||
.jp-JSONEditor-host {
|
||
flex: 1 1 auto;
|
||
border: var(--jp-border-width) solid var(--jp-input-border-color);
|
||
border-radius: 0;
|
||
background: var(--jp-layout-color0);
|
||
min-height: 50px;
|
||
padding: 1px;
|
||
}
|
||
|
||
.jp-JSONEditor.jp-mod-error .jp-JSONEditor-host {
|
||
border-color: red;
|
||
outline-color: red;
|
||
}
|
||
|
||
.jp-JSONEditor-header {
|
||
display: flex;
|
||
flex: 1 0 auto;
|
||
padding: 0 0 0 12px;
|
||
}
|
||
|
||
.jp-JSONEditor-header label {
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
.jp-JSONEditor-commitButton {
|
||
height: 16px;
|
||
width: 16px;
|
||
background-size: 18px;
|
||
background-repeat: no-repeat;
|
||
background-position: center;
|
||
}
|
||
|
||
.jp-JSONEditor-host.jp-mod-focused {
|
||
background-color: var(--jp-input-active-background);
|
||
border: 1px solid var(--jp-input-active-border-color);
|
||
box-shadow: var(--jp-input-box-shadow);
|
||
}
|
||
|
||
.jp-Editor.jp-mod-dropTarget {
|
||
border: var(--jp-border-width) solid var(--jp-input-active-border-color);
|
||
box-shadow: var(--jp-input-box-shadow);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
.jp-DocumentSearch-input {
|
||
border: none;
|
||
outline: none;
|
||
color: var(--jp-ui-font-color0);
|
||
font-size: var(--jp-ui-font-size1);
|
||
background-color: var(--jp-layout-color0);
|
||
font-family: var(--jp-ui-font-family);
|
||
padding: 2px 1px;
|
||
resize: none;
|
||
}
|
||
|
||
.jp-DocumentSearch-overlay {
|
||
position: absolute;
|
||
background-color: var(--jp-toolbar-background);
|
||
border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
|
||
border-left: var(--jp-border-width) solid var(--jp-toolbar-border-color);
|
||
top: 0;
|
||
right: 0;
|
||
z-index: 7;
|
||
min-width: 405px;
|
||
padding: 2px;
|
||
font-size: var(--jp-ui-font-size1);
|
||
|
||
--jp-private-document-search-button-height: 20px;
|
||
}
|
||
|
||
.jp-DocumentSearch-overlay button {
|
||
background-color: var(--jp-toolbar-background);
|
||
outline: 0;
|
||
}
|
||
|
||
.jp-DocumentSearch-overlay button:hover {
|
||
background-color: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-DocumentSearch-overlay button:active {
|
||
background-color: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-DocumentSearch-overlay-row {
|
||
display: flex;
|
||
align-items: center;
|
||
margin-bottom: 2px;
|
||
}
|
||
|
||
.jp-DocumentSearch-button-content {
|
||
display: inline-block;
|
||
cursor: pointer;
|
||
box-sizing: border-box;
|
||
width: 100%;
|
||
height: 100%;
|
||
}
|
||
|
||
.jp-DocumentSearch-button-content svg {
|
||
width: 100%;
|
||
height: 100%;
|
||
}
|
||
|
||
.jp-DocumentSearch-input-wrapper {
|
||
border: var(--jp-border-width) solid var(--jp-border-color0);
|
||
display: flex;
|
||
background-color: var(--jp-layout-color0);
|
||
margin: 2px;
|
||
}
|
||
|
||
.jp-DocumentSearch-input-wrapper:focus-within {
|
||
border-color: var(--jp-cell-editor-active-border-color);
|
||
}
|
||
|
||
.jp-DocumentSearch-toggle-wrapper,
|
||
.jp-DocumentSearch-button-wrapper {
|
||
all: initial;
|
||
overflow: hidden;
|
||
display: inline-block;
|
||
border: none;
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
.jp-DocumentSearch-toggle-wrapper {
|
||
width: 14px;
|
||
height: 14px;
|
||
}
|
||
|
||
.jp-DocumentSearch-button-wrapper {
|
||
width: var(--jp-private-document-search-button-height);
|
||
height: var(--jp-private-document-search-button-height);
|
||
}
|
||
|
||
.jp-DocumentSearch-toggle-wrapper:focus,
|
||
.jp-DocumentSearch-button-wrapper:focus {
|
||
outline: var(--jp-border-width) solid
|
||
var(--jp-cell-editor-active-border-color);
|
||
outline-offset: -1px;
|
||
}
|
||
|
||
.jp-DocumentSearch-toggle-wrapper,
|
||
.jp-DocumentSearch-button-wrapper,
|
||
.jp-DocumentSearch-button-content:focus {
|
||
outline: none;
|
||
}
|
||
|
||
.jp-DocumentSearch-toggle-placeholder {
|
||
width: 5px;
|
||
}
|
||
|
||
.jp-DocumentSearch-input-button::before {
|
||
display: block;
|
||
padding-top: 100%;
|
||
}
|
||
|
||
.jp-DocumentSearch-input-button-off {
|
||
opacity: var(--jp-search-toggle-off-opacity);
|
||
}
|
||
|
||
.jp-DocumentSearch-input-button-off:hover {
|
||
opacity: var(--jp-search-toggle-hover-opacity);
|
||
}
|
||
|
||
.jp-DocumentSearch-input-button-on {
|
||
opacity: var(--jp-search-toggle-on-opacity);
|
||
}
|
||
|
||
.jp-DocumentSearch-index-counter {
|
||
padding-left: 10px;
|
||
padding-right: 10px;
|
||
user-select: none;
|
||
min-width: 35px;
|
||
display: inline-block;
|
||
}
|
||
|
||
.jp-DocumentSearch-up-down-wrapper {
|
||
display: inline-block;
|
||
padding-right: 2px;
|
||
margin-left: auto;
|
||
white-space: nowrap;
|
||
}
|
||
|
||
.jp-DocumentSearch-spacer {
|
||
margin-left: auto;
|
||
}
|
||
|
||
.jp-DocumentSearch-up-down-wrapper button {
|
||
outline: 0;
|
||
border: none;
|
||
width: var(--jp-private-document-search-button-height);
|
||
height: var(--jp-private-document-search-button-height);
|
||
vertical-align: middle;
|
||
margin: 1px 5px 2px;
|
||
}
|
||
|
||
.jp-DocumentSearch-up-down-button:hover {
|
||
background-color: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-DocumentSearch-up-down-button:active {
|
||
background-color: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-DocumentSearch-filter-button {
|
||
border-radius: var(--jp-border-radius);
|
||
}
|
||
|
||
.jp-DocumentSearch-filter-button:hover {
|
||
background-color: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-DocumentSearch-filter-button-enabled {
|
||
background-color: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-DocumentSearch-filter-button-enabled:hover {
|
||
background-color: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-DocumentSearch-search-options {
|
||
padding: 0 8px;
|
||
margin-left: 3px;
|
||
width: 100%;
|
||
display: grid;
|
||
justify-content: start;
|
||
grid-template-columns: 1fr 1fr;
|
||
align-items: center;
|
||
justify-items: stretch;
|
||
}
|
||
|
||
.jp-DocumentSearch-search-filter-disabled {
|
||
color: var(--jp-ui-font-color2);
|
||
}
|
||
|
||
.jp-DocumentSearch-search-filter {
|
||
display: flex;
|
||
align-items: center;
|
||
user-select: none;
|
||
}
|
||
|
||
.jp-DocumentSearch-regex-error {
|
||
color: var(--jp-error-color0);
|
||
}
|
||
|
||
.jp-DocumentSearch-replace-button-wrapper {
|
||
overflow: hidden;
|
||
display: inline-block;
|
||
box-sizing: border-box;
|
||
border: var(--jp-border-width) solid var(--jp-border-color0);
|
||
margin: auto 2px;
|
||
padding: 1px 4px;
|
||
height: calc(var(--jp-private-document-search-button-height) + 2px);
|
||
}
|
||
|
||
.jp-DocumentSearch-replace-button-wrapper:focus {
|
||
border: var(--jp-border-width) solid var(--jp-cell-editor-active-border-color);
|
||
}
|
||
|
||
.jp-DocumentSearch-replace-button {
|
||
display: inline-block;
|
||
text-align: center;
|
||
cursor: pointer;
|
||
box-sizing: border-box;
|
||
color: var(--jp-ui-font-color1);
|
||
|
||
/* height - 2 * (padding of wrapper) */
|
||
line-height: calc(var(--jp-private-document-search-button-height) - 2px);
|
||
width: 100%;
|
||
height: 100%;
|
||
}
|
||
|
||
.jp-DocumentSearch-replace-button:focus {
|
||
outline: none;
|
||
}
|
||
|
||
.jp-DocumentSearch-replace-wrapper-class {
|
||
margin-left: 14px;
|
||
display: flex;
|
||
}
|
||
|
||
.jp-DocumentSearch-replace-toggle {
|
||
border: none;
|
||
background-color: var(--jp-toolbar-background);
|
||
border-radius: var(--jp-border-radius);
|
||
}
|
||
|
||
.jp-DocumentSearch-replace-toggle:hover {
|
||
background-color: var(--jp-layout-color2);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.cm-editor {
|
||
line-height: var(--jp-code-line-height);
|
||
font-size: var(--jp-code-font-size);
|
||
font-family: var(--jp-code-font-family);
|
||
border: 0;
|
||
border-radius: 0;
|
||
height: auto;
|
||
|
||
/* Changed to auto to autogrow */
|
||
}
|
||
|
||
.cm-editor pre {
|
||
padding: 0 var(--jp-code-padding);
|
||
}
|
||
|
||
.jp-CodeMirrorEditor[data-type='inline'] .cm-dialog {
|
||
background-color: var(--jp-layout-color0);
|
||
color: var(--jp-content-font-color1);
|
||
}
|
||
|
||
.jp-CodeMirrorEditor {
|
||
cursor: text;
|
||
}
|
||
|
||
/* When zoomed out 67% and 33% on a screen of 1440 width x 900 height */
|
||
@media screen and (min-width: 2138px) and (max-width: 4319px) {
|
||
.jp-CodeMirrorEditor[data-type='inline'] .cm-cursor {
|
||
border-left: var(--jp-code-cursor-width1) solid
|
||
var(--jp-editor-cursor-color);
|
||
}
|
||
}
|
||
|
||
/* When zoomed out less than 33% */
|
||
@media screen and (min-width: 4320px) {
|
||
.jp-CodeMirrorEditor[data-type='inline'] .cm-cursor {
|
||
border-left: var(--jp-code-cursor-width2) solid
|
||
var(--jp-editor-cursor-color);
|
||
}
|
||
}
|
||
|
||
.cm-editor.jp-mod-readOnly .cm-cursor {
|
||
display: none;
|
||
}
|
||
|
||
.jp-CollaboratorCursor {
|
||
border-left: 5px solid transparent;
|
||
border-right: 5px solid transparent;
|
||
border-top: none;
|
||
border-bottom: 3px solid;
|
||
background-clip: content-box;
|
||
margin-left: -5px;
|
||
margin-right: -5px;
|
||
}
|
||
|
||
.cm-searching,
|
||
.cm-searching span {
|
||
/* `.cm-searching span`: we need to override syntax highlighting */
|
||
background-color: var(--jp-search-unselected-match-background-color);
|
||
color: var(--jp-search-unselected-match-color);
|
||
}
|
||
|
||
.cm-searching::selection,
|
||
.cm-searching span::selection {
|
||
background-color: var(--jp-search-unselected-match-background-color);
|
||
color: var(--jp-search-unselected-match-color);
|
||
}
|
||
|
||
.jp-current-match > .cm-searching,
|
||
.jp-current-match > .cm-searching span,
|
||
.cm-searching > .jp-current-match,
|
||
.cm-searching > .jp-current-match span {
|
||
background-color: var(--jp-search-selected-match-background-color);
|
||
color: var(--jp-search-selected-match-color);
|
||
}
|
||
|
||
.jp-current-match > .cm-searching::selection,
|
||
.cm-searching > .jp-current-match::selection,
|
||
.jp-current-match > .cm-searching span::selection {
|
||
background-color: var(--jp-search-selected-match-background-color);
|
||
color: var(--jp-search-selected-match-color);
|
||
}
|
||
|
||
.cm-trailingspace {
|
||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAAsElEQVQIHQGlAFr/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7+r3zKmT0/+pk9P/7+r3zAAAAAAAAAAABAAAAAAAAAAA6OPzM+/q9wAAAAAA6OPzMwAAAAAAAAAAAgAAAAAAAAAAGR8NiRQaCgAZIA0AGR8NiQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQyoYJ/SY80UAAAAASUVORK5CYII=);
|
||
background-position: center left;
|
||
background-repeat: repeat-x;
|
||
}
|
||
|
||
.jp-CollaboratorCursor-hover {
|
||
position: absolute;
|
||
z-index: 1;
|
||
transform: translateX(-50%);
|
||
color: white;
|
||
border-radius: 3px;
|
||
padding-left: 4px;
|
||
padding-right: 4px;
|
||
padding-top: 1px;
|
||
padding-bottom: 1px;
|
||
text-align: center;
|
||
font-size: var(--jp-ui-font-size1);
|
||
white-space: nowrap;
|
||
}
|
||
|
||
.jp-CodeMirror-ruler {
|
||
border-left: 1px dashed var(--jp-border-color2);
|
||
}
|
||
|
||
/* Styles for shared cursors (remote cursor locations and selected ranges) */
|
||
.jp-CodeMirrorEditor .cm-ySelectionCaret {
|
||
position: relative;
|
||
border-left: 1px solid black;
|
||
margin-left: -1px;
|
||
margin-right: -1px;
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
.jp-CodeMirrorEditor .cm-ySelectionCaret > .cm-ySelectionInfo {
|
||
white-space: nowrap;
|
||
position: absolute;
|
||
top: -1.15em;
|
||
padding-bottom: 0.05em;
|
||
left: -1px;
|
||
font-size: 0.95em;
|
||
font-family: var(--jp-ui-font-family);
|
||
font-weight: bold;
|
||
line-height: normal;
|
||
user-select: none;
|
||
color: white;
|
||
padding-left: 2px;
|
||
padding-right: 2px;
|
||
z-index: 101;
|
||
transition: opacity 0.3s ease-in-out;
|
||
}
|
||
|
||
.jp-CodeMirrorEditor .cm-ySelectionInfo {
|
||
transition-delay: 0.7s;
|
||
opacity: 0;
|
||
}
|
||
|
||
.jp-CodeMirrorEditor .cm-ySelectionCaret:hover > .cm-ySelectionInfo {
|
||
opacity: 1;
|
||
transition-delay: 0s;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-MimeDocument {
|
||
outline: none;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Variables
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
:root {
|
||
--jp-private-filebrowser-button-height: 28px;
|
||
--jp-private-filebrowser-button-width: 48px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-FileBrowser .jp-SidePanel-content {
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.jp-FileBrowser-toolbar.jp-Toolbar {
|
||
flex-wrap: wrap;
|
||
row-gap: 12px;
|
||
border-bottom: none;
|
||
height: auto;
|
||
margin: 8px 12px 0;
|
||
box-shadow: none;
|
||
padding: 0;
|
||
justify-content: flex-start;
|
||
}
|
||
|
||
.jp-FileBrowser-Panel {
|
||
flex: 1 1 auto;
|
||
display: flex;
|
||
flex-direction: column;
|
||
}
|
||
|
||
.jp-BreadCrumbs {
|
||
flex: 0 0 auto;
|
||
margin: 8px 12px;
|
||
}
|
||
|
||
.jp-BreadCrumbs-item {
|
||
margin: 0 2px;
|
||
padding: 0 2px;
|
||
border-radius: var(--jp-border-radius);
|
||
cursor: pointer;
|
||
}
|
||
|
||
.jp-BreadCrumbs-item:hover {
|
||
background-color: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-BreadCrumbs-item:first-child {
|
||
margin-left: 0;
|
||
}
|
||
|
||
.jp-BreadCrumbs-item.jp-mod-dropTarget {
|
||
background-color: var(--jp-brand-color2);
|
||
opacity: 0.7;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Buttons
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-FileBrowser-toolbar > .jp-Toolbar-item {
|
||
flex: 0 0 auto;
|
||
padding-left: 0;
|
||
padding-right: 2px;
|
||
align-items: center;
|
||
height: unset;
|
||
}
|
||
|
||
.jp-FileBrowser-toolbar > .jp-Toolbar-item .jp-ToolbarButtonComponent {
|
||
width: 40px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Other styles
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-FileDialog.jp-mod-conflict input {
|
||
color: var(--jp-error-color1);
|
||
}
|
||
|
||
.jp-FileDialog .jp-new-name-title {
|
||
margin-top: 12px;
|
||
}
|
||
|
||
.jp-LastModified-hidden {
|
||
display: none;
|
||
}
|
||
|
||
.jp-FileSize-hidden {
|
||
display: none;
|
||
}
|
||
|
||
.jp-FileBrowser .lm-AccordionPanel > h3:first-child {
|
||
display: none;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| DirListing
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-DirListing {
|
||
flex: 1 1 auto;
|
||
display: flex;
|
||
flex-direction: column;
|
||
outline: 0;
|
||
}
|
||
|
||
.jp-DirListing-header {
|
||
flex: 0 0 auto;
|
||
display: flex;
|
||
flex-direction: row;
|
||
align-items: center;
|
||
overflow: hidden;
|
||
border-top: var(--jp-border-width) solid var(--jp-border-color2);
|
||
border-bottom: var(--jp-border-width) solid var(--jp-border-color1);
|
||
box-shadow: var(--jp-toolbar-box-shadow);
|
||
z-index: 2;
|
||
}
|
||
|
||
.jp-DirListing-headerItem {
|
||
padding: 4px 12px 2px;
|
||
font-weight: 500;
|
||
}
|
||
|
||
.jp-DirListing-headerItem:hover {
|
||
background: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-DirListing-headerItem.jp-id-name {
|
||
flex: 1 0 84px;
|
||
}
|
||
|
||
.jp-DirListing-headerItem.jp-id-modified {
|
||
flex: 0 0 112px;
|
||
border-left: var(--jp-border-width) solid var(--jp-border-color2);
|
||
text-align: right;
|
||
}
|
||
|
||
.jp-DirListing-headerItem.jp-id-filesize {
|
||
flex: 0 0 75px;
|
||
border-left: var(--jp-border-width) solid var(--jp-border-color2);
|
||
text-align: right;
|
||
}
|
||
|
||
.jp-id-narrow {
|
||
display: none;
|
||
flex: 0 0 5px;
|
||
padding: 4px;
|
||
border-left: var(--jp-border-width) solid var(--jp-border-color2);
|
||
text-align: right;
|
||
color: var(--jp-border-color2);
|
||
}
|
||
|
||
.jp-DirListing-narrow .jp-id-narrow {
|
||
display: block;
|
||
}
|
||
|
||
.jp-DirListing-narrow .jp-id-modified,
|
||
.jp-DirListing-narrow .jp-DirListing-itemModified {
|
||
display: none;
|
||
}
|
||
|
||
.jp-DirListing-headerItem.jp-mod-selected {
|
||
font-weight: 600;
|
||
}
|
||
|
||
/* increase specificity to override bundled default */
|
||
.jp-DirListing-content {
|
||
flex: 1 1 auto;
|
||
margin: 0;
|
||
padding: 0;
|
||
list-style-type: none;
|
||
overflow: auto;
|
||
background-color: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-DirListing-content mark {
|
||
color: var(--jp-ui-font-color0);
|
||
background-color: transparent;
|
||
font-weight: bold;
|
||
}
|
||
|
||
.jp-DirListing-content .jp-DirListing-item.jp-mod-selected mark {
|
||
color: var(--jp-ui-inverse-font-color0);
|
||
}
|
||
|
||
/* Style the directory listing content when a user drops a file to upload */
|
||
.jp-DirListing.jp-mod-native-drop .jp-DirListing-content {
|
||
outline: 5px dashed rgba(128, 128, 128, 0.5);
|
||
outline-offset: -10px;
|
||
cursor: copy;
|
||
}
|
||
|
||
.jp-DirListing-item {
|
||
display: flex;
|
||
flex-direction: row;
|
||
align-items: center;
|
||
padding: 4px 12px;
|
||
-webkit-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
.jp-DirListing-checkboxWrapper {
|
||
/* Increases hit area of checkbox. */
|
||
padding: 4px;
|
||
}
|
||
|
||
.jp-DirListing-header
|
||
.jp-DirListing-checkboxWrapper
|
||
+ .jp-DirListing-headerItem {
|
||
padding-left: 4px;
|
||
}
|
||
|
||
.jp-DirListing-content .jp-DirListing-checkboxWrapper {
|
||
position: relative;
|
||
left: -4px;
|
||
margin: -4px 0 -4px -8px;
|
||
}
|
||
|
||
.jp-DirListing-checkboxWrapper.jp-mod-visible {
|
||
visibility: visible;
|
||
}
|
||
|
||
/* For devices that support hovering, hide checkboxes until hovered, selected...
|
||
*/
|
||
@media (hover: hover) {
|
||
.jp-DirListing-checkboxWrapper {
|
||
visibility: hidden;
|
||
}
|
||
|
||
.jp-DirListing-item:hover .jp-DirListing-checkboxWrapper,
|
||
.jp-DirListing-item.jp-mod-selected .jp-DirListing-checkboxWrapper {
|
||
visibility: visible;
|
||
}
|
||
}
|
||
|
||
.jp-DirListing-item[data-is-dot] {
|
||
opacity: 75%;
|
||
}
|
||
|
||
.jp-DirListing-item.jp-mod-selected {
|
||
color: var(--jp-ui-inverse-font-color1);
|
||
background: var(--jp-brand-color1);
|
||
}
|
||
|
||
.jp-DirListing-item.jp-mod-dropTarget {
|
||
background: var(--jp-brand-color3);
|
||
}
|
||
|
||
.jp-DirListing-item:hover:not(.jp-mod-selected) {
|
||
background: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-DirListing-itemIcon {
|
||
flex: 0 0 20px;
|
||
margin-right: 4px;
|
||
}
|
||
|
||
.jp-DirListing-itemText {
|
||
flex: 1 0 64px;
|
||
white-space: nowrap;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
user-select: none;
|
||
}
|
||
|
||
.jp-DirListing-itemText:focus {
|
||
outline-width: 2px;
|
||
outline-color: var(--jp-inverse-layout-color1);
|
||
outline-style: solid;
|
||
outline-offset: 1px;
|
||
}
|
||
|
||
.jp-DirListing-item.jp-mod-selected .jp-DirListing-itemText:focus {
|
||
outline-color: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-DirListing-itemModified {
|
||
flex: 0 0 125px;
|
||
text-align: right;
|
||
}
|
||
|
||
.jp-DirListing-itemFileSize {
|
||
flex: 0 0 90px;
|
||
text-align: right;
|
||
}
|
||
|
||
.jp-DirListing-editor {
|
||
flex: 1 0 64px;
|
||
outline: none;
|
||
border: none;
|
||
color: var(--jp-ui-font-color1);
|
||
background-color: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-DirListing-item.jp-mod-running .jp-DirListing-itemIcon::before {
|
||
color: var(--jp-success-color1);
|
||
content: '\25CF';
|
||
font-size: 8px;
|
||
position: absolute;
|
||
left: -8px;
|
||
}
|
||
|
||
.jp-DirListing-item.jp-mod-running.jp-mod-selected
|
||
.jp-DirListing-itemIcon::before {
|
||
color: var(--jp-ui-inverse-font-color1);
|
||
}
|
||
|
||
.jp-DirListing-item.lm-mod-drag-image,
|
||
.jp-DirListing-item.jp-mod-selected.lm-mod-drag-image {
|
||
font-size: var(--jp-ui-font-size1);
|
||
padding-left: 4px;
|
||
margin-left: 4px;
|
||
width: 160px;
|
||
background-color: var(--jp-ui-inverse-font-color2);
|
||
box-shadow: var(--jp-elevation-z2);
|
||
border-radius: 0;
|
||
color: var(--jp-ui-font-color1);
|
||
transform: translateX(-40%) translateY(-58%);
|
||
}
|
||
|
||
.jp-Document {
|
||
min-width: 120px;
|
||
min-height: 120px;
|
||
outline: none;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Main OutputArea
|
||
| OutputArea has a list of Outputs
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-OutputArea {
|
||
overflow-y: auto;
|
||
}
|
||
|
||
.jp-OutputArea-child {
|
||
display: table;
|
||
table-layout: fixed;
|
||
width: 100%;
|
||
overflow: hidden;
|
||
}
|
||
|
||
.jp-OutputPrompt {
|
||
width: var(--jp-cell-prompt-width);
|
||
color: var(--jp-cell-outprompt-font-color);
|
||
font-family: var(--jp-cell-prompt-font-family);
|
||
padding: var(--jp-code-padding);
|
||
letter-spacing: var(--jp-cell-prompt-letter-spacing);
|
||
line-height: var(--jp-code-line-height);
|
||
font-size: var(--jp-code-font-size);
|
||
border: var(--jp-border-width) solid transparent;
|
||
opacity: var(--jp-cell-prompt-opacity);
|
||
|
||
/* Right align prompt text, don't wrap to handle large prompt numbers */
|
||
text-align: right;
|
||
white-space: nowrap;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
|
||
/* Disable text selection */
|
||
-webkit-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
.jp-OutputArea-prompt {
|
||
display: table-cell;
|
||
vertical-align: top;
|
||
}
|
||
|
||
.jp-OutputArea-output {
|
||
display: table-cell;
|
||
width: 100%;
|
||
height: auto;
|
||
overflow: auto;
|
||
user-select: text;
|
||
-moz-user-select: text;
|
||
-webkit-user-select: text;
|
||
-ms-user-select: text;
|
||
}
|
||
|
||
.jp-OutputArea .jp-RenderedText {
|
||
padding-left: 1ch;
|
||
}
|
||
|
||
/**
|
||
* Prompt overlay.
|
||
*/
|
||
|
||
.jp-OutputArea-promptOverlay {
|
||
position: absolute;
|
||
top: 0;
|
||
width: var(--jp-cell-prompt-width);
|
||
height: 100%;
|
||
opacity: 0.5;
|
||
}
|
||
|
||
.jp-OutputArea-promptOverlay:hover {
|
||
background: var(--jp-layout-color2);
|
||
box-shadow: inset 0 0 1px var(--jp-inverse-layout-color0);
|
||
cursor: zoom-out;
|
||
}
|
||
|
||
.jp-mod-outputsScrolled .jp-OutputArea-promptOverlay:hover {
|
||
cursor: zoom-in;
|
||
}
|
||
|
||
/**
|
||
* Isolated output.
|
||
*/
|
||
.jp-OutputArea-output.jp-mod-isolated {
|
||
width: 100%;
|
||
display: block;
|
||
}
|
||
|
||
/*
|
||
When drag events occur, `lm-mod-override-cursor` is added to the body.
|
||
Because iframes steal all cursor events, the following two rules are necessary
|
||
to suppress pointer events while resize drags are occurring. There may be a
|
||
better solution to this problem.
|
||
*/
|
||
body.lm-mod-override-cursor .jp-OutputArea-output.jp-mod-isolated {
|
||
position: relative;
|
||
}
|
||
|
||
body.lm-mod-override-cursor .jp-OutputArea-output.jp-mod-isolated::before {
|
||
content: '';
|
||
position: absolute;
|
||
top: 0;
|
||
left: 0;
|
||
right: 0;
|
||
bottom: 0;
|
||
background: transparent;
|
||
}
|
||
|
||
/* pre */
|
||
|
||
.jp-OutputArea-output pre {
|
||
border: none;
|
||
margin: 0;
|
||
padding: 0;
|
||
overflow-x: auto;
|
||
overflow-y: auto;
|
||
word-break: break-all;
|
||
word-wrap: break-word;
|
||
white-space: pre-wrap;
|
||
}
|
||
|
||
/* tables */
|
||
|
||
.jp-OutputArea-output.jp-RenderedHTMLCommon table {
|
||
margin-left: 0;
|
||
margin-right: 0;
|
||
}
|
||
|
||
/* description lists */
|
||
|
||
.jp-OutputArea-output dl,
|
||
.jp-OutputArea-output dt,
|
||
.jp-OutputArea-output dd {
|
||
display: block;
|
||
}
|
||
|
||
.jp-OutputArea-output dl {
|
||
width: 100%;
|
||
overflow: hidden;
|
||
padding: 0;
|
||
margin: 0;
|
||
}
|
||
|
||
.jp-OutputArea-output dt {
|
||
font-weight: bold;
|
||
float: left;
|
||
width: 20%;
|
||
padding: 0;
|
||
margin: 0;
|
||
}
|
||
|
||
.jp-OutputArea-output dd {
|
||
float: left;
|
||
width: 80%;
|
||
padding: 0;
|
||
margin: 0;
|
||
}
|
||
|
||
.jp-TrimmedOutputs pre {
|
||
background: var(--jp-layout-color3);
|
||
font-size: calc(var(--jp-code-font-size) * 1.4);
|
||
text-align: center;
|
||
text-transform: uppercase;
|
||
}
|
||
|
||
/* Hide the gutter in case of
|
||
* - nested output areas (e.g. in the case of output widgets)
|
||
* - mirrored output areas
|
||
*/
|
||
.jp-OutputArea .jp-OutputArea .jp-OutputArea-prompt {
|
||
display: none;
|
||
}
|
||
|
||
/* Hide empty lines in the output area, for instance due to cleared widgets */
|
||
.jp-OutputArea-prompt:empty {
|
||
padding: 0;
|
||
border: 0;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| executeResult is added to any Output-result for the display of the object
|
||
| returned by a cell
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-OutputArea-output.jp-OutputArea-executeResult {
|
||
margin-left: 0;
|
||
width: 100%;
|
||
}
|
||
|
||
/* Text output with the Out[] prompt needs a top padding to match the
|
||
* alignment of the Out[] prompt itself.
|
||
*/
|
||
.jp-OutputArea-executeResult .jp-RenderedText.jp-OutputArea-output {
|
||
padding-top: var(--jp-code-padding);
|
||
border-top: var(--jp-border-width) solid transparent;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| The Stdin output
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Stdin-prompt {
|
||
color: var(--jp-content-font-color0);
|
||
padding-right: var(--jp-code-padding);
|
||
vertical-align: baseline;
|
||
flex: 0 0 auto;
|
||
}
|
||
|
||
.jp-Stdin-input {
|
||
font-family: var(--jp-code-font-family);
|
||
font-size: inherit;
|
||
color: inherit;
|
||
background-color: inherit;
|
||
width: 42%;
|
||
min-width: 200px;
|
||
|
||
/* make sure input baseline aligns with prompt */
|
||
vertical-align: baseline;
|
||
|
||
/* padding + margin = 0.5em between prompt and cursor */
|
||
padding: 0 0.25em;
|
||
margin: 0 0.25em;
|
||
flex: 0 0 70%;
|
||
}
|
||
|
||
.jp-Stdin-input::placeholder {
|
||
opacity: 0;
|
||
}
|
||
|
||
.jp-Stdin-input:focus {
|
||
box-shadow: none;
|
||
}
|
||
|
||
.jp-Stdin-input:focus::placeholder {
|
||
opacity: 1;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Output Area View
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-LinkedOutputView .jp-OutputArea {
|
||
height: 100%;
|
||
display: block;
|
||
}
|
||
|
||
.jp-LinkedOutputView .jp-OutputArea-output:only-child {
|
||
height: 100%;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Printing
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
@media print {
|
||
.jp-OutputArea-child {
|
||
break-inside: avoid-page;
|
||
}
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Mobile
|
||
|----------------------------------------------------------------------------*/
|
||
@media only screen and (max-width: 760px) {
|
||
.jp-OutputPrompt {
|
||
display: table-row;
|
||
text-align: left;
|
||
}
|
||
|
||
.jp-OutputArea-child .jp-OutputArea-output {
|
||
display: table-row;
|
||
margin-left: var(--jp-notebook-padding);
|
||
}
|
||
}
|
||
|
||
/* Trimmed outputs warning */
|
||
.jp-TrimmedOutputs > a {
|
||
margin: 10px;
|
||
text-decoration: none;
|
||
cursor: pointer;
|
||
}
|
||
|
||
.jp-TrimmedOutputs > a:hover {
|
||
text-decoration: none;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Table of Contents
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
:root {
|
||
--jp-private-toc-active-width: 4px;
|
||
}
|
||
|
||
.jp-TableOfContents {
|
||
display: flex;
|
||
flex-direction: column;
|
||
background: var(--jp-layout-color1);
|
||
color: var(--jp-ui-font-color1);
|
||
font-size: var(--jp-ui-font-size1);
|
||
height: 100%;
|
||
}
|
||
|
||
.jp-TableOfContents-placeholder {
|
||
text-align: center;
|
||
}
|
||
|
||
.jp-TableOfContents-placeholderContent {
|
||
color: var(--jp-content-font-color2);
|
||
padding: 8px;
|
||
}
|
||
|
||
.jp-TableOfContents-placeholderContent > h3 {
|
||
margin-bottom: var(--jp-content-heading-margin-bottom);
|
||
}
|
||
|
||
.jp-TableOfContents .jp-SidePanel-content {
|
||
overflow-y: auto;
|
||
}
|
||
|
||
.jp-TableOfContents-tree {
|
||
margin: 4px;
|
||
}
|
||
|
||
.jp-TableOfContents ol {
|
||
list-style-type: none;
|
||
}
|
||
|
||
/* stylelint-disable-next-line selector-max-type */
|
||
.jp-TableOfContents li > ol {
|
||
/* Align left border with triangle icon center */
|
||
padding-left: 11px;
|
||
}
|
||
|
||
.jp-TableOfContents-content {
|
||
/* left margin for the active heading indicator */
|
||
margin: 0 0 0 var(--jp-private-toc-active-width);
|
||
padding: 0;
|
||
background-color: var(--jp-layout-color1);
|
||
}
|
||
|
||
.jp-tocItem {
|
||
-webkit-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
.jp-tocItem-heading {
|
||
display: flex;
|
||
cursor: pointer;
|
||
}
|
||
|
||
.jp-tocItem-heading:hover {
|
||
background-color: var(--jp-layout-color2);
|
||
}
|
||
|
||
.jp-tocItem-content {
|
||
display: block;
|
||
padding: 4px 0;
|
||
white-space: nowrap;
|
||
text-overflow: ellipsis;
|
||
overflow-x: hidden;
|
||
}
|
||
|
||
.jp-tocItem-collapser {
|
||
height: 20px;
|
||
margin: 2px 2px 0;
|
||
padding: 0;
|
||
background: none;
|
||
border: none;
|
||
cursor: pointer;
|
||
}
|
||
|
||
.jp-tocItem-collapser:hover {
|
||
background-color: var(--jp-layout-color3);
|
||
}
|
||
|
||
/* Active heading indicator */
|
||
|
||
.jp-tocItem-heading::before {
|
||
content: ' ';
|
||
background: transparent;
|
||
width: var(--jp-private-toc-active-width);
|
||
height: 24px;
|
||
position: absolute;
|
||
left: 0;
|
||
border-radius: var(--jp-border-radius);
|
||
}
|
||
|
||
.jp-tocItem-heading.jp-tocItem-active::before {
|
||
background-color: var(--jp-brand-color1);
|
||
}
|
||
|
||
.jp-tocItem-heading:hover.jp-tocItem-active::before {
|
||
background: var(--jp-brand-color0);
|
||
opacity: 1;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Collapser {
|
||
flex: 0 0 var(--jp-cell-collapser-width);
|
||
padding: 0;
|
||
margin: 0;
|
||
border: none;
|
||
outline: none;
|
||
background: transparent;
|
||
border-radius: var(--jp-border-radius);
|
||
opacity: 1;
|
||
}
|
||
|
||
.jp-Collapser-child {
|
||
display: block;
|
||
width: 100%;
|
||
box-sizing: border-box;
|
||
|
||
/* height: 100% doesn't work because the height of its parent is computed from content */
|
||
position: absolute;
|
||
top: 0;
|
||
bottom: 0;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Printing
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*
|
||
Hiding collapsers in print mode.
|
||
|
||
Note: input and output wrappers have "display: block" propery in print mode.
|
||
*/
|
||
|
||
@media print {
|
||
.jp-Collapser {
|
||
display: none;
|
||
}
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Header/Footer
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/* Hidden by zero height by default */
|
||
.jp-CellHeader,
|
||
.jp-CellFooter {
|
||
height: 0;
|
||
width: 100%;
|
||
padding: 0;
|
||
margin: 0;
|
||
border: none;
|
||
outline: none;
|
||
background: transparent;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Input
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/* All input areas */
|
||
.jp-InputArea {
|
||
display: table;
|
||
table-layout: fixed;
|
||
width: 100%;
|
||
overflow: hidden;
|
||
}
|
||
|
||
.jp-InputArea-editor {
|
||
display: table-cell;
|
||
overflow: hidden;
|
||
vertical-align: top;
|
||
|
||
/* This is the non-active, default styling */
|
||
border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
|
||
border-radius: 0;
|
||
background: var(--jp-cell-editor-background);
|
||
}
|
||
|
||
.jp-InputPrompt {
|
||
display: table-cell;
|
||
vertical-align: top;
|
||
width: var(--jp-cell-prompt-width);
|
||
color: var(--jp-cell-inprompt-font-color);
|
||
font-family: var(--jp-cell-prompt-font-family);
|
||
padding: var(--jp-code-padding);
|
||
letter-spacing: var(--jp-cell-prompt-letter-spacing);
|
||
opacity: var(--jp-cell-prompt-opacity);
|
||
line-height: var(--jp-code-line-height);
|
||
font-size: var(--jp-code-font-size);
|
||
border: var(--jp-border-width) solid transparent;
|
||
|
||
/* Right align prompt text, don't wrap to handle large prompt numbers */
|
||
text-align: right;
|
||
white-space: nowrap;
|
||
overflow: hidden;
|
||
text-overflow: ellipsis;
|
||
|
||
/* Disable text selection */
|
||
-webkit-user-select: none;
|
||
-moz-user-select: none;
|
||
-ms-user-select: none;
|
||
user-select: none;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Mobile
|
||
|----------------------------------------------------------------------------*/
|
||
@media only screen and (max-width: 760px) {
|
||
.jp-InputArea-editor {
|
||
display: table-row;
|
||
margin-left: var(--jp-notebook-padding);
|
||
}
|
||
|
||
.jp-InputPrompt {
|
||
display: table-row;
|
||
text-align: left;
|
||
}
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Placeholder
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Placeholder {
|
||
display: table;
|
||
table-layout: fixed;
|
||
width: 100%;
|
||
}
|
||
|
||
.jp-Placeholder-prompt {
|
||
display: table-cell;
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
.jp-Placeholder-content {
|
||
display: table-cell;
|
||
padding: 4px 6px;
|
||
border: 1px solid transparent;
|
||
border-radius: 0;
|
||
background: none;
|
||
box-sizing: border-box;
|
||
cursor: pointer;
|
||
}
|
||
|
||
.jp-Placeholder-contentContainer {
|
||
display: flex;
|
||
}
|
||
|
||
.jp-Placeholder-content:hover,
|
||
.jp-InputPlaceholder > .jp-Placeholder-content:hover {
|
||
border-color: var(--jp-layout-color3);
|
||
}
|
||
|
||
.jp-Placeholder-content .jp-MoreHorizIcon {
|
||
width: 32px;
|
||
height: 16px;
|
||
border: 1px solid transparent;
|
||
border-radius: var(--jp-border-radius);
|
||
}
|
||
|
||
.jp-Placeholder-content .jp-MoreHorizIcon:hover {
|
||
border: 1px solid var(--jp-border-color1);
|
||
box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.25);
|
||
background-color: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-PlaceholderText {
|
||
white-space: nowrap;
|
||
overflow-x: hidden;
|
||
color: var(--jp-inverse-layout-color3);
|
||
font-family: var(--jp-code-font-family);
|
||
}
|
||
|
||
.jp-InputPlaceholder > .jp-Placeholder-content {
|
||
border-color: var(--jp-cell-editor-border-color);
|
||
background: var(--jp-cell-editor-background);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Private CSS variables
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
:root {
|
||
--jp-private-cell-scrolling-output-offset: 5px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Cell
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Cell {
|
||
padding: var(--jp-cell-padding);
|
||
margin: 0;
|
||
border: none;
|
||
outline: none;
|
||
background: transparent;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Common input/output
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Cell-inputWrapper,
|
||
.jp-Cell-outputWrapper {
|
||
display: flex;
|
||
flex-direction: row;
|
||
padding: 0;
|
||
margin: 0;
|
||
|
||
/* Added to reveal the box-shadow on the input and output collapsers. */
|
||
overflow: visible;
|
||
}
|
||
|
||
/* Only input/output areas inside cells */
|
||
.jp-Cell-inputArea,
|
||
.jp-Cell-outputArea {
|
||
flex: 1 1 auto;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Collapser
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/* Make the output collapser disappear when there is not output, but do so
|
||
* in a manner that leaves it in the layout and preserves its width.
|
||
*/
|
||
.jp-Cell.jp-mod-noOutputs .jp-Cell-outputCollapser {
|
||
border: none !important;
|
||
background: transparent !important;
|
||
}
|
||
|
||
.jp-Cell:not(.jp-mod-noOutputs) .jp-Cell-outputCollapser {
|
||
min-height: var(--jp-cell-collapser-min-height);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Output
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/* Put a space between input and output when there IS output */
|
||
.jp-Cell:not(.jp-mod-noOutputs) .jp-Cell-outputWrapper {
|
||
margin-top: 5px;
|
||
}
|
||
|
||
.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea {
|
||
overflow-y: auto;
|
||
max-height: 24em;
|
||
margin-left: var(--jp-private-cell-scrolling-output-offset);
|
||
resize: vertical;
|
||
}
|
||
|
||
.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea[style*='height'] {
|
||
max-height: unset;
|
||
}
|
||
|
||
.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea::after {
|
||
content: ' ';
|
||
box-shadow: inset 0 0 6px 2px rgb(0 0 0 / 30%);
|
||
width: 100%;
|
||
height: 100%;
|
||
position: sticky;
|
||
bottom: 0;
|
||
top: 0;
|
||
margin-top: -50%;
|
||
float: left;
|
||
display: block;
|
||
pointer-events: none;
|
||
}
|
||
|
||
.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-child {
|
||
padding-top: 6px;
|
||
}
|
||
|
||
.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-prompt {
|
||
width: calc(
|
||
var(--jp-cell-prompt-width) - var(--jp-private-cell-scrolling-output-offset)
|
||
);
|
||
}
|
||
|
||
.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-promptOverlay {
|
||
left: calc(-1 * var(--jp-private-cell-scrolling-output-offset));
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| CodeCell
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| MarkdownCell
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-MarkdownOutput {
|
||
display: table-cell;
|
||
width: 100%;
|
||
margin-top: 0;
|
||
margin-bottom: 0;
|
||
padding-left: var(--jp-code-padding);
|
||
}
|
||
|
||
.jp-MarkdownOutput.jp-RenderedHTMLCommon {
|
||
overflow: auto;
|
||
}
|
||
|
||
/* collapseHeadingButton (show always if hiddenCellsButton is _not_ shown) */
|
||
.jp-collapseHeadingButton {
|
||
display: flex;
|
||
min-height: var(--jp-cell-collapser-min-height);
|
||
font-size: var(--jp-code-font-size);
|
||
position: absolute;
|
||
background-color: transparent;
|
||
background-size: 25px;
|
||
background-repeat: no-repeat;
|
||
background-position-x: center;
|
||
background-position-y: top;
|
||
background-image: var(--jp-icon-caret-down);
|
||
right: 0;
|
||
top: 0;
|
||
bottom: 0;
|
||
}
|
||
|
||
.jp-collapseHeadingButton.jp-mod-collapsed {
|
||
background-image: var(--jp-icon-caret-right);
|
||
}
|
||
|
||
/*
|
||
set the container font size to match that of content
|
||
so that the nested collapse buttons have the right size
|
||
*/
|
||
.jp-MarkdownCell .jp-InputPrompt {
|
||
font-size: var(--jp-content-font-size1);
|
||
}
|
||
|
||
/*
|
||
Align collapseHeadingButton with cell top header
|
||
The font sizes are identical to the ones in packages/rendermime/style/base.css
|
||
*/
|
||
.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='1'] {
|
||
font-size: var(--jp-content-font-size5);
|
||
background-position-y: calc(0.3 * var(--jp-content-font-size5));
|
||
}
|
||
|
||
.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='2'] {
|
||
font-size: var(--jp-content-font-size4);
|
||
background-position-y: calc(0.3 * var(--jp-content-font-size4));
|
||
}
|
||
|
||
.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='3'] {
|
||
font-size: var(--jp-content-font-size3);
|
||
background-position-y: calc(0.3 * var(--jp-content-font-size3));
|
||
}
|
||
|
||
.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='4'] {
|
||
font-size: var(--jp-content-font-size2);
|
||
background-position-y: calc(0.3 * var(--jp-content-font-size2));
|
||
}
|
||
|
||
.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='5'] {
|
||
font-size: var(--jp-content-font-size1);
|
||
background-position-y: top;
|
||
}
|
||
|
||
.jp-mod-rendered .jp-collapseHeadingButton[data-heading-level='6'] {
|
||
font-size: var(--jp-content-font-size0);
|
||
background-position-y: top;
|
||
}
|
||
|
||
/* collapseHeadingButton (show only on (hover,active) if hiddenCellsButton is shown) */
|
||
.jp-Notebook.jp-mod-showHiddenCellsButton .jp-collapseHeadingButton {
|
||
display: none;
|
||
}
|
||
|
||
.jp-Notebook.jp-mod-showHiddenCellsButton
|
||
:is(.jp-MarkdownCell:hover, .jp-mod-active)
|
||
.jp-collapseHeadingButton {
|
||
display: flex;
|
||
}
|
||
|
||
/* showHiddenCellsButton (only show if jp-mod-showHiddenCellsButton is set, which
|
||
is a consequence of the showHiddenCellsButton option in Notebook Settings)*/
|
||
.jp-Notebook.jp-mod-showHiddenCellsButton .jp-showHiddenCellsButton {
|
||
margin-left: calc(var(--jp-cell-prompt-width) + 2 * var(--jp-code-padding));
|
||
margin-top: var(--jp-code-padding);
|
||
border: 1px solid var(--jp-border-color2);
|
||
background-color: var(--jp-border-color3) !important;
|
||
color: var(--jp-content-font-color0) !important;
|
||
display: flex;
|
||
}
|
||
|
||
.jp-Notebook.jp-mod-showHiddenCellsButton .jp-showHiddenCellsButton:hover {
|
||
background-color: var(--jp-border-color2) !important;
|
||
}
|
||
|
||
.jp-showHiddenCellsButton {
|
||
display: none;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Printing
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*
|
||
Using block instead of flex to allow the use of the break-inside CSS property for
|
||
cell outputs.
|
||
*/
|
||
|
||
@media print {
|
||
.jp-Cell-inputWrapper,
|
||
.jp-Cell-outputWrapper {
|
||
display: block;
|
||
}
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Variables
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
:root {
|
||
--jp-notebook-toolbar-padding: 2px 5px 2px 2px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Styles
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-NotebookPanel-toolbar {
|
||
padding: var(--jp-notebook-toolbar-padding);
|
||
|
||
/* disable paint containment from lumino 2.0 default strict CSS containment */
|
||
contain: style size !important;
|
||
}
|
||
|
||
.jp-Toolbar-item.jp-Notebook-toolbarCellType .jp-select-wrapper.jp-mod-focused {
|
||
border: none;
|
||
box-shadow: none;
|
||
}
|
||
|
||
.jp-Notebook-toolbarCellTypeDropdown select {
|
||
height: 24px;
|
||
font-size: var(--jp-ui-font-size1);
|
||
line-height: 14px;
|
||
border-radius: 0;
|
||
display: block;
|
||
}
|
||
|
||
.jp-Notebook-toolbarCellTypeDropdown span {
|
||
top: 5px !important;
|
||
}
|
||
|
||
.jp-Toolbar-responsive-popup {
|
||
position: absolute;
|
||
height: fit-content;
|
||
display: flex;
|
||
flex-direction: row;
|
||
flex-wrap: wrap;
|
||
justify-content: flex-end;
|
||
border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
|
||
box-shadow: var(--jp-toolbar-box-shadow);
|
||
background: var(--jp-toolbar-background);
|
||
min-height: var(--jp-toolbar-micro-height);
|
||
padding: var(--jp-notebook-toolbar-padding);
|
||
z-index: 1;
|
||
right: 0;
|
||
top: 0;
|
||
}
|
||
|
||
.jp-Toolbar > .jp-Toolbar-responsive-opener {
|
||
margin-left: auto;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Variables
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Styles
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Notebook-ExecutionIndicator {
|
||
position: relative;
|
||
display: inline-block;
|
||
height: 100%;
|
||
z-index: 9997;
|
||
}
|
||
|
||
.jp-Notebook-ExecutionIndicator-tooltip {
|
||
visibility: hidden;
|
||
height: auto;
|
||
width: max-content;
|
||
width: -moz-max-content;
|
||
background-color: var(--jp-layout-color2);
|
||
color: var(--jp-ui-font-color1);
|
||
text-align: justify;
|
||
border-radius: 6px;
|
||
padding: 0 5px;
|
||
position: fixed;
|
||
display: table;
|
||
}
|
||
|
||
.jp-Notebook-ExecutionIndicator-tooltip.up {
|
||
transform: translateX(-50%) translateY(-100%) translateY(-32px);
|
||
}
|
||
|
||
.jp-Notebook-ExecutionIndicator-tooltip.down {
|
||
transform: translateX(calc(-100% + 16px)) translateY(5px);
|
||
}
|
||
|
||
.jp-Notebook-ExecutionIndicator-tooltip.hidden {
|
||
display: none;
|
||
}
|
||
|
||
.jp-Notebook-ExecutionIndicator:hover .jp-Notebook-ExecutionIndicator-tooltip {
|
||
visibility: visible;
|
||
}
|
||
|
||
.jp-Notebook-ExecutionIndicator span {
|
||
font-size: var(--jp-ui-font-size1);
|
||
font-family: var(--jp-ui-font-family);
|
||
color: var(--jp-ui-font-color1);
|
||
line-height: 24px;
|
||
display: block;
|
||
}
|
||
|
||
.jp-Notebook-ExecutionIndicator-progress-bar {
|
||
display: flex;
|
||
justify-content: center;
|
||
height: 100%;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
/*
|
||
* Execution indicator
|
||
*/
|
||
.jp-tocItem-content::after {
|
||
content: '';
|
||
|
||
/* Must be identical to form a circle */
|
||
width: 12px;
|
||
height: 12px;
|
||
background: none;
|
||
border: none;
|
||
position: absolute;
|
||
right: 0;
|
||
}
|
||
|
||
.jp-tocItem-content[data-running='0']::after {
|
||
border-radius: 50%;
|
||
border: var(--jp-border-width) solid var(--jp-inverse-layout-color3);
|
||
background: none;
|
||
}
|
||
|
||
.jp-tocItem-content[data-running='1']::after {
|
||
border-radius: 50%;
|
||
border: var(--jp-border-width) solid var(--jp-inverse-layout-color3);
|
||
background-color: var(--jp-inverse-layout-color3);
|
||
}
|
||
|
||
.jp-tocItem-content[data-running='0'],
|
||
.jp-tocItem-content[data-running='1'] {
|
||
margin-right: 12px;
|
||
}
|
||
|
||
/*
|
||
* Copyright (c) Jupyter Development Team.
|
||
* Distributed under the terms of the Modified BSD License.
|
||
*/
|
||
|
||
.jp-Notebook-footer {
|
||
height: 27px;
|
||
margin-left: calc(
|
||
var(--jp-cell-prompt-width) + var(--jp-cell-collapser-width) +
|
||
var(--jp-cell-padding)
|
||
);
|
||
width: calc(
|
||
100% -
|
||
(
|
||
var(--jp-cell-prompt-width) + var(--jp-cell-collapser-width) +
|
||
var(--jp-cell-padding) + var(--jp-cell-padding)
|
||
)
|
||
);
|
||
border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
|
||
color: var(--jp-ui-font-color3);
|
||
margin-top: 6px;
|
||
background: none;
|
||
cursor: pointer;
|
||
}
|
||
|
||
.jp-Notebook-footer:focus {
|
||
border-color: var(--jp-cell-editor-active-border-color);
|
||
}
|
||
|
||
/* For devices that support hovering, hide footer until hover */
|
||
@media (hover: hover) {
|
||
.jp-Notebook-footer {
|
||
opacity: 0;
|
||
}
|
||
|
||
.jp-Notebook-footer:focus,
|
||
.jp-Notebook-footer:hover {
|
||
opacity: 1;
|
||
}
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Imports
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| CSS variables
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
:root {
|
||
--jp-side-by-side-output-size: 1fr;
|
||
--jp-side-by-side-resized-cell: var(--jp-side-by-side-output-size);
|
||
--jp-private-notebook-dragImage-width: 304px;
|
||
--jp-private-notebook-dragImage-height: 36px;
|
||
--jp-private-notebook-selected-color: var(--md-blue-400);
|
||
--jp-private-notebook-active-color: var(--md-green-400);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Notebook
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/* stylelint-disable selector-max-class */
|
||
|
||
.jp-NotebookPanel {
|
||
display: block;
|
||
height: 100%;
|
||
}
|
||
|
||
.jp-NotebookPanel.jp-Document {
|
||
min-width: 240px;
|
||
min-height: 120px;
|
||
}
|
||
|
||
.jp-Notebook {
|
||
padding: var(--jp-notebook-padding);
|
||
outline: none;
|
||
overflow: auto;
|
||
background: var(--jp-layout-color0);
|
||
}
|
||
|
||
.jp-Notebook.jp-mod-scrollPastEnd::after {
|
||
display: block;
|
||
content: '';
|
||
min-height: var(--jp-notebook-scroll-padding);
|
||
}
|
||
|
||
.jp-MainAreaWidget-ContainStrict .jp-Notebook * {
|
||
contain: strict;
|
||
}
|
||
|
||
.jp-Notebook .jp-Cell {
|
||
overflow: visible;
|
||
}
|
||
|
||
.jp-Notebook .jp-Cell .jp-InputPrompt {
|
||
cursor: move;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Notebook state related styling
|
||
|
|
||
| The notebook and cells each have states, here are the possibilities:
|
||
|
|
||
| - Notebook
|
||
| - Command
|
||
| - Edit
|
||
| - Cell
|
||
| - None
|
||
| - Active (only one can be active)
|
||
| - Selected (the cells actions are applied to)
|
||
| - Multiselected (when multiple selected, the cursor)
|
||
| - No outputs
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/* Command or edit modes */
|
||
|
||
.jp-Notebook .jp-Cell:not(.jp-mod-active) .jp-InputPrompt {
|
||
opacity: var(--jp-cell-prompt-not-active-opacity);
|
||
color: var(--jp-cell-prompt-not-active-font-color);
|
||
}
|
||
|
||
.jp-Notebook .jp-Cell:not(.jp-mod-active) .jp-OutputPrompt {
|
||
opacity: var(--jp-cell-prompt-not-active-opacity);
|
||
color: var(--jp-cell-prompt-not-active-font-color);
|
||
}
|
||
|
||
/* cell is active */
|
||
.jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser {
|
||
background: var(--jp-brand-color1);
|
||
}
|
||
|
||
/* cell is dirty */
|
||
.jp-Notebook .jp-Cell.jp-mod-dirty .jp-InputPrompt {
|
||
color: var(--jp-warn-color1);
|
||
}
|
||
|
||
.jp-Notebook .jp-Cell.jp-mod-dirty .jp-InputPrompt::before {
|
||
color: var(--jp-warn-color1);
|
||
content: '•';
|
||
}
|
||
|
||
.jp-Notebook .jp-Cell.jp-mod-active.jp-mod-dirty .jp-Collapser {
|
||
background: var(--jp-warn-color1);
|
||
}
|
||
|
||
/* collapser is hovered */
|
||
.jp-Notebook .jp-Cell .jp-Collapser:hover {
|
||
box-shadow: var(--jp-elevation-z2);
|
||
background: var(--jp-brand-color1);
|
||
opacity: var(--jp-cell-collapser-not-active-hover-opacity);
|
||
}
|
||
|
||
/* cell is active and collapser is hovered */
|
||
.jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser:hover {
|
||
background: var(--jp-brand-color0);
|
||
opacity: 1;
|
||
}
|
||
|
||
/* Command mode */
|
||
|
||
.jp-Notebook.jp-mod-commandMode .jp-Cell.jp-mod-selected {
|
||
background: var(--jp-notebook-multiselected-color);
|
||
}
|
||
|
||
.jp-Notebook.jp-mod-commandMode
|
||
.jp-Cell.jp-mod-active.jp-mod-selected:not(.jp-mod-multiSelected) {
|
||
background: transparent;
|
||
}
|
||
|
||
/* Edit mode */
|
||
|
||
.jp-Notebook.jp-mod-editMode .jp-Cell.jp-mod-active .jp-InputArea-editor {
|
||
border: var(--jp-border-width) solid var(--jp-cell-editor-active-border-color);
|
||
box-shadow: var(--jp-input-box-shadow);
|
||
background-color: var(--jp-cell-editor-active-background);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Notebook drag and drop
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Notebook-cell.jp-mod-dropSource {
|
||
opacity: 0.5;
|
||
}
|
||
|
||
.jp-Notebook-cell.jp-mod-dropTarget,
|
||
.jp-Notebook.jp-mod-commandMode
|
||
.jp-Notebook-cell.jp-mod-active.jp-mod-selected.jp-mod-dropTarget {
|
||
border-top-color: var(--jp-private-notebook-selected-color);
|
||
border-top-style: solid;
|
||
border-top-width: 2px;
|
||
}
|
||
|
||
.jp-dragImage {
|
||
display: block;
|
||
flex-direction: row;
|
||
width: var(--jp-private-notebook-dragImage-width);
|
||
height: var(--jp-private-notebook-dragImage-height);
|
||
border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
|
||
background: var(--jp-cell-editor-background);
|
||
overflow: visible;
|
||
}
|
||
|
||
.jp-dragImage-singlePrompt {
|
||
box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.12);
|
||
}
|
||
|
||
.jp-dragImage .jp-dragImage-content {
|
||
flex: 1 1 auto;
|
||
z-index: 2;
|
||
font-size: var(--jp-code-font-size);
|
||
font-family: var(--jp-code-font-family);
|
||
line-height: var(--jp-code-line-height);
|
||
padding: var(--jp-code-padding);
|
||
border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
|
||
background: var(--jp-cell-editor-background-color);
|
||
color: var(--jp-content-font-color3);
|
||
text-align: left;
|
||
margin: 4px 4px 4px 0;
|
||
}
|
||
|
||
.jp-dragImage .jp-dragImage-prompt {
|
||
flex: 0 0 auto;
|
||
min-width: 36px;
|
||
color: var(--jp-cell-inprompt-font-color);
|
||
padding: var(--jp-code-padding);
|
||
padding-left: 12px;
|
||
font-family: var(--jp-cell-prompt-font-family);
|
||
letter-spacing: var(--jp-cell-prompt-letter-spacing);
|
||
line-height: 1.9;
|
||
font-size: var(--jp-code-font-size);
|
||
border: var(--jp-border-width) solid transparent;
|
||
}
|
||
|
||
.jp-dragImage-multipleBack {
|
||
z-index: -1;
|
||
position: absolute;
|
||
height: 32px;
|
||
width: 300px;
|
||
top: 8px;
|
||
left: 8px;
|
||
background: var(--jp-layout-color2);
|
||
border: var(--jp-border-width) solid var(--jp-input-border-color);
|
||
box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.12);
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Cell toolbar
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-NotebookTools {
|
||
display: block;
|
||
min-width: var(--jp-sidebar-min-width);
|
||
color: var(--jp-ui-font-color1);
|
||
background: var(--jp-layout-color1);
|
||
|
||
/* This is needed so that all font sizing of children done in ems is
|
||
* relative to this base size */
|
||
font-size: var(--jp-ui-font-size1);
|
||
overflow: auto;
|
||
}
|
||
|
||
.jp-ActiveCellTool {
|
||
padding: 12px 0;
|
||
display: flex;
|
||
}
|
||
|
||
.jp-ActiveCellTool-Content {
|
||
flex: 1 1 auto;
|
||
}
|
||
|
||
.jp-ActiveCellTool .jp-ActiveCellTool-CellContent {
|
||
background: var(--jp-cell-editor-background);
|
||
border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
|
||
border-radius: 0;
|
||
min-height: 29px;
|
||
}
|
||
|
||
.jp-ActiveCellTool .jp-InputPrompt {
|
||
min-width: calc(var(--jp-cell-prompt-width) * 0.75);
|
||
}
|
||
|
||
.jp-ActiveCellTool-CellContent > pre {
|
||
padding: 5px 4px;
|
||
margin: 0;
|
||
white-space: normal;
|
||
}
|
||
|
||
.jp-MetadataEditorTool {
|
||
flex-direction: column;
|
||
padding: 12px 0;
|
||
}
|
||
|
||
.jp-RankedPanel > :not(:first-child) {
|
||
margin-top: 12px;
|
||
}
|
||
|
||
.jp-KeySelector select.jp-mod-styled {
|
||
font-size: var(--jp-ui-font-size1);
|
||
color: var(--jp-ui-font-color0);
|
||
border: var(--jp-border-width) solid var(--jp-border-color1);
|
||
}
|
||
|
||
.jp-KeySelector label,
|
||
.jp-MetadataEditorTool label,
|
||
.jp-NumberSetter label {
|
||
line-height: 1.4;
|
||
}
|
||
|
||
.jp-NotebookTools .jp-select-wrapper {
|
||
margin-top: 4px;
|
||
margin-bottom: 0;
|
||
}
|
||
|
||
.jp-NumberSetter input {
|
||
width: 100%;
|
||
margin-top: 4px;
|
||
}
|
||
|
||
.jp-NotebookTools .jp-Collapse {
|
||
margin-top: 16px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Presentation Mode (.jp-mod-presentationMode)
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-mod-presentationMode .jp-Notebook {
|
||
--jp-content-font-size1: var(--jp-content-presentation-font-size1);
|
||
--jp-code-font-size: var(--jp-code-presentation-font-size);
|
||
}
|
||
|
||
.jp-mod-presentationMode .jp-Notebook .jp-Cell .jp-InputPrompt,
|
||
.jp-mod-presentationMode .jp-Notebook .jp-Cell .jp-OutputPrompt {
|
||
flex: 0 0 110px;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Side-by-side Mode (.jp-mod-sideBySide)
|
||
|----------------------------------------------------------------------------*/
|
||
.jp-mod-sideBySide.jp-Notebook .jp-Notebook-cell {
|
||
margin-top: 3em;
|
||
margin-bottom: 3em;
|
||
margin-left: 5%;
|
||
margin-right: 5%;
|
||
}
|
||
|
||
.jp-mod-sideBySide.jp-Notebook .jp-CodeCell {
|
||
display: grid;
|
||
grid-template-columns: minmax(0, 1fr) min-content minmax(
|
||
0,
|
||
var(--jp-side-by-side-output-size)
|
||
);
|
||
grid-template-rows: auto minmax(0, 1fr) auto;
|
||
grid-template-areas:
|
||
'header header header'
|
||
'input handle output'
|
||
'footer footer footer';
|
||
}
|
||
|
||
.jp-mod-sideBySide.jp-Notebook .jp-CodeCell.jp-mod-resizedCell {
|
||
grid-template-columns: minmax(0, 1fr) min-content minmax(
|
||
0,
|
||
var(--jp-side-by-side-resized-cell)
|
||
);
|
||
}
|
||
|
||
.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellHeader {
|
||
grid-area: header;
|
||
}
|
||
|
||
.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-Cell-inputWrapper {
|
||
grid-area: input;
|
||
}
|
||
|
||
.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-Cell-outputWrapper {
|
||
/* overwrite the default margin (no vertical separation needed in side by side move */
|
||
margin-top: 0;
|
||
grid-area: output;
|
||
}
|
||
|
||
.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellFooter {
|
||
grid-area: footer;
|
||
}
|
||
|
||
.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellResizeHandle {
|
||
grid-area: handle;
|
||
user-select: none;
|
||
display: block;
|
||
height: 100%;
|
||
cursor: ew-resize;
|
||
padding: 0 var(--jp-cell-padding);
|
||
}
|
||
|
||
.jp-mod-sideBySide.jp-Notebook .jp-CodeCell .jp-CellResizeHandle::after {
|
||
content: '';
|
||
display: block;
|
||
background: var(--jp-border-color2);
|
||
height: 100%;
|
||
width: 5px;
|
||
}
|
||
|
||
.jp-mod-sideBySide.jp-Notebook
|
||
.jp-CodeCell.jp-mod-resizedCell
|
||
.jp-CellResizeHandle::after {
|
||
background: var(--jp-border-color0);
|
||
}
|
||
|
||
.jp-CellResizeHandle {
|
||
display: none;
|
||
}
|
||
|
||
/*-----------------------------------------------------------------------------
|
||
| Placeholder
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
.jp-Cell-Placeholder {
|
||
padding-left: 55px;
|
||
}
|
||
|
||
.jp-Cell-Placeholder-wrapper {
|
||
background: #fff;
|
||
border: 1px solid;
|
||
border-color: #e5e6e9 #dfe0e4 #d0d1d5;
|
||
border-radius: 4px;
|
||
-webkit-border-radius: 4px;
|
||
margin: 10px 15px;
|
||
}
|
||
|
||
.jp-Cell-Placeholder-wrapper-inner {
|
||
padding: 15px;
|
||
position: relative;
|
||
}
|
||
|
||
.jp-Cell-Placeholder-wrapper-body {
|
||
background-repeat: repeat;
|
||
background-size: 50% auto;
|
||
}
|
||
|
||
.jp-Cell-Placeholder-wrapper-body div {
|
||
background: #f6f7f8;
|
||
background-image: -webkit-linear-gradient(
|
||
left,
|
||
#f6f7f8 0%,
|
||
#edeef1 20%,
|
||
#f6f7f8 40%,
|
||
#f6f7f8 100%
|
||
);
|
||
background-repeat: no-repeat;
|
||
background-size: 800px 104px;
|
||
height: 104px;
|
||
position: absolute;
|
||
right: 15px;
|
||
left: 15px;
|
||
top: 15px;
|
||
}
|
||
|
||
div.jp-Cell-Placeholder-h1 {
|
||
top: 20px;
|
||
height: 20px;
|
||
left: 15px;
|
||
width: 150px;
|
||
}
|
||
|
||
div.jp-Cell-Placeholder-h2 {
|
||
left: 15px;
|
||
top: 50px;
|
||
height: 10px;
|
||
width: 100px;
|
||
}
|
||
|
||
div.jp-Cell-Placeholder-content-1,
|
||
div.jp-Cell-Placeholder-content-2,
|
||
div.jp-Cell-Placeholder-content-3 {
|
||
left: 15px;
|
||
right: 15px;
|
||
height: 10px;
|
||
}
|
||
|
||
div.jp-Cell-Placeholder-content-1 {
|
||
top: 100px;
|
||
}
|
||
|
||
div.jp-Cell-Placeholder-content-2 {
|
||
top: 120px;
|
||
}
|
||
|
||
div.jp-Cell-Placeholder-content-3 {
|
||
top: 140px;
|
||
}
|
||
|
||
</style>
|
||
<style type="text/css">
|
||
/*-----------------------------------------------------------------------------
|
||
| Copyright (c) Jupyter Development Team.
|
||
| Distributed under the terms of the Modified BSD License.
|
||
|----------------------------------------------------------------------------*/
|
||
|
||
/*
|
||
The following CSS variables define the main, public API for styling JupyterLab.
|
||
These variables should be used by all plugins wherever possible. In other
|
||
words, plugins should not define custom colors, sizes, etc unless absolutely
|
||
necessary. This enables users to change the visual theme of JupyterLab
|
||
by changing these variables.
|
||
|
||
Many variables appear in an ordered sequence (0,1,2,3). These sequences
|
||
are designed to work well together, so for example, `--jp-border-color1` should
|
||
be used with `--jp-layout-color1`. The numbers have the following meanings:
|
||
|
||
* 0: super-primary, reserved for special emphasis
|
||
* 1: primary, most important under normal situations
|
||
* 2: secondary, next most important under normal situations
|
||
* 3: tertiary, next most important under normal situations
|
||
|
||
Throughout JupyterLab, we are mostly following principles from Google's
|
||
Material Design when selecting colors. We are not, however, following
|
||
all of MD as it is not optimized for dense, information rich UIs.
|
||
*/
|
||
|
||
:root {
|
||
/* Elevation
|
||
*
|
||
* We style box-shadows using Material Design's idea of elevation. These particular numbers are taken from here:
|
||
*
|
||
* https://github.com/material-components/material-components-web
|
||
* https://material-components-web.appspot.com/elevation.html
|
||
*/
|
||
|
||
--jp-shadow-base-lightness: 0;
|
||
--jp-shadow-umbra-color: rgba(
|
||
var(--jp-shadow-base-lightness),
|
||
var(--jp-shadow-base-lightness),
|
||
var(--jp-shadow-base-lightness),
|
||
0.2
|
||
);
|
||
--jp-shadow-penumbra-color: rgba(
|
||
var(--jp-shadow-base-lightness),
|
||
var(--jp-shadow-base-lightness),
|
||
var(--jp-shadow-base-lightness),
|
||
0.14
|
||
);
|
||
--jp-shadow-ambient-color: rgba(
|
||
var(--jp-shadow-base-lightness),
|
||
var(--jp-shadow-base-lightness),
|
||
var(--jp-shadow-base-lightness),
|
||
0.12
|
||
);
|
||
--jp-elevation-z0: none;
|
||
--jp-elevation-z1: 0 2px 1px -1px var(--jp-shadow-umbra-color),
|
||
0 1px 1px 0 var(--jp-shadow-penumbra-color),
|
||
0 1px 3px 0 var(--jp-shadow-ambient-color);
|
||
--jp-elevation-z2: 0 3px 1px -2px var(--jp-shadow-umbra-color),
|
||
0 2px 2px 0 var(--jp-shadow-penumbra-color),
|
||
0 1px 5px 0 var(--jp-shadow-ambient-color);
|
||
--jp-elevation-z4: 0 2px 4px -1px var(--jp-shadow-umbra-color),
|
||
0 4px 5px 0 var(--jp-shadow-penumbra-color),
|
||
0 1px 10px 0 var(--jp-shadow-ambient-color);
|
||
--jp-elevation-z6: 0 3px 5px -1px var(--jp-shadow-umbra-color),
|
||
0 6px 10px 0 var(--jp-shadow-penumbra-color),
|
||
0 1px 18px 0 var(--jp-shadow-ambient-color);
|
||
--jp-elevation-z8: 0 5px 5px -3px var(--jp-shadow-umbra-color),
|
||
0 8px 10px 1px var(--jp-shadow-penumbra-color),
|
||
0 3px 14px 2px var(--jp-shadow-ambient-color);
|
||
--jp-elevation-z12: 0 7px 8px -4px var(--jp-shadow-umbra-color),
|
||
0 12px 17px 2px var(--jp-shadow-penumbra-color),
|
||
0 5px 22px 4px var(--jp-shadow-ambient-color);
|
||
--jp-elevation-z16: 0 8px 10px -5px var(--jp-shadow-umbra-color),
|
||
0 16px 24px 2px var(--jp-shadow-penumbra-color),
|
||
0 6px 30px 5px var(--jp-shadow-ambient-color);
|
||
--jp-elevation-z20: 0 10px 13px -6px var(--jp-shadow-umbra-color),
|
||
0 20px 31px 3px var(--jp-shadow-penumbra-color),
|
||
0 8px 38px 7px var(--jp-shadow-ambient-color);
|
||
--jp-elevation-z24: 0 11px 15px -7px var(--jp-shadow-umbra-color),
|
||
0 24px 38px 3px var(--jp-shadow-penumbra-color),
|
||
0 9px 46px 8px var(--jp-shadow-ambient-color);
|
||
|
||
/* Borders
|
||
*
|
||
* The following variables, specify the visual styling of borders in JupyterLab.
|
||
*/
|
||
|
||
--jp-border-width: 1px;
|
||
--jp-border-color0: var(--md-grey-400);
|
||
--jp-border-color1: var(--md-grey-400);
|
||
--jp-border-color2: var(--md-grey-300);
|
||
--jp-border-color3: var(--md-grey-200);
|
||
--jp-inverse-border-color: var(--md-grey-600);
|
||
--jp-border-radius: 2px;
|
||
|
||
/* UI Fonts
|
||
*
|
||
* The UI font CSS variables are used for the typography all of the JupyterLab
|
||
* user interface elements that are not directly user generated content.
|
||
*
|
||
* The font sizing here is done assuming that the body font size of --jp-ui-font-size1
|
||
* is applied to a parent element. When children elements, such as headings, are sized
|
||
* in em all things will be computed relative to that body size.
|
||
*/
|
||
|
||
--jp-ui-font-scale-factor: 1.2;
|
||
--jp-ui-font-size0: 0.83333em;
|
||
--jp-ui-font-size1: 13px; /* Base font size */
|
||
--jp-ui-font-size2: 1.2em;
|
||
--jp-ui-font-size3: 1.44em;
|
||
--jp-ui-font-family: system-ui, -apple-system, blinkmacsystemfont, 'Segoe UI',
|
||
helvetica, arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
|
||
'Segoe UI Symbol';
|
||
|
||
/*
|
||
* Use these font colors against the corresponding main layout colors.
|
||
* In a light theme, these go from dark to light.
|
||
*/
|
||
|
||
/* Defaults use Material Design specification */
|
||
--jp-ui-font-color0: rgba(0, 0, 0, 1);
|
||
--jp-ui-font-color1: rgba(0, 0, 0, 0.87);
|
||
--jp-ui-font-color2: rgba(0, 0, 0, 0.54);
|
||
--jp-ui-font-color3: rgba(0, 0, 0, 0.38);
|
||
|
||
/*
|
||
* Use these against the brand/accent/warn/error colors.
|
||
* These will typically go from light to darker, in both a dark and light theme.
|
||
*/
|
||
|
||
--jp-ui-inverse-font-color0: rgba(255, 255, 255, 1);
|
||
--jp-ui-inverse-font-color1: rgba(255, 255, 255, 1);
|
||
--jp-ui-inverse-font-color2: rgba(255, 255, 255, 0.7);
|
||
--jp-ui-inverse-font-color3: rgba(255, 255, 255, 0.5);
|
||
|
||
/* Content Fonts
|
||
*
|
||
* Content font variables are used for typography of user generated content.
|
||
*
|
||
* The font sizing here is done assuming that the body font size of --jp-content-font-size1
|
||
* is applied to a parent element. When children elements, such as headings, are sized
|
||
* in em all things will be computed relative to that body size.
|
||
*/
|
||
|
||
--jp-content-line-height: 1.6;
|
||
--jp-content-font-scale-factor: 1.2;
|
||
--jp-content-font-size0: 0.83333em;
|
||
--jp-content-font-size1: 14px; /* Base font size */
|
||
--jp-content-font-size2: 1.2em;
|
||
--jp-content-font-size3: 1.44em;
|
||
--jp-content-font-size4: 1.728em;
|
||
--jp-content-font-size5: 2.0736em;
|
||
|
||
/* This gives a magnification of about 125% in presentation mode over normal. */
|
||
--jp-content-presentation-font-size1: 17px;
|
||
--jp-content-heading-line-height: 1;
|
||
--jp-content-heading-margin-top: 1.2em;
|
||
--jp-content-heading-margin-bottom: 0.8em;
|
||
--jp-content-heading-font-weight: 500;
|
||
|
||
/* Defaults use Material Design specification */
|
||
--jp-content-font-color0: rgba(0, 0, 0, 1);
|
||
--jp-content-font-color1: rgba(0, 0, 0, 0.87);
|
||
--jp-content-font-color2: rgba(0, 0, 0, 0.54);
|
||
--jp-content-font-color3: rgba(0, 0, 0, 0.38);
|
||
--jp-content-link-color: var(--md-blue-900);
|
||
--jp-content-font-family: system-ui, -apple-system, blinkmacsystemfont,
|
||
'Segoe UI', helvetica, arial, sans-serif, 'Apple Color Emoji',
|
||
'Segoe UI Emoji', 'Segoe UI Symbol';
|
||
|
||
/*
|
||
* Code Fonts
|
||
*
|
||
* Code font variables are used for typography of code and other monospaces content.
|
||
*/
|
||
|
||
--jp-code-font-size: 13px;
|
||
--jp-code-line-height: 1.3077; /* 17px for 13px base */
|
||
--jp-code-padding: 5px; /* 5px for 13px base, codemirror highlighting needs integer px value */
|
||
--jp-code-font-family-default: menlo, consolas, 'DejaVu Sans Mono', monospace;
|
||
--jp-code-font-family: var(--jp-code-font-family-default);
|
||
|
||
/* This gives a magnification of about 125% in presentation mode over normal. */
|
||
--jp-code-presentation-font-size: 16px;
|
||
|
||
/* may need to tweak cursor width if you change font size */
|
||
--jp-code-cursor-width0: 1.4px;
|
||
--jp-code-cursor-width1: 2px;
|
||
--jp-code-cursor-width2: 4px;
|
||
|
||
/* Layout
|
||
*
|
||
* The following are the main layout colors use in JupyterLab. In a light
|
||
* theme these would go from light to dark.
|
||
*/
|
||
|
||
--jp-layout-color0: white;
|
||
--jp-layout-color1: white;
|
||
--jp-layout-color2: var(--md-grey-200);
|
||
--jp-layout-color3: var(--md-grey-400);
|
||
--jp-layout-color4: var(--md-grey-600);
|
||
|
||
/* Inverse Layout
|
||
*
|
||
* The following are the inverse layout colors use in JupyterLab. In a light
|
||
* theme these would go from dark to light.
|
||
*/
|
||
|
||
--jp-inverse-layout-color0: #111;
|
||
--jp-inverse-layout-color1: var(--md-grey-900);
|
||
--jp-inverse-layout-color2: var(--md-grey-800);
|
||
--jp-inverse-layout-color3: var(--md-grey-700);
|
||
--jp-inverse-layout-color4: var(--md-grey-600);
|
||
|
||
/* Brand/accent */
|
||
|
||
--jp-brand-color0: var(--md-blue-900);
|
||
--jp-brand-color1: var(--md-blue-700);
|
||
--jp-brand-color2: var(--md-blue-300);
|
||
--jp-brand-color3: var(--md-blue-100);
|
||
--jp-brand-color4: var(--md-blue-50);
|
||
--jp-accent-color0: var(--md-green-900);
|
||
--jp-accent-color1: var(--md-green-700);
|
||
--jp-accent-color2: var(--md-green-300);
|
||
--jp-accent-color3: var(--md-green-100);
|
||
|
||
/* State colors (warn, error, success, info) */
|
||
|
||
--jp-warn-color0: var(--md-orange-900);
|
||
--jp-warn-color1: var(--md-orange-700);
|
||
--jp-warn-color2: var(--md-orange-300);
|
||
--jp-warn-color3: var(--md-orange-100);
|
||
--jp-error-color0: var(--md-red-900);
|
||
--jp-error-color1: var(--md-red-700);
|
||
--jp-error-color2: var(--md-red-300);
|
||
--jp-error-color3: var(--md-red-100);
|
||
--jp-success-color0: var(--md-green-900);
|
||
--jp-success-color1: var(--md-green-700);
|
||
--jp-success-color2: var(--md-green-300);
|
||
--jp-success-color3: var(--md-green-100);
|
||
--jp-info-color0: var(--md-cyan-900);
|
||
--jp-info-color1: var(--md-cyan-700);
|
||
--jp-info-color2: var(--md-cyan-300);
|
||
--jp-info-color3: var(--md-cyan-100);
|
||
|
||
/* Cell specific styles */
|
||
|
||
--jp-cell-padding: 5px;
|
||
--jp-cell-collapser-width: 8px;
|
||
--jp-cell-collapser-min-height: 20px;
|
||
--jp-cell-collapser-not-active-hover-opacity: 0.6;
|
||
--jp-cell-editor-background: var(--md-grey-100);
|
||
--jp-cell-editor-border-color: var(--md-grey-300);
|
||
--jp-cell-editor-box-shadow: inset 0 0 2px var(--md-blue-300);
|
||
--jp-cell-editor-active-background: var(--jp-layout-color0);
|
||
--jp-cell-editor-active-border-color: var(--jp-brand-color1);
|
||
--jp-cell-prompt-width: 64px;
|
||
--jp-cell-prompt-font-family: var(--jp-code-font-family-default);
|
||
--jp-cell-prompt-letter-spacing: 0;
|
||
--jp-cell-prompt-opacity: 1;
|
||
--jp-cell-prompt-not-active-opacity: 0.5;
|
||
--jp-cell-prompt-not-active-font-color: var(--md-grey-700);
|
||
|
||
/* A custom blend of MD grey and blue 600
|
||
* See https://meyerweb.com/eric/tools/color-blend/#546E7A:1E88E5:5:hex */
|
||
--jp-cell-inprompt-font-color: #307fc1;
|
||
|
||
/* A custom blend of MD grey and orange 600
|
||
* https://meyerweb.com/eric/tools/color-blend/#546E7A:F4511E:5:hex */
|
||
--jp-cell-outprompt-font-color: #bf5b3d;
|
||
|
||
/* Notebook specific styles */
|
||
|
||
--jp-notebook-padding: 10px;
|
||
--jp-notebook-select-background: var(--jp-layout-color1);
|
||
--jp-notebook-multiselected-color: var(--md-blue-50);
|
||
|
||
/* The scroll padding is calculated to fill enough space at the bottom of the
|
||
notebook to show one single-line cell (with appropriate padding) at the top
|
||
when the notebook is scrolled all the way to the bottom. We also subtract one
|
||
pixel so that no scrollbar appears if we have just one single-line cell in the
|
||
notebook. This padding is to enable a 'scroll past end' feature in a notebook.
|
||
*/
|
||
--jp-notebook-scroll-padding: calc(
|
||
100% - var(--jp-code-font-size) * var(--jp-code-line-height) -
|
||
var(--jp-code-padding) - var(--jp-cell-padding) - 1px
|
||
);
|
||
|
||
/* Rendermime styles */
|
||
|
||
--jp-rendermime-error-background: #fdd;
|
||
--jp-rendermime-table-row-background: var(--md-grey-100);
|
||
--jp-rendermime-table-row-hover-background: var(--md-light-blue-50);
|
||
|
||
/* Dialog specific styles */
|
||
|
||
--jp-dialog-background: rgba(0, 0, 0, 0.25);
|
||
|
||
/* Console specific styles */
|
||
|
||
--jp-console-padding: 10px;
|
||
|
||
/* Toolbar specific styles */
|
||
|
||
--jp-toolbar-border-color: var(--jp-border-color1);
|
||
--jp-toolbar-micro-height: 8px;
|
||
--jp-toolbar-background: var(--jp-layout-color1);
|
||
--jp-toolbar-box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.24);
|
||
--jp-toolbar-header-margin: 4px 4px 0 4px;
|
||
--jp-toolbar-active-background: var(--md-grey-300);
|
||
|
||
/* Statusbar specific styles */
|
||
|
||
--jp-statusbar-height: 24px;
|
||
|
||
/* Input field styles */
|
||
|
||
--jp-input-box-shadow: inset 0 0 2px var(--md-blue-300);
|
||
--jp-input-active-background: var(--jp-layout-color1);
|
||
--jp-input-hover-background: var(--jp-layout-color1);
|
||
--jp-input-background: var(--md-grey-100);
|
||
--jp-input-border-color: var(--jp-inverse-border-color);
|
||
--jp-input-active-border-color: var(--jp-brand-color1);
|
||
--jp-input-active-box-shadow-color: rgba(19, 124, 189, 0.3);
|
||
|
||
/* General editor styles */
|
||
|
||
--jp-editor-selected-background: #d9d9d9;
|
||
--jp-editor-selected-focused-background: #d7d4f0;
|
||
--jp-editor-cursor-color: var(--jp-ui-font-color0);
|
||
|
||
/* Code mirror specific styles */
|
||
|
||
--jp-mirror-editor-keyword-color: #008000;
|
||
--jp-mirror-editor-atom-color: #88f;
|
||
--jp-mirror-editor-number-color: #080;
|
||
--jp-mirror-editor-def-color: #00f;
|
||
--jp-mirror-editor-variable-color: var(--md-grey-900);
|
||
--jp-mirror-editor-variable-2-color: rgb(0, 54, 109);
|
||
--jp-mirror-editor-variable-3-color: #085;
|
||
--jp-mirror-editor-punctuation-color: #05a;
|
||
--jp-mirror-editor-property-color: #05a;
|
||
--jp-mirror-editor-operator-color: #a2f;
|
||
--jp-mirror-editor-comment-color: #408080;
|
||
--jp-mirror-editor-string-color: #ba2121;
|
||
--jp-mirror-editor-string-2-color: #708;
|
||
--jp-mirror-editor-meta-color: #a2f;
|
||
--jp-mirror-editor-qualifier-color: #555;
|
||
--jp-mirror-editor-builtin-color: #008000;
|
||
--jp-mirror-editor-bracket-color: #997;
|
||
--jp-mirror-editor-tag-color: #170;
|
||
--jp-mirror-editor-attribute-color: #00c;
|
||
--jp-mirror-editor-header-color: blue;
|
||
--jp-mirror-editor-quote-color: #090;
|
||
--jp-mirror-editor-link-color: #00c;
|
||
--jp-mirror-editor-error-color: #f00;
|
||
--jp-mirror-editor-hr-color: #999;
|
||
|
||
/*
|
||
RTC user specific colors.
|
||
These colors are used for the cursor, username in the editor,
|
||
and the icon of the user.
|
||
*/
|
||
|
||
--jp-collaborator-color1: #ffad8e;
|
||
--jp-collaborator-color2: #dac83d;
|
||
--jp-collaborator-color3: #72dd76;
|
||
--jp-collaborator-color4: #00e4d0;
|
||
--jp-collaborator-color5: #45d4ff;
|
||
--jp-collaborator-color6: #e2b1ff;
|
||
--jp-collaborator-color7: #ff9de6;
|
||
|
||
/* Vega extension styles */
|
||
|
||
--jp-vega-background: white;
|
||
|
||
/* Sidebar-related styles */
|
||
|
||
--jp-sidebar-min-width: 250px;
|
||
|
||
/* Search-related styles */
|
||
|
||
--jp-search-toggle-off-opacity: 0.5;
|
||
--jp-search-toggle-hover-opacity: 0.8;
|
||
--jp-search-toggle-on-opacity: 1;
|
||
--jp-search-selected-match-background-color: rgb(245, 200, 0);
|
||
--jp-search-selected-match-color: black;
|
||
--jp-search-unselected-match-background-color: var(
|
||
--jp-inverse-layout-color0
|
||
);
|
||
--jp-search-unselected-match-color: var(--jp-ui-inverse-font-color0);
|
||
|
||
/* Icon colors that work well with light or dark backgrounds */
|
||
--jp-icon-contrast-color0: var(--md-purple-600);
|
||
--jp-icon-contrast-color1: var(--md-green-600);
|
||
--jp-icon-contrast-color2: var(--md-pink-600);
|
||
--jp-icon-contrast-color3: var(--md-blue-600);
|
||
|
||
/* Button colors */
|
||
--jp-accept-color-normal: var(--md-blue-700);
|
||
--jp-accept-color-hover: var(--md-blue-800);
|
||
--jp-accept-color-active: var(--md-blue-900);
|
||
--jp-warn-color-normal: var(--md-red-700);
|
||
--jp-warn-color-hover: var(--md-red-800);
|
||
--jp-warn-color-active: var(--md-red-900);
|
||
--jp-reject-color-normal: var(--md-grey-600);
|
||
--jp-reject-color-hover: var(--md-grey-700);
|
||
--jp-reject-color-active: var(--md-grey-800);
|
||
|
||
/* File or activity icons and switch semantic variables */
|
||
--jp-jupyter-icon-color: #f37626;
|
||
--jp-notebook-icon-color: #f37626;
|
||
--jp-json-icon-color: var(--md-orange-700);
|
||
--jp-console-icon-background-color: var(--md-blue-700);
|
||
--jp-console-icon-color: white;
|
||
--jp-terminal-icon-background-color: var(--md-grey-800);
|
||
--jp-terminal-icon-color: var(--md-grey-200);
|
||
--jp-text-editor-icon-color: var(--md-grey-700);
|
||
--jp-inspector-icon-color: var(--md-grey-700);
|
||
--jp-switch-color: var(--md-grey-400);
|
||
--jp-switch-true-position-color: var(--md-orange-900);
|
||
}
|
||
</style>
|
||
<style type="text/css">
|
||
/* Force rendering true colors when outputing to pdf */
|
||
* {
|
||
-webkit-print-color-adjust: exact;
|
||
}
|
||
|
||
/* Misc */
|
||
a.anchor-link {
|
||
display: none;
|
||
}
|
||
|
||
/* Input area styling */
|
||
.jp-InputArea {
|
||
overflow: hidden;
|
||
}
|
||
|
||
.jp-InputArea-editor {
|
||
overflow: hidden;
|
||
}
|
||
|
||
.cm-editor.cm-s-jupyter .highlight pre {
|
||
/* weird, but --jp-code-padding defined to be 5px but 4px horizontal padding is hardcoded for pre.cm-line */
|
||
padding: var(--jp-code-padding) 4px;
|
||
margin: 0;
|
||
|
||
font-family: inherit;
|
||
font-size: inherit;
|
||
line-height: inherit;
|
||
color: inherit;
|
||
|
||
}
|
||
|
||
.jp-OutputArea-output pre {
|
||
line-height: inherit;
|
||
font-family: inherit;
|
||
}
|
||
|
||
.jp-RenderedText pre {
|
||
color: var(--jp-content-font-color1);
|
||
font-size: var(--jp-code-font-size);
|
||
}
|
||
|
||
/* Hiding the collapser by default */
|
||
.jp-Collapser {
|
||
display: none;
|
||
}
|
||
|
||
@page {
|
||
margin: 0.5in; /* Margin for each printed piece of paper */
|
||
}
|
||
|
||
@media print {
|
||
.jp-Cell-inputWrapper,
|
||
.jp-Cell-outputWrapper {
|
||
display: block;
|
||
}
|
||
}
|
||
</style>
|
||
<!-- Load mathjax -->
|
||
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
|
||
<!-- MathJax configuration -->
|
||
<script type="text/x-mathjax-config">
|
||
init_mathjax = function() {
|
||
if (window.MathJax) {
|
||
// MathJax loaded
|
||
MathJax.Hub.Config({
|
||
TeX: {
|
||
equationNumbers: {
|
||
autoNumber: "AMS",
|
||
useLabelIds: true
|
||
}
|
||
},
|
||
tex2jax: {
|
||
inlineMath: [ ['$','$'], ["\\(","\\)"] ],
|
||
displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
|
||
processEscapes: true,
|
||
processEnvironments: true
|
||
},
|
||
displayAlign: 'center',
|
||
messageStyle: 'none',
|
||
CommonHTML: {
|
||
linebreaks: {
|
||
automatic: true
|
||
}
|
||
}
|
||
});
|
||
|
||
MathJax.Hub.Queue(["Typeset", MathJax.Hub]);
|
||
}
|
||
}
|
||
init_mathjax();
|
||
</script>
|
||
<!-- End of mathjax configuration --><script type="module">
|
||
document.addEventListener("DOMContentLoaded", async () => {
|
||
const diagrams = document.querySelectorAll(".jp-Mermaid > pre.mermaid");
|
||
// do not load mermaidjs if not needed
|
||
if (!diagrams.length) {
|
||
return;
|
||
}
|
||
const mermaid = (await import("https://cdnjs.cloudflare.com/ajax/libs/mermaid/10.7.0/mermaid.esm.min.mjs")).default;
|
||
const parser = new DOMParser();
|
||
|
||
mermaid.initialize({
|
||
maxTextSize: 100000,
|
||
maxEdges: 100000,
|
||
startOnLoad: false,
|
||
fontFamily: window
|
||
.getComputedStyle(document.body)
|
||
.getPropertyValue("--jp-ui-font-family"),
|
||
theme: document.querySelector("body[data-jp-theme-light='true']")
|
||
? "default"
|
||
: "dark",
|
||
});
|
||
|
||
let _nextMermaidId = 0;
|
||
|
||
function makeMermaidImage(svg) {
|
||
const img = document.createElement("img");
|
||
const doc = parser.parseFromString(svg, "image/svg+xml");
|
||
const svgEl = doc.querySelector("svg");
|
||
const { maxWidth } = svgEl?.style || {};
|
||
const firstTitle = doc.querySelector("title");
|
||
const firstDesc = doc.querySelector("desc");
|
||
|
||
img.setAttribute("src", `data:image/svg+xml,${encodeURIComponent(svg)}`);
|
||
if (maxWidth) {
|
||
img.width = parseInt(maxWidth);
|
||
}
|
||
if (firstTitle) {
|
||
img.setAttribute("alt", firstTitle.textContent);
|
||
}
|
||
if (firstDesc) {
|
||
const caption = document.createElement("figcaption");
|
||
caption.className = "sr-only";
|
||
caption.textContent = firstDesc.textContent;
|
||
return [img, caption];
|
||
}
|
||
return [img];
|
||
}
|
||
|
||
async function makeMermaidError(text) {
|
||
let errorMessage = "";
|
||
try {
|
||
await mermaid.parse(text);
|
||
} catch (err) {
|
||
errorMessage = `${err}`;
|
||
}
|
||
|
||
const result = document.createElement("details");
|
||
result.className = 'jp-RenderedMermaid-Details';
|
||
const summary = document.createElement("summary");
|
||
summary.className = 'jp-RenderedMermaid-Summary';
|
||
const pre = document.createElement("pre");
|
||
const code = document.createElement("code");
|
||
code.innerText = text;
|
||
pre.appendChild(code);
|
||
summary.appendChild(pre);
|
||
result.appendChild(summary);
|
||
|
||
const warning = document.createElement("pre");
|
||
warning.innerText = errorMessage;
|
||
result.appendChild(warning);
|
||
return [result];
|
||
}
|
||
|
||
async function renderOneMarmaid(src) {
|
||
const id = `jp-mermaid-${_nextMermaidId++}`;
|
||
const parent = src.parentNode;
|
||
let raw = src.textContent.trim();
|
||
const el = document.createElement("div");
|
||
el.style.visibility = "hidden";
|
||
document.body.appendChild(el);
|
||
let results = null;
|
||
let output = null;
|
||
try {
|
||
let { svg } = await mermaid.render(id, raw, el);
|
||
svg = cleanMermaidSvg(svg);
|
||
results = makeMermaidImage(svg);
|
||
output = document.createElement("figure");
|
||
results.map(output.appendChild, output);
|
||
} catch (err) {
|
||
parent.classList.add("jp-mod-warning");
|
||
results = await makeMermaidError(raw);
|
||
output = results[0];
|
||
} finally {
|
||
el.remove();
|
||
}
|
||
parent.classList.add("jp-RenderedMermaid");
|
||
parent.appendChild(output);
|
||
}
|
||
|
||
|
||
/**
|
||
* Post-process to ensure mermaid diagrams contain only valid SVG and XHTML.
|
||
*/
|
||
function cleanMermaidSvg(svg) {
|
||
return svg.replace(RE_VOID_ELEMENT, replaceVoidElement);
|
||
}
|
||
|
||
|
||
/**
|
||
* A regular expression for all void elements, which may include attributes and
|
||
* a slash.
|
||
*
|
||
* @see https://developer.mozilla.org/en-US/docs/Glossary/Void_element
|
||
*
|
||
* Of these, only `<br>` is generated by Mermaid in place of `\n`,
|
||
* but _any_ "malformed" tag will break the SVG rendering entirely.
|
||
*/
|
||
const RE_VOID_ELEMENT =
|
||
/<\s*(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)\s*([^>]*?)\s*>/gi;
|
||
|
||
/**
|
||
* Ensure a void element is closed with a slash, preserving any attributes.
|
||
*/
|
||
function replaceVoidElement(match, tag, rest) {
|
||
rest = rest.trim();
|
||
if (!rest.endsWith('/')) {
|
||
rest = `${rest} /`;
|
||
}
|
||
return `<${tag} ${rest}>`;
|
||
}
|
||
|
||
void Promise.all([...diagrams].map(renderOneMarmaid));
|
||
});
|
||
</script>
|
||
<style>
|
||
.jp-Mermaid:not(.jp-RenderedMermaid) {
|
||
display: none;
|
||
}
|
||
|
||
.jp-RenderedMermaid {
|
||
overflow: auto;
|
||
display: flex;
|
||
}
|
||
|
||
.jp-RenderedMermaid.jp-mod-warning {
|
||
width: auto;
|
||
padding: 0.5em;
|
||
margin-top: 0.5em;
|
||
border: var(--jp-border-width) solid var(--jp-warn-color2);
|
||
border-radius: var(--jp-border-radius);
|
||
color: var(--jp-ui-font-color1);
|
||
font-size: var(--jp-ui-font-size1);
|
||
white-space: pre-wrap;
|
||
word-wrap: break-word;
|
||
}
|
||
|
||
.jp-RenderedMermaid figure {
|
||
margin: 0;
|
||
overflow: auto;
|
||
max-width: 100%;
|
||
}
|
||
|
||
.jp-RenderedMermaid img {
|
||
max-width: 100%;
|
||
}
|
||
|
||
.jp-RenderedMermaid-Details > pre {
|
||
margin-top: 1em;
|
||
}
|
||
|
||
.jp-RenderedMermaid-Summary {
|
||
color: var(--jp-warn-color2);
|
||
}
|
||
|
||
.jp-RenderedMermaid:not(.jp-mod-warning) pre {
|
||
display: none;
|
||
}
|
||
|
||
.jp-RenderedMermaid-Summary > pre {
|
||
display: inline-block;
|
||
white-space: normal;
|
||
}
|
||
</style>
|
||
<!-- End of mermaid configuration --></head>
|
||
<body class="jp-Notebook" data-jp-theme-light="true" data-jp-theme-name="JupyterLab Light">
|
||
<main>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=dbbb73cb-a632-4056-bbca-b483b2ad5f9c">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<h1 id="Tutorial:-Reduced-Order-Modeling-with-POD-RBF-and-POD-NN-Approaches-for-Fluid-Dynamics">Tutorial: Reduced Order Modeling with POD-RBF and POD-NN Approaches for Fluid Dynamics<a class="anchor-link" href="#Tutorial:-Reduced-Order-Modeling-with-POD-RBF-and-POD-NN-Approaches-for-Fluid-Dynamics">¶</a></h1><p><a href="https://colab.research.google.com/github/mathLab/PINA/blob/master/tutorials/tutorial8/tutorial.ipynb"><img alt="Open In Colab" src="https://colab.research.google.com/assets/colab-badge.svg"/></a></p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=84508f26-1ba6-4b59-926b-3e340d632a15">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<p>The goal of this tutorial is to demonstrate how to use the <strong>PINA</strong> library to apply a reduced-order modeling technique, as outlined in [1]. These methods share several similarities with machine learning approaches, as they focus on predicting the solution to differential equations, often parametric PDEs, in real-time.</p>
|
||
<p>In particular, we will utilize <strong>Proper Orthogonal Decomposition</strong> (POD) in combination with two different regression techniques: <strong>Radial Basis Function Interpolation</strong> (POD-RBF) and <strong>Neural Networks</strong>(POD-NN) [2]. This process involves reducing the dimensionality of the parametric solution manifold through POD and then approximating it in the reduced space using a regression model (either a neural network or an RBF interpolation). In this example, we'll use a simple multilayer perceptron (MLP) as the regression model, but various architectures can be easily substituted.</p>
|
||
<p>Let's start with the necessary imports.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=00d1027d-13f2-4619-9ff7-a740568f13ff">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [1]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="c1">## routine needed to run the notebook on Google Colab</span>
|
||
<span class="k">try</span><span class="p">:</span>
|
||
<span class="kn">import</span><span class="w"> </span><span class="nn">google.colab</span>
|
||
|
||
<span class="n">IN_COLAB</span> <span class="o">=</span> <span class="kc">True</span>
|
||
<span class="k">except</span><span class="p">:</span>
|
||
<span class="n">IN_COLAB</span> <span class="o">=</span> <span class="kc">False</span>
|
||
<span class="k">if</span> <span class="n">IN_COLAB</span><span class="p">:</span>
|
||
<span class="o">!</span>pip<span class="w"> </span>install<span class="w"> </span><span class="s2">"pina-mathlab[tutorial]"</span>
|
||
|
||
|
||
<span class="kn">import</span><span class="w"> </span><span class="nn">matplotlib</span>
|
||
<span class="kn">import</span><span class="w"> </span><span class="nn">matplotlib.pyplot</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">plt</span>
|
||
<span class="kn">import</span><span class="w"> </span><span class="nn">torch</span>
|
||
<span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>
|
||
<span class="kn">import</span><span class="w"> </span><span class="nn">warnings</span>
|
||
|
||
<span class="kn">from</span><span class="w"> </span><span class="nn">pina</span><span class="w"> </span><span class="kn">import</span> <span class="n">Trainer</span>
|
||
<span class="kn">from</span><span class="w"> </span><span class="nn">pina.model</span><span class="w"> </span><span class="kn">import</span> <span class="n">FeedForward</span>
|
||
<span class="kn">from</span><span class="w"> </span><span class="nn">pina.solver</span><span class="w"> </span><span class="kn">import</span> <span class="n">SupervisedSolver</span>
|
||
<span class="kn">from</span><span class="w"> </span><span class="nn">pina.optim</span><span class="w"> </span><span class="kn">import</span> <span class="n">TorchOptimizer</span>
|
||
<span class="kn">from</span><span class="w"> </span><span class="nn">pina.problem.zoo</span><span class="w"> </span><span class="kn">import</span> <span class="n">SupervisedProblem</span>
|
||
<span class="kn">from</span><span class="w"> </span><span class="nn">pina.model.block</span><span class="w"> </span><span class="kn">import</span> <span class="n">PODBlock</span><span class="p">,</span> <span class="n">RBFBlock</span>
|
||
|
||
<span class="n">warnings</span><span class="o">.</span><span class="n">filterwarnings</span><span class="p">(</span><span class="s2">"ignore"</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=5138afdf-bff6-46bf-b423-a22673190687">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<p>We utilize the <a href="https://github.com/mathLab/Smithers">Smithers</a> library to gather the parametric snapshots. Specifically, we use the <code>NavierStokesDataset</code> class, which contains a collection of parametric solutions to the Navier-Stokes equations in a 2D L-shaped domain. The parameter in this case is the inflow velocity.</p>
|
||
<p>The dataset comprises 500 snapshots of the velocity fields (along the $x$, $y$ axes, and the magnitude), as well as the pressure fields, along with their corresponding parameter values.</p>
|
||
<p>To visually inspect the snapshots, let's also plot the data points alongside the reference solution. This reference solution represents the expected output of our model.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=2c55d972-09a9-41de-9400-ba051c28cdcb">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [2]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="kn">from</span><span class="w"> </span><span class="nn">smithers.dataset</span><span class="w"> </span><span class="kn">import</span> <span class="n">NavierStokesDataset</span>
|
||
|
||
<span class="n">dataset</span> <span class="o">=</span> <span class="n">NavierStokesDataset</span><span class="p">()</span>
|
||
|
||
<span class="n">fig</span><span class="p">,</span> <span class="n">axs</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">4</span><span class="p">,</span> <span class="n">figsize</span><span class="o">=</span><span class="p">(</span><span class="mi">14</span><span class="p">,</span> <span class="mi">3</span><span class="p">))</span>
|
||
<span class="k">for</span> <span class="n">ax</span><span class="p">,</span> <span class="n">p</span><span class="p">,</span> <span class="n">u</span> <span class="ow">in</span> <span class="nb">zip</span><span class="p">(</span><span class="n">axs</span><span class="p">,</span> <span class="n">dataset</span><span class="o">.</span><span class="n">params</span><span class="p">[:</span><span class="mi">4</span><span class="p">],</span> <span class="n">dataset</span><span class="o">.</span><span class="n">snapshots</span><span class="p">[</span><span class="s2">"mag(v)"</span><span class="p">][:</span><span class="mi">4</span><span class="p">]):</span>
|
||
<span class="n">ax</span><span class="o">.</span><span class="n">tricontourf</span><span class="p">(</span><span class="n">dataset</span><span class="o">.</span><span class="n">triang</span><span class="p">,</span> <span class="n">u</span><span class="p">,</span> <span class="n">levels</span><span class="o">=</span><span class="mi">16</span><span class="p">)</span>
|
||
<span class="n">ax</span><span class="o">.</span><span class="n">set_title</span><span class="p">(</span><span class="sa">f</span><span class="s2">"$\mu$ = </span><span class="si">{</span><span class="n">p</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="si">:</span><span class="s2">.2f</span><span class="si">}</span><span class="s2">"</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell-outputWrapper">
|
||
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
|
||
</div>
|
||
<div class="jp-OutputArea jp-Cell-outputArea">
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jp-RenderedImage jp-OutputArea-output" tabindex="0">
|
||
<img alt="No description has been provided for this image" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABGMAAAEqCAYAAACxwp0HAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8ekN5oAAAACXBIWXMAAA9hAAAPYQGoP6dpAABscklEQVR4nO3deZxdZX0/8M9MZss62UhCJGEVkACpGzSoIBIRbAHFBS1WoLgHkaJtX+hPA1QIttZdEVsVfVUQsEVcCghIgiIBZDOArCIEsi8zWWfJzPn9EZ+bc88923POs57zeb9e86qZuTP3Dsl8Ot/PeZ7ntAVBEICIiIiIiIiIiIxot/0CiIiIiIiIiIjqhGUMEREREREREZFBLGOIiIiIiIiIiAxiGUNEREREREREZBDLGCIiIiIiIiIig1jGEBEREREREREZxDKGiIiIiIiIiMggljFERERERERERAaxjCEiIiIiIiIiMohlDBERERERERGRQSxjiIiIiIiIiIgMYhlDhS1duhRtbW2xb8uXL2887oEHHsBJJ52ESZMmYeLEiTjxxBPx8MMPK32Os88+O/FxbW1teOmll1R/+0RkQN4MAICnn34a73nPe7DPPvtg3LhxOPTQQ3HppZdix44dqc9x//3347zzzsO8efMwfvx4zJ07F+9+97vx1FNPxT6+6PMQkbsee+wxvOtd78IBBxyAcePGYfr06Tj22GPx85//PPXzLrvsMrS1teHwww/P9TwymVb2uYjIPXl/5ygz28j+XgMADz74IE499VRMnToV48aNw+GHH46vfe1ryr5vitdh+wWQ/84//3y89rWvbXrfQQcdBGD3D/brX/96zJkzB4sXL8bo6Ci+9a1v4bjjjsN9992HQw45pPRzAMCHP/xhLFy4sOnjQRDgIx/5CPbbbz+87GUvK/KtEZEjsjJg5cqVOOqoo9Db24vzzjsPU6dOxT333IPFixfjgQcewE033ZT4tb/whS/g7rvvxrve9S4ceeSRWLNmDb7xjW/gVa96FZYvX940+JR5HiJy1/PPP4+tW7firLPOwuzZs7Fjxw78z//8D0499VRcddVV+NCHPtTyOS+++CIuv/xyjB8/Xvr5sjJN5XMRkTvy/s5RZraR+b0GAH71q1/hlFNOwStf+Up89rOfxYQJE/Dss8/ixRdfVP8fgJoFRAXdeeedAYDg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vx377LMPDj30UOmvn/Qcwo9+9CNMmDABp556aqGvTVR3PubM2rVrMWXKlJbHDQ8PA0DmHUsGBgZwyimn4KmnnsLtt9+Oww47LPZxZZ+HiPbwIWvEdur+/n7s2LEDo6OjOP/883H++ee3PHb//ffHJz7xiUJ3PYpm2ksvvaTtuYjqxrWsyfs7h1Bktsn7HK9+9atx2223NQ7wFUQJzC2SerGM8ci6deuwfv36xnkrwte+9jVs2LAh1yn7Kvc8rl+/vuUH9JFHHsHPfvYznHzyyWhvj79Z13XXXYf7778fX/ziF5ses2PHDrzwwguYPn1646Rv2edYv349br/9drz3ve/FuHHjcn2fRLSHrzlz8MEH41e/+hWeeuqpphV31157Ldrb25v2g0ezZmRkBGeccQbuuece3HTTTViwYEHi65F5HiJK5lrWrFu3rnElWBgeHsYPf/hDjB07FocddhgGBgZw4403tnzu//t//w9bt27FV7/6VRx44IGN95f5vebwww+Xei4iiuda1sj8zgHkm23K/F7z7ne/G1dccQW++93v4k1velPj/f/1X/+Fjo6Oxl0kSQ+WMR5ZsWIFAOBXv/oVPvaxj+HQQw/F8uXLceuttwIAHnjgAdx77704+uijE7/GlClTlC2hP+OMMzB27Fgcc8wxmDFjBh5//HF85zvfwbhx43DFFVcAAO666y5ceumlOPHEEzFt2jQsX74c3//+93HSSSfhE5/4RNPXu++++3D88cdj8eLFuPjii3M/R9h1112HXbt2cYsSUUE+5gwA/NM//RNuvvlmvOENb8B5552HadOm4Re/+AVuvvlmfOADH2hamhvNmk9+8pP42c9+hlNOOQWbNm3Cf//3fze9hve9732FnoeIkrmWNR/+8IexZcsWHHvssXjZy16GNWvW4Ec/+hGeeOIJ/Md//AcmTJiACRMm4G1ve1vL54rVKdGPlfm9Zvr06VLPRUTxXMsamd85gHyzTZnfa175ylfiH/7hH/C9730Pu3btwnHHHYelS5fihhtuwEUXXcTfa3SzfWgN5fflL385GDNmTPDLX/4yOPDAA4Oenp7gzW9+c7BixYrgwAMPDPbZZ5/ggQceMPZ6vvrVrwZHHXVUMHXq1KCjoyPYe++9g/e9733B008/3XjMM888E5x44onB9OnTg+7u7uDQQw8NlixZ0nQYnXDn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mDVqGVkZM336dIwZM6blROK1a9di1qxZJl6CEZMnT8bBBx+MZ555xvZLUUb8/VT97+6AAw7A9OnTvfi7O++88/CLX/wCd955J/bZZ5/G+2fNmoWhoSH09fU1Pb5qf1dpmDX+Yta4h1mTjFnjL2aNe5g1yZg1/mLWuMfFrDFSxnR1deHVr3417rjjjsb7RkdHcccdd2DBggUmXoIR27Ztw7PPPou9997b9ktRZv/998esWbOa/u62bNmCe++9t1J/dy+++CI2btzo9N9dEAQ477zzcOONN+LXv/419t9//6aPv/rVr0ZnZ2fT39WTTz6JF154oVJ/V2mYNf5i1riDWZONWeMvZo07mDXZmDX+Yta4w+ms0Xo8cMiPf/zjoLu7O7j66quDxx9/PPjQhz4UTJ48OVizZo2pl6DcJz/5yWDp0qXBc889F9x9993BwoULg+nTpwfr1q2z/dKkbN26NXjooYeChx56KAAQfOlLXwoeeuih4Pnnnw+CIAiuuOKKYPLkycFNN90U/OEPfwhOO+20YP/99w927txp+ZUnS/uetm7dGnzqU58K7rnnnuC5554Lbr/99uBVr3pV8PKXvzwYGBiw/dITffSjHw16e3uDpUuXBqtXr2687dixo/GYj3zkI8HcuXODX//618Hvf//7YMGCBcGCBQssvmrzmDXuYtYwa6qEWeMuZg2zpkqYNe5i1jBryjJWxgRBEHz9618P5s6dG3R1dQVHHXVUsHz5cpNPr9wZZ5wR7L333kFXV1fwspe9LDjjjDOCZ555xvbLknbnnXcGAFrezjrrrCAIdt+a7bOf/Wwwc+bMoLu7OzjhhBOCJ5980u6LzpD2Pe3YsSM48cQTg7322ivo7OwM9t133+CDH/yg8/9PLe77ARB8//vfbzxm586dwcc+9rFgypQpwbhx44K3v/3twerVq+29aEuYNW5i1jBrqoZZ4yZmDbOmapg1bmLWMGvKavvLCyQiIiIiIiIiIgOMnBlDRERERERERES7sYwhIiIiIiIiIjKIZQwRERERERERkUEsY4iIiIiIiIiIDGIZQ0RERERERERkEMsYIiIiIiIiIiKDWMYQERERERERERnEMoaIiIiIiIiIyCCWMUREREREREREBrGMISIiIiIiIiIyiGUMEREREREREZFBLGOIiIiIiIiIiAz6//Gbdf0ufq52AAAAAElFTkSuQmCC"/>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=bef4d79d">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<p>The <em>snapshots</em>—i.e., the numerical solutions computed for several parameters—and the corresponding parameters are the only data we need to train the model, enabling us to predict the solution for any new test parameter. To properly validate the accuracy, we will split the 500 snapshots into the training dataset (90% of the original data) and the testing dataset (the remaining 10%) inside the <code>Trainer</code>.</p>
|
||
<p>It is now time to define the problem!</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=bd081bcd-192f-4370-a013-9b73050b5383">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [3]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="n">u</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">tensor</span><span class="p">(</span><span class="n">dataset</span><span class="o">.</span><span class="n">snapshots</span><span class="p">[</span><span class="s2">"mag(v)"</span><span class="p">])</span><span class="o">.</span><span class="n">float</span><span class="p">()</span>
|
||
<span class="n">p</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">tensor</span><span class="p">(</span><span class="n">dataset</span><span class="o">.</span><span class="n">params</span><span class="p">)</span><span class="o">.</span><span class="n">float</span><span class="p">()</span>
|
||
<span class="n">problem</span> <span class="o">=</span> <span class="n">SupervisedProblem</span><span class="p">(</span><span class="n">input_</span><span class="o">=</span><span class="n">p</span><span class="p">,</span> <span class="n">output_</span><span class="o">=</span><span class="n">u</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=3b255526">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<p>We can then build a <code>POD-NN</code> model (using an MLP architecture as approximation) and compare it with a <code>POD-RBF</code> model (using a Radial Basis Function interpolation as approximation).</p>
|
||
<h2 id="POD-NN-reduced-order-model">POD-NN reduced order model<a class="anchor-link" href="#POD-NN-reduced-order-model">¶</a></h2><p>Let's build the <code>PODNN</code> class</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=2edc981a">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">PODNN</span><span class="p">(</span><span class="n">torch</span><span class="o">.</span><span class="n">nn</span><span class="o">.</span><span class="n">Module</span><span class="p">):</span>
|
||
<span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">pod_rank</span><span class="p">,</span> <span class="n">layers</span><span class="p">,</span> <span class="n">func</span><span class="p">):</span>
|
||
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__init__</span><span class="p">()</span>
|
||
<span class="bp">self</span><span class="o">.</span><span class="n">pod</span> <span class="o">=</span> <span class="n">PODBlock</span><span class="p">(</span><span class="n">pod_rank</span><span class="p">)</span>
|
||
<span class="bp">self</span><span class="o">.</span><span class="n">nn</span> <span class="o">=</span> <span class="n">FeedForward</span><span class="p">(</span>
|
||
<span class="n">input_dimensions</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span>
|
||
<span class="n">output_dimensions</span><span class="o">=</span><span class="n">pod_rank</span><span class="p">,</span>
|
||
<span class="n">layers</span><span class="o">=</span><span class="n">layers</span><span class="p">,</span>
|
||
<span class="n">func</span><span class="o">=</span><span class="n">func</span><span class="p">,</span>
|
||
<span class="p">)</span>
|
||
|
||
<span class="k">def</span><span class="w"> </span><span class="nf">forward</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">x</span><span class="p">):</span>
|
||
<span class="n">coefficents</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">nn</span><span class="p">(</span><span class="n">x</span><span class="p">)</span>
|
||
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">pod</span><span class="o">.</span><span class="n">expand</span><span class="p">(</span><span class="n">coefficents</span><span class="p">)</span>
|
||
|
||
<span class="k">def</span><span class="w"> </span><span class="nf">fit_pod</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">x</span><span class="p">):</span>
|
||
<span class="bp">self</span><span class="o">.</span><span class="n">pod</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">x</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=9295214e">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<p>We highlight that the POD modes are directly computed by means of the singular value decomposition (SVD) over the input data, and not trained using the backpropagation approach. Only the weights of the MLP are actually trained during the optimization loop.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=2166dc87">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [5]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="n">pod_nn</span> <span class="o">=</span> <span class="n">PODNN</span><span class="p">(</span><span class="n">pod_rank</span><span class="o">=</span><span class="mi">20</span><span class="p">,</span> <span class="n">layers</span><span class="o">=</span><span class="p">[</span><span class="mi">10</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">10</span><span class="p">],</span> <span class="n">func</span><span class="o">=</span><span class="n">torch</span><span class="o">.</span><span class="n">nn</span><span class="o">.</span><span class="n">Tanh</span><span class="p">)</span>
|
||
<span class="n">pod_nn_stokes</span> <span class="o">=</span> <span class="n">SupervisedSolver</span><span class="p">(</span>
|
||
<span class="n">problem</span><span class="o">=</span><span class="n">problem</span><span class="p">,</span>
|
||
<span class="n">model</span><span class="o">=</span><span class="n">pod_nn</span><span class="p">,</span>
|
||
<span class="n">optimizer</span><span class="o">=</span><span class="n">TorchOptimizer</span><span class="p">(</span><span class="n">torch</span><span class="o">.</span><span class="n">optim</span><span class="o">.</span><span class="n">Adam</span><span class="p">,</span> <span class="n">lr</span><span class="o">=</span><span class="mf">0.0001</span><span class="p">),</span>
|
||
<span class="n">use_lt</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
|
||
<span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=9bc5c5e8">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<p>Before starting, we need to fit the POD basis on the training dataset. This can be easily done in <strong>PINA</strong> as well:</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=1f229d30">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="n">trainer</span> <span class="o">=</span> <span class="n">Trainer</span><span class="p">(</span>
|
||
<span class="n">solver</span><span class="o">=</span><span class="n">pod_nn_stokes</span><span class="p">,</span>
|
||
<span class="n">max_epochs</span><span class="o">=</span><span class="mi">1000</span><span class="p">,</span>
|
||
<span class="n">batch_size</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
|
||
<span class="n">accelerator</span><span class="o">=</span><span class="s2">"cpu"</span><span class="p">,</span>
|
||
<span class="n">train_size</span><span class="o">=</span><span class="mf">0.9</span><span class="p">,</span>
|
||
<span class="n">val_size</span><span class="o">=</span><span class="mf">0.0</span><span class="p">,</span>
|
||
<span class="n">test_size</span><span class="o">=</span><span class="mf">0.1</span><span class="p">,</span>
|
||
<span class="p">)</span>
|
||
|
||
<span class="c1"># fit the pod basis</span>
|
||
<span class="n">trainer</span><span class="o">.</span><span class="n">data_module</span><span class="o">.</span><span class="n">setup</span><span class="p">(</span><span class="s2">"fit"</span><span class="p">)</span> <span class="c1"># set up the dataset</span>
|
||
<span class="n">train_data</span> <span class="o">=</span> <span class="n">trainer</span><span class="o">.</span><span class="n">data_module</span><span class="o">.</span><span class="n">train_dataset</span><span class="o">.</span><span class="n">get_all_data</span><span class="p">()</span>
|
||
<span class="n">x_train</span> <span class="o">=</span> <span class="n">train_data</span><span class="p">[</span><span class="s2">"data"</span><span class="p">][</span><span class="s2">"target"</span><span class="p">]</span> <span class="c1"># extract data for training</span>
|
||
<span class="n">pod_nn</span><span class="o">.</span><span class="n">fit_pod</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="n">x_train</span><span class="p">)</span>
|
||
|
||
<span class="c1"># now train</span>
|
||
<span class="n">trainer</span><span class="o">.</span><span class="n">train</span><span class="p">()</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell-outputWrapper">
|
||
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
|
||
</div>
|
||
<div class="jp-OutputArea jp-Cell-outputArea">
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="application/vnd.jupyter.stderr" tabindex="0">
|
||
<pre>Using default `ModelCheckpoint`. Consider installing `litmodels` package to enable `LitModelCheckpoint` for automatic upload to the Lightning model registry.
|
||
</pre>
|
||
</div>
|
||
</div>
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="application/vnd.jupyter.stderr" tabindex="0">
|
||
<pre>GPU available: False, used: False
|
||
</pre>
|
||
</div>
|
||
</div>
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="application/vnd.jupyter.stderr" tabindex="0">
|
||
<pre>TPU available: False, using: 0 TPU cores
|
||
</pre>
|
||
</div>
|
||
</div>
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="application/vnd.jupyter.stderr" tabindex="0">
|
||
<pre>HPU available: False, using: 0 HPUs
|
||
</pre>
|
||
</div>
|
||
</div>
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="application/vnd.jupyter.stderr" tabindex="0">
|
||
<pre>
|
||
| Name | Type | Params | Mode
|
||
----------------------------------------------------
|
||
0 | _pina_models | ModuleList | 460 | train
|
||
1 | _loss_fn | MSELoss | 0 | train
|
||
----------------------------------------------------
|
||
460 Trainable params
|
||
0 Non-trainable params
|
||
460 Total params
|
||
0.002 Total estimated model params size (MB)
|
||
13 Modules in train mode
|
||
0 Modules in eval mode
|
||
</pre>
|
||
</div>
|
||
</div>
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jupyter-widgets jp-OutputArea-output" id="b74039df-7abf-4600-8ebd-93677188e073" tabindex="0">
|
||
<script type="text/javascript">
|
||
var element = document.getElementById('b74039df-7abf-4600-8ebd-93677188e073');
|
||
</script>
|
||
<script type="application/vnd.jupyter.widget-view+json">
|
||
{"version_major": 2, "version_minor": 0, "model_id": "0e1ab09a2fd245549ed2b87e13c77649"}
|
||
</script>
|
||
</div>
|
||
</div>
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="application/vnd.jupyter.stderr" tabindex="0">
|
||
<pre>`Trainer.fit` stopped: `max_epochs=1000` reached.
|
||
</pre>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=659e7b25">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<p>Done! Now that the computationally expensive part is over, we can load the model in the future to infer new parameters (simply by loading the checkpoint file automatically created by <code>Lightning</code>) or test its performances. We measure the relative error for both the training and test datasets, printing the mean error.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=26c91385-5cd8-400a-90db-1c9f2afdf110">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [7]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="c1"># extract train and test data</span>
|
||
<span class="n">trainer</span><span class="o">.</span><span class="n">data_module</span><span class="o">.</span><span class="n">setup</span><span class="p">(</span><span class="s2">"test"</span><span class="p">)</span> <span class="c1"># set up the dataset</span>
|
||
<span class="n">p_train</span> <span class="o">=</span> <span class="n">trainer</span><span class="o">.</span><span class="n">data_module</span><span class="o">.</span><span class="n">train_dataset</span><span class="o">.</span><span class="n">conditions_dict</span><span class="p">[</span><span class="s2">"data"</span><span class="p">][</span><span class="s2">"input"</span><span class="p">]</span>
|
||
<span class="n">u_train</span> <span class="o">=</span> <span class="n">trainer</span><span class="o">.</span><span class="n">data_module</span><span class="o">.</span><span class="n">train_dataset</span><span class="o">.</span><span class="n">conditions_dict</span><span class="p">[</span><span class="s2">"data"</span><span class="p">][</span><span class="s2">"target"</span><span class="p">]</span>
|
||
<span class="n">p_test</span> <span class="o">=</span> <span class="n">trainer</span><span class="o">.</span><span class="n">data_module</span><span class="o">.</span><span class="n">test_dataset</span><span class="o">.</span><span class="n">conditions_dict</span><span class="p">[</span><span class="s2">"data"</span><span class="p">][</span><span class="s2">"input"</span><span class="p">]</span>
|
||
<span class="n">u_test</span> <span class="o">=</span> <span class="n">trainer</span><span class="o">.</span><span class="n">data_module</span><span class="o">.</span><span class="n">test_dataset</span><span class="o">.</span><span class="n">conditions_dict</span><span class="p">[</span><span class="s2">"data"</span><span class="p">][</span><span class="s2">"target"</span><span class="p">]</span>
|
||
|
||
<span class="c1"># compute statistics</span>
|
||
<span class="n">u_test_nn</span> <span class="o">=</span> <span class="n">pod_nn_stokes</span><span class="p">(</span><span class="n">p_test</span><span class="p">)</span>
|
||
<span class="n">u_train_nn</span> <span class="o">=</span> <span class="n">pod_nn_stokes</span><span class="p">(</span><span class="n">p_train</span><span class="p">)</span>
|
||
|
||
<span class="n">relative_error_train</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">norm</span><span class="p">(</span><span class="n">u_train_nn</span> <span class="o">-</span> <span class="n">u_train</span><span class="p">)</span> <span class="o">/</span> <span class="n">torch</span><span class="o">.</span><span class="n">norm</span><span class="p">(</span><span class="n">u_train</span><span class="p">)</span>
|
||
<span class="n">relative_error_test</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">norm</span><span class="p">(</span><span class="n">u_test_nn</span> <span class="o">-</span> <span class="n">u_test</span><span class="p">)</span> <span class="o">/</span> <span class="n">torch</span><span class="o">.</span><span class="n">norm</span><span class="p">(</span><span class="n">u_test</span><span class="p">)</span>
|
||
|
||
<span class="nb">print</span><span class="p">(</span><span class="s2">"Error summary for POD-NN model:"</span><span class="p">)</span>
|
||
<span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">" Train: </span><span class="si">{</span><span class="n">relative_error_train</span><span class="o">.</span><span class="n">item</span><span class="p">()</span><span class="si">:</span><span class="s2">e</span><span class="si">}</span><span class="s2">"</span><span class="p">)</span>
|
||
<span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">" Test: </span><span class="si">{</span><span class="n">relative_error_test</span><span class="o">.</span><span class="n">item</span><span class="p">()</span><span class="si">:</span><span class="s2">e</span><span class="si">}</span><span class="s2">"</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell-outputWrapper">
|
||
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
|
||
</div>
|
||
<div class="jp-OutputArea jp-Cell-outputArea">
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
|
||
<pre>Error summary for POD-NN model:
|
||
Train: 2.116468e-01
|
||
Test: 2.052677e-01
|
||
</pre>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=352ac702">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<h2 id="POD-RBF-Reduced-Order-Model">POD-RBF Reduced Order Model<a class="anchor-link" href="#POD-RBF-Reduced-Order-Model">¶</a></h2><p>Next, we define the model we want to use, incorporating the <code>PODBlock</code> and <code>RBFBlock</code> objects.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=0bd2c30c">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [8]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">PODRBF</span><span class="p">(</span><span class="n">torch</span><span class="o">.</span><span class="n">nn</span><span class="o">.</span><span class="n">Module</span><span class="p">):</span>
|
||
<span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">pod_rank</span><span class="p">,</span> <span class="n">rbf_kernel</span><span class="p">):</span>
|
||
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__init__</span><span class="p">()</span>
|
||
<span class="bp">self</span><span class="o">.</span><span class="n">pod</span> <span class="o">=</span> <span class="n">PODBlock</span><span class="p">(</span><span class="n">pod_rank</span><span class="p">)</span>
|
||
<span class="bp">self</span><span class="o">.</span><span class="n">rbf</span> <span class="o">=</span> <span class="n">RBFBlock</span><span class="p">(</span><span class="n">kernel</span><span class="o">=</span><span class="n">rbf_kernel</span><span class="p">)</span>
|
||
|
||
<span class="k">def</span><span class="w"> </span><span class="nf">forward</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">x</span><span class="p">):</span>
|
||
<span class="n">coefficents</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">rbf</span><span class="p">(</span><span class="n">x</span><span class="p">)</span>
|
||
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">pod</span><span class="o">.</span><span class="n">expand</span><span class="p">(</span><span class="n">coefficents</span><span class="p">)</span>
|
||
|
||
<span class="k">def</span><span class="w"> </span><span class="nf">fit</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">p</span><span class="p">,</span> <span class="n">x</span><span class="p">):</span>
|
||
<span class="bp">self</span><span class="o">.</span><span class="n">pod</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">x</span><span class="p">)</span>
|
||
<span class="bp">self</span><span class="o">.</span><span class="n">rbf</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">p</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">pod</span><span class="o">.</span><span class="n">reduce</span><span class="p">(</span><span class="n">x</span><span class="p">))</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=4d2551ff">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<p>We can now fit the model and use it to predict the required field for unseen parameter values. Note that this model does not require a <code>Trainer</code> since it does not include any neural networks or learnable parameters.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs" id="cell-id=af0a7f9b">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [9]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="n">pod_rbf</span> <span class="o">=</span> <span class="n">PODRBF</span><span class="p">(</span><span class="n">pod_rank</span><span class="o">=</span><span class="mi">20</span><span class="p">,</span> <span class="n">rbf_kernel</span><span class="o">=</span><span class="s2">"thin_plate_spline"</span><span class="p">)</span>
|
||
<span class="n">pod_rbf</span><span class="o">.</span><span class="n">fit</span><span class="p">(</span><span class="n">p_train</span><span class="p">,</span> <span class="n">u_train</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=6cd5df5f">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<p>Compute errors</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=41a27834">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [10]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="n">u_test_rbf</span> <span class="o">=</span> <span class="n">pod_rbf</span><span class="p">(</span><span class="n">p_test</span><span class="p">)</span>
|
||
<span class="n">u_train_rbf</span> <span class="o">=</span> <span class="n">pod_rbf</span><span class="p">(</span><span class="n">p_train</span><span class="p">)</span>
|
||
|
||
<span class="n">relative_error_train</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">norm</span><span class="p">(</span><span class="n">u_train_rbf</span> <span class="o">-</span> <span class="n">u_train</span><span class="p">)</span> <span class="o">/</span> <span class="n">torch</span><span class="o">.</span><span class="n">norm</span><span class="p">(</span><span class="n">u_train</span><span class="p">)</span>
|
||
<span class="n">relative_error_test</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">norm</span><span class="p">(</span><span class="n">u_test_rbf</span> <span class="o">-</span> <span class="n">u_test</span><span class="p">)</span> <span class="o">/</span> <span class="n">torch</span><span class="o">.</span><span class="n">norm</span><span class="p">(</span><span class="n">u_test</span><span class="p">)</span>
|
||
|
||
<span class="nb">print</span><span class="p">(</span><span class="s2">"Error summary for POD-RBF model:"</span><span class="p">)</span>
|
||
<span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">" Train: </span><span class="si">{</span><span class="n">relative_error_train</span><span class="o">.</span><span class="n">item</span><span class="p">()</span><span class="si">:</span><span class="s2">e</span><span class="si">}</span><span class="s2">"</span><span class="p">)</span>
|
||
<span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">" Test: </span><span class="si">{</span><span class="n">relative_error_test</span><span class="o">.</span><span class="n">item</span><span class="p">()</span><span class="si">:</span><span class="s2">e</span><span class="si">}</span><span class="s2">"</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell-outputWrapper">
|
||
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
|
||
</div>
|
||
<div class="jp-OutputArea jp-Cell-outputArea">
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain" tabindex="0">
|
||
<pre>Error summary for POD-RBF model:
|
||
Train: 6.375800e-05
|
||
Test: 6.029891e-05
|
||
</pre>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=a0a14fdc">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<h2 id="POD-RBF-vs-POD-NN">POD-RBF vs POD-NN<a class="anchor-link" href="#POD-RBF-vs-POD-NN">¶</a></h2><p>We can compare the solutions predicted by the <code>POD-RBF</code> and the <code>POD-NN</code> models with the original reference solution. By plotting these predicted solutions against the true solution, we can observe how each model performs.</p>
|
||
<h3 id="Observations:">Observations:<a class="anchor-link" href="#Observations:">¶</a></h3><ul>
|
||
<li><strong>POD-RBF</strong>: The solution predicted by the <code>POD-RBF</code> model typically offers a smooth approximation for the parametric solution, as RBF interpolation is well-suited for capturing smooth variations.</li>
|
||
<li><strong>POD-NN</strong>: The <code>POD-NN</code> model, while more flexible due to the neural network architecture, may show some discrepancies—especially for low velocities or in regions where the training data is sparse. However, with longer training times and adjustments in the network architecture, we can improve the predictions.</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell" id="cell-id=ed8bf2ce-9208-4395-9a64-42ac96006bc3">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea">
|
||
<div class="jp-InputPrompt jp-InputArea-prompt">In [11]:</div>
|
||
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
|
||
<div class="cm-editor cm-s-jupyter">
|
||
<div class="highlight hl-ipython3"><pre><span></span><span class="n">idx</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">randint</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">u_test</span><span class="p">),</span> <span class="p">(</span><span class="mi">4</span><span class="p">,))</span>
|
||
<span class="n">u_idx_rbf</span> <span class="o">=</span> <span class="n">pod_rbf</span><span class="p">(</span><span class="n">p_test</span><span class="p">[</span><span class="n">idx</span><span class="p">])</span>
|
||
<span class="n">u_idx_nn</span> <span class="o">=</span> <span class="n">pod_nn_stokes</span><span class="p">(</span><span class="n">p_test</span><span class="p">[</span><span class="n">idx</span><span class="p">])</span>
|
||
|
||
|
||
<span class="n">fig</span><span class="p">,</span> <span class="n">axs</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">4</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="n">figsize</span><span class="o">=</span><span class="p">(</span><span class="mi">14</span><span class="p">,</span> <span class="mi">9</span><span class="p">))</span>
|
||
|
||
<span class="n">relative_error_rbf</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">abs</span><span class="p">(</span><span class="n">u_test</span><span class="p">[</span><span class="n">idx</span><span class="p">]</span> <span class="o">-</span> <span class="n">u_idx_rbf</span><span class="o">.</span><span class="n">detach</span><span class="p">())</span>
|
||
<span class="n">relative_error_rbf</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">where</span><span class="p">(</span>
|
||
<span class="n">u_test</span><span class="p">[</span><span class="n">idx</span><span class="p">]</span> <span class="o"><</span> <span class="mf">1e-7</span><span class="p">,</span> <span class="mf">1e-7</span><span class="p">,</span> <span class="n">relative_error_rbf</span> <span class="o">/</span> <span class="n">u_test</span><span class="p">[</span><span class="n">idx</span><span class="p">]</span>
|
||
<span class="p">)</span>
|
||
|
||
<span class="n">relative_error_nn</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">abs</span><span class="p">(</span><span class="n">u_test</span><span class="p">[</span><span class="n">idx</span><span class="p">]</span> <span class="o">-</span> <span class="n">u_idx_nn</span><span class="o">.</span><span class="n">detach</span><span class="p">())</span>
|
||
<span class="n">relative_error_nn</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">where</span><span class="p">(</span>
|
||
<span class="n">u_test</span><span class="p">[</span><span class="n">idx</span><span class="p">]</span> <span class="o"><</span> <span class="mf">1e-7</span><span class="p">,</span> <span class="mf">1e-7</span><span class="p">,</span> <span class="n">relative_error_nn</span> <span class="o">/</span> <span class="n">u_test</span><span class="p">[</span><span class="n">idx</span><span class="p">]</span>
|
||
<span class="p">)</span>
|
||
|
||
<span class="k">for</span> <span class="n">i</span><span class="p">,</span> <span class="p">(</span><span class="n">idx_</span><span class="p">,</span> <span class="n">rbf_</span><span class="p">,</span> <span class="n">nn_</span><span class="p">,</span> <span class="n">rbf_err_</span><span class="p">,</span> <span class="n">nn_err_</span><span class="p">)</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span>
|
||
<span class="nb">zip</span><span class="p">(</span><span class="n">idx</span><span class="p">,</span> <span class="n">u_idx_rbf</span><span class="p">,</span> <span class="n">u_idx_nn</span><span class="p">,</span> <span class="n">relative_error_rbf</span><span class="p">,</span> <span class="n">relative_error_nn</span><span class="p">)</span>
|
||
<span class="p">):</span>
|
||
|
||
<span class="n">axs</span><span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">set_title</span><span class="p">(</span><span class="sa">f</span><span class="s2">"Real Snapshots"</span><span class="p">)</span>
|
||
<span class="n">axs</span><span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">set_title</span><span class="p">(</span><span class="sa">f</span><span class="s2">"POD-RBF"</span><span class="p">)</span>
|
||
<span class="n">axs</span><span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">]</span><span class="o">.</span><span class="n">set_title</span><span class="p">(</span><span class="sa">f</span><span class="s2">"POD-NN"</span><span class="p">)</span>
|
||
<span class="n">axs</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="n">set_title</span><span class="p">(</span><span class="sa">f</span><span class="s2">"Error POD-RBF"</span><span class="p">)</span>
|
||
<span class="n">axs</span><span class="p">[</span><span class="mi">0</span><span class="p">,</span> <span class="mi">4</span><span class="p">]</span><span class="o">.</span><span class="n">set_title</span><span class="p">(</span><span class="sa">f</span><span class="s2">"Error POD-NN"</span><span class="p">)</span>
|
||
|
||
<span class="n">cm</span> <span class="o">=</span> <span class="n">axs</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">tricontourf</span><span class="p">(</span>
|
||
<span class="n">dataset</span><span class="o">.</span><span class="n">triang</span><span class="p">,</span> <span class="n">rbf_</span><span class="o">.</span><span class="n">detach</span><span class="p">()</span>
|
||
<span class="p">)</span> <span class="c1"># POD-RBF prediction</span>
|
||
<span class="n">plt</span><span class="o">.</span><span class="n">colorbar</span><span class="p">(</span><span class="n">cm</span><span class="p">,</span> <span class="n">ax</span><span class="o">=</span><span class="n">axs</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">0</span><span class="p">])</span>
|
||
|
||
<span class="n">cm</span> <span class="o">=</span> <span class="n">axs</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">tricontourf</span><span class="p">(</span>
|
||
<span class="n">dataset</span><span class="o">.</span><span class="n">triang</span><span class="p">,</span> <span class="n">nn_</span><span class="o">.</span><span class="n">detach</span><span class="p">()</span>
|
||
<span class="p">)</span> <span class="c1"># POD-NN prediction</span>
|
||
<span class="n">plt</span><span class="o">.</span><span class="n">colorbar</span><span class="p">(</span><span class="n">cm</span><span class="p">,</span> <span class="n">ax</span><span class="o">=</span><span class="n">axs</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">1</span><span class="p">])</span>
|
||
|
||
<span class="n">cm</span> <span class="o">=</span> <span class="n">axs</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">2</span><span class="p">]</span><span class="o">.</span><span class="n">tricontourf</span><span class="p">(</span><span class="n">dataset</span><span class="o">.</span><span class="n">triang</span><span class="p">,</span> <span class="n">u_test</span><span class="p">[</span><span class="n">idx_</span><span class="p">]</span><span class="o">.</span><span class="n">flatten</span><span class="p">())</span> <span class="c1"># Truth</span>
|
||
<span class="n">plt</span><span class="o">.</span><span class="n">colorbar</span><span class="p">(</span><span class="n">cm</span><span class="p">,</span> <span class="n">ax</span><span class="o">=</span><span class="n">axs</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">2</span><span class="p">])</span>
|
||
|
||
<span class="n">cm</span> <span class="o">=</span> <span class="n">axs</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">3</span><span class="p">]</span><span class="o">.</span><span class="n">tripcolor</span><span class="p">(</span>
|
||
<span class="n">dataset</span><span class="o">.</span><span class="n">triang</span><span class="p">,</span> <span class="n">rbf_err_</span><span class="p">,</span> <span class="n">norm</span><span class="o">=</span><span class="n">matplotlib</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">LogNorm</span><span class="p">()</span>
|
||
<span class="p">)</span> <span class="c1"># Error for POD-RBF</span>
|
||
<span class="n">plt</span><span class="o">.</span><span class="n">colorbar</span><span class="p">(</span><span class="n">cm</span><span class="p">,</span> <span class="n">ax</span><span class="o">=</span><span class="n">axs</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">3</span><span class="p">])</span>
|
||
|
||
<span class="n">cm</span> <span class="o">=</span> <span class="n">axs</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">4</span><span class="p">]</span><span class="o">.</span><span class="n">tripcolor</span><span class="p">(</span>
|
||
<span class="n">dataset</span><span class="o">.</span><span class="n">triang</span><span class="p">,</span> <span class="n">nn_err_</span><span class="p">,</span> <span class="n">norm</span><span class="o">=</span><span class="n">matplotlib</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">LogNorm</span><span class="p">()</span>
|
||
<span class="p">)</span> <span class="c1"># Error for POD-NN</span>
|
||
<span class="n">plt</span><span class="o">.</span><span class="n">colorbar</span><span class="p">(</span><span class="n">cm</span><span class="p">,</span> <span class="n">ax</span><span class="o">=</span><span class="n">axs</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="mi">4</span><span class="p">])</span>
|
||
|
||
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
|
||
</pre></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell-outputWrapper">
|
||
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
|
||
</div>
|
||
<div class="jp-OutputArea jp-Cell-outputArea">
|
||
<div class="jp-OutputArea-child">
|
||
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
|
||
<div class="jp-RenderedImage jp-OutputArea-output" tabindex="0">
|
||
<img alt="No description has been provided for this image" class="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABHoAAAL3CAYAAAD1MSJJAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8ekN5oAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOydeZzU9P3/X59krr05l/vyAkRYVIQCKlBX+aJi0aIWqSC0WBUUpVrFKosnKkrXqgW1KtpKPfCHtUpRBBHxBlyqtaAICAK7gMLeO0fy+f0xk2ySSTLJTObcz/PxyGMnySeffDI770k+r3kfhFJKwWAwGAwGg8FgMBgMBoPByHq4dA+AwWAwGAwGg8FgMBgMBoPhDEzoYTAYDAaDwWAwGAwGg8HIEZjQw2AwGAwGg8FgMBgMBoORIzChh8FgMBgMBoPBYDAYDAYjR2BCD4PBYDAYDAaDwWAwGAxGjsCEHgaDwWAwGAwGg8FgMBiMHIEJPQwGg8FgMBgMBoPBYDAYOQITehgMBoPBYDAYDAaDwWAwcgQm9DAYDAaDwWAwGAwGg8Fg5AhM6InBnj17QAjB8uXL0z2UlEEIwZw5c9I9DAaDwWAwGAwGg8FgMBg2yQqhZ/ny5SCEyIvL5UKPHj1w1VVXYf/+/ekensyePXswY8YMHH/88fD5fOjatSvOPvtsVFRUpHtoaeXrr7/GwoULsWfPnnQPhZHhaG3d5/PhpJNOwpw5c1BTU6Nqu3fvXlxzzTXo27cvvF4vSktLMWnSJHz44YdR/W7YsEHVr9frRZcuXTB27Fjcf//9OHz4sOUxLly4UNWX2+1G3759ccMNN+DYsWNR7fv27Rt1TSeeeCJuueUW/PTTT6Z9K5dly5ZZHiOD4RTZZJNdunRBU1NT1P6+ffviwgsvVG2TzvvII48YXvPmzZstj4HRdtDahHb55JNP0j1EXa666irVOIuLi1FWVoZHHnkEfr8/qv2HH36Iiy++GF26dIHX60Xfvn3xu9/9Dnv37o1qq7135efno3fv3pg4cSKee+453f6NGDt2rKqvvLw8DBkyBJWVlRBFUdVW+jFWe11Dhw7F448/DkEQTPtWLtu3b7c8RkbmwOwxNfY4ceLEqH2S/T388MPyNuW9fcuWLbrXXVhYaPn8jMRwpXsAdrj77rvRr18/tLS04JNPPsHy5cuxadMmfPXVV/D5fGkd286dO3HGGWcgLy8PM2fORN++fXHw4EFs3boVDz74IO666660ji+dfP3117jrrrswduxY9O3bN93DYWQBSlvftGkTli5ditWrV+Orr75Cfn4+PvzwQ5x//vkAgN/+9rc4+eSTUV1djeXLl+Oss87Co48+iuuvvz6q3xtuuAFnnHEGBEHA4cOH8dFHH6GiogJLlizBK6+8gp///OeWx7h06VIUFhaisbER69atw2OPPYatW7di06ZNUW2HDh2K3//+9wCAlpYWbNmyBZWVlXj//ffx2WefGfatZMSIEZbHxmA4TTbY5KFDh7B06VLZ1qywePFiXHvttcjPz7d8DIMBtNqElhNOOCENo7GG1+vFX//6VwDAsWPH8Nprr+Hmm2/G559/jpdeeklu99hjj2Hu3Lk47rjjcP3116Nbt2743//+h7/+9a94+eWXsXr1aowaNSqqf+ne5ff7sX//frz99tuYOXMmKisr8eabb6JXr16WxtmzZ08sWrQIAHDkyBGsWLECN910Ew4fPoz77rsvqv2UKVPk75/a2lqsXr0a119/Pb7//nssXrzYsG8l3bt3tzQ2RmbC7DF59ggAb775JrZs2YLTTz/d8jELFy7Ev/71L8vtGUmAZgHPPfccBUA///xz1fZbb72VAqAvv/xy0s69e/duCoA+99xzpu2uu+466nK56J49e6L21dTUJGl0yQEAnT17tmP9vfrqqxQAfe+99xzrk5GbGNn6vHnzKAC6YsUK+tNPP9GuXbvSLl260J07d6raNTU10bPOOotyHEc//PBDeft7771HAdBXX3016pxVVVW0tLSUtmvXjh44cCDmGCsqKigAevjwYdX2yy+/nAKgn376qWp7nz596AUXXBDVz80330wB0G+++SZm3wxGusgmmxw6dCjt0qULbWpqUu3Xs0GpPQD6yCOPWLpmBoPSxD4fwWCQ+v1+3X0NDQ0JjUsUxajPvpLp06fTgoIC1TZBEOiwYcMoALp//35KKaWbNm2iHMfRs846izY2Nqra79y5k3bp0oV269aN/vTTT/J2s3vX3//+d8pxHB0xYoSl6xgzZgwdNGiQaltzczPt06cPLSoqoqFQSN4uPaMvXrxY1V4URXrGGWfQ7t27x+ybkd0we0y+Pfbu3Zu2b9+eTpw4UbVPz/6ke7t0f92yZUvM62Ykj6wI3TLirLPOAgB89913qu3bt2/H5MmT0aFDB/h8PgwbNgxvvPGGqs1PP/2Em2++GYMHD0ZhYSGKi4sxYcIEbNu2La6xfPfdd+jZsyf69OkTta+0tFS1LrmRb9q0CcOHD4fP58Nxxx2HF154Ia4xSm5yL7/8Mm6//XZ07doVBQUFuOiii7Bv3z5V22+//Ra//OUv0bVrV/h8PvTs2RO/+tWvUFtbGzXu119/Haeccgq8Xi8GDRqENWvWRLX54osvMGHCBBQXF6OwsBDnnHOOyk1y+fLluPTSSwEA48aNk935NmzYAADYvHkzxo8fj06dOiEvLw/9+vXDzJkzTd5pRltE+lV/9+7dePLJJ1FdXY3Fixfj+OOPV7XLy8vD888/D0II7r77bkt9l5WVobKyEseOHcPjjz8e9xiNvo+M6Nq1KwDA5coqx0oGA0Bm2uSCBQtQU1ODpUuXWmo/evRo/PznP8dDDz2E5uZmy+dhMKygDGuorKzE8ccfD6/XK4ezE0Lw9ddf44orrkD79u1x5plnAgBCoRDuueceuX3fvn1x++23R4VbSM+Sb7/9NoYNG4a8vDw8+eSTtsbIcRzGjh0rjxcA7rnnHhBC8Pzzz0d5uh1//PF46KGHcPDgQcvnmjp1Kn7729/i008/xdq1a22NT8Ln8+GMM85AfX09Dh06FLO9FMrJ7q8MCWaPYeKxx6KiItx0003417/+ha1bt1o65vrrr0f79u2xcOFCS+0ZySGrhR7JCNq3by9v++9//4uf/exn+N///ofbbrsNjzzyCAoKCjBp0iSsWrVKbrdr1y68/vrruPDCC7FkyRLccsst+PLLLzFmzBgcOHDA9lj69OmDffv2Yf369Zba79y5E5MnT8a5556LRx55BO3bt8dVV12F//73v3GP8b777sNbb72FW2+9FTfccAPWrl2L8vJy+QE2EAhg/Pjx+OSTT3D99dfjiSeewNVXX41du3ZF5RbZtGkTrrvuOvzqV7/CQw89hJaWFvzyl7/Ejz/+KLf573//i7POOgvbtm3DH/7wB9x5553YvXs3xo4di08//RQAcPbZZ+OGG24AANx+++3429/+hr/97W8YOHAgDh06hPPOOw979uzBbbfdhsceewxTp07N2HhaRvqQxJOOHTviX//6F3w+Hy677DLdtv369cOZZ56J9evXW568TZ48GXl5eXjnnXfiHqPe95FEMBjEkSNHcOTIEfzwww/417/+hSVLluDss8/WdTX+6aef5PZHjhzB0aNH4x4Xg5EMMtEmzzrrLNvCzcKFC22JQwyGRG1trep7+siRI6pnJInnnnsOjz32GK6++mo88sgj6NChg7zv0ksvRVNTE+6//37MmjULQDj0ccGCBTjttNPwpz/9CWPGjMGiRYvwq1/9KqrvHTt2YMqUKTj33HPx6KOPYujQobavQ2nLTU1NWLduHc466yzdexMAXH755fB6vXjzzTctn+PKK68EgITvsYQQtGvXLmpfU1OT/D/YtWsXnnjiCaxZswbTp0+PaisIQtT/raGhIe5xMTIDZo/Jtce5c+faEm6Ki4tti0OMJJBulyIrSG557777Lj18+DDdt28fXblyJe3cuTP1er103759cttzzjmHDh48mLa0tMjbRFGko0aNoieeeKK8raWlhQqCoDrP7t27qdfrpXfffbdqGyyEbn311Vc0Ly9PdlebO3cuff3116Pc7CgNu5EDoBs3bpS3HTp0iHq9Xvr73//e9hglN7kePXrQuro6efsrr7xCAdBHH32UUkrpF198YegqrwQA9Xg8Khf8bdu2UQD0sccek7dNmjSJejwe+t1338nbDhw4QIuKiujZZ58tbzMK3Vq1ahVzj2eo0LP1l156iXbs2JHm5eXRH374gbZr146WlZWZ9nPDDTdQAPQ///kPpdQ8TESirKyMtm/fPuYYJZfYHTt20MOHD9M9e/bQZ599lubl5dHOnTtH2bxk79pl9OjR9MiRI7p9a5c+ffrEHBeDkQyyySYPHz5M33//fQqALlmyRN5vFLolhSiPGzeOdu3aVXazZ6FbDDOkz4fe4vV65XbS82NxcTE9dOiQqg/pMztlyhTV9qqqKgqA/va3v1Vtl0J9169fL2+T7i1r1qyxNG4pZOLw4cP08OHDdOfOnfT++++nhBA6ZMgQ1fnnzp1r2teQIUNohw4doq7HKOz46NGjFAC9+OKLY45zzJgxdMCAAfI4t2/fTm+55RYKIMqOpfdYb7n22mupKIpRfeu1nT59esxxMTITZo/Jt0cp3PGuu+5ShWOZhW69+uqr9NixY7R9+/b0oosuirpuRmrIKp/G8vJy1Xrfvn3x97//HT179gQQ/hV8/fr1uPvuu1FfX4/6+nq57fjx41FRUYH9+/ejR48e8Hq98j5BEHDs2DEUFhaif//+cSmPgwYNQlVVFe655x68+eabqKqqwqOPPorCwkIsWbJEVoYlTj75ZDnUAwA6d+6M/v37Y9euXfI2u2OcNm0aioqK5PXJkyejW7duWL16NW644QaUlJQAAN5++22cf/75pskny8vLVS74Q4YMQXFxsTw+QRDwzjvvYNKkSTjuuOPkdt26dcMVV1yBp59+GnV1dSguLjY8h/SrzJtvvomysjK43W7Dtoy2hdbW+/TpgxdffBE9evRAfX296nOuh7S/rq7O8jkLCwtV3xmx6N+/v2p98ODBeO6553TtasSIEbj33nsBAH6/H9u2bcPixYtx0UUX4d1330VeXp6q/WuvvaayHe1+BiPVZINNAmEv0nHjxuGhhx7CNddcY8l2Fi5ciDFjxmDZsmW46aabbJ2P0XZ54okncNJJJ6m28Twf1e6Xv/wlOnfurNvHNddco1pfvXo1AGDevHmq7b///e/x8MMP46233sK4cePk7f369cP48eMtj7mxsTFqLKNGjcLf/vY3AJDtzYo927VlZf+x2L59e9Q4L7roIjzzzDO67a+++mo5TUBdXR3Wr1+PpUuXwuv14k9/+pOqbd++ffH000+rtrFEzNkPs8fk2aPE3LlzUVlZibvuugv//Oc/Y7YvKSnBjTfeiIqKCnzxxRc49dRTbZ2PkThZJfRIRlxbW4tnn30WGzduVIkhO3fuBKUUd955J+68807dPg4dOoQePXpAFEU8+uij+Mtf/oLdu3erSjB27NgxrvGddNJJ+Nvf/gZBEPD111/jzTffxEMPPYSrr74a/fr1Uz0o9+7dO+r49u3bq0I07I7xxBNPVK0TQnDCCSfIISX9+vXDvHnzsGTJErz44os466yzcNFFF+HXv/61LAJZHd/hw4fR1NQUNdkFgIEDB0IURezbtw+DBg3Se6sAAGPGjMEvf/lL3HXXXfjTn/6EsWPHYtKkSbjiiitU/1dG20OydZfLhS5duqB///7guHCkaVFRUcybk9Wbo5KGhga5fSAQiCp93rlzZ9VDgyTGHD58GH/+85+xe/duw0llp06dVPZ/wQUXoH///pg8eTL++te/RlUjOvvss9GpUyfLY2cwkk022KSEXeFGKw4xGFYYPnw4hg0bFrOdUciF3r7vv/8eHMdFVQrq2rUr2rVrh++//95y33r4fD65Co7X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"/>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell" id="cell-id=49e51233">
|
||
<div class="jp-Cell-inputWrapper" tabindex="0">
|
||
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
|
||
</div>
|
||
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
|
||
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput" data-mime-type="text/markdown">
|
||
<h2 id="What's-Next?">What's Next?<a class="anchor-link" href="#What's-Next?">¶</a></h2><p>Congratulations on completing this tutorial using <strong>PINA</strong> to apply reduced order modeling techniques with <strong>POD-RBF</strong> and <strong>POD-NN</strong>! There are several directions you can explore next:</p>
|
||
<ol>
|
||
<li><p><strong>Extend to More Complex Problems</strong>: Try using more complex parametric domains or PDEs. For example, you can explore Navier-Stokes equations in 3D or more complex boundary conditions.</p>
|
||
</li>
|
||
<li><p><strong>Combine POD with Deep Learning Techniques</strong>: Investigate hybrid methods, such as combining <strong>POD-NN</strong> with convolutional layers or recurrent layers, to handle time-dependent problems or more complex spatial dependencies.</p>
|
||
</li>
|
||
<li><p><strong>Evaluate Performance on Larger Datasets</strong>: Work with larger datasets to assess how well these methods scale. You may want to test on datasets from simulations or real-world problems.</p>
|
||
</li>
|
||
<li><p><strong>Hybrid Models with Physics Informed Networks (PINN)</strong>: Integrate <strong>POD</strong> models with PINN frameworks to include physics-based regularization in your model and improve predictions for more complex scenarios, such as turbulent fluid flow.</p>
|
||
</li>
|
||
<li><p><strong>...and many more!</strong>: The potential applications of reduced order models are vast, ranging from material science simulations to real-time predictions in engineering applications.</p>
|
||
</li>
|
||
</ol>
|
||
<p>For more information and advanced tutorials, refer to the <a href="https://mathlab.github.io/PINA/">PINA Documentation</a>.</p>
|
||
<h3 id="References">References<a class="anchor-link" href="#References">¶</a></h3><ol>
|
||
<li>Rozza G., Stabile G., Ballarin F. (2022). Advanced Reduced Order Methods and Applications in Computational Fluid Dynamics, Society for Industrial and Applied Mathematics.</li>
|
||
<li>Hesthaven, J. S., & Ubbiali, S. (2018). Non-intrusive reduced order modeling of nonlinear problems using neural networks. Journal of Computational Physics, 363, 55-78.</li>
|
||
</ol>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</main>
|
||
</body>
|
||
<script type="application/vnd.jupyter.widget-state+json">
|
||
{"state": {"949fce50b9d240d4abea9361b6a7e5cf": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets\/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets\/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets\/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "dbebf3ef91434767981cecd908e8bd17": {"model_name": "ProgressStyleModel", "model_module": "@jupyter-widgets\/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets\/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets\/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": ""}}, "bbafc291194440cf833a4aa011c2ce03": {"model_name": "FloatProgressModel", "model_module": "@jupyter-widgets\/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets\/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets\/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_949fce50b9d240d4abea9361b6a7e5cf", "max": 1.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_dbebf3ef91434767981cecd908e8bd17", "tabbable": null, "tooltip": null, "value": 1.0}}, "3308837a264c4b56bb3428158a79187a": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets\/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets\/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets\/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "07e61b1281a04d43b18008ea5a2a81f7": {"model_name": "HTMLStyleModel", "model_module": "@jupyter-widgets\/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets\/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets\/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "f301ebf2489b4351856b75b741048566": {"model_name": "HTMLModel", "model_module": "@jupyter-widgets\/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets\/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets\/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_3308837a264c4b56bb3428158a79187a", "placeholder": "\u200b", "style": "IPY_MODEL_07e61b1281a04d43b18008ea5a2a81f7", "tabbable": null, "tooltip": null, "value": "Epoch\u2007999:\u2007100%"}}, "3fd53acefb5c4cf58f6d3982bedfd321": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets\/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets\/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets\/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "ddd38284546a4d4ba21ddd4cd471a1fc": {"model_name": "HTMLStyleModel", "model_module": "@jupyter-widgets\/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets\/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets\/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "6654e8acc2674419a1b25025b9c469d9": {"model_name": "HTMLModel", "model_module": "@jupyter-widgets\/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets\/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets\/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_3fd53acefb5c4cf58f6d3982bedfd321", "placeholder": "\u200b", "style": "IPY_MODEL_ddd38284546a4d4ba21ddd4cd471a1fc", "tabbable": null, "tooltip": null, "value": "\u20071\/1\u2007[00:00<00:00,\u200775.02it\/s,\u2007v_num=0,\u2007data_loss=26.10,\u2007train_loss=26.10]"}}, "7fa592afff4a41f39db855f9744e6ecb": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets\/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets\/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets\/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": "100%"}}, "0e1ab09a2fd245549ed2b87e13c77649": {"model_name": "HBoxModel", "model_module": "@jupyter-widgets\/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets\/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets\/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_f301ebf2489b4351856b75b741048566", "IPY_MODEL_bbafc291194440cf833a4aa011c2ce03", "IPY_MODEL_6654e8acc2674419a1b25025b9c469d9"], "layout": "IPY_MODEL_7fa592afff4a41f39db855f9744e6ecb", "tabbable": null, "tooltip": null}}}, "version_major": 2, "version_minor": 0}
|
||
</script>
|
||
</html>
|