grapheditor.css 52 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091
  1. :root {
  2. --panel-color: #f1f3f4;
  3. --border-color: #dadce0;
  4. --text-color: #707070;
  5. }
  6. .geEditor *, div.mxWindow, .mxWindowTitle,
  7. .geEditor .geToolbarContainer .geColorButton {
  8. border-color:var(--border-color);
  9. }
  10. html div.mxWindow, .geDialog, .geSketch .geToolbarContainer {
  11. border-radius: 5px;
  12. box-shadow: 0px 0px 2px #C0C0C0;
  13. }
  14. div td.mxWindowTitle {
  15. border-bottom-style:solid;
  16. border-bottom-width:1px;
  17. font-size: 13px;
  18. height: 22px;
  19. }
  20. .mxWindowTitle > div > img {
  21. padding: 4px;
  22. }
  23. .geEditor {
  24. font-family:-apple-system, BlinkMacSystemFont, "Segoe UI Variable", "Segoe UI", system-ui, ui-sans-serif, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
  25. font-size:14px;
  26. border:none;
  27. margin:0px;
  28. }
  29. .geEditor input[type=text]::-ms-clear {
  30. display: none;
  31. }
  32. .geEditor input, .geEditor select,
  33. .geEditor textarea, .geEditor button {
  34. font-size: inherit;
  35. }
  36. .geMenubarContainer, .geToolbarContainer, .geHsplit,
  37. .geVsplit, .mxWindowTitle, .geSidebarContainer,
  38. .geEditor .geTabItem {
  39. background:var(--panel-color);
  40. }
  41. .geButtonContainer {
  42. display: inline-flex;
  43. align-items: center;
  44. padding: 0 32px 0 0;
  45. margin-left: auto;
  46. }
  47. .geEditor .geTabItem {
  48. border-width:1px;
  49. border-top-style:solid;
  50. }
  51. .geEditor .geTabItem {
  52. cursor:default;
  53. user-select:none;
  54. }
  55. .geEditor div.mxTooltip {
  56. background: var(--panel-color);
  57. font-size: 11px;
  58. color: black;
  59. padding:6px;
  60. }
  61. .geDragPreview {
  62. border: 1px dashed black;
  63. }
  64. html > body > div > div.geToolbarContainer.geSimpleMainMenu,
  65. html > body > div > div.geToolbarContainer.geSimpleMainMenu .geToolbarContainer{
  66. border-top: none !important;
  67. border-left: none !important;
  68. border-right: none !important;
  69. }
  70. html > body > div > div.geToolbarContainer.geSimpleMainMenu .geToolbarContainer{
  71. border:none !important;
  72. }
  73. .geMenubarContainer {
  74. display:inline-flex;
  75. align-items:center;
  76. }
  77. .geMenubarContainer .geItem, .geToolbar .geButton, .geToolbar .geLabel {
  78. cursor:pointer !important;
  79. }
  80. .geSidebarContainer .geTitle {
  81. cursor:default !important;
  82. }
  83. .geBackgroundPage {
  84. box-shadow:0px 0px 2px 1px #d1d1d1;
  85. }
  86. .geSidebarContainer a, .geMenubarContainer a, .geToolbar a {
  87. color:#000000;
  88. text-decoration:none;
  89. }
  90. .geMenubarContainer, .geToolbarContainer, .geDiagramContainer, .geSidebarContainer, .geFooterContainer, .geHsplit, .geVsplit {
  91. overflow:hidden;
  92. position:absolute;
  93. cursor:default;
  94. }
  95. .geFormatContainer {
  96. overflow-x:hidden !important;
  97. overflow-y:auto !important;
  98. font-size:12px;
  99. border-left:1px solid #dadce0;
  100. transition:width 0.3s;
  101. }
  102. .geFormatContainer button:not(.geColorBtn), .geFormatContainer select {
  103. border-radius:4px;
  104. padding:2px;
  105. }
  106. .geSidebarFooter {
  107. border-top:1px solid #dadce0;
  108. }
  109. .geFormatSection {
  110. border-bottom:1px solid #dadce0;
  111. border-color:#dadce0;
  112. }
  113. .geDiagramContainer {
  114. background-color:#ffffff;
  115. font-size:0px;
  116. outline:none;
  117. }
  118. .geMenubar, .geToolbar {
  119. white-space:nowrap;
  120. display:block;
  121. width:100%;
  122. }
  123. .geMenubarContainer .geItem, .geToolbar .geButton, .geToolbar .geLabel,
  124. .geSidebar, .geSidebar .geItem, .mxPopupMenuItem {
  125. -webkit-transition: all 0.1s ease-in-out;
  126. -moz-transition: all 0.1s ease-in-out;
  127. -o-transition: all 0.1s ease-in-out;
  128. -ms-transition: all 0.1s ease-in-out;
  129. transition: all 0.1s ease-in-out;
  130. }
  131. .geHint {
  132. background-color: #ffffff;
  133. border: 1px solid gray;
  134. padding: 4px 16px 4px 16px;
  135. border-radius:3px;
  136. -webkit-box-shadow: 1px 1px 2px 0px #ddd;
  137. -moz-box-shadow: 1px 1px 2px 0px #ddd;
  138. box-shadow: 1px 1px 2px 0px #ddd;
  139. opacity:0.8;
  140. font-size:9pt;
  141. }
  142. .geUser {
  143. color:var(--text-color);
  144. display:inline-block;
  145. cursor:pointer;
  146. font-size:10px;
  147. }
  148. .geStatus > * {
  149. overflow:hidden;
  150. white-space:nowrap;
  151. vertical-align:middle;
  152. display:inline-block;
  153. font-size:12px;
  154. color:var(--text-color);
  155. }
  156. a.geStatus {
  157. display:inline-flex;
  158. align-items:center;
  159. white-space:nowrap;
  160. min-width:0;
  161. height:100%;
  162. }
  163. .geStatus *[data-action] {
  164. cursor:pointer;
  165. }
  166. .geStatus img {
  167. max-width:16px;
  168. vertical-align:bottom;
  169. }
  170. a.geStatus div + div {
  171. margin-left:8px;
  172. }
  173. a.geStatus .geStatusBox {
  174. border-style: solid;
  175. border-width: 1px;
  176. border-radius: 3px;
  177. font-size: 10px;
  178. padding: 3px;
  179. }
  180. a.geStatus .geStatusAlert {
  181. padding:4px 8px;
  182. background-color:#eacccc;
  183. border:1px solid #dca4ad;
  184. color:#b62623 !important;
  185. border-radius:3px;
  186. }
  187. a.geStatus .geStatusAlertOrange {
  188. padding:4px 8px;
  189. background-color:rgb(242, 147, 30);
  190. border:rgb(240, 135, 5);
  191. color:#000000 !important;
  192. border-radius:3px;
  193. }
  194. html body div.geSmallBanner {
  195. background-color: #F2931E;
  196. background-image: linear-gradient(#F2931E 0px,#F08707 100%);
  197. border: 1px solid #F08707;
  198. color: #000;
  199. }
  200. html body div.geSmallBanner:hover:not([disabled]) {
  201. background-color: #ffb75e;
  202. background-image: linear-gradient(#ffb75e 0px,#F2931E 100%);
  203. border: 1px solid #F08707;
  204. color: #000;
  205. }
  206. a.geStatus .geStatusMessage {
  207. padding:4px 6px 4px 6px;
  208. font-size:12px;
  209. background: -webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);
  210. background: -o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);
  211. background: -webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));
  212. background: linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);
  213. background-repeat: repeat-x;
  214. border:1px solid #b2dba1;
  215. border-radius:3px;
  216. color:#3c763d !important;
  217. }
  218. .geAlert {
  219. position:absolute;
  220. white-space:nowrap;
  221. padding:14px;
  222. background-color:#f2dede;
  223. border:1px solid #ebccd1;
  224. color:#a94442;
  225. border-radius:3px;
  226. -webkit-box-shadow: 2px 2px 3px 0px #ddd;
  227. -moz-box-shadow: 2px 2px 3px 0px #ddd;
  228. box-shadow: 2px 2px 3px 0px #ddd;
  229. }
  230. .geEditor input, .geEditor button, .geEditor select, .geColorBtn {
  231. border: 1px solid #d8d8d8;
  232. border-radius: 4px;
  233. }
  234. .geEditor button, .geEditor select, .geColorBtn {
  235. background:#eee;
  236. }
  237. .geEditor button:hover:not([disabled], .geBigButton, .geShareBtn),
  238. .geEditor select:hover:not([disabled]), .geColorBtn:hover:not([disabled]) {
  239. background:#e5e5e5;
  240. }
  241. .geColorDropper {
  242. cursor:pointer;
  243. opacity:0.7;
  244. }
  245. .geColorDropper:hover {
  246. opacity:1;
  247. }
  248. .geBtn, .mxWindow .geBtn {
  249. font-size: 13px;
  250. font-weight: 500;
  251. border-radius: 4px;
  252. height: 30px;
  253. margin: 0 0 0 8px;
  254. min-width: 72px;
  255. outline: 0;
  256. padding: 0 8px;
  257. }
  258. .geBtn:hover:not([disabled]), .geBtn:focus {
  259. -webkit-box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
  260. -moz-box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
  261. box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
  262. color: #111;
  263. }
  264. .geToolbarContainer {
  265. border-width:1px;
  266. border-color:lightgray;
  267. border-style:none none solid none;
  268. box-shadow:none;
  269. z-index:1;
  270. }
  271. .geShapePicker {
  272. position:absolute;
  273. border-radius:10px;
  274. border-style:solid;
  275. border-width:1px;
  276. padding:6px 0 8px 0;
  277. text-align:center;
  278. box-shadow:0px 0px 3px 1px #d1d1d1;
  279. }
  280. .geBtnStepper {
  281. border-radius:3px;
  282. border-style:solid;
  283. border-width:1px;
  284. }
  285. .geBtnUp {
  286. background-image: url(data:image/gif;base64,R0lGODlhCgAGAJECAGZmZtXV1f///wAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0QzM3ODJERjg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo0QzM3ODJFMDg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjRDMzc4MkREODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjRDMzc4MkRFODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAgAsAAAAAAoABgAAAg6UjwiQBhGYglCKhXFLBQA7);
  287. background-position: center center;
  288. background-repeat: no-repeat;
  289. border-bottom-style:solid;
  290. border-width:1px;
  291. }
  292. .geBtnUp:active {
  293. background-color: #4d90fe;
  294. background-image: linear-gradient(#4d90fe 0px,#357ae8 100%);
  295. }
  296. .geBtnDown {
  297. background-image: url(data:image/gif;base64,R0lGODlhCgAGAJECANXV1WZmZv///wAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0QzM3ODJEQjg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo0QzM3ODJEQzg4NUQxMUU0OTFEQ0E2MzRGQzcwNUY3NCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjRDMzc4MkQ5ODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjRDMzc4MkRBODg1RDExRTQ5MURDQTYzNEZDNzA1Rjc0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAgAsAAAAAAoABgAAAg6UjxLLewEiCAnOZBzeBQA7);
  298. background-position: center center;
  299. background-repeat: no-repeat;
  300. border-style:solid;
  301. border-width:1px;
  302. }
  303. .geBtnDown:active {
  304. background-color: #4d90fe;
  305. background-image: linear-gradient(#4d90fe 0px,#357ae8 100%);
  306. }
  307. html .geColorBtn {
  308. padding: 0px;
  309. }
  310. html .geColorBtn:disabled {
  311. opacity: 0.5;
  312. }
  313. html .gePrimaryBtn {
  314. background-color: #4d90fe;
  315. background-image: linear-gradient(#4d90fe 0px,#4787ed 100%);
  316. border: 1px solid #3079ed;
  317. color: #fff;
  318. }
  319. html .gePrimaryBtn:hover:not([disabled]), html .gePrimaryBtn:focus {
  320. background-color: #357ae8;
  321. background-image: linear-gradient(#4d90fe 0px,#357ae8 100%);
  322. border: 1px solid #2f5bb7;
  323. color: #fff;
  324. }
  325. .gePrimaryBtn:disabled {
  326. opacity: .5;
  327. }
  328. button.geShareBtn {
  329. background-color: #F2931E;
  330. border-color: #F08705;
  331. color:#000000;
  332. }
  333. .geAlertLink {
  334. color:#843534;
  335. font-weight:700;
  336. text-decoration:none;
  337. }
  338. .geMenubar {
  339. padding:0px 2px 0px 2px;
  340. display:inline-flex;
  341. align-items:center;
  342. }
  343. .geMenubarContainer .geItem, .geToolbar .geItem {
  344. padding:6px 6px 6px 9px;
  345. cursor:default;
  346. }
  347. .geItem:hover:not([disabled]), .geToolbarButton:hover:not([disabled]),
  348. .geBtn:hover:not([disabled]) {
  349. opacity: 1 !important;
  350. }
  351. .geItem:active:not([disabled]):not(.geStatus), .geBtn:active:not([disabled]),
  352. .geStatus div[data-action]:active:not([disabled]),
  353. html .geToolbarButton:active:not([disabled]) {
  354. opacity: 0.7 !important;
  355. }
  356. .geBtn:disabled {
  357. opacity: 0.5;
  358. }
  359. .geMenubarContainer .geItem:active {
  360. background: #F8C382;
  361. }
  362. .geToolbarContainer .geButton:hover {
  363. opacity:1;
  364. background: #eee;
  365. border-radius:2px;
  366. }
  367. .geToolbarContainer .geButton:active, .geToolbarContainer .geLabel:active {
  368. background: #F8C382;
  369. }
  370. .geToolbarContainer .geLabel:hover {
  371. background: #eee;
  372. border-radius:2px;
  373. }
  374. .geActiveButton:hover {
  375. opacity: 0.7;
  376. }
  377. .geActiveButton:active {
  378. opacity: 0.3;
  379. }
  380. .geToolbarButton {
  381. opacity: 0.6;
  382. }
  383. .geToolbarButton:active {
  384. opacity: 0.2 !important;
  385. }
  386. .mxDisabled:hover {
  387. background:inherit !important;
  388. }
  389. .geMenubar a.geStatus {
  390. color:#888888;
  391. padding:0px 0px 0px 10px;
  392. display:inline-flex;
  393. align-items:center;
  394. cursor:default !important;
  395. }
  396. .geMenubar a.geStatus:hover {
  397. background:transparent;
  398. }
  399. .geSidebarContainer .geToolbarContainer {
  400. background:transparent;
  401. border-bottom:none;
  402. }
  403. .geSidebarContainer button {
  404. text-overflow:ellipsis;
  405. overflow:hidden;
  406. }
  407. .geToolbar {
  408. padding:5px 0px 0px 6px;
  409. border-top:1px solid #dadce0;
  410. -webkit-box-shadow: inset 0 1px 0 0 #fff;
  411. -moz-box-shadow: inset 0 1px 0 0 #fff;
  412. box-shadow: inset 0 1px 0 0 #fff;
  413. }
  414. .geToolbarContainer .geSeparator {
  415. float:left;
  416. width:1px;
  417. height:20px;
  418. background:#e5e5e5;
  419. margin-left:6px;
  420. margin-right:6px;
  421. margin-top:4px;
  422. }
  423. .geToolbarContainer .geButton {
  424. float:left;
  425. width:20px;
  426. height:20px;
  427. padding:0px 2px 4px 2px;
  428. margin:2px;
  429. border:1px solid transparent;
  430. cursor:pointer;
  431. opacity:0.6;
  432. }
  433. div.mxWindow .geButton {
  434. margin: -1px 2px 2px 2px;
  435. padding: 1px 2px 2px 1px;
  436. }
  437. .geToolbarContainer .geLabel {
  438. float:left;
  439. margin:2px;
  440. cursor:pointer;
  441. padding:3px 5px 3px 5px;
  442. border:1px solid transparent;
  443. }
  444. .geToolbarContainer .mxDisabled:hover {
  445. border:1px solid transparent !important;
  446. opacity:0.2 !important;
  447. }
  448. .geDiagramBackdrop {
  449. background-color: #fbfbfb;
  450. }
  451. .geSidebarContainer {
  452. position:absolute;
  453. overflow-x:hidden;
  454. overflow-y:auto;
  455. }
  456. .mxWindowPane .geSidebarContainer {
  457. width:100%;
  458. height:100%;
  459. }
  460. .geEditor > div > .geMenubarContainer {
  461. border-bottom-style:solid;
  462. border-bottom-width:1px;
  463. }
  464. .geTabContainer {
  465. border-width:1px;
  466. border-top-style:solid;
  467. border-left-style:solid;
  468. border-right-style:solid;
  469. display:flex;
  470. white-space:nowrap;
  471. overflow:hidden;
  472. position:absolute;
  473. z-index:1;
  474. }
  475. .geTabScroller {
  476. display:inline-block;
  477. position:relative;
  478. max-width:calc(100% - 90px);
  479. white-space:nowrap;
  480. overflow:hidden;
  481. overflow-x:auto;
  482. -ms-overflow-style: none;
  483. scrollbar-width: none;
  484. left:0px;
  485. }
  486. .geTabScroller::-webkit-scrollbar {
  487. display: none;
  488. }
  489. .geToggleItem {
  490. padding:4px;
  491. border-radius:8px;
  492. }
  493. .geActiveItem {
  494. background-color:var(--border-color);
  495. }
  496. html body div.geActivePage, .geRuler {
  497. background:#fff;
  498. }
  499. .geInactivePage:hover, .geControlTab:hover {
  500. opacity:0.5;
  501. }
  502. .geTabMenuButton {
  503. width:14px;
  504. height:14px;
  505. margin-left:4px;
  506. margin-right:-6px;
  507. cursor:pointer;
  508. }
  509. .geInactivePage .geTabMenuButton {
  510. display:none;
  511. }
  512. .geTabMenuButton {
  513. display:inline-block;
  514. opacity:1;
  515. }
  516. .geTabMenuButton:hover {
  517. opacity:0.7;
  518. }
  519. .geTabContainer > :first-child {
  520. border-left-style:none;
  521. }
  522. .geTabContainer > :first-child > :first-child {
  523. border-left-style:none;
  524. }
  525. .geTab {
  526. height: 100%;
  527. border-left-width:1px;
  528. border-left-style:solid;
  529. text-overflow:ellipsis;
  530. border-color:#dadce0;
  531. color:rgb(112, 112, 112);
  532. font-size:12px;
  533. font-weight: 600;
  534. display: inline-flex;
  535. align-items: center;
  536. }
  537. .gePageTab {
  538. padding: 0px 12px 0px 12px;
  539. }
  540. .geSidebar {
  541. border-bottom:1px solid #e5e5e5;
  542. padding:6px;
  543. padding-left:10px;
  544. padding-bottom:6px;
  545. overflow:hidden;
  546. }
  547. .geSidebarContainer .geTitle {
  548. display:block;
  549. font-size:13px;
  550. border-color: #e5e5e5;
  551. border-bottom:1px solid #e5e5e5;
  552. font-weight:500;
  553. padding:8px 0px 8px 20px;
  554. margin:0px;
  555. cursor:default;
  556. white-space:nowrap;
  557. overflow:hidden;
  558. text-overflow:ellipsis;
  559. line-height:1.4em;
  560. }
  561. .geSidebarContainer .geTitle:hover {
  562. background: #eee;
  563. border-radius:2px;
  564. }
  565. .geSidebarContainer .geTitle:active {
  566. background-color:#F8C382;
  567. }
  568. .geSidebarContainer .geDropTarget {
  569. border-radius:10px;
  570. border:2px dotted #b0b0b0;
  571. text-align:center;
  572. padding:6px;
  573. margin:6px;
  574. color:#a0a0a0;
  575. font-size:13px;
  576. }
  577. .geTitle img {
  578. opacity:0.5;
  579. }
  580. .geTitle img:hover {
  581. opacity:1;
  582. }
  583. .geTitle .geButton {
  584. border:1px solid transparent;
  585. padding:3px;
  586. border-radius:2px;
  587. }
  588. .geTitle .geButton:hover {
  589. border:1px solid gray;
  590. }
  591. .geSidebar .geItem {
  592. display:inline-block;
  593. background-repeat:no-repeat;
  594. background-position:50% 50%;
  595. border-radius: 8px;
  596. }
  597. .geSidebar .geItem, .geShapePicker .geItem {
  598. transition: transform 100ms ease-out;
  599. }
  600. .geSidebar .geItem:hover {
  601. background-color:#e0e0e0;
  602. }
  603. .geSidebar .geItem:active, .geShapePicker .geItem:active {
  604. transform: scale(0.8,0.8);
  605. }
  606. .geItem {
  607. vertical-align: top;
  608. display: inline-block;
  609. }
  610. .geSidebarTooltip {
  611. position:absolute;
  612. background:#fbfbfb;
  613. overflow:hidden;
  614. box-shadow:0 2px 6px 2px rgba(60,64,67,.15);
  615. border-radius:6px;
  616. }
  617. .geFooterContainer {
  618. background:#e5e5e5;
  619. border-top:1px solid #c0c0c0;
  620. }
  621. .geFooterContainer a {
  622. display:inline-block;
  623. box-sizing:border-box;
  624. width:100%;
  625. white-space:nowrap;
  626. font-size:14px;
  627. color:#235695;
  628. font-weight:bold;
  629. text-decoration:none;
  630. }
  631. .geFooterContainer table {
  632. border-collapse:collapse;
  633. margin:0 auto;
  634. }
  635. .geFooterContainer td {
  636. border-left:1px solid #c0c0c0;
  637. border-right:1px solid #c0c0c0;
  638. }
  639. .geToolbarButton {
  640. border-color:#333333;
  641. }
  642. .geFooterContainer td:hover {
  643. background-color: #b3b3b3;
  644. }
  645. .geHsplit {
  646. cursor:col-resize;
  647. }
  648. .geVsplit {
  649. font-size:1pt;
  650. cursor:row-resize;
  651. }
  652. .geHsplit {
  653. border-left:1px solid var(--border-color);
  654. background-color:transparent;
  655. }
  656. .geVSplit {
  657. border-top:1px solid var(--border-color);
  658. border-bottom:1px solid var(--border-color);
  659. }
  660. .geHsplit:hover, .geVsplit:hover {
  661. background-color:var(--border-color);
  662. opacity:0.7;
  663. }
  664. .mxWindow {
  665. background:var(--panel-color);
  666. }
  667. .geDialog {
  668. position:absolute;
  669. background:white;
  670. line-height:1em;
  671. overflow:hidden;
  672. padding:30px;
  673. border:1px solid #acacac;
  674. -webkit-box-shadow:0px 0px 2px 2px #d5d5d5;
  675. -moz-box-shadow:0px 0px 2px 2px #d5d5d5;
  676. box-shadow:0px 0px 2px 2px #d5d5d5;
  677. z-index: 2;
  678. }
  679. .geTransDialog {
  680. position:absolute;
  681. overflow:hidden;
  682. z-index: 2;
  683. }
  684. .geDialogClose {
  685. position:absolute;
  686. width:9px;
  687. height:9px;
  688. opacity:0.5;
  689. cursor:pointer;
  690. }
  691. .geDialogClose:hover {
  692. opacity:1;
  693. }
  694. .geDialogTitle {
  695. box-sizing:border-box;
  696. white-space:nowrap;
  697. background:rgb(229, 229, 229);
  698. border-bottom:1px solid rgb(192, 192, 192);
  699. font-size:15px;
  700. font-weight:bold;
  701. text-align:center;
  702. color:rgb(35, 86, 149);
  703. }
  704. .geDialogFooter {
  705. background:whiteSmoke;
  706. white-space:nowrap;
  707. text-align:right;
  708. box-sizing:border-box;
  709. border-top:1px solid #e5e5e5;
  710. color:darkGray;
  711. }
  712. .geSprite {
  713. background:url('data:image/png;base64,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') no-repeat;
  714. width:21px;
  715. height:21px;
  716. }
  717. .geEditor .geBaseButton {
  718. padding:10px;
  719. border-radius:6px;
  720. border:1px solid #c0c0c0;
  721. cursor:pointer;
  722. background-color:#ececec;
  723. background-image:linear-gradient(#ececec 0%, #fcfcfc 100%);
  724. }
  725. .geEditor .geBaseButton:hover {
  726. background:#ececec;
  727. }
  728. .geEditor .geBigButton {
  729. color:#ffffff;
  730. border: none;
  731. padding:4px 10px;
  732. font-size:14px;
  733. white-space: nowrap;
  734. border-radius:3px;
  735. background-color:#0052cc;
  736. cursor:pointer;
  737. transition: background-color 0.1s ease-out;
  738. overflow:hidden;
  739. text-overflow: ellipsis;
  740. }
  741. .geEditor .geBigButton:hover {
  742. background-color:#0065ff;
  743. }
  744. .geEditor .geBigButton:active {
  745. background-color:#0747a6;
  746. opacity:1;
  747. }
  748. html body .geBigStandardButton {
  749. color: #344563;
  750. background-color: rgba(9, 30, 66, 0.08);
  751. }
  752. html body .geBigStandardButton:hover {
  753. background-color: rgba(9, 30, 66, 0.13);
  754. }
  755. html body .geBigStandardButton:active {
  756. background-color: #F8C382;
  757. color: #600000;
  758. }
  759. @media print {
  760. div.geNoPrint { display: none !important; }
  761. }
  762. .geSprite-actualsize { background-position: 0 0; }
  763. .geSprite-bold { background-position: 0 -46px; }
  764. .geSprite-bottom { background-position: 0 -92px; }
  765. .geSprite-center { background-position: 0 -138px; }
  766. .geSprite-delete { background-position: 0 -184px; }
  767. .geSprite-fillcolor { background-position: 0 -229px; }
  768. .geSprite-fit { background-position: 0 -277px; }
  769. .geSprite-fontcolor { background-position: 0 -322px; }
  770. .geSprite-gradientcolor { background-position: 0 -368px; }
  771. .geSprite-image { background-position: 0 -414px; }
  772. .geSprite-italic { background-position: 0 -460px; }
  773. .geSprite-left { background-position: 0 -505px; }
  774. .geSprite-middle { background-position: 0 -552px; }
  775. .geSprite-print { background-position: 0 -598px; }
  776. .geSprite-redo { background-position: 0 -644px; }
  777. .geSprite-right { background-position: 0 -689px; }
  778. .geSprite-shadow { background-position: 0 -735px; }
  779. .geSprite-strokecolor { background-position: 0 -782px; }
  780. .geSprite-top { background-position: 0 -828px; }
  781. .geSprite-underline { background-position: 0 -874px; }
  782. .geSprite-undo { background-position: 0 -920px; }
  783. .geSprite-zoomin { background-position: 0 -966px; }
  784. .geSprite-zoomout { background-position: 0 -1012px; }
  785. .geSprite-arrow { background-position: 0 -1059px; }
  786. .geSprite-linkedge { background-position: 0 -1105px; }
  787. .geSprite-straight { background-position: 0 -1150px; }
  788. .geSprite-entity { background-position: 0 -1196px; }
  789. .geSprite-orthogonal { background-position: 0 -1242px; }
  790. .geSprite-curved { background-position: 0 -1288px; }
  791. .geSprite-noarrow { background-position: 0 -1334px; }
  792. .geSprite-endclassic { background-position: 0 -1380px; }
  793. .geSprite-endopen { background-position: 0 -1426px; }
  794. .geSprite-endblock { background-position: 0 -1472px; }
  795. .geSprite-endoval { background-position: 0 -1518px; }
  796. .geSprite-enddiamond { background-position: 0 -1564px; }
  797. .geSprite-endthindiamond { background-position: 0 -1610px; }
  798. .geSprite-endclassictrans { background-position: 0 -1656px; }
  799. .geSprite-endblocktrans { background-position: 0 -1702px; }
  800. .geSprite-endovaltrans { background-position: 0 -1748px; }
  801. .geSprite-enddiamondtrans { background-position: 0 -1794px; }
  802. .geSprite-endthindiamondtrans { background-position: 0 -1840px; }
  803. .geSprite-startclassic { background-position: 0 -1886px; }
  804. .geSprite-startopen { background-position: 0 -1932px; }
  805. .geSprite-startblock { background-position: 0 -1978px; }
  806. .geSprite-startoval { background-position: 0 -2024px; }
  807. .geSprite-startdiamond { background-position: 0 -2070px; }
  808. .geSprite-startthindiamond { background-position: 0 -2116px; }
  809. .geSprite-startclassictrans { background-position: 0 -2162px; }
  810. .geSprite-startblocktrans { background-position: 0 -2208px; }
  811. .geSprite-startovaltrans { background-position: 0 -2254px; }
  812. .geSprite-startdiamondtrans { background-position: 0 -2300px; }
  813. .geSprite-startthindiamondtrans { background-position: 0 -2346px; }
  814. .geSprite-globe { background-position: 0 -2392px; }
  815. .geSprite-orderedlist { background-position: 0 -2438px; }
  816. .geSprite-unorderedlist { background-position: 0 -2484px; }
  817. .geSprite-horizontalrule { background-position: 0 -2530px; }
  818. .geSprite-link { background-position: 0 -2576px; }
  819. .geSprite-indent { background-position: 0 -2622px; }
  820. .geSprite-outdent { background-position: 0 -2668px; }
  821. .geSprite-code { background-position: 0 -2714px; }
  822. .geSprite-fontbackground { background-position: 0 -2760px; }
  823. .geSprite-removeformat { background-position: 0 -2806px; }
  824. .geSprite-superscript { background-position: 0 -2852px; }
  825. .geSprite-subscript { background-position: 0 -2898px; }
  826. .geSprite-table { background-position: 0 -2944px; }
  827. .geSprite-deletecolumn { background-position: 0 -2990px; }
  828. .geSprite-deleterow { background-position: 0 -3036px; }
  829. .geSprite-insertcolumnafter { background-position: 0 -3082px; }
  830. .geSprite-insertcolumnbefore { background-position: 0 -3128px; }
  831. .geSprite-insertrowafter { background-position: 0 -3174px; }
  832. .geSprite-insertrowbefore { background-position: 0 -3220px; }
  833. .geSprite-grid { background-position: 0 -3272px; }
  834. .geSprite-guides { background-position: 0 -3324px; }
  835. .geSprite-dots { background-position: 0 -3370px; }
  836. .geSprite-alignleft { background-position: 0 -3416px; }
  837. .geSprite-alignright { background-position: 0 -3462px; }
  838. .geSprite-aligncenter { background-position: 0 -3508px; }
  839. .geSprite-aligntop { background-position: 0 -3554px; }
  840. .geSprite-alignbottom { background-position: 0 -3600px; }
  841. .geSprite-alignmiddle { background-position: 0 -3646px; }
  842. .geSprite-justifyfull { background-position: 0 -3692px; }
  843. .geSprite-formatpanel { background-position: 0 -3738px; }
  844. .geSprite-connection { background-position: 0 -3784px; }
  845. .geSprite-vertical { background-position: 0 -3830px; }
  846. .geSprite-simplearrow { background-position: 0 -3876px; }
  847. .geSprite-plus { background-position: 0 -3922px; }
  848. .geSprite-rounded { background-position: 0 -3968px; }
  849. .geSprite-toback { background-position: 0 -4014px; }
  850. .geSprite-tofront { background-position: 0 -4060px; }
  851. .geSprite-duplicate { background-position: 0 -4106px; }
  852. .geSprite-insert { background-position: 0 -4152px; }
  853. .geSprite-endblockthin { background-position: 0 -4201px; }
  854. .geSprite-endblockthintrans { background-position: 0 -4247px; }
  855. .geSprite-enderone { background-position: 0 -4293px; }
  856. .geSprite-enderonetoone { background-position: 0 -4339px; }
  857. .geSprite-enderonetomany { background-position: 0 -4385px; }
  858. .geSprite-endermany { background-position: 0 -4431px; }
  859. .geSprite-enderoneopt { background-position: 0 -4477px; }
  860. .geSprite-endermanyopt { background-position: 0 -4523px; }
  861. .geSprite-endclassicthin { background-position: 0 -4938px; }
  862. .geSprite-endclassicthintrans { background-position: 0 -4984px; }
  863. .geSprite-enddash { background-position: 0 -5029px; }
  864. .geSprite-endcircleplus { background-position: 0 -5075px; }
  865. .geSprite-endcircle { background-position: 0 -5121px; }
  866. .geSprite-endasync { background-position: 0 -5167px; }
  867. .geSprite-endasynctrans { background-position: 0 -5213px; }
  868. .geSprite-startblockthin { background-position: 0 -4569px; }
  869. .geSprite-startblockthintrans { background-position: 0 -4615px; }
  870. .geSprite-starterone { background-position: 0 -4661px; }
  871. .geSprite-starteronetoone { background-position: 0 -4707px; }
  872. .geSprite-starteronetomany { background-position: 0 -4753px; }
  873. .geSprite-startermany { background-position: 0 -4799px; }
  874. .geSprite-starteroneopt { background-position: 0 -4845px; }
  875. .geSprite-startermanyopt { background-position: 0 -4891px; }
  876. .geSprite-startclassicthin { background-position: 0 -5259px; }
  877. .geSprite-startclassicthintrans { background-position: 0 -5305px; }
  878. .geSprite-startdash { background-position: 0 -5351px; }
  879. .geSprite-startcircleplus { background-position: 0 -5397px; }
  880. .geSprite-startcircle { background-position: 0 -5443px; }
  881. .geSprite-startasync { background-position: 0 -5489px; }
  882. .geSprite-startasynctrans { background-position: 0 -5535px; }
  883. .geSprite-startcross { background-position: 0 -5581px; }
  884. .geSprite-startopenthin { background-position: 0 -5627px; }
  885. .geSprite-startopenasync { background-position: 0 -5673px; }
  886. .geSprite-endcross { background-position: 0 -5719px; }
  887. .geSprite-endopenthin { background-position: 0 -5765px; }
  888. .geSprite-endopenasync { background-position: 0 -5811px; }
  889. .geSprite-verticalelbow { background-position: 0 -5857px; }
  890. .geSprite-horizontalelbow { background-position: 0 -5903px; }
  891. .geSprite-horizontalisometric { background-position: 0 -5949px; }
  892. .geSprite-verticalisometric { background-position: 0 -5995px; }
  893. .geSvgSprite {
  894. background-position: center center;
  895. }
  896. .geFlipSprite {
  897. transform:scaleX(-1);
  898. }
  899. .geSprite-box {
  900. background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='10' transform='translate(0.5,0.5)'><rect stroke='black' fill='none' x='2' y='2' width='6' height='6'/><path stroke='black' d='M8 5 L 18 5'/></svg>");
  901. }
  902. .geSprite-halfCircle {
  903. background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='10' transform='translate(0.5,0.5)'><path stroke='black' fill='none' d='M 2 2 Q 6 2 6 5 Q 6 8 2 8 M 6 5 L 18 5'/></svg>");
  904. }
  905. html div.mxRubberband {
  906. border-color:#0000DD;
  907. background:#99ccff;
  908. }
  909. td.mxPopupMenuIcon div {
  910. width:16px;
  911. height:16px;
  912. }
  913. .geEditor div.mxPopupMenu {
  914. box-shadow: 0px 0px 2px #C0C0C0;
  915. background:var(--panel-color);
  916. border-radius:4px;
  917. border-style:solid;
  918. border-width:1px;
  919. border-color:lightgray;
  920. padding:3px;
  921. }
  922. .geSearchSidebar {
  923. padding: 14px 8px 0px 8px;
  924. box-sizing: border-box;
  925. min-height: 60px;
  926. overflow: hidden;
  927. width: 100%;
  928. }
  929. .geSearchSidebar input {
  930. font-size: 12px;
  931. box-sizing: border-box;
  932. border: 1px solid #d5d5d5;
  933. border-radius: 4px;
  934. width: 100%;
  935. outline: none;
  936. padding: 6px 20px 6px 6px
  937. }
  938. html table.mxPopupMenu {
  939. border-collapse:collapse;
  940. margin:0px;
  941. }
  942. html td.mxPopupMenuItem {
  943. padding:7px 30px 7px 30px;
  944. font-family:-apple-system, BlinkMacSystemFont, "Segoe UI Variable", "Segoe UI", system-ui, ui-sans-serif, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
  945. font-size:10pt;
  946. }
  947. html td.mxPopupMenuIcon {
  948. background-color:transparent;
  949. padding:0px;
  950. }
  951. td.mxPopupMenuIcon .geIcon {
  952. padding:2px;
  953. padding-bottom:4px;
  954. margin:2px;
  955. border:1px solid transparent;
  956. opacity:0.5;
  957. }
  958. html tr.mxPopupMenuItemHover {
  959. background-color: #e0e0e0;
  960. color: black;
  961. }
  962. table.mxPopupMenu hr {
  963. color:#cccccc;
  964. background-color:#cccccc;
  965. border:none;
  966. height:1px;
  967. }
  968. table.mxPopupMenu tr {
  969. font-size:4pt;
  970. }
  971. html td.mxWindowTitle {
  972. color:rgb(112, 112, 112);
  973. background:#f1f3f4;
  974. padding:4px;
  975. }
  976. table.geProperties {
  977. table-layout:fixed;
  978. }
  979. table.geProperties tr td {
  980. height:21px;
  981. }
  982. .gePropHeader, .gePropRow {
  983. border: 1px solid #e9e9e9;
  984. }
  985. .gePropRowDark {
  986. border: 1px solid #4472C4;
  987. }
  988. .gePropHeader>.gePropHeaderCell {
  989. border-top: 0;
  990. border-bottom: 0;
  991. text-align: left;
  992. width: 50%;
  993. }
  994. .gePropHeader>.gePropHeaderCell:first-child {
  995. border-left: none;
  996. }
  997. .gePropHeader>.gePropHeaderCell:last-child {
  998. border-right: none;
  999. }
  1000. .gePropHeader {
  1001. background: #e5e5e5;
  1002. color: black;
  1003. }
  1004. .gePropRowCell {
  1005. border-left: 1px solid #f3f3f3;
  1006. white-space:nowrap;
  1007. text-overflow:ellipsis;
  1008. overflow:hidden;
  1009. max-width: 50%;
  1010. }
  1011. .gePropRow>.gePropRowCell {
  1012. background: #fff;
  1013. }
  1014. .gePropRowAlt>.gePropRowCell {
  1015. background: #fcfcfc;
  1016. }
  1017. .gePropRowDark>.gePropRowCell {
  1018. background: #fff;
  1019. color: #305496;
  1020. font-weight: bold;
  1021. }
  1022. .gePropRowDarkAlt>.gePropRowCell {
  1023. background: #D9E1F2;
  1024. color: #305496;
  1025. font-weight: bold;
  1026. }
  1027. .gePropEditor input:invalid {
  1028. border: 1px solid red;
  1029. }
  1030. /* Templates dialog css */
  1031. .geTemplateDlg {
  1032. width: 100%;
  1033. height: 100%;
  1034. }
  1035. .geTemplateDlg ::-webkit-scrollbar {
  1036. width:12px;
  1037. height:12px;
  1038. }
  1039. .geTemplateDlg ::-webkit-scrollbar-track {
  1040. background:whiteSmoke;
  1041. box-shadow:inset 0 0 4px rgba(0,0,0,0.1);
  1042. }
  1043. .geTemplateDlg ::-webkit-scrollbar-thumb {
  1044. background:#c5c5c5;
  1045. border-radius:10px;
  1046. border:whiteSmoke solid 3px;
  1047. }
  1048. .geTemplateDlg ::-webkit-scrollbar-thumb:hover {
  1049. background:#b5b5b5;
  1050. }
  1051. .geTempDlgHeader {
  1052. box-sizing: border-box;
  1053. height: 62px;
  1054. width: 100%;
  1055. border: 1px solid #CCCCCC;
  1056. border-radius: 5px 5px 0 0;
  1057. background-color: #F5F5F5;
  1058. }
  1059. .geTempDlgHeaderLogo {
  1060. height: 34px;
  1061. margin: 14px 14px 14px 20px;
  1062. }
  1063. .geTempDlgSearchBox {
  1064. color:#888888;
  1065. background:url("/images/icon-search.svg") no-repeat;
  1066. background-color: #FFFFFF;
  1067. background-position: 15px;
  1068. height: 40px;
  1069. width: 40%;
  1070. max-width: 400px;
  1071. border: 1px solid #CCCCCC;
  1072. border-radius: 3px;
  1073. float:right;
  1074. font-family:Arial,Helvetica,sans-serif;
  1075. font-size:15px;
  1076. line-height:36px;
  1077. margin: 11px 36px 0 0;
  1078. outline:medium none;
  1079. padding:0 0 0 36px;
  1080. text-shadow:1px 1px 0 white;
  1081. }
  1082. .geTemplatesList {
  1083. box-sizing: border-box;
  1084. float: left;
  1085. height: calc(100% - 118px);
  1086. width: 20%;
  1087. border: 1px solid #CCCCCC;
  1088. background-color: #FFFFFF;
  1089. display: inline-block;
  1090. overflow-x: hidden;
  1091. overflow-y: auto;
  1092. }
  1093. .geTempDlgContent {
  1094. box-sizing: border-box;
  1095. float: right;
  1096. height: calc(100% - 118px);
  1097. width: 80%;
  1098. border: 1px solid #CCCCCC;
  1099. background-color: #FFFFFF;
  1100. display: inline-block;
  1101. overflow-x: hidden;
  1102. overflow-y: auto;
  1103. position: relative;
  1104. }
  1105. .geTempDlgFooter {
  1106. box-sizing: border-box;
  1107. height: 52px;
  1108. width: 100%;
  1109. border: 1px solid #CCCCCC;
  1110. border-radius: 0 0 5px 5px;
  1111. background-color: #F5F5F5;
  1112. text-align: right;
  1113. font-family: Helvetica;
  1114. font-size: 14px;
  1115. line-height: 17px;
  1116. padding-top: 11px;
  1117. }
  1118. .geTempDlgCreateBtn, .geTempDlgOpenBtn {
  1119. display: inline-block;
  1120. width: 67px;
  1121. border-radius: 3px;
  1122. background-color: #3D72AD;
  1123. padding: 6px;
  1124. text-align: center;
  1125. color: #fff;
  1126. cursor: pointer;
  1127. margin-left: 5px;
  1128. }
  1129. .geTempDlgCancelBtn {
  1130. display: inline-block;
  1131. width: 67px;
  1132. padding: 6px;
  1133. text-align: center;
  1134. color: #3D72AD;
  1135. cursor: pointer;
  1136. }
  1137. .geTempDlgCancelBtn:active, .geTempDlgCreateBtn:active,
  1138. .geTempDlgOpenBtn:active, .geTempDlgShowAllBtn:active {
  1139. transform: translateY(2px);
  1140. }
  1141. .geTempDlgBtnDisabled {
  1142. background-color: #9fbddd;
  1143. }
  1144. .geTempDlgBtnDisabled:active {
  1145. transform: translateY(0px);
  1146. }
  1147. .geTempDlgBtnBusy {
  1148. background-image: url(/images/aui-wait.gif);
  1149. background-repeat: no-repeat;
  1150. background-position: 62px 7px;
  1151. }
  1152. .geTempDlgBack {
  1153. height: 17px;
  1154. color: #333333;
  1155. font-family: Helvetica;
  1156. font-size: 14px;
  1157. font-weight: bold;
  1158. line-height: 17px;
  1159. padding: 25px 0 0 20px;
  1160. cursor: pointer;
  1161. }
  1162. .geTempDlgHLine {
  1163. height: 1px;
  1164. width: calc(100% - 22px);
  1165. background-color: #CCCCCC;
  1166. margin: 20px 0 0 11px;
  1167. }
  1168. .geTemplatesLbl {
  1169. height: 17px;
  1170. color: #6D6D6D;
  1171. font-family: Helvetica;
  1172. font-size: 14px;
  1173. font-weight: bold;
  1174. line-height: 17px;
  1175. text-transform: uppercase;
  1176. margin: 20px 0 3px 20px;
  1177. }
  1178. .geTemplateCatLink {
  1179. height: 17px;
  1180. color: #3D72AD;
  1181. font-family: Helvetica;
  1182. font-size: 14px;
  1183. line-height: 17px;
  1184. margin: 12px 0 0 20px;
  1185. cursor: pointer;
  1186. }
  1187. .geTempDlgNewDiagramCat {
  1188. height: 280px;
  1189. width: 100%;
  1190. background-color: #555555;
  1191. }
  1192. .geTempDlgNewDiagramCatLbl {
  1193. height: 17px;
  1194. color: #FFFFFF;
  1195. font-family: Helvetica;
  1196. font-size: 14px;
  1197. font-weight: bold;
  1198. line-height: 17px;
  1199. padding: 25px 0 0 20px;
  1200. text-transform: uppercase;
  1201. }
  1202. .geTempDlgNewDiagramCatList {
  1203. width: 100%;
  1204. height: 190px;
  1205. padding-left: 9px;
  1206. box-sizing: border-box;
  1207. overflow-y: auto;
  1208. overflow-x: hidden;
  1209. }
  1210. .geTempDlgNewDiagramCatFooter {
  1211. width: 100%;
  1212. }
  1213. .geTempDlgShowAllBtn {
  1214. width: 78px;
  1215. border: 1px solid #777777;
  1216. border-radius: 3px;
  1217. cursor: pointer;
  1218. text-align: center;
  1219. color: #DDDDDD;
  1220. font-family: Helvetica;
  1221. font-size: 14px;
  1222. line-height: 17px;
  1223. padding: 4px;
  1224. float: right;
  1225. margin-right: 30px;
  1226. }
  1227. .geTempDlgNewDiagramCatItem {
  1228. height: 155px;
  1229. width: 134px;
  1230. padding: 18px 6px 0 9px;
  1231. display: inline-block;
  1232. }
  1233. .geTempDlgNewDiagramCatItemImg {
  1234. box-sizing: border-box;
  1235. height: 134px;
  1236. width: 134px;
  1237. border: 1px solid #CCCCCC;
  1238. border-radius: 3px;
  1239. background-color: #FFFFFF;
  1240. display:table-cell;
  1241. vertical-align:middle;
  1242. text-align:center;
  1243. cursor: pointer;
  1244. }
  1245. .geTempDlgNewDiagramCatItemActive > .geTempDlgNewDiagramCatItemImg {
  1246. border: 4px solid #3D72AD;
  1247. }
  1248. .geTempDlgNewDiagramCatItemLbl {
  1249. height: 17px;
  1250. width: 100%;
  1251. color: #FFFFFF;
  1252. font-family: Helvetica;
  1253. font-size: 14px;
  1254. line-height: 17px;
  1255. text-align: center;
  1256. padding-top: 4px;
  1257. cursor: pointer;
  1258. }
  1259. .geTempDlgDiagramsList {
  1260. box-sizing: border-box;
  1261. width: 100%;
  1262. min-height: calc(100% - 280px);
  1263. padding-left: 9px;
  1264. box-sizing: border-box;
  1265. background-color: #E5E5E5;
  1266. }
  1267. .geTempDlgDiagramsListHeader {
  1268. width: 100%;
  1269. height: 45px;
  1270. padding: 18px 20px 0 11px;
  1271. box-sizing: border-box;
  1272. }
  1273. .geTempDlgDiagramsListTitle {
  1274. box-sizing: border-box;
  1275. height: 17px;
  1276. color: #666666;
  1277. font-family: Helvetica;
  1278. font-size: 14px;
  1279. font-weight: bold;
  1280. line-height: 17px;
  1281. text-transform: uppercase;
  1282. padding-top: 5px;
  1283. display: inline-block;
  1284. }
  1285. .geTempDlgDiagramsListBtns {
  1286. float: right;
  1287. margin-top: -9px;
  1288. }
  1289. .geTempDlgRadioBtn {
  1290. box-sizing: border-box;
  1291. border: 1px solid #CCCCCC;
  1292. border-radius: 3px;
  1293. background-color: #FFFFFF;
  1294. color: #333333;
  1295. display: inline-block;
  1296. font-family: Helvetica;
  1297. font-size: 14px;
  1298. line-height: 17px;
  1299. text-align: center;
  1300. padding: 4px;
  1301. cursor: pointer;
  1302. }
  1303. .geTempDlgRadioBtnActive {
  1304. background-color: #555555;
  1305. color: #FFFFFF;
  1306. }
  1307. .geTempDlgRadioBtnLarge {
  1308. height: 27px;
  1309. width: 120px;
  1310. }
  1311. /* TODO is there a better way for these buttons */
  1312. .geTempDlgRadioBtnSmall {
  1313. position: relative;
  1314. top: 9px;
  1315. height: 27px;
  1316. width: 27px;
  1317. }
  1318. .geTempDlgRadioBtnSmall img {
  1319. position: absolute;
  1320. top: 6px;
  1321. left: 6px;
  1322. height: 13px;
  1323. width: 13px;
  1324. }
  1325. .geTempDlgSpacer {
  1326. display: inline-block;
  1327. width: 10px;
  1328. }
  1329. .geTempDlgDiagramsListGrid {
  1330. width: 100%;
  1331. white-space: nowrap;
  1332. font-size: 13px;
  1333. padding: 0px 20px 20px 10px;
  1334. box-sizing: border-box;
  1335. border-spacing: 0;
  1336. }
  1337. .geTempDlgDiagramsListGrid tr {
  1338. height: 40px;
  1339. }
  1340. .geTempDlgDiagramsListGrid th {
  1341. background-color: #E5E5E5;
  1342. color: #8E8E8E;
  1343. font-weight: bold;
  1344. text-align: left;
  1345. padding: 5px;
  1346. border-bottom: 1px solid #CCCCCC;
  1347. font-size: 14px;
  1348. }
  1349. .geTempDlgDiagramsListGrid td {
  1350. background-color: #FFFFFF;
  1351. color: #888888;
  1352. padding: 5px;
  1353. border-bottom: 1px solid #CCCCCC;
  1354. overflow: hidden;
  1355. }
  1356. .geTempDlgDiagramsListGridActive td {
  1357. border-bottom: 2px solid #3D72AD;
  1358. border-top: 2px solid #3D72AD;
  1359. }
  1360. .geTempDlgDiagramsListGridActive td:first-child {
  1361. border-left: 2px solid #3D72AD;
  1362. }
  1363. .geTempDlgDiagramsListGridActive td:last-child {
  1364. border-right: 2px solid #3D72AD;
  1365. }
  1366. .geTempDlgDiagramTitle {
  1367. font-weight: bold;
  1368. color: #666666 !important;
  1369. }
  1370. .geTempDlgDiagramsTiles {
  1371. position: relative;
  1372. min-height: 100px;
  1373. }
  1374. .geTempDlgDiagramTile {
  1375. height: 152px;
  1376. width: 130px;
  1377. padding: 20px 7px 0 10px;
  1378. display: inline-block;
  1379. position: relative;
  1380. }
  1381. .geTempDlgDiagramTileImg {
  1382. box-sizing: border-box;
  1383. height: 130px;
  1384. width: 130px;
  1385. border: 1px solid #CCCCCC;
  1386. border-radius: 3px;
  1387. background-color: #FFFFFF;
  1388. display:table-cell;
  1389. vertical-align:middle;
  1390. text-align:center;
  1391. }
  1392. .geTempDlgDiagramTileImgLoading {
  1393. background-image: url(/images/aui-wait.gif);
  1394. background-repeat: no-repeat;
  1395. background-position: center;
  1396. }
  1397. .geTempDlgDiagramTileImgError {
  1398. background-image: url(/images/broken.png);
  1399. background-repeat: no-repeat;
  1400. background-position: center;
  1401. background-color: #be3730;
  1402. }
  1403. .geTempDlgDiagramTileImg img{
  1404. max-width: 117px;
  1405. max-height: 117px;
  1406. cursor: pointer;
  1407. }
  1408. .geTempDlgDiagramTileActive > .geTempDlgDiagramTileImg{
  1409. border: 4px solid #3D72AD;
  1410. }
  1411. .geTempDlgDiagramTileLbl {
  1412. height: 17px;
  1413. width: 100%;
  1414. color: #333333;
  1415. font-family: Helvetica;
  1416. font-size: 14px;
  1417. line-height: 17px;
  1418. text-align: center;
  1419. padding-top: 5px;
  1420. cursor: pointer;
  1421. }
  1422. .geTempDlgDiagramPreviewBtn {
  1423. position: absolute;
  1424. top: 28px;
  1425. right: 15px;
  1426. cursor: pointer;
  1427. }
  1428. .geTempDlgDiagramListPreviewBtn {
  1429. cursor: pointer;
  1430. padding-left: 5px;
  1431. padding-right: 15px;
  1432. }
  1433. .geTempDlgDiagramPreviewBox {
  1434. position: absolute;
  1435. top: 3%;
  1436. left: 10%;
  1437. width: 80%;
  1438. height: 94%;
  1439. background: white;
  1440. border: 4px solid #3D72AD;
  1441. border-radius: 6px;
  1442. box-sizing: border-box;
  1443. display:table-cell;
  1444. vertical-align:middle;
  1445. text-align:center;
  1446. z-index: 2;
  1447. }
  1448. .geTempDlgDialogMask {
  1449. position: absolute;
  1450. top: 0;
  1451. left: 0;
  1452. width: 100%;
  1453. height: 100%;
  1454. z-index: 1;
  1455. }
  1456. .geTempDlgDiagramPreviewBox img {
  1457. max-width: 95%;
  1458. max-height: 95%;
  1459. vertical-align: middle;
  1460. }
  1461. .geTempDlgPreviewCloseBtn {
  1462. position: absolute;
  1463. top: 5px;
  1464. right: 5px;
  1465. cursor: pointer;
  1466. }
  1467. .geTempDlgLinkToDiagramHint {
  1468. color: #555;
  1469. }
  1470. .geTempDlgLinkToDiagramBtn {
  1471. color: #555;
  1472. margin: 0 10px 0 10px;
  1473. height: 27px;
  1474. font-size: 14px;
  1475. }
  1476. .geTempDlgErrMsg {
  1477. display: none;
  1478. color: red;
  1479. position: absolute;
  1480. width: 100%;
  1481. text-align: center;
  1482. }
  1483. .geTempDlgImportCat {
  1484. font-weight: bold;
  1485. background: #f9f9f9;
  1486. padding: 5px 0px;
  1487. padding: 10px;
  1488. margin: 10px 10px 0px 0px;
  1489. }
  1490. /* Comments CSS */
  1491. .geCommentsWin {
  1492. user-select: none;
  1493. border: 1px solid whiteSmoke;
  1494. height: 100%;
  1495. margin-bottom: 10px;
  1496. overflow: auto;
  1497. }
  1498. .geCommentsToolbar {
  1499. position: absolute;
  1500. bottom: 0px;
  1501. left: 0px;
  1502. right: 0px;
  1503. overflow: hidden;
  1504. border-width: 1px 0px 0px 0px;
  1505. border-color: #c3c3c3;
  1506. border-style: solid;
  1507. display: block;
  1508. white-space: nowrap;
  1509. }
  1510. .geCommentsList {
  1511. position: absolute;
  1512. overflow: auto;
  1513. left: 0px;
  1514. right: 0px;
  1515. top: 0px;
  1516. }
  1517. .geCommentContainer {
  1518. position: relative;
  1519. padding: 12px;
  1520. margin: 5px;
  1521. min-height: 50px;
  1522. display: block;
  1523. background-color: white;
  1524. border-width: 0px 0px 1px 0px;
  1525. border-color: #c3c3c3;
  1526. border-style: solid;
  1527. border-radius: 10px;
  1528. white-space: nowrap;
  1529. box-shadow: 2px 2px 6px rgba(60,64,67,.15);
  1530. color: #3C4043;
  1531. }
  1532. .geCommentHeader {
  1533. width: 100%;
  1534. height: 32px;
  1535. }
  1536. .geCommentUserImg {
  1537. width: 32px;
  1538. height: 32px;
  1539. border-radius: 50%;
  1540. float: left;
  1541. background-color: whitesmoke;
  1542. }
  1543. .geCommentHeaderTxt {
  1544. overflow: hidden;
  1545. height: 32px;
  1546. padding-left: 5px;
  1547. }
  1548. .geCommentUsername {
  1549. overflow: hidden;
  1550. height: 18px;
  1551. font-size: 15px;
  1552. font-weight: bold;
  1553. text-overflow: ellipsis;
  1554. }
  1555. .geCommentDate {
  1556. color: #707070;
  1557. overflow: hidden;
  1558. height: 14px;
  1559. font-size: 11px;
  1560. text-overflow: ellipsis;
  1561. }
  1562. .geCommentDate::first-letter {
  1563. text-transform: uppercase;
  1564. }
  1565. .geCommentTxt {
  1566. font-size: 14px;
  1567. padding-top: 5px;
  1568. white-space: normal;
  1569. min-height: 12px;
  1570. }
  1571. .geCommentEditTxtArea {
  1572. margin-top: 5px;
  1573. font-size: 14px !important;
  1574. min-height: 12px;
  1575. max-width: 100%;
  1576. min-width: 100%;
  1577. width: 100%;
  1578. box-sizing: border-box;
  1579. }
  1580. .geCommentEditBtns {
  1581. width: 100%;
  1582. box-sizing: border-box;
  1583. padding-top: 5px;
  1584. height: 20px;
  1585. }
  1586. .geCommentEditBtn {
  1587. padding: 3px 8px 3px 8px !important;
  1588. float: right !important;
  1589. margin-left: 5px;
  1590. }
  1591. .geCommentActions {
  1592. color: #707070;
  1593. font-size: 12px;
  1594. }
  1595. .geCommentActionsList {
  1596. list-style-type: disc;
  1597. margin: 0px;
  1598. padding: 10px 0 0 0;
  1599. }
  1600. .geCommentAction {
  1601. display: inline-block;
  1602. padding: 0;
  1603. }
  1604. .geCommentAction:before {
  1605. content: "\2022";
  1606. padding: 5px;
  1607. }
  1608. .geCommentAction:first-child:before {
  1609. content: "";
  1610. padding: 0;
  1611. }
  1612. .geCommentActionLnk {
  1613. cursor: pointer;
  1614. color: #707070;
  1615. text-decoration: none;
  1616. }
  1617. .geCommentActionLnk:hover {
  1618. text-decoration: underline;
  1619. }
  1620. .geCheckedBtn {
  1621. background-color: #ccc;
  1622. border-top: 1px solid black !important;
  1623. border-left: 1px solid black !important;
  1624. }
  1625. .geCommentBusyImg {
  1626. position: absolute;
  1627. top: 5px;
  1628. right: 5px;
  1629. }
  1630. .geAspectDlgListItem
  1631. {
  1632. width : 120px;
  1633. height : 120px;
  1634. display : inline-block;
  1635. border: 3px solid #F0F0F0;
  1636. border-radius: 5px;
  1637. padding: 5px;
  1638. margin : 2px 2px 20px 2px;
  1639. }
  1640. .geAspectDlgListItem:hover
  1641. {
  1642. border: 3px solid #c5c5c5;
  1643. }
  1644. .geAspectDlgListItemSelected
  1645. {
  1646. border: 3px solid #3b73af;
  1647. }
  1648. .geAspectDlgListItemSelected:hover
  1649. {
  1650. border: 3px solid #405a86;
  1651. }
  1652. .geAspectDlgListItemText
  1653. {
  1654. text-overflow: ellipsis;
  1655. max-width: 100%;
  1656. min-height : 2em;
  1657. overflow : hidden;
  1658. text-align : center;
  1659. margin-top : 10px;
  1660. }
  1661. .geAspectDlgList
  1662. {
  1663. min-height: 184px;
  1664. white-space: nowrap;
  1665. }
  1666. .geStripedTable
  1667. {
  1668. border-collapse: collapse;
  1669. width: 100%;
  1670. table-layout: fixed;
  1671. }
  1672. .geStripedTable td, .geStripedTable th
  1673. {
  1674. border: 1px solid #ddd;
  1675. text-align: left;
  1676. padding: 2px;
  1677. white-space: nowrap;
  1678. overflow: hidden;
  1679. text-overflow: ellipsis;
  1680. }
  1681. .geStripedTable tr:nth-child(odd){background-color: #f2f2f2;}
  1682. .geStripedTable tr:hover {background-color: #ddd;}
  1683. .geStripedTable th {
  1684. padding-top: 4px;
  1685. padding-bottom: 4px;
  1686. background-color: #bbb;
  1687. }
  1688. .geNotification-box {
  1689. display:flex;
  1690. text-align: center;
  1691. position: relative;
  1692. cursor: pointer;
  1693. width: 20px;
  1694. }
  1695. .geNotification-bell {
  1696. animation: geBellAnim 1s 1s both;
  1697. }
  1698. .geNotification-bell * {
  1699. display: block;
  1700. margin: 0 auto;
  1701. background-color: #656565;
  1702. }
  1703. .geBell-top {
  1704. width: 2px;
  1705. height: 2px;
  1706. border-radius: 1px 1px 0 0;
  1707. }
  1708. .geBell-middle {
  1709. width: 12px;
  1710. height: 12px;
  1711. margin-top: -1px;
  1712. border-radius: 7px 7px 0 0;
  1713. }
  1714. .geBell-bottom {
  1715. position: relative;
  1716. z-index: 0;
  1717. width: 16px;
  1718. height: 1px;
  1719. }
  1720. .geBell-bottom::before,
  1721. .geBell-bottom::after {
  1722. content: '';
  1723. position: absolute;
  1724. top: -4px;
  1725. }
  1726. .geBell-bottom::before {
  1727. left: 1px;
  1728. border-bottom-width: 4px;
  1729. border-right: 0 solid transparent;
  1730. border-left: 4px solid transparent;
  1731. }
  1732. .geBell-bottom::after {
  1733. right: 1px;
  1734. border-bottom-width: 4px;
  1735. border-right: 4px solid transparent;
  1736. border-left: 0 solid transparent;
  1737. }
  1738. .geBell-rad {
  1739. width: 3px;
  1740. height: 2px;
  1741. margin-top: 0.5px;
  1742. border-radius: 0 0 2px 2px;
  1743. animation: geRadAnim 1s 2s both;
  1744. }
  1745. .geNotification-count {
  1746. position: absolute;
  1747. z-index: 1;
  1748. top: -5px;
  1749. right: -4px;
  1750. width: 13px;
  1751. height: 13px;
  1752. line-height: 13px;
  1753. font-size: 8px;
  1754. border-radius: 50%;
  1755. background-color: #ff4927;
  1756. color: #FFF;
  1757. animation: geZoomAnim 1s 1s both;
  1758. }
  1759. @keyframes geBellAnim {
  1760. 0% { transform: rotate(0); }
  1761. 10% { transform: rotate(30deg); }
  1762. 20% { transform: rotate(0); }
  1763. 80% { transform: rotate(0); }
  1764. 90% { transform: rotate(-30deg); }
  1765. 100% { transform: rotate(0); }
  1766. }
  1767. @keyframes geRadAnim {
  1768. 0% { transform: translateX(0); }
  1769. 10% { transform: translateX(5px); }
  1770. 20% { transform: translateX(0); }
  1771. 80% { transform: translateX(0); }
  1772. 90% { transform: translateX(-5px); }
  1773. 100% { transform: translateX(0); }
  1774. }
  1775. @keyframes geZoomAnim {
  1776. 0% { opacity: 0; transform: scale(0); }
  1777. 50% { opacity: 1; transform: scale(1); }
  1778. 100% { opacity: 1; }
  1779. }
  1780. .geNotifPanel {
  1781. height: 300px;
  1782. width: 300px;
  1783. background: #fff;
  1784. border-radius: 3px;
  1785. overflow: hidden;
  1786. -webkit-box-shadow: 10px 10px 15px 0 rgba(0, 0, 0, 0.3);
  1787. box-shadow: 10px 10px 15px 0 rgba(0, 0, 0, 0.3);
  1788. -webkit-transition: all .5s ease-in-out;
  1789. transition: all .5s ease-in-out;
  1790. position: absolute;
  1791. right: 100px;
  1792. top: 42px;
  1793. z-index: 150;
  1794. }
  1795. .geNotifPanel .header {
  1796. background: #cecece;
  1797. color: #707070;
  1798. font-size: 15px;
  1799. }
  1800. .geNotifPanel .header .title {
  1801. display: block;
  1802. text-align: center;
  1803. line-height: 30px;
  1804. font-weight: 600;
  1805. }
  1806. .geNotifPanel .header .closeBtn {
  1807. position: absolute;
  1808. line-height: 30px;
  1809. cursor: pointer;
  1810. right: 15px;
  1811. top: 0;
  1812. }
  1813. .geNotifPanel .notifications {
  1814. position: relative;
  1815. height: 270px;
  1816. overflow-x: hidden;
  1817. overflow-y: auto;
  1818. }
  1819. .geNotifPanel .notifications .line {
  1820. position: absolute;
  1821. top: 0;
  1822. left: 27px;
  1823. height: 100%;
  1824. width: 3px;
  1825. background: #EBEBEB;
  1826. }
  1827. .geNotifPanel .notifications .notification {
  1828. position: relative;
  1829. z-index: 2;
  1830. margin: 25px 20px 25px 43px;
  1831. }
  1832. .geNotifPanel .notifications .notification:nth-child(n+1) {
  1833. animation: geHere-am-i 0.5s ease-out 0.4s;
  1834. animation-fill-mode: both;
  1835. }
  1836. .geNotifPanel .notifications .notification:hover {
  1837. color: #1B95E0;
  1838. cursor: pointer;
  1839. }
  1840. .geNotifPanel .notifications .notification .circle {
  1841. -webkit-box-sizing: border-box;
  1842. box-sizing: border-box;
  1843. position: absolute;
  1844. height: 11px;
  1845. width: 11px;
  1846. background: #fff;
  1847. border: 2px solid #1B95E0;
  1848. -webkit-box-shadow: 0 0 0 3px #fff;
  1849. box-shadow: 0 0 0 3px #fff;
  1850. border-radius: 6px;
  1851. top: 0;
  1852. left: -20px;
  1853. }
  1854. .geNotifPanel .notifications .notification .circle.active {
  1855. background: #1B95E0;
  1856. }
  1857. .geNotifPanel .notifications .notification .time {
  1858. display: block;
  1859. font-size: 11px;
  1860. line-height: 11px;
  1861. margin-bottom: 2px;
  1862. }
  1863. .geNotifPanel .notifications .notification p {
  1864. font-size: 15px;
  1865. line-height: 20px;
  1866. margin: 0;
  1867. }
  1868. .geNotifPanel .notifications .notification p b {
  1869. font-weight: 600;
  1870. }
  1871. @-webkit-keyframes geHere-am-i {
  1872. from {
  1873. -webkit-transform: translate3d(0, 50px, 0);
  1874. transform: translate3d(0, 50px, 0);
  1875. opacity: 0;
  1876. }
  1877. to {
  1878. -webkit-transform: translate3d(0, 0, 0);
  1879. transform: translate3d(0, 0, 0);
  1880. opacity: 1;
  1881. }
  1882. }
  1883. @keyframes geHere-am-i {
  1884. from {
  1885. -webkit-transform: translate3d(0, 50px, 0);
  1886. transform: translate3d(0, 50px, 0);
  1887. opacity: 0;
  1888. }
  1889. to {
  1890. -webkit-transform: translate3d(0, 0, 0);
  1891. transform: translate3d(0, 0, 0);
  1892. opacity: 1;
  1893. }
  1894. }
  1895. .geTempTree {
  1896. margin: 0;
  1897. padding: 0;
  1898. }
  1899. .geTempTree, .geTempTreeActive, .geTempTreeNested {
  1900. list-style-type: none;
  1901. transition: all 0.5s;
  1902. }
  1903. .geTempTreeCaret {
  1904. box-sizing: border-box;
  1905. cursor: pointer;
  1906. user-select: none;
  1907. padding: 6px;
  1908. width: 100%;
  1909. transition: all 0.5s;
  1910. }
  1911. .geTempTreeCaret::before {
  1912. content: "\25B6";
  1913. display: inline-block;
  1914. font-size: 10px;
  1915. margin-right: 6px;
  1916. }
  1917. .geTempTreeCaret-down::before {
  1918. transform: rotate(90deg);
  1919. }
  1920. .geTempTreeNested {
  1921. height: 0;
  1922. opacity: 0;
  1923. }
  1924. .geTempTreeActive {
  1925. height: 100%;
  1926. opacity: 1;
  1927. }
  1928. .geTempTreeActive, .geTempTreeNested {
  1929. padding-left: 15px;
  1930. }
  1931. .geTempTreeActive > li, .geTempTreeNested > li {
  1932. box-sizing: border-box;
  1933. padding: 3px;
  1934. width: 100%;
  1935. cursor: pointer;
  1936. user-select: none;
  1937. transition: all 0.5s;
  1938. }
  1939. /*Electron Window Controls*/
  1940. #geWindow-controls {
  1941. display: grid;
  1942. grid-template-columns: repeat(3, 30px);
  1943. position: absolute;
  1944. top: 2px;
  1945. right: 3px;
  1946. height: 22px;
  1947. -webkit-app-region: no-drag;
  1948. }
  1949. #geWindow-controls .button {
  1950. grid-row: 1 / span 1;
  1951. display: flex;
  1952. justify-content: center;
  1953. align-items: center;
  1954. width: 100%;
  1955. height: 100%;
  1956. user-select: none;
  1957. }
  1958. #min-button {
  1959. grid-column: 1;
  1960. }
  1961. #max-button, #restore-button {
  1962. grid-column: 2;
  1963. }
  1964. #close-button {
  1965. grid-column: 3;
  1966. }
  1967. #geWindow-controls .button.dark:hover {
  1968. background: rgba(255,255,255,0.1);
  1969. }
  1970. #geWindow-controls .button.dark:active {
  1971. background: rgba(255,255,255,0.2);
  1972. }
  1973. #geWindow-controls .button.white:hover {
  1974. background: rgba(0,0,0,0.1);
  1975. }
  1976. #geWindow-controls .button.white:active {
  1977. background: rgba(0,0,0,0.2);
  1978. }
  1979. #close-button:hover {
  1980. background: #E81123 !important;
  1981. }
  1982. #close-button:active {
  1983. background: #F1707A !important;
  1984. }
  1985. #restore-button {
  1986. display: none !important;
  1987. }
  1988. /*
  1989. .geMaximized #titlebar {
  1990. width: 100%;
  1991. padding: 0;
  1992. }
  1993. */
  1994. .geMaximized #restore-button {
  1995. display: flex !important;
  1996. }
  1997. .geMaximized #max-button {
  1998. display: none;
  1999. }
  2000. [draggable="true"] {
  2001. transform: translate(0, 0);
  2002. z-index: 0;
  2003. }