light_theme.css 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872
  1. /*******************************************************************************
  2. * *
  3. * Fonts *
  4. * *
  5. ******************************************************************************/
  6. @font-face {
  7. src: url('opensans-regular.ttf');
  8. }
  9. @font-face {
  10. src: url('opensans-semibold.ttf');
  11. }
  12. @font-face {
  13. src: url('opensans-bold.ttf');
  14. }
  15. @font-face {
  16. src: url('dosis-bold.ttf');
  17. }
  18. /*******************************************************************************
  19. * *
  20. * Root Styling & Colors *
  21. * *
  22. ******************************************************************************/
  23. .root {
  24. GREEN_0: #373B30;
  25. GREEN_1: #384D14;
  26. GREEN_2: #476611;
  27. GREEN_3: #598016;
  28. GREEN_4: #699917;
  29. GREEN_5: #79B01A;
  30. GREEN_6: #91C734;
  31. GREEN_7: #B9E070;
  32. GREEN_8: #D7E7BA;
  33. GREEN_9: #F3F5F0;
  34. GRAY_0: #222222;
  35. GRAY_1: #3B3B3B;
  36. GRAY_2: #515151;
  37. GRAY_3: #626262;
  38. GRAY_4: #7E7E7E;
  39. GRAY_5: #9E9E9E;
  40. GRAY_6: #B1B1B1;
  41. GRAY_7: #CFCFCF;
  42. GRAY_8: #E1E1E1;
  43. GRAY_9: #F7F7F7;
  44. RED_5: #E74C3C;
  45. ORANGE_5: #E67E22;
  46. YELLOW_5: #F1C40F;
  47. PRIMARY_BG: GREEN_5;
  48. SECONDARY_BG: GRAY_5;
  49. MAIN_BG: GRAY_9;
  50. TEXT_FILL: GRAY_0;
  51. TEXT_FILL_PRIMARY: GREEN_4;
  52. TEXT_FILL_SECONDARY: GRAY_4;
  53. TEXT_FILL_WHITE: white;
  54. CONTROL_BORDER_NORMAL: GRAY_7;
  55. CONTROL_BORDER_FOCUSED: GRAY_5;
  56. CONTROL_BORDER_DISABLED: GRAY_8;
  57. CONTROL_BG_NORMAL: white;
  58. CONTROL_BG_HOVER: GRAY_9;
  59. CONTROL_BG_ARMED: GRAY_8;
  60. CONTROL_BG_DISABLED: GRAY_9;
  61. CONTROL_PRIMARY_BORDER_NORMAL: GREEN_3;
  62. CONTROL_PRIMARY_BORDER_FOCUSED: GREEN_1;
  63. CONTROL_PRIMARY_BORDER_DISABLED: GREEN_5;
  64. CONTROL_PRIMARY_BG_NORMAL: GREEN_5;
  65. CONTROL_PRIMARY_BG_ARMED: GREEN_4;
  66. CONTROL_PRIMARY_BG_DISABLED: GREEN_6;
  67. CONTROL_PRIMARY_LIGHT_BG_NORMAL: GREEN_9;
  68. CONTROL_WHITE_BG_ARMED: GRAY_8;
  69. SCROLL_BAR_THUMB_NORMAL: GRAY_7;
  70. SCROLL_BAR_THUMB_HOVER: GRAY_6;
  71. INDICATOR_BG: RED_5;
  72. PROGRESS_INDICATOR_BEGIN: GRAY_2;
  73. PROGRESS_INDICATOR_END: GRAY_4;
  74. PROGRESS_BAR_BG: GRAY_8;
  75. PASSWORD_STRENGTH_INDICATOR_BG: GRAY_5;
  76. PASSWORD_STRENGTH_INDICATOR_BG_STRENGTH_0: RED_5;
  77. PASSWORD_STRENGTH_INDICATOR_BG_STRENGTH_1: ORANGE_5;
  78. PASSWORD_STRENGTH_INDICATOR_BG_STRENGTH_2: YELLOW_5;
  79. PASSWORD_STRENGTH_INDICATOR_BG_STRENGTH_3: GREEN_6;
  80. PASSWORD_STRENGTH_INDICATOR_BG_STRENGTH_4: GREEN_5;
  81. -fx-background-color: MAIN_BG;
  82. -fx-text-fill: TEXT_FILL;
  83. -fx-font-family: 'Open Sans';
  84. }
  85. /*******************************************************************************
  86. * *
  87. * Labels *
  88. * *
  89. ******************************************************************************/
  90. .label {
  91. -fx-text-fill: TEXT_FILL;
  92. }
  93. .label-secondary {
  94. -fx-text-fill: TEXT_FILL_SECONDARY;
  95. }
  96. .label-large {
  97. -fx-font-family: 'Open Sans SemiBold';
  98. -fx-font-size: 1.5em;
  99. }
  100. .label-small {
  101. -fx-font-size: 0.8em;
  102. }
  103. .text-flow > * {
  104. -fx-fill: TEXT_FILL;
  105. }
  106. /*******************************************************************************
  107. * *
  108. * Glyph Icons *
  109. * *
  110. ******************************************************************************/
  111. .glyph-icon {
  112. -fx-fill: TEXT_FILL;
  113. }
  114. .glyph-icon-primary {
  115. -fx-fill: PRIMARY_BG;
  116. }
  117. .glyph-icon-secondary {
  118. -fx-fill: SECONDARY_BG;
  119. }
  120. .glyph-icon-white {
  121. -fx-fill: white;
  122. }
  123. .glyph-icon-red {
  124. -fx-fill: RED_5;
  125. }
  126. /*******************************************************************************
  127. * *
  128. * Main Window *
  129. * *
  130. ******************************************************************************/
  131. .main-window .title {
  132. -fx-background-color: PRIMARY_BG;
  133. }
  134. .main-window .title .label {
  135. -fx-font-family: 'Dosis';
  136. -fx-font-size: 21px;
  137. -fx-font-style: normal;
  138. -fx-font-weight: 700;
  139. -fx-text-fill: white;
  140. }
  141. .main-window .title .button {
  142. -fx-pref-height: 30px;
  143. -fx-pref-width: 30px;
  144. -fx-background-color: none;
  145. -fx-padding: 0;
  146. }
  147. .main-window .title .button .glyph-icon {
  148. -fx-fill: white;
  149. }
  150. .main-window .title .button:armed .glyph-icon {
  151. -fx-fill: CONTROL_WHITE_BG_ARMED;
  152. }
  153. .main-window .resizer {
  154. -fx-background-color: linear-gradient(to bottom right,
  155. transparent 50%,
  156. CONTROL_BORDER_NORMAL 51%,
  157. CONTROL_BORDER_NORMAL 60%,
  158. transparent 61%,
  159. transparent 70%,
  160. CONTROL_BORDER_NORMAL 71%,
  161. CONTROL_BORDER_NORMAL 80%,
  162. transparent 81%
  163. );
  164. -fx-cursor: nw_resize;
  165. }
  166. .main-window .update-indicator {
  167. -fx-background-color: PRIMARY_BG, white, INDICATOR_BG;
  168. -fx-background-insets: 0, 1px, 2px;
  169. -fx-background-radius: 6px, 5px, 4px;
  170. -fx-translate-x: -1px;
  171. -fx-translate-y: 1px;
  172. }
  173. .main-window .drag-n-drop-indicator {
  174. -fx-border-color: INDICATOR_BG;
  175. -fx-border-width: 3px;
  176. }
  177. .main-window .drag-n-drop-indicator .drag-n-drop-header {
  178. -fx-background-color: INDICATOR_BG;
  179. -fx-padding: 3px;
  180. }
  181. /*******************************************************************************
  182. * *
  183. * TabPane *
  184. * *
  185. ******************************************************************************/
  186. .tab-pane {
  187. -fx-tab-min-height: 2em;
  188. }
  189. .tab-pane > .tab-header-area {
  190. -fx-padding: 6px 12px 0 12px;
  191. -fx-background-color: CONTROL_BORDER_FOCUSED, MAIN_BG;
  192. -fx-background-insets: 0, 0 0 1px 0;
  193. }
  194. .tab-pane > .tab-header-area > .headers-region > .tab {
  195. -fx-background-color: CONTROL_BORDER_NORMAL, MAIN_BG;
  196. -fx-background-insets: 0 0 1px 0, 1px;
  197. -fx-background-radius: 4px 4px 0 0;
  198. -fx-padding: 0.2em 1em 0.2em 1em;
  199. }
  200. .tab-pane > .tab-header-area > .headers-region > .tab:selected {
  201. -fx-background-color: CONTROL_BORDER_FOCUSED, MAIN_BG;
  202. -fx-background-insets: 0, 1px 1px 0 1px;
  203. }
  204. .tab-pane > .tab-header-area > .headers-region > .tab > .tab-container > .tab-label {
  205. -fx-text-fill: TEXT_FILL;
  206. -fx-alignment: CENTER;
  207. }
  208. .tab-pane > .tab-header-area > .headers-region > .tab .glyph-icon {
  209. -fx-fill: SECONDARY_BG;
  210. }
  211. .tab-pane > .tab-header-area > .headers-region > .tab:selected .glyph-icon {
  212. -fx-fill: TEXT_FILL;
  213. }
  214. /*******************************************************************************
  215. * *
  216. * SplitPane *
  217. * *
  218. ******************************************************************************/
  219. .split-pane > .split-pane-divider {
  220. -fx-padding: 0px 1px;
  221. }
  222. .split-pane:horizontal > .split-pane-divider {
  223. -fx-background-color: MAIN_BG, CONTROL_BORDER_NORMAL;
  224. -fx-background-insets: 0, 0 1 0 0;
  225. }
  226. /*******************************************************************************
  227. * *
  228. * Vault List *
  229. * *
  230. ******************************************************************************/
  231. .list-view {
  232. -fx-background-color: CONTROL_BG_NORMAL;
  233. }
  234. .list-view:focused .list-cell:selected {
  235. -fx-background-color: PRIMARY_BG, CONTROL_PRIMARY_LIGHT_BG_NORMAL;
  236. -fx-background-insets: 0, 0 0 0 3px;
  237. }
  238. .list-cell:selected {
  239. -fx-background-color: CONTROL_PRIMARY_LIGHT_BG_NORMAL;
  240. }
  241. .list-cell .glyph-icon {
  242. -fx-fill: SECONDARY_BG;
  243. }
  244. .list-cell .header-label {
  245. -fx-font-family: 'Open Sans SemiBold';
  246. -fx-font-size: 1.0em;
  247. }
  248. .list-cell .detail-label {
  249. -fx-text-fill: TEXT_FILL_SECONDARY;
  250. -fx-font-size: 0.8em;
  251. }
  252. .list-cell:selected .glyph-icon {
  253. -fx-fill: PRIMARY_BG;
  254. }
  255. .list-cell:selected .header-label {
  256. -fx-text-fill: TEXT_FILL_PRIMARY;
  257. }
  258. .list-cell.drop-above {
  259. -fx-border-color: CONTROL_BG_ARMED transparent transparent transparent;
  260. -fx-border-width: 3px 0 0 0;
  261. }
  262. .list-cell.drop-below {
  263. -fx-border-color: transparent transparent CONTROL_BG_ARMED transparent;
  264. -fx-border-width: 0 0 3px 0;
  265. }
  266. .onboarding-overlay-arc {
  267. -fx-stroke: TEXT_FILL;
  268. -fx-fill: transparent;
  269. }
  270. .button.toolbar-button {
  271. -fx-min-height: 40px;
  272. -fx-background-color: transparent;
  273. -fx-background-insets: 0;
  274. -fx-background-radius: 0;
  275. -fx-border-color: CONTROL_BORDER_NORMAL transparent transparent transparent;
  276. -fx-border-width: 1px 0 0 0;
  277. -fx-padding: 0;
  278. }
  279. .button.toolbar-button:focused {
  280. -fx-background-color: CONTROL_BORDER_FOCUSED, MAIN_BG;
  281. -fx-background-insets: 0, 2px 1px 1px 1px;
  282. }
  283. .button.toolbar-button:armed {
  284. -fx-background-color: CONTROL_BG_ARMED;
  285. }
  286. /*******************************************************************************
  287. * *
  288. * ScrollBar *
  289. * *
  290. ******************************************************************************/
  291. .scroll-bar > .thumb {
  292. -fx-background-color: SCROLL_BAR_THUMB_NORMAL;
  293. -fx-background-insets: 1px;
  294. -fx-background-radius: 2px;
  295. }
  296. .scroll-bar > .thumb:hover {
  297. -fx-background-color: SCROLL_BAR_THUMB_HOVER;
  298. }
  299. .scroll-bar:horizontal > .increment-button,
  300. .scroll-bar:horizontal > .decrement-button {
  301. -fx-padding: 3 0 3 0;
  302. }
  303. .scroll-bar:vertical > .increment-button,
  304. .scroll-bar:vertical > .decrement-button {
  305. -fx-padding: 0 3 0 3;
  306. }
  307. /*******************************************************************************
  308. * *
  309. * Badge *
  310. * *
  311. ******************************************************************************/
  312. .badge {
  313. -fx-font-family: 'Open Sans Bold';
  314. -fx-font-size: 0.8em;
  315. -fx-background-radius: 4px;
  316. -fx-padding: 0.2em 0.4em 0.2em 0.4em;
  317. }
  318. .badge-pill {
  319. -fx-background-radius: 1em;
  320. }
  321. .badge-primary {
  322. -fx-text-fill: TEXT_FILL_WHITE;
  323. -fx-background-color: PRIMARY_BG;
  324. }
  325. .badge-secondary {
  326. -fx-text-fill: TEXT_FILL_WHITE;
  327. -fx-background-color: SECONDARY_BG;
  328. }
  329. /*******************************************************************************
  330. * *
  331. * Password Strength Indicator *
  332. * *
  333. ******************************************************************************/
  334. .password-strength-indicator .segment {
  335. -fx-background-color: PASSWORD_STRENGTH_INDICATOR_BG;
  336. }
  337. .password-strength-indicator.strength-0 .segment.active {
  338. -fx-background-color: PASSWORD_STRENGTH_INDICATOR_BG_STRENGTH_0;
  339. }
  340. .password-strength-indicator.strength-1 .segment.active {
  341. -fx-background-color: PASSWORD_STRENGTH_INDICATOR_BG_STRENGTH_1;
  342. }
  343. .password-strength-indicator.strength-2 .segment.active {
  344. -fx-background-color: PASSWORD_STRENGTH_INDICATOR_BG_STRENGTH_2;
  345. }
  346. .password-strength-indicator.strength-3 .segment.active {
  347. -fx-background-color: PASSWORD_STRENGTH_INDICATOR_BG_STRENGTH_3;
  348. }
  349. .password-strength-indicator.strength-4 .segment.active {
  350. -fx-background-color: PASSWORD_STRENGTH_INDICATOR_BG_STRENGTH_4;
  351. }
  352. /*******************************************************************************
  353. * *
  354. * Tooltip *
  355. * *
  356. ******************************************************************************/
  357. .tooltip {
  358. -fx-font-family: 'Open Sans';
  359. -fx-text-fill: TEXT_FILL;
  360. -fx-font-size: 0.8em;
  361. -fx-background-color: CONTROL_BG_NORMAL;
  362. -fx-padding: 0.2em 0.4em 0.2em 0.4em;
  363. -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.5), 2, 0, 0, 0);
  364. }
  365. /*******************************************************************************
  366. * *
  367. * Text Fields *
  368. * *
  369. ******************************************************************************/
  370. .text-input {
  371. -fx-cursor: text;
  372. -fx-text-fill: TEXT_FILL;
  373. -fx-highlight-fill: PRIMARY_BG;
  374. -fx-prompt-text-fill: TEXT_FILL_SECONDARY;
  375. -fx-background-color: CONTROL_BORDER_NORMAL, CONTROL_BG_NORMAL;
  376. -fx-background-insets: 0, 1px;
  377. -fx-background-radius: 4px;
  378. -fx-padding: 0.3em 0.5em 0.3em 0.5em;
  379. }
  380. .text-input:focused {
  381. -fx-background-color: CONTROL_BORDER_FOCUSED, CONTROL_BG_NORMAL;
  382. }
  383. .text-input:disabled {
  384. -fx-text-fill: TEXT_FILL_SECONDARY;
  385. -fx-background-color: CONTROL_BORDER_DISABLED, CONTROL_BG_DISABLED;
  386. }
  387. .nice-secure-password-field .secure-password-field {
  388. -fx-padding: 0.3em 48px 0.3em 0.5em;
  389. }
  390. .nice-secure-password-field .icons {
  391. -fx-width: 42px;
  392. -fx-padding: 4px 6px 4px 0;
  393. }
  394. /*******************************************************************************
  395. * *
  396. * Text Areas *
  397. * *
  398. ******************************************************************************/
  399. .text-area {
  400. -fx-cursor: default;
  401. -fx-background-color: CONTROL_BORDER_NORMAL, CONTROL_BG_NORMAL;
  402. -fx-background-insets: 0, 1px;
  403. -fx-background-radius: 4px;
  404. -fx-padding: 0;
  405. }
  406. .text-input:focused {
  407. -fx-background-color: CONTROL_BORDER_FOCUSED, CONTROL_BG_NORMAL;
  408. }
  409. .text-input:disabled {
  410. -fx-text-fill: TEXT_FILL_SECONDARY;
  411. -fx-background-color: CONTROL_BORDER_DISABLED, CONTROL_BG_DISABLED;
  412. }
  413. .text-area > .scroll-pane > .scroll-bar {
  414. -fx-padding: 2px;
  415. }
  416. .text-area .content {
  417. -fx-padding: 0.2em 0.5em 0.2em 0.5em;
  418. -fx-cursor: text;
  419. -fx-text-fill: TEXT_FILL;
  420. -fx-highlight-fill: PRIMARY_BG;
  421. -fx-prompt-text-fill: TEXT_FILL_SECONDARY;
  422. -fx-background-color: null;
  423. }
  424. /*******************************************************************************
  425. * *
  426. * Buttons *
  427. * *
  428. ******************************************************************************/
  429. .button {
  430. -fx-text-fill: TEXT_FILL;
  431. -fx-alignment: CENTER;
  432. -fx-background-color: CONTROL_BORDER_NORMAL, CONTROL_BG_NORMAL;
  433. -fx-background-insets: 0, 1px;
  434. -fx-background-radius: 4px;
  435. -fx-padding: 0.3em 1em 0.3em 1em;
  436. -fx-graphic-text-gap: 6px;
  437. }
  438. .button:focused {
  439. -fx-background-color: CONTROL_BORDER_FOCUSED, CONTROL_BG_NORMAL;
  440. }
  441. .button:armed {
  442. -fx-background-color: CONTROL_BORDER_NORMAL, CONTROL_BG_ARMED;
  443. }
  444. .button:default {
  445. -fx-text-fill: TEXT_FILL_WHITE;
  446. -fx-background-color: CONTROL_PRIMARY_BORDER_NORMAL, CONTROL_PRIMARY_BG_NORMAL;
  447. }
  448. .button:default:focused {
  449. -fx-background-color: CONTROL_PRIMARY_BORDER_FOCUSED, CONTROL_PRIMARY_BG_NORMAL;
  450. }
  451. .button:default:armed {
  452. -fx-background-color: CONTROL_PRIMARY_BORDER_NORMAL, CONTROL_PRIMARY_BG_ARMED;
  453. }
  454. .button:disabled,
  455. .button:default:disabled {
  456. -fx-text-fill: TEXT_FILL_SECONDARY;
  457. -fx-background-color: CONTROL_BORDER_DISABLED, CONTROL_BG_DISABLED;
  458. }
  459. .button:disabled .glyph-icon {
  460. -fx-fill: TEXT_FILL_SECONDARY;
  461. }
  462. .button:default .glyph-icon {
  463. -fx-fill: TEXT_FILL_WHITE;
  464. }
  465. .button:default .label {
  466. -fx-text-fill: TEXT_FILL_WHITE;
  467. }
  468. .button-large {
  469. -fx-font-size: 1.25em;
  470. -fx-padding: 0.6em 1.5em 0.6em 1.5em;
  471. -fx-graphic-text-gap: 9px;
  472. }
  473. /*******************************************************************************
  474. * *
  475. * Hyperlinks *
  476. * *
  477. ******************************************************************************/
  478. .hyperlink {
  479. -fx-text-fill: TEXT_FILL;
  480. -fx-graphic-text-gap: 6px;
  481. }
  482. .hyperlink.hyperlink-secondary {
  483. -fx-text-fill: TEXT_FILL_SECONDARY;
  484. }
  485. .hyperlink-hover-icon {
  486. -fx-content-display: text-only;
  487. }
  488. .hyperlink-hover-icon:hover {
  489. -fx-content-display: right;
  490. }
  491. /*******************************************************************************
  492. * *
  493. * CheckBox *
  494. * *
  495. ******************************************************************************/
  496. .check-box {
  497. -fx-text-fill: TEXT_FILL;
  498. -fx-label-padding: 0 0 0 6px;
  499. -fx-padding: 4px 0 4px 0;
  500. }
  501. .check-box:disabled {
  502. -fx-text-fill: TEXT_FILL_SECONDARY;
  503. }
  504. .check-box > .box {
  505. -fx-background-color: CONTROL_BORDER_NORMAL, CONTROL_BG_NORMAL;
  506. -fx-background-insets: 0, 1px;
  507. -fx-background-radius: 4px;
  508. -fx-padding: 0.3em;
  509. }
  510. .check-box:focused > .box {
  511. -fx-background-color: CONTROL_BORDER_FOCUSED, CONTROL_BG_NORMAL;
  512. }
  513. .check-box:disabled > .box {
  514. -fx-background-color: CONTROL_BORDER_DISABLED, CONTROL_BG_DISABLED;
  515. }
  516. .check-box > .box > .mark {
  517. -fx-background-color: transparent;
  518. -fx-padding: 0.4em;
  519. -fx-shape: "M-1,4, L-1,5.5 L3.5,8.5 L9,0 L9,-1 L7,-1 L3,6 L1,4 Z";
  520. }
  521. .check-box:selected > .box > .mark {
  522. -fx-background-color: TEXT_FILL;
  523. }
  524. /*******************************************************************************
  525. * *
  526. * RadioButton *
  527. * *
  528. ******************************************************************************/
  529. .radio-button {
  530. -fx-text-fill: TEXT_FILL;
  531. -fx-label-padding: 0 0 0 6px;
  532. -fx-padding: 4px 0 4px 0;
  533. }
  534. .radio-button > .radio {
  535. -fx-border-color: CONTROL_BORDER_NORMAL;
  536. -fx-border-radius: 1em; /* large value to make sure this remains circular */
  537. -fx-background-color: CONTROL_BG_NORMAL;
  538. -fx-background-radius: 1em;
  539. -fx-padding: 0.3em; /* padding from outside edge to the inner black dot */
  540. }
  541. .radio-button:focused > .radio {
  542. -fx-border-color: CONTROL_BORDER_FOCUSED;
  543. }
  544. .text-input:disabled > .radio {
  545. -fx-border-color: CONTROL_BORDER_DISABLED;
  546. -fx-background-color: CONTROL_BG_DISABLED;
  547. }
  548. .radio-button > .radio > .dot {
  549. -fx-background-color: transparent;
  550. -fx-background-radius: 1em; /* large value to make sure this remains circular */
  551. -fx-padding: 0.2em; /* radius of the inner black dot when selected */
  552. }
  553. .radio-button:selected > .radio > .dot {
  554. -fx-background-color: TEXT_FILL;
  555. }
  556. /*******************************************************************************
  557. * *
  558. * ChoiceBox *
  559. * *
  560. ******************************************************************************/
  561. .choice-box {
  562. -fx-background-color: CONTROL_BORDER_NORMAL, CONTROL_BG_NORMAL;
  563. -fx-background-insets: 0, 1px;
  564. -fx-background-radius: 4px;
  565. -fx-padding: 0.3em 0.5em 0.3em 0.5em;
  566. }
  567. .choice-box:focused {
  568. -fx-background-color: CONTROL_BORDER_FOCUSED, CONTROL_BG_NORMAL;
  569. }
  570. .choice-box:disabled {
  571. -fx-background-color: CONTROL_BORDER_DISABLED, CONTROL_BG_DISABLED;
  572. }
  573. .choice-box > .label {
  574. -fx-text-fill: TEXT_FILL;
  575. }
  576. .choice-box:disabled > .label {
  577. -fx-text-fill: TEXT_FILL_SECONDARY;
  578. }
  579. .choice-box > .open-button {
  580. -fx-padding: 0 0 0 0.3em;
  581. }
  582. .choice-box > .open-button > .arrow {
  583. -fx-background-color: transparent, TEXT_FILL;
  584. -fx-background-insets: 0 0 -1 0, 0;
  585. -fx-padding: 0.15em 0.3em 0.15em 0.3em;
  586. -fx-shape: "M 0 0 h 7 l -3.5 4 z";
  587. }
  588. .choice-box:disabled > .open-button > .arrow {
  589. -fx-background-color: transparent, TEXT_FILL_SECONDARY;
  590. }
  591. .choice-box .context-menu {
  592. -fx-translate-x: -1.4em;
  593. }
  594. /*******************************************************************************
  595. * *
  596. * ContextMenu *
  597. * *
  598. ******************************************************************************/
  599. .context-menu {
  600. -fx-background-color: CONTROL_BORDER_NORMAL, CONTROL_BG_NORMAL;
  601. -fx-background-insets: 0, 1px;
  602. -fx-background-radius: 4px;
  603. -fx-padding: 0.2em 0 0.2em 0;
  604. -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.2), 8, 0, 0, 0);
  605. }
  606. /*******************************************************************************
  607. * *
  608. * MenuItem *
  609. * *
  610. ******************************************************************************/
  611. .menu-item {
  612. -fx-padding: 0.2em 0.4em 0.2em 0.4em;
  613. }
  614. .menu-item:focused {
  615. -fx-background-color: transparent, CONTROL_BG_ARMED;
  616. -fx-background-insets: 0, 0 1px 0 1px;
  617. }
  618. .menu-item:disabled {
  619. -fx-background-color: transparent;
  620. }
  621. .menu-item > .left-container {
  622. -fx-padding: 0.5em 0.25em 0.5em 0.5em;
  623. }
  624. .menu-item > .label {
  625. -fx-padding: 1px 0.5em 1px 0.5em;
  626. }
  627. .menu-item:disabled > .label {
  628. -fx-text-fill: TEXT_FILL_SECONDARY;
  629. }
  630. .radio-menu-item:checked > .left-container > .radio {
  631. -fx-background-color: TEXT_FILL;
  632. -fx-shape: "M-1,4, L-1,5.5 L3.5,8.5 L9,0 L9,-1 L7,-1 L3,6 L1,4 Z";
  633. -fx-scale-shape: false;
  634. }
  635. /*******************************************************************************
  636. * *
  637. * ProgressIndicator *
  638. * Derived from aquafx-project.com, (C) Claudine Zillmann, see NOTICE.md *
  639. * *
  640. ******************************************************************************/
  641. .progress-indicator {
  642. -fx-indeterminate-segment-count: 12;
  643. -fx-spin-enabled: true;
  644. }
  645. .progress-indicator:indeterminate > .spinner {
  646. -fx-padding: 0.083333em;
  647. }
  648. .progress-indicator:indeterminate .segment {
  649. -fx-background-color: PROGRESS_INDICATOR_BEGIN, PROGRESS_INDICATOR_END;
  650. -fx-background-insets: 0, 0.5;
  651. }
  652. .progress-indicator:indeterminate .segment0 {
  653. -fx-shape:"m 12.007729,4.9541827 c -0.49762,0.7596865 0.893181,1.6216808 1.327833,0.7666252 L 15.456199,2.0477574 C 15.942094,1.2061627 14.61426,0.43953765 14.128365,1.2811324 z";
  654. }
  655. .progress-indicator:indeterminate .segment1 {
  656. -fx-shape:"m 9.2224559,4.62535 c -0.051108,0.9067177 1.5843581,0.957826 1.5332501,0 l 0,-4.24127319 c 0,-0.9717899 -1.5332501,-0.9717899 -1.5332501,0 z";
  657. }
  658. .progress-indicator:indeterminate .segment2 {
  659. -fx-shape:"M 8.0465401,4.9030617 C 8.5441601,5.6627485 7.1533584,6.5247425 6.7187068,5.6696872 L 4.5980702,1.9966363 C 4.1121752,1.1550418 5.4400085,0.38841683 5.9259035,1.2300114 z";
  660. }
  661. .progress-indicator:indeterminate .segment3 {
  662. -fx-shape:"M 5.7330066,6.5305598 C 6.5579512,6.9103162 5.8366865,8.3790371 5.0144939,7.8850315 L 1.2677551,5.8974832 C 0.409277,5.4420823 1.1277888,4.0876101 1.9862674,4.5430105 z";
  663. }
  664. .progress-indicator:indeterminate .segment4 {
  665. -fx-shape:"m 0.42171041,9.2083842 c -0.90671825,-0.051108 -0.95782608,1.5843588 0,1.5332498 l 4.24127319,0 c 0.9717899,0 0.9717899,-1.5332498 0,-1.5332498 z";
  666. }
  667. .progress-indicator:indeterminate .segment5 {
  668. -fx-shape:"M 5.7330066,13.443113 C 6.5579512,13.063356 5.8366865,11.594635 5.0144939,12.088641 L 1.2677551,14.076189 C 0.409277,14.53159 1.1277888,15.886062 1.9862674,15.430662 z";
  669. }
  670. .progress-indicator:indeterminate .segment6 {
  671. -fx-shape:"M 8.0465401,15.070611 C 8.5441601,14.310924 7.1533584,13.44893 6.7187068,14.303985 l -2.1206366,3.673051 c -0.485895,0.841595 0.8419383,1.60822 1.3278333,0.766625 z";
  672. }
  673. .progress-indicator:indeterminate .segment7 {
  674. -fx-shape:"m 9.2224559,19.539943 c -0.051108,0.906718 1.5843581,0.957826 1.5332501,0 l 0,-4.241273 c 0,-0.97179 -1.5332501,-0.97179 -1.5332501,0 z";
  675. }
  676. .progress-indicator:indeterminate .segment8 {
  677. -fx-shape:"m 12.10997,15.070611 c -0.49762,-0.759687 0.893182,-1.621681 1.327834,-0.766626 l 2.120636,3.673051 c 0.485895,0.841595 -0.841938,1.60822 -1.327833,0.766625 z";
  678. }
  679. .progress-indicator:indeterminate .segment9 {
  680. -fx-shape:"m 14.423504,13.443113 c -0.824945,-0.379757 -0.10368,-1.848478 0.718512,-1.354472 l 3.746739,1.987548 c 0.858478,0.455401 0.139967,1.809873 -0.718512,1.354473 z";
  681. }
  682. .progress-indicator:indeterminate .segment10 {
  683. -fx-shape:"m 15.372451,9.2445322 c -0.906719,-0.051108 -0.957826,1.5843588 0,1.5332498 l 4.241273,0 c 0.97179,0 0.97179,-1.5332498 0,-1.5332498 z";
  684. }
  685. .progress-indicator:indeterminate .segment11 {
  686. -fx-shape:"m 14.321262,6.5816808 c -0.824944,0.3797564 -0.10368,1.8484772 0.718513,1.3544717 L 18.786514,5.9486042 C 19.644992,5.4932031 18.92648,4.1387308 18.068001,4.5941315 z";
  687. }
  688. /*******************************************************************************
  689. * *
  690. * ProgressBar *
  691. * *
  692. ******************************************************************************/
  693. .progress-bar {
  694. -fx-indeterminate-bar-length: 100;
  695. -fx-indeterminate-bar-escape: true;
  696. -fx-indeterminate-bar-flip: true;
  697. -fx-indeterminate-bar-animation-time: 2;
  698. }
  699. .progress-bar > .bar {
  700. -fx-background-color: CONTROL_PRIMARY_BG_NORMAL;
  701. -fx-background-radius: 4px;
  702. -fx-padding: 0.5em;
  703. }
  704. .progress-bar:indeterminate > .bar {
  705. -fx-background-color: linear-gradient(to left, transparent, CONTROL_PRIMARY_BG_NORMAL);
  706. }
  707. .progress-bar > .track {
  708. -fx-background-color: PROGRESS_BAR_BG;
  709. -fx-background-radius: 4px;
  710. }