123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310 |
- /*-----------------------------------------------------------------------------
- | 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.svg');
- /* Icons
- These icons are used throughout JupyterLab.
- */
- /* The caret used for select dropdown styling. */
- --jp-ui-select-caret: url('./icons-light/md/down_caret.svg');
- /* Icons used in the application. */
- --jp-icon-add: url('./icons-light/md/add.svg');
- --jp-icon-book: url('./icons-light/jupyter/book.svg');
- --jp-icon-book-selected: url('./icons-light/jupyter/book_selected.svg');
- --jp-icon-book-running: url('./icons-light/jupyter/book_running.svg');
- --jp-icon-book-running-selected: url('./icons-light/jupyter/book_running_selected.svg');
- --jp-icon-directory: url('./icons-light/jupyter/directory.svg');
- --jp-icon-directory-selected: url('./icons-light/jupyter/directory_selected.svg');
- --jp-icon-new-directory: url('./icons-light/md/new-folder.svg');
- --jp-icon-file-selected: url('./icons-light/jupyter/file_selected.svg');
- --jp-icon-yaml: url('./icons-light/jupyter/yml.svg');
- --jp-icon-yaml-selected: url('./icons-light/jupyter/yml_selected.svg');
- --jp-icon-spreadsheet: url('./icons-light/jupyter/csv.svg');
- --jp-icon-spreadsheet-selected: url('./icons-light/jupyter/csv_selected.svg');
- --jp-icon-image: url('./icons-light/jupyter/image.svg');
- --jp-icon-image-selected: url('./icons-light/jupyter/image_selected.svg');
- --jp-icon-json: url('./icons-light/jupyter/json.svg');
- --jp-icon-json-selected: url('./icons-light/jupyter/json_selected.svg');
- --jp-icon-kernel-running: url('./icons-light/md/panorama_fish_eye.svg');
- --jp-icon-markdown: url('./icons-light/jupyter/markdown.svg');
- --jp-icon-markdown-selected: url('./icons-light/jupyter/markdown_selected.svg');
- --jp-icon-python: url('./icons-light/jupyter/python.svg');
- --jp-icon-python-selected: url('./icons-light/jupyter/python_selected.svg');
- --jp-icon-r: url('./icons-light/jupyter/r.svg');
- --jp-icon-r-selected: url('./icons-light/jupyter/r_selected.svg');
- --jp-icon-console: url('./icons-light/jupyter/console.svg');
- --jp-icon-terminal: url('./icons-light/jupyter/terminal.svg');
- --jp-icon-file: url('./icons-light/jupyter/file.svg');
- --jp-icon-refresh: url('./icons-light/md/refresh.svg');
- --jp-icon-close: url('./icons-light/md/close.svg');
- --jp-icon-inverse-close: url('./icons-light/md/close-inverse.svg');
- --jp-icon-circle: url('./icons-light/md/circle.svg');
- --jp-inverse-icon-circle: url('./icons-light/md/circle-inverse.svg');
- --jp-icon-close-black: url('./icons-light/md/close-black.svg');
- --jp-icon-search: url('./icons-light/md/search.svg');
- --jp-icon-copy: url('./icons-light/md/copy.svg');
- --jp-icon-cut: url('./icons-light/md/cut.svg');
- --jp-icon-paste: url('./icons-light/md/paste.svg');
- --jp-icon-download: url('./icons-light/md/download.svg');
- --jp-icon-edit: url('./icons-light/md/edit.svg');
- --jp-icon-ellipses: url('./icons-light/md/ellipses.svg');
- --jp-icon-expand-less: url('./icons-light/md/expand-less.svg');
- --jp-icon-expand-more: url('./icons-light/md/expand-more.svg');
- --jp-icon-home: url('./icons-light/md/home.svg');
- --jp-icon-jupyter: url('./icons-light/jupyter/jupyter.svg');
- --jp-icon-launcher: url('./icons-light/jupyter/launcher.svg');
- --jp-icon-more: url('./icons-light/md/more-horiz.svg');
- --jp-icon-run: url('./icons-light/md/run.svg');
- --jp-icon-save: url('./icons-light/md/save.svg');
- --jp-icon-stop: url('./icons-light/md/stop.svg');
- --jp-icon-text-editor: url('./icons-light/jupyter/texteditor.svg');
- --jp-icon-vega: url('./icons-light/jupyter/vega.svg');
- --jp-icon-upload: url('./icons-light/md/upload.svg');
- --jp-icon-question-mark: url('./icons-light/jupyter/questionmark.svg');
- --jp-icon-chat: url('./icons-light/md/chat.svg');
- --jp-about-header-logo: url('../../theming/style/icons-light/jupyter/jupyter.svg');
- --jp-about-header-wordmark: url('../../theming/style/images/jupyterlab-wordmark.svg');
- /* 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);
- /* 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: rgba(0,0,0,1.0);
- --jp-ui-font-color1: rgba(0,0,0,0.8);
- --jp-ui-font-color2: rgba(0,0,0,0.5);
- --jp-ui-font-color3: rgba(0,0,0,0.3);
- /* 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(255,255,255,1);
- --jp-inverse-ui-font-color1: rgba(255,255,255,1.0);
- --jp-inverse-ui-font-color2: rgba(255,255,255,0.7);
- --jp-inverse-ui-font-color3: rgba(255,255,255,0.5);
- /* 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: black;
- --jp-content-font-color1: black;
- --jp-content-font-color2: var(--md-grey-700);
- --jp-content-font-color3: var(--md-grey-500);
- --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: 1.307;
- --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: 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);
- /* 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);
- /* Window/plugin scroll bar styling */
- --jp-scrollbar-thumb-color: var(--jp-layout-color1);
- --jp-scrollbar-background-color: var(--jp-layout-color2);
- --jp-scrollbar-border: 1px solid var(--jp-border-color1);
- /* Cell specific styles */
- --jp-cell-padding: 5px;
- --jp-cell-editor-background: var(--md-grey-50);
- --jp-cell-editor-border-color: var(--md-grey-400);
- --jp-cell-editor-box-shadow: inset 0 0 2px var(--md-blue-300);
- --jp-cell-editor-background-edit: var(--jp-layout-color1);
- --jp-cell-editor-border-color-edit: var(--jp-brand-color1);
- --jp-cell-prompt-width: 100px;
- --jp-cell-prompt-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
- --jp-cell-prompt-letter-spacing: 2.4px;
- --jp-cell-prompt-opacity: 1.0;
- --jp-cell-prompt-opacity-not-active: 0.56;
- --jp-cell-prompt-font-color-not-active: 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-code-cursor-color: var(--jp-ui-font-color0);
- --jp-notebook-padding: 10px;
- --jp-notebook-scroll-padding: 100px;
- --jp-notebook-multiselected-color: var(--md-blue-50);
- --jp-notebook-error-background-color: #fdd;
- --jp-notebook-tr-hover-background-color: var(--md-light-blue-50);
- /* Console specific styles */
- --jp-console-background: var(--md-grey-100);
- /* Toolbar specific styles */
- --jp-toolbar-border-color: var(--md-grey-400);
- --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(--md-grey-300);
- /* Input field styles */
- --jp-input-background-color: var(--jp-layout-color0);
- /* Code mirror specific styles */
- --jp-mirror-editor-selected-state: #d9d9d9;
- --jp-mirror-editor-selected-focus-state: #d7d4f0;
- --jp-mirror-editor-pre-color: black;
- --jp-mirror-editor-gutter-border: 1px solid #ddd;
- --jp-mirror-editor-gutter-background-color: #f7f7f7;
- --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: var(--md-grey-800);
- --jp-mirror-editor-variable-3-color: var(--md-grey-700);
- --jp-mirror-editor-punctuation-color: #05a;
- --jp-mirror-editor-property-color: #05a;
- --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: #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;
- }
|