base.css 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373
  1. /*-----------------------------------------------------------------------------
  2. | Copyright (c) Jupyter Development Team.
  3. | Distributed under the terms of the Modified BSD License.
  4. |----------------------------------------------------------------------------*/
  5. /*-----------------------------------------------------------------------------
  6. | Private CSS variables
  7. |----------------------------------------------------------------------------*/
  8. :root {
  9. --jp-private-notebook-dragImage-width: 304px;
  10. --jp-private-notebook-dragImage-height: 36px;
  11. --jp-private-notebook-selected-color: var(--md-blue-400);
  12. --jp-private-notebook-active-color: var(--md-green-400);
  13. }
  14. /*-----------------------------------------------------------------------------
  15. | Imports
  16. |----------------------------------------------------------------------------*/
  17. @import './toolbar.css';
  18. /*-----------------------------------------------------------------------------
  19. | Notebook
  20. |----------------------------------------------------------------------------*/
  21. .jp-NotebookPanel {
  22. display: block;
  23. height: 100%;
  24. }
  25. .jp-NotebookPanel.jp-Document {
  26. min-width: 240px;
  27. min-height: 120px;
  28. }
  29. .jp-Notebook {
  30. padding: var(--jp-notebook-padding);
  31. outline: none;
  32. overflow: auto;
  33. background: var(--jp-layout-color0);
  34. }
  35. .jp-Notebook.jp-mod-scrollPastEnd::after {
  36. display: block;
  37. content: '';
  38. min-height: var(--jp-notebook-scroll-padding);
  39. }
  40. .jp-MainAreaWidget-ContainStrict .jp-Notebook * {
  41. contain: strict;
  42. }
  43. .jp-Notebook-render * {
  44. contain: none !important;
  45. }
  46. .jp-Notebook .jp-Cell {
  47. overflow: visible;
  48. }
  49. .jp-Notebook .jp-Cell .jp-InputPrompt {
  50. cursor: move;
  51. float: left;
  52. }
  53. /*-----------------------------------------------------------------------------
  54. | Notebook state related styling
  55. |
  56. | The notebook and cells each have states, here are the possibilities:
  57. |
  58. | - Notebook
  59. | - Command
  60. | - Edit
  61. | - Cell
  62. | - None
  63. | - Active (only one can be active)
  64. | - Selected (the cells actions are applied to)
  65. | - Multiselected (when multiple selected, the cursor)
  66. | - No outputs
  67. |----------------------------------------------------------------------------*/
  68. /* Command or edit modes */
  69. .jp-Notebook .jp-Cell:not(.jp-mod-active) .jp-InputPrompt {
  70. opacity: var(--jp-cell-prompt-not-active-opacity);
  71. color: var(--jp-cell-prompt-not-active-font-color);
  72. }
  73. .jp-Notebook .jp-Cell:not(.jp-mod-active) .jp-OutputPrompt {
  74. opacity: var(--jp-cell-prompt-not-active-opacity);
  75. color: var(--jp-cell-prompt-not-active-font-color);
  76. }
  77. /* cell is active */
  78. .jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser {
  79. background: var(--jp-brand-color1);
  80. }
  81. /* collapser is hovered */
  82. .jp-Notebook .jp-Cell .jp-Collapser:hover {
  83. box-shadow: var(--jp-elevation-z2);
  84. background: var(--jp-brand-color1);
  85. opacity: var(--jp-cell-collapser-not-active-hover-opacity);
  86. }
  87. /* cell is active and collapser is hovered */
  88. .jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser:hover {
  89. background: var(--jp-brand-color0);
  90. opacity: 1;
  91. }
  92. /* Command mode */
  93. .jp-Notebook.jp-mod-commandMode .jp-Cell.jp-mod-selected {
  94. background: var(--jp-notebook-multiselected-color);
  95. }
  96. .jp-Notebook.jp-mod-commandMode
  97. .jp-Cell.jp-mod-active.jp-mod-selected:not(.jp-mod-multiSelected) {
  98. background: transparent;
  99. }
  100. /* Edit mode */
  101. .jp-Notebook.jp-mod-editMode .jp-Cell.jp-mod-active .jp-InputArea-editor {
  102. border: var(--jp-border-width) solid var(--jp-cell-editor-active-border-color);
  103. box-shadow: var(--jp-input-box-shadow);
  104. background-color: var(--jp-cell-editor-active-background);
  105. }
  106. /*-----------------------------------------------------------------------------
  107. | Notebook cell
  108. |----------------------------------------------------------------------------*/
  109. .jp-Notebook-cell {
  110. content-visibility: auto;
  111. }
  112. /*-----------------------------------------------------------------------------
  113. | Notebook drag and drop
  114. |----------------------------------------------------------------------------*/
  115. .jp-Notebook-cell.jp-mod-dropSource {
  116. opacity: 0.5;
  117. }
  118. .jp-Notebook-cell.jp-mod-dropTarget,
  119. .jp-Notebook.jp-mod-commandMode
  120. .jp-Notebook-cell.jp-mod-active.jp-mod-selected.jp-mod-dropTarget {
  121. border-top-color: var(--jp-private-notebook-selected-color);
  122. border-top-style: solid;
  123. border-top-width: 2px;
  124. }
  125. .jp-dragImage {
  126. display: block;
  127. flex-direction: row;
  128. width: var(--jp-private-notebook-dragImage-width);
  129. height: var(--jp-private-notebook-dragImage-height);
  130. border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  131. background: var(--jp-cell-editor-background);
  132. overflow: visible;
  133. }
  134. .jp-dragImage-singlePrompt {
  135. box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.12);
  136. }
  137. .jp-dragImage .jp-dragImage-content {
  138. flex: 1 1 auto;
  139. z-index: 2;
  140. font-size: var(--jp-code-font-size);
  141. font-family: var(--jp-code-font-family);
  142. line-height: var(--jp-code-line-height);
  143. padding: var(--jp-code-padding);
  144. border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
  145. background: var(--jp-cell-editor-background-color);
  146. color: var(--jp-content-font-color3);
  147. text-align: left;
  148. margin: 4px 4px 4px 0px;
  149. }
  150. .jp-dragImage .jp-dragImage-prompt {
  151. flex: 0 0 auto;
  152. min-width: 36px;
  153. color: var(--jp-cell-inprompt-font-color);
  154. padding: var(--jp-code-padding);
  155. padding-left: 12px;
  156. font-family: var(--jp-cell-prompt-font-family);
  157. letter-spacing: var(--jp-cell-prompt-letter-spacing);
  158. line-height: 1.9;
  159. font-size: var(--jp-code-font-size);
  160. border: var(--jp-border-width) solid transparent;
  161. }
  162. .jp-dragImage-multipleBack {
  163. z-index: -1;
  164. position: absolute;
  165. height: 32px;
  166. width: 300px;
  167. top: 8px;
  168. left: 8px;
  169. background: var(--jp-layout-color2);
  170. border: var(--jp-border-width) solid var(--jp-input-border-color);
  171. box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.12);
  172. }
  173. /*-----------------------------------------------------------------------------
  174. | Cell toolbar
  175. |----------------------------------------------------------------------------*/
  176. .jp-NotebookTools {
  177. display: block;
  178. min-width: var(--jp-sidebar-min-width);
  179. color: var(--jp-ui-font-color1);
  180. background: var(--jp-layout-color1);
  181. /* This is needed so that all font sizing of children done in ems is
  182. * relative to this base size */
  183. font-size: var(--jp-ui-font-size1);
  184. overflow: auto;
  185. }
  186. .jp-NotebookTools-tool {
  187. padding: 0px 12px 0 12px;
  188. }
  189. .jp-ActiveCellTool {
  190. padding: 12px;
  191. background-color: var(--jp-layout-color1);
  192. border-top: none !important;
  193. }
  194. .jp-ActiveCellTool .jp-InputArea-prompt {
  195. flex: 0 0 auto;
  196. padding-left: 0px;
  197. }
  198. .jp-ActiveCellTool .jp-InputArea-editor {
  199. flex: 1 1 auto;
  200. background: var(--jp-cell-editor-background);
  201. border-color: var(--jp-cell-editor-border-color);
  202. }
  203. .jp-ActiveCellTool .jp-InputArea-editor .CodeMirror {
  204. background: transparent;
  205. }
  206. .jp-MetadataEditorTool {
  207. flex-direction: column;
  208. padding: 12px 0px 12px 0px;
  209. }
  210. .jp-RankedPanel > :not(:first-child) {
  211. margin-top: 12px;
  212. }
  213. .jp-KeySelector select.jp-mod-styled {
  214. font-size: var(--jp-ui-font-size1);
  215. color: var(--jp-ui-font-color0);
  216. border: var(--jp-border-width) solid var(--jp-border-color1);
  217. }
  218. .jp-KeySelector label,
  219. .jp-MetadataEditorTool label {
  220. line-height: 1.4;
  221. }
  222. .jp-NotebookTools .jp-select-wrapper {
  223. margin-top: 4px;
  224. margin-bottom: 0px;
  225. }
  226. .jp-NotebookTools .jp-Collapse {
  227. margin-top: 16px;
  228. }
  229. /*-----------------------------------------------------------------------------
  230. | Presentation Mode (.jp-mod-presentationMode)
  231. |----------------------------------------------------------------------------*/
  232. .jp-mod-presentationMode .jp-Notebook {
  233. --jp-content-font-size1: var(--jp-content-presentation-font-size1);
  234. --jp-code-font-size: var(--jp-code-presentation-font-size);
  235. }
  236. .jp-mod-presentationMode .jp-Notebook .jp-Cell .jp-InputPrompt,
  237. .jp-mod-presentationMode .jp-Notebook .jp-Cell .jp-OutputPrompt {
  238. flex: 0 0 110px;
  239. }
  240. /*-----------------------------------------------------------------------------
  241. | Placeholder
  242. |----------------------------------------------------------------------------*/
  243. .jp-Cell-Placeholder {
  244. padding-left: 55px;
  245. }
  246. .jp-Cell-Placeholder-wrapper {
  247. background: #fff;
  248. border: 1px solid;
  249. border-color: #e5e6e9 #dfe0e4 #d0d1d5;
  250. border-radius: 4px;
  251. -webkit-border-radius: 4px;
  252. margin: 10px 15px;
  253. }
  254. .jp-Cell-Placeholder-wrapper-inner {
  255. padding: 15px;
  256. position: relative;
  257. }
  258. .jp-Cell-Placeholder-wrapper-body {
  259. background-repeat: repeat;
  260. background-size: 50% auto;
  261. }
  262. .jp-Cell-Placeholder-wrapper-body div {
  263. background: #f6f7f8;
  264. background-image: -webkit-linear-gradient(
  265. left,
  266. #f6f7f8 0%,
  267. #edeef1 20%,
  268. #f6f7f8 40%,
  269. #f6f7f8 100%
  270. );
  271. background-repeat: no-repeat;
  272. background-size: 800px 104px;
  273. height: 104px;
  274. position: relative;
  275. }
  276. .jp-Cell-Placeholder-wrapper-body div {
  277. position: absolute;
  278. right: 15px;
  279. left: 15px;
  280. top: 15px;
  281. }
  282. div.jp-Cell-Placeholder-h1 {
  283. top: 20px;
  284. height: 20px;
  285. left: 15px;
  286. width: 150px;
  287. }
  288. div.jp-Cell-Placeholder-h2 {
  289. left: 15px;
  290. top: 50px;
  291. height: 10px;
  292. width: 100px;
  293. }
  294. div.jp-Cell-Placeholder-content-1,
  295. div.jp-Cell-Placeholder-content-2,
  296. div.jp-Cell-Placeholder-content-3 {
  297. left: 15px;
  298. right: 15px;
  299. height: 10px;
  300. }
  301. div.jp-Cell-Placeholder-content-1 {
  302. top: 100px;
  303. }
  304. div.jp-Cell-Placeholder-content-2 {
  305. top: 120px;
  306. }
  307. div.jp-Cell-Placeholder-content-3 {
  308. top: 140px;
  309. }