123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
- /*-----------------------------------------------------------------------------
- | 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.
- */
- /*
- * Optional monospace font for input/output prompt.
- */
- @import url('https://fonts.googleapis.com/css?family=Roboto+Mono');
- :root {
- /* Images
- These images are included with JupyterLab for showing the Project Jupyter logo
- */
- --jp-image-jupyter: url('./images/jupyter-white-moons.svg');
- /* Icons
- These icons are used throughout JupyterLab.
- */
- /* The caret used for select dropdown styling. */
- --jp-ui-select-caret: url('./icons-dark/md/down_caret.svg');
- /* Icons used in the application. */
- --jp-icon-add: url('./icons-dark/md/add.svg');
- --jp-icon-book: url('./icons-dark/jupyter/book.svg');
- --jp-icon-book-selected: url('./icons-dark/jupyter/book_selected.svg');
- --jp-icon-book-running: url('./icons-dark/jupyter/book_running.svg');
- --jp-icon-book-running-selected: url('./icons-dark/jupyter/book_running_selected.svg');
- --jp-icon-directory: url('./icons-dark/jupyter/directory.svg');
- --jp-icon-directory-selected: url('./icons-dark/jupyter/directory_selected.svg');
- --jp-icon-new-directory: url('./icons-dark/md/new-folder.svg');
- --jp-icon-file-selected: url('./icons-dark/jupyter/file_selected.svg');
- --jp-icon-yaml: url('./icons-dark/jupyter/yml.svg');
- --jp-icon-yaml-selected: url('./icons-dark/jupyter/yml_selected.svg');
- --jp-icon-spreadsheet: url('./icons-dark/jupyter/csv.svg');
- --jp-icon-spreadsheet-selected: url('./icons-dark/jupyter/csv_selected.svg');
- --jp-icon-image: url('./icons-dark/jupyter/image.svg');
- --jp-icon-image-selected: url('./icons-dark/jupyter/image_selected.svg');
- --jp-icon-json: url('./icons-dark/jupyter/json.svg');
- --jp-icon-json-selected: url('./icons-dark/jupyter/json_selected.svg');
- --jp-icon-kernel-running: url('./icons-dark/md/panorama_fish_eye.svg');
- --jp-icon-markdown: url('./icons-dark/jupyter/markdown.svg');
- --jp-icon-markdown-selected: url('./icons-dark/jupyter/markdown_selected.svg');
- --jp-icon-python: url('./icons-dark/jupyter/python.svg');
- --jp-icon-python-selected: url('./icons-dark/jupyter/python_selected.svg');
- --jp-icon-r: url('./icons-dark/jupyter/r.svg');
- --jp-icon-r-selected: url('./icons-dark/jupyter/r_selected.svg');
- --jp-icon-console: url('./icons-dark/jupyter/console.svg');
- --jp-icon-terminal: url('./icons-dark/jupyter/terminal.svg');
- --jp-icon-file: url('./icons-dark/jupyter/file.svg');
- --jp-icon-refresh: url('./icons-dark/md/refresh.svg');
- --jp-icon-close: url('./icons-dark/md/close.svg');
- --jp-icon-inverse-close: url('./icons-dark/md/close-inverse.svg');
- --jp-icon-circle: url('./icons-dark/md/circle.svg');
- --jp-inverse-icon-circle: url('./icons-dark/md/circle-inverse.svg');
- --jp-icon-close-black: url('./icons-dark/md/close-black.svg');
- --jp-icon-search: url('./icons-dark/md/search.svg');
- --jp-icon-copy: url('./icons-dark/md/copy.svg');
- --jp-icon-cut: url('./icons-dark/md/cut.svg');
- --jp-icon-paste: url('./icons-dark/md/paste.svg');
- --jp-icon-download: url('./icons-dark/md/download.svg');
- --jp-icon-edit: url('./icons-dark/md/edit.svg');
- --jp-icon-ellipses: url('./icons-dark/md/ellipses.svg');
- --jp-icon-expand-less: url('./icons-dark/md/expand-less.svg');
- --jp-icon-expand-more: url('./icons-dark/md/expand-more.svg');
- --jp-icon-home: url('./icons-dark/md/home.svg');
- --jp-icon-jupyter: url('./icons-dark/jupyter/jupyter.svg');
- --jp-icon-launcher: url('./icons-dark/jupyter/launcher.svg');
- --jp-icon-more: url('./icons-dark/md/more-horiz.svg');
- --jp-icon-run: url('./icons-dark/md/run.svg');
- --jp-icon-save: url('./icons-dark/md/save.svg');
- --jp-icon-stop: url('./icons-dark/md/stop.svg');
- --jp-icon-text-editor: url('./icons-dark/jupyter/texteditor.svg');
- --jp-icon-upload: url('./icons-dark/md/upload.svg');
- --jp-icon-question-mark: url('./icons-dark/jupyter/questionmark.svg');
- --jp-icon-chat: url('./icons-dark/md/chat.svg');
- --jp-about-header-logo: url('../../theming/style/images/jupyter-white-moons.svg');
- --jp-about-header-wordmark: url('../../theming/style/images/jupyterlab-wordmark-inverse.svg');
- /* Borders
- The following variables, specify the visual styling of borders in JupyterLab.
- */
- --jp-border-width: 1px;
- --jp-border-color0: var(--md-grey-700);
- --jp-border-color1: var(--md-grey-800);
- --jp-border-color2: var(--md-grey-900);
- --jp-border-color3: var(--md-grey-900);
- /* 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.
- */
- --jp-ui-font-scale-factor: 1.2;
- --jp-ui-font-size0: calc(var(--jp-ui-font-size1)/var(--jp-ui-font-scale-factor));
- --jp-ui-font-size1: 13px; /* Base font size */
- --jp-ui-font-size2: calc(var(--jp-ui-font-size1)*var(--jp-ui-font-scale-factor));
- --jp-ui-font-size3: calc(var(--jp-ui-font-size2)*var(--jp-ui-font-scale-factor));
- --jp-ui-icon-font-size: 14px; /* Ensures px perfect FontAwesome icons */
- --jp-ui-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
- /* Use these font colors against the corresponding main layout colors.
- In a light theme, these go from dark to light.
- */
- --jp-ui-font-color0: white;
- --jp-ui-font-color1: var(--md-grey-300);
- --jp-ui-font-color2: var(--md-grey-500);
- --jp-ui-font-color3: var(--md-grey-700);
- /* 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-inverse-ui-font-color0: rgba(0,0,0,1.0);
- --jp-inverse-ui-font-color1: rgba(0,0,0,0.8);
- --jp-inverse-ui-font-color2: rgba(0,0,0,0.5);
- --jp-inverse-ui-font-color3: rgba(0,0,0,0.3);
- /* Content Fonts
- Content font variables are used for typography of user generated content.
- */
- --jp-content-font-size: 13px;
- --jp-content-line-height: 1.5;
- --jp-content-font-color0: white;
- --jp-content-font-color1: var(--md-grey-300);
- --jp-content-font-color2: var(--md-grey-500);
- --jp-content-font-color3: var(--md-grey-700);
- --jp-ui-font-scale-factor: 1.2;
- --jp-ui-font-size0: calc(var(--jp-ui-font-size1)/var(--jp-ui-font-scale-factor));
- --jp-ui-font-size1: 13px; /* Base font size */
- --jp-ui-font-size2: calc(var(--jp-ui-font-size1)*var(--jp-ui-font-scale-factor));
- --jp-ui-font-size3: calc(var(--jp-ui-font-size2)*var(--jp-ui-font-scale-factor));
- --jp-code-font-size: 13px;
- --jp-code-line-height: 17px;
- --jp-code-padding: 5px;
- --jp-code-font-family: monospace;
- /* 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: #111111;
- --jp-layout-color1: var(--md-grey-900);
- --jp-layout-color2: var(--md-grey-800);
- --jp-layout-color3: var(--md-grey-700);
- --jp-layout-color4: var(--md-grey-600); /* A midpoint between --md-grey-900 and black */;
- /* Brand/accent */
- --jp-brand-color0: var(--md-blue-700);
- --jp-brand-color1: var(--md-blue-500);
- --jp-brand-color2: var(--md-blue-300);
- --jp-brand-color3: var(--md-blue-100);
- --jp-accent-color0: var(--md-green-700);
- --jp-accent-color1: var(--md-green-500);
- --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-700);
- --jp-warn-color1: var(--md-orange-500);
- --jp-warn-color2: var(--md-orange-300);
- --jp-warn-color3: var(--md-orange-100);
- --jp-error-color0: var(--md-red-700);
- --jp-error-color1: var(--md-red-500);
- --jp-error-color2: var(--md-red-300);
- --jp-error-color3: var(--md-red-100);
- --jp-success-color0: var(--md-green-700);
- --jp-success-color1: var(--md-green-500);
- --jp-success-color2: var(--md-green-300);
- --jp-success-color3: var(--md-green-100);
- --jp-info-color0: var(--md-cyan-700);
- --jp-info-color1: var(--md-cyan-500);
- --jp-info-color2: var(--md-cyan-300);
- --jp-info-color3: var(--md-cyan-100);
- /* Cell specific styles */
- --jp-cell-padding: 5px;
- --jp-cell-editor-background: var(--jp-layout-color1);
- --jp-cell-editor-box-shadow: inset 0 0 2px var(--md-blue-300);
- --jp-cell-editor-border-color: var(--md-grey-600);
- --jp-cell-editor-background-edit: var(--jp-layout-color0);
- --jp-cell-editor-border-color-edit: var(--jp-brand-color1);
- --jp-cell-prompt-width: 68px;
- --jp-cell-prompt-font-family: 'Roboto Mono', monospace;
- --jp-cell-prompt-letter-spacing: 0px;
- --jp-cell-prompt-opacity: 1.0;
- --jp-cell-prompt-opacity-not-active: 0.4;
- --jp-cell-prompt-font-color-not-active: var(--md-grey-50);
- --jp-cell-inprompt-font-color: var(--md-grey-50);
- --jp-cell-outprompt-font-color: var(--md-grey-700);
- /* Notebook specific styles */
- --jp-code-cursor-color: var(--jp-ui-font-color0);
- --jp-notebook-padding: 10px;
- --jp-notebook-scroll-padding: 100px;
- --jp-notebook-select-background-color: var(--jp-layout-color1);
- --jp-notebook-multiselected-color: rgba(33,150,243,.24);
- --jp-notebook-error-background-color: rgba(244,67,54,.28);
- --jp-notebook-tr-hover-background-color: rgba(3,169,244,.2);
- /* Console specific styles */
- --jp-console-background: var(--jp-layout-color0);
- /* 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: 0px 0px 2px 0px rgba(0,0,0,0.24);
- --jp-toolbar-header-margin: 4px 4px 0px 4px;
- --jp-toolbar-active-background: var(--jp-layout-color0);
- /* Input field styles */
- --jp-input-background-color: var(--jp-layout-color0);
- /* Code mirror specific styles */
- --jp-mirror-editor-selected-state: var(--jp-layout-color2);
- --jp-mirror-editor-selected-focus-state: rgba(33,150,243,.24);
- --jp-mirror-editor-pre-color: var(--md-grey-400);
- --jp-mirror-editor-gutter-border: none;
- --jp-mirror-editor-gutter-background-color: var(--jp-layout-color2);
- --jp-mirror-editor-keyword-color: var(--md-green-500);
- --jp-mirror-editor-atom-color: var(--md-blue-300);
- --jp-mirror-editor-number-color: var(--md-green-400);
- --jp-mirror-editor-def-color: var(--md-blue-600);
- --jp-mirror-span-variable-color: var(--md-grey-300);
- --jp-mirror-editor-variable-2-color: var(--md-grey-500);
- --jp-mirror-editor-variable-3-color: var(--md-grey-600);
- --jp-mirror-editor-punctuation-color: var(--md-blue-400);
- --jp-mirror-editor-property-color: var(--md-blue-400);
- --jp-mirror-editor-operator-color: #AA22FF;
- --jp-mirror-editor-comment-color: #408080;
- --jp-mirror-editor-string-color: #BA2121;
- --jp-mirror-editor-string-2-color: #f50;
- --jp-mirror-editor-meta-color: #AA22FF;
- --jp-mirror-editor-qualifier-color: #555;
- --jp-mirror-editor-builtin-color: var(--md-green-600);
- --jp-mirror-editor-bracket-color: #997;
- --jp-mirror-editor-tag-color: var(--md-green-700);
- --jp-mirror-editor-attribute-color: var(--md-blue-700);
- --jp-mirror-editor-header-color: var(--md-blue-500);
- --jp-mirror-editor-quote-color: var(--md-green-300);
- --jp-mirror-editor-link-color: var(--md-blue-700);
- --jp-mirror-editor-error-color: #f00;
- --jp-mirror-editor-hr-color: #999;
- }
|