From 5f1d2b40dc493acdd5ead5ac0529194c41dc1cc8 Mon Sep 17 00:00:00 2001
From: Ben Woosley <ben.woosley@gmail.com>
Date: Sun, 31 Dec 2017 12:03:06 -0800
Subject: [PATCH 1/4] fix(style-lint): Run style lints against the scss

Rather than non-existant css.
---
 package.json | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package.json b/package.json
index 8553b88a..ea2a20fa 100644
--- a/package.json
+++ b/package.json
@@ -14,8 +14,8 @@
     "lint": "cross-env NODE_ENV=development eslint --cache --format=node_modules/eslint-formatter-pretty .",
     "lint-ci": "npm run lint && npm run flow",
     "lint-fix": "npm run lint -- --fix",
-    "lint-styles": "stylelint app/*.css app/components/*.css --syntax scss",
-    "lint-styles-fix": "stylefmt -r app/*.css app/components/*.css",
+    "lint-styles": "stylelint app/*.scss app/components/*.scss --syntax scss",
+    "lint-styles-fix": "stylefmt -r app/*.scss app/components/*.scss",
     "package": "npm run build && build --publish never",
     "package-all": "npm run build && build -mwl",
     "package-linux": "npm run build && build --linux",

From ed5ad6cb1c234904b2881da95247624625ce3ecf Mon Sep 17 00:00:00 2001
From: Ben Woosley <ben.woosley@gmail.com>
Date: Sun, 31 Dec 2017 12:04:27 -0800
Subject: [PATCH 2/4] fix(style-lint): Drop stylefmt in favor of stylelint
 --fix

From stylefmt's readme:

  Consider other tools before adopting stylefmt
  If you are using stylefmt with stylelint configuration to format according
  to its rules, you can now use stylelint's --fix option (from v7.11.0) to autofix.
---
 package.json |   3 +-
 yarn.lock    | 136 ++-------------------------------------------------
 2 files changed, 5 insertions(+), 134 deletions(-)

diff --git a/package.json b/package.json
index ea2a20fa..bb44ab86 100644
--- a/package.json
+++ b/package.json
@@ -15,7 +15,7 @@
     "lint-ci": "npm run lint && npm run flow",
     "lint-fix": "npm run lint -- --fix",
     "lint-styles": "stylelint app/*.scss app/components/*.scss --syntax scss",
-    "lint-styles-fix": "stylefmt -r app/*.scss app/components/*.scss",
+    "lint-styles-fix": "stylelint --fix app/*.scss app/components/*.scss --syntax scss",
     "package": "npm run build && build --publish never",
     "package-all": "npm run build && build -mwl",
     "package-linux": "npm run build && build --linux",
@@ -189,7 +189,6 @@
     "sinon": "^2.3.5",
     "spectron": "^3.7.0",
     "style-loader": "^0.18.1",
-    "stylefmt": "^6.0.0",
     "stylelint": "^7.12.0",
     "stylelint-config-standard": "^16.0.0",
     "url-loader": "^0.5.8",
diff --git a/yarn.lock b/yarn.lock
index ce17efcb..3305067c 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1677,7 +1677,7 @@ bluebird-lst@^1.0.5:
   dependencies:
     bluebird "^3.5.1"
 
-bluebird@^3.0.5, bluebird@^3.4.7, bluebird@^3.5.0:
+bluebird@^3.4.7, bluebird@^3.5.0:
   version "3.5.0"
   resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c"
 
@@ -2598,16 +2598,6 @@ crypto-random-string@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e"
 
-css-color-list@^0.0.1:
-  version "0.0.1"
-  resolved "https://registry.yarnpkg.com/css-color-list/-/css-color-list-0.0.1.tgz#8718e8695ae7a2cc8787be8715f1c008a7f28b15"
-  dependencies:
-    css-color-names "0.0.1"
-
-css-color-names@0.0.1:
-  version "0.0.1"
-  resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.1.tgz#5d0548fa256456ede4a9a0c2ac7ab19d3eb1ad81"
-
 css-color-names@0.0.3:
   version "0.0.3"
   resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.3.tgz#de0cef16f4d8aa8222a320d5b6d7e9bbada7b9f6"
@@ -3162,15 +3152,6 @@ ecurve@^1.0.0:
   dependencies:
     bigi "^1.1.0"
 
-editorconfig@^0.13.2:
-  version "0.13.2"
-  resolved "https://registry.yarnpkg.com/editorconfig/-/editorconfig-0.13.2.tgz#8e57926d9ee69ab6cb999f027c2171467acceb35"
-  dependencies:
-    bluebird "^3.0.5"
-    commander "^2.9.0"
-    lru-cache "^3.2.0"
-    sigmund "^1.0.1"
-
 ee-first@1.1.1:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
@@ -4755,10 +4736,6 @@ html-minifier@^3.2.3:
     relateurl "0.2.x"
     uglify-js "3.0.x"
 
-html-tags@^1.1.1:
-  version "1.1.1"
-  resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-1.1.1.tgz#869f43859f12d9bdc3892419e494a628aa1b204e"
-
 html-tags@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-2.0.0.tgz#10b30a386085f43cede353cc8fa7cb0deeea668b"
@@ -6128,12 +6105,6 @@ lowercase-keys@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306"
 
-lru-cache@^3.2.0:
-  version "3.2.0"
-  resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-3.2.0.tgz#71789b3b7f5399bec8565dda38aa30d2a097efee"
-  dependencies:
-    pseudomap "^1.0.1"
-
 lru-cache@^4.0.1:
   version "4.1.1"
   resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55"
@@ -7314,12 +7285,6 @@ postcss-scss@^0.4.0:
   dependencies:
     postcss "^5.2.13"
 
-postcss-scss@^1.0.0:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-1.0.2.tgz#ff45cf3354b879ee89a4eb68680f46ac9bb14f94"
-  dependencies:
-    postcss "^6.0.3"
-
 postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.1.1, postcss-selector-parser@^2.2.2:
   version "2.2.3"
   resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz#f9437788606c3c9acee16ffe8d8b16297f27bb90"
@@ -7328,13 +7293,6 @@ postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.1.1, postcss-selector
     indexes-of "^1.0.1"
     uniq "^1.0.1"
 
-postcss-sorting@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/postcss-sorting/-/postcss-sorting-2.1.0.tgz#32b1e9afa913bb225a6ad076d503d8f983bb4a82"
-  dependencies:
-    lodash "^4.17.4"
-    postcss "^5.2.17"
-
 postcss-svgo@^2.1.1:
   version "2.1.6"
   resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-2.1.6.tgz#b6df18aa613b666e133f08adb5219c2684ac108d"
@@ -7364,7 +7322,7 @@ postcss-zindex@^2.0.1:
     postcss "^5.0.4"
     uniqs "^2.0.0"
 
-postcss@^5.0.0, postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.18, postcss@^5.0.2, postcss@^5.0.20, postcss@^5.0.21, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.13, postcss@^5.2.16, postcss@^5.2.17, postcss@^5.2.4:
+postcss@^5.0.0, postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.18, postcss@^5.0.2, postcss@^5.0.20, postcss@^5.0.21, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.13, postcss@^5.2.16, postcss@^5.2.4:
   version "5.2.17"
   resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.17.tgz#cf4f597b864d65c8a492b2eabe9d706c879c388b"
   dependencies:
@@ -7381,14 +7339,6 @@ postcss@^6.0.1:
     source-map "^0.5.6"
     supports-color "^3.2.3"
 
-postcss@^6.0.3:
-  version "6.0.3"
-  resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.3.tgz#b7f565b3d956fbb8565ca7c1e239d0506e427d8b"
-  dependencies:
-    chalk "^1.1.3"
-    source-map "^0.5.6"
-    supports-color "^4.0.0"
-
 prebuild-install@^2.3.0:
   version "2.4.1"
   resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-2.4.1.tgz#c28ba1d1eedc17fbd6b3229a657ffc0fba479b49"
@@ -7510,7 +7460,7 @@ ps-node@^0.1.6:
   dependencies:
     table-parser "^0.1.3"
 
-pseudomap@^1.0.1, pseudomap@^1.0.2:
+pseudomap@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
 
@@ -8425,10 +8375,6 @@ shellwords@^0.1.0:
   version "0.1.0"
   resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.0.tgz#66afd47b6a12932d9071cbfd98a52e785cd0ba14"
 
-sigmund@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590"
-
 signal-exit@^3.0.0, signal-exit@^3.0.2:
   version "3.0.2"
   resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
@@ -8684,10 +8630,6 @@ stat-mode@^0.2.2:
   version "1.3.1"
   resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e"
 
-stdin@^0.0.1:
-  version "0.0.1"
-  resolved "https://registry.yarnpkg.com/stdin/-/stdin-0.0.1.tgz#d3041981aaec3dfdbc77a1b38d6372e38f5fb71e"
-
 stdout-stream@^1.4.0:
   version "1.4.0"
   resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b"
@@ -8831,24 +8773,6 @@ style-search@^0.1.0:
   version "0.1.0"
   resolved "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz#7958c793e47e32e07d2b5cafe5c0bf8e12e77902"
 
-stylefmt@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.yarnpkg.com/stylefmt/-/stylefmt-6.0.0.tgz#c851e9c2d78b8a99502f74ba3d863b30163eec93"
-  dependencies:
-    chalk "^1.1.3"
-    css-color-list "^0.0.1"
-    diff "^3.2.0"
-    editorconfig "^0.13.2"
-    globby "^6.1.0"
-    minimist "^1.2.0"
-    postcss "^6.0.1"
-    postcss-scss "^1.0.0"
-    postcss-sorting "^2.1.0"
-    postcss-value-parser "^3.3.0"
-    stdin "^0.0.1"
-    stylelint "^7.10.1"
-    stylelint-order "^0.4.4"
-
 stylehacks@^2.3.2:
   version "2.3.2"
   resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-2.3.2.tgz#64c83e0438a68c9edf449e8c552a7d9ab6009b0b"
@@ -8869,59 +8793,7 @@ stylelint-config-standard@^16.0.0:
   version "16.0.0"
   resolved "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-16.0.0.tgz#bb7387bff1d7dd7186a52b3ebf885b2405d691bf"
 
-stylelint-order@^0.4.4:
-  version "0.4.4"
-  resolved "https://registry.yarnpkg.com/stylelint-order/-/stylelint-order-0.4.4.tgz#db7dfca0541b5062010c7e2e21e745791fc088ac"
-  dependencies:
-    lodash "^4.17.4"
-    postcss "^5.2.16"
-    stylelint "^7.9.0"
-
-stylelint@^7.10.1:
-  version "7.11.0"
-  resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-7.11.0.tgz#4816372ecd0afd2c30fe53f4f6a00eb04960dbfc"
-  dependencies:
-    autoprefixer "^6.0.0"
-    balanced-match "^0.4.0"
-    chalk "^1.1.1"
-    colorguard "^1.2.0"
-    cosmiconfig "^2.1.1"
-    debug "^2.6.0"
-    doiuse "^2.4.1"
-    execall "^1.0.0"
-    file-entry-cache "^2.0.0"
-    get-stdin "^5.0.0"
-    globby "^6.0.0"
-    globjoin "^0.1.4"
-    html-tags "^1.1.1"
-    ignore "^3.2.0"
-    imurmurhash "^0.1.4"
-    known-css-properties "^0.2.0"
-    lodash "^4.17.4"
-    log-symbols "^1.0.2"
-    mathml-tag-names "^2.0.0"
-    meow "^3.3.0"
-    micromatch "^2.3.11"
-    normalize-selector "^0.2.0"
-    pify "^2.3.0"
-    postcss "^5.0.20"
-    postcss-less "^0.14.0"
-    postcss-media-query-parser "^0.2.0"
-    postcss-reporter "^3.0.0"
-    postcss-resolve-nested-selector "^0.1.1"
-    postcss-scss "^0.4.0"
-    postcss-selector-parser "^2.1.1"
-    postcss-value-parser "^3.1.1"
-    resolve-from "^3.0.0"
-    specificity "^0.3.0"
-    string-width "^2.0.0"
-    style-search "^0.1.0"
-    stylehacks "^2.3.2"
-    sugarss "^0.2.0"
-    svg-tags "^1.0.0"
-    table "^4.0.1"
-
-stylelint@^7.12.0, stylelint@^7.9.0:
+stylelint@^7.12.0:
   version "7.12.0"
   resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-7.12.0.tgz#bf302c265d7c2d6fe79b154a9fd873a80f8b4aa4"
   dependencies:

From 7acb971c05e122e2d77949fc59863e174c16a4b6 Mon Sep 17 00:00:00 2001
From: Ben Woosley <ben.woosley@gmail.com>
Date: Tue, 2 Jan 2018 16:44:49 -0800
Subject: [PATCH 3/4] fix(style-lint): Bump stylelint and config to latest, fix
 lints

---
 .stylelintignore            |   1 +
 app/animated_checkmark.scss |  18 +++---
 app/app.global.scss         |  57 ++++++++++--------
 app/keyframes.scss          |  34 ++++++-----
 app/tooltip.scss            | 117 ++++++++++++++++++++++--------------
 app/variables.scss          |  24 ++++----
 package.json                |   4 +-
 7 files changed, 147 insertions(+), 108 deletions(-)
 create mode 100644 .stylelintignore

diff --git a/.stylelintignore b/.stylelintignore
new file mode 100644
index 00000000..34594923
--- /dev/null
+++ b/.stylelintignore
@@ -0,0 +1 @@
+app/reset.scss
diff --git a/app/animated_checkmark.scss b/app/animated_checkmark.scss
index 48c9e0db..5ef7cc0b 100644
--- a/app/animated_checkmark.scss
+++ b/app/animated_checkmark.scss
@@ -1,4 +1,4 @@
-$curve: cubic-bezier(0.650, 0.000, 0.450, 1.000);
+$curve: cubic-bezier(0.65, 0, 0.45, 1);
 
 .checkmark__circle {
   stroke-dasharray: 166;
@@ -7,7 +7,7 @@ $curve: cubic-bezier(0.650, 0.000, 0.450, 1.000);
   stroke-miterlimit: 10;
   stroke: $green;
   fill: none;
-  animation: stroke .6s $curve forwards;
+  animation: stroke 0.6s $curve forwards;
 }
 
 .checkmark {
@@ -17,15 +17,15 @@ $curve: cubic-bezier(0.650, 0.000, 0.450, 1.000);
   stroke-width: 2;
   stroke: #fff;
   stroke-miterlimit: 10;
-  box-shadow: inset 0px 0px 0px $green;
-  animation: fill .4s ease-in-out .4s forwards, scale .3s ease-in-out .9s both;
+  box-shadow: inset 0 0 0 $green;
+  animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both;
 }
 
 .checkmark__check {
   transform-origin: 50% 50%;
   stroke-dasharray: 48;
   stroke-dashoffset: 48;
-  animation: stroke .3s $curve .8s forwards;
+  animation: stroke 0.3s $curve 0.8s forwards;
 }
 
 @keyframes stroke {
@@ -35,9 +35,11 @@ $curve: cubic-bezier(0.650, 0.000, 0.450, 1.000);
 }
 
 @keyframes scale {
-  0%, 100% {
+  0%,
+  100% {
     transform: none;
   }
+
   50% {
     transform: scale3d(1.1, 1.1, 1);
   }
@@ -45,6 +47,6 @@ $curve: cubic-bezier(0.650, 0.000, 0.450, 1.000);
 
 @keyframes fill {
   100% {
-    box-shadow: inset 0px 0px 0px 30px $green;
+    box-shadow: inset 0 0 0 30px $green;
   }
-}
\ No newline at end of file
+}
diff --git a/app/app.global.scss b/app/app.global.scss
index e24fe2be..f026e4fb 100644
--- a/app/app.global.scss
+++ b/app/app.global.scss
@@ -20,13 +20,16 @@ body {
   height: 100vh;
   box-sizing: border-box;
   -webkit-font-smoothing: antialiased;
-  -webkit-tap-highlight-color: rgba(255,255,255,0);
-  font-family: 'Roboto';
+  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
+  font-family: 'Roboto', Arial, Helvetica, sans-serif;
 }
 
 // disable the pinball scrollers for windows
-*, input[type=text], input[type=number] {
-  &::-webkit-inner-spin-button, &::-webkit-outer-spin-button {
+*,
+input[type=text],
+input[type=number] {
+  &::-webkit-inner-spin-button,
+  &::-webkit-outer-spin-button {
     -webkit-appearance: none;
   }
 }
@@ -60,15 +63,18 @@ body {
     opacity: 1;
     stroke: $main;
   }
-  15%{
+
+  15% {
     opacity: 1;
     stroke: $main;
   }
-  70%{
+
+  70% {
     opacity: 1;
     stroke: $main;
   }
-  100%{
+
+  100% {
     stroke-dashoffset: 0;
     opacity: 1;
     stroke: darken($main, 10%);
@@ -83,26 +89,19 @@ body {
 
 // buttons
 
-.buttonPrimary, .buttonSecondary {
+.buttonPrimary,
+.buttonSecondary {
   -webkit-user-select: none;
   cursor: pointer;
   display: block;
-  padding-left: 30px;
-  padding-right: 30px;
-  padding-top: 18px;
-  padding-bottom: 15px;
+  padding: 18px 30px 15px;
   border-radius: 2px;
   text-align: center;
   font-size: 16px;
   letter-spacing: 1.5px;
   transition: none;
   position: relative;
-  color: white;
-
-  &:active {
-   transform: translate(0px, 3px);
-   outline: 0;
-  }
+  color: $white;
 }
 
 .buttonPrimary {
@@ -110,7 +109,7 @@ body {
   box-shadow: 0 3px 0 0 darken($main, 10%);
 
   &:active {
-   box-shadow: inset 0 1px 1px 1px darken($main, 10%);
+    box-shadow: inset 0 1px 1px 1px darken($main, 10%);
   }
 }
 
@@ -129,10 +128,16 @@ body {
   box-shadow: 0 3px 0 0 darken($secondary, 10%);
 
   &:active {
-   box-shadow: inset 0 1px 1px 1px darken($secondary, 10%);
+    box-shadow: inset 0 1px 1px 1px darken($secondary, 10%);
   }
 }
 
+.buttonPrimary:active,
+.buttonSecondary:active {
+  transform: translate(0, 3px);
+  outline: 0;
+}
+
 .buttonContainer.circleContainer {
   display: inline-block;
   width: auto;
@@ -162,7 +167,7 @@ body {
 
 .buttonContainer .small.active {
   box-shadow: inset 0 1px 1px 1px #1f4b2e;
-  transform: translate(0px, 3px);
+  transform: translate(0, 3px);
   outline: 0;
   background: #002280;
 }
@@ -181,9 +186,9 @@ body {
 }
 
 // each node in the map
-.network-node {
-
-}
+// .network-node {
+//
+// }
 
 // each channel in the map
 .network-link {
@@ -191,12 +196,12 @@ body {
 }
 
 .active-peer {
-  fill: #5589F3;
+  fill: #5589f3;
 }
 
 .active-channel {
   opacity: 1;
-  stroke: #88D4A2;
+  stroke: #88d4a2;
   stroke-width: 15;
   stroke-dasharray: 100;
   animation: dash 2.5s infinite linear;
diff --git a/app/keyframes.scss b/app/keyframes.scss
index c5317b88..a9c3dc3a 100644
--- a/app/keyframes.scss
+++ b/app/keyframes.scss
@@ -2,13 +2,15 @@
 
 @keyframes fadeinOutD6 {
   0% {
-      transform: rotate(0deg);
+    transform: rotate(0deg);
   }
+
   50% {
-      transform: rotate(6deg);
+    transform: rotate(6deg);
   }
+
   100% {
-      transform: rotate(0deg);
+    transform: rotate(0deg);
   }
 }
 
@@ -16,28 +18,30 @@
   0% {
     transform: rotate(0deg);
   }
+
   50% {
     transform: rotate(13deg);
   }
+
   100% {
     transform: rotate(0deg);
   }
 }
 
 @keyframes colorchange {
-  0%   { color: $white; }
-  25%  { color: $gold; }
-  50%  { color: $white; }
-  75%  { color: $gold; }
+  0% { color: $white; }
+  25% { color: $gold; }
+  50% { color: $white; }
+  75% { color: $gold; }
   100% { color: $white; }
 }
 
 @keyframes spin {
-    from {
-      transform:rotate(0deg)
-    }
-    
-    to {
-      transform:rotate(360deg);
-    }
-}
\ No newline at end of file
+  from {
+    transform: rotate(0deg);
+  }
+
+  to {
+    transform: rotate(360deg);
+  }
+}
diff --git a/app/tooltip.scss b/app/tooltip.scss
index 6ca18e7a..a24af73e 100644
--- a/app/tooltip.scss
+++ b/app/tooltip.scss
@@ -1,10 +1,12 @@
 /* Tooltips */
 [data-hint] {
   position: relative;
-  /*display: inline-block;*/
+
+  // display: inline-block;
 }
-[data-hint]:before,
-[data-hint]:after {
+
+[data-hint]::before,
+[data-hint]::after {
   position: absolute;
   will-change: transform;
   visibility: hidden;
@@ -14,19 +16,16 @@
   transition: 0.2s ease;
   transition-delay: 0ms;
 }
-[data-hint]:hover:before,
-[data-hint]:hover:after {
-  visibility: visible;
-  opacity: 1;
-}
-[data-hint]:before {
+
+[data-hint]::before {
   content: '';
   position: absolute;
   background: transparent;
   border: 6px solid transparent;
   z-index: 900006;
 }
-[data-hint]:after {
+
+[data-hint]::after {
   content: attr(data-hint);
   background: #404040;
   color: #e0e0e0;
@@ -40,94 +39,122 @@
   font-size: 12px;
   font-weight: normal;
   font-style: inherit;
-  font-family: 'Noto Sans','Lucida Grande','Lucida Sans Unicode',Geneva,Verdana,Sans-Serif;
+  font-family: 'Noto Sans', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, Sans-Serif;
+}
+
+[data-hint]:hover::before,
+[data-hint]:hover::after {
+  visibility: visible;
+  opacity: 1;
 }
-.hint--bottom:before,
-.hint--bottom-left:before {
+
+.hint--bottom::before,
+.hint--bottom-left::before {
   border-bottom-color: #404040;
 }
-.hint--top:before,
-.hint--top-left:before {
+
+.hint--top::before,
+.hint--top-left::before {
   border-top-color: #404040;
 }
-.hint--bottom:before {
+
+.hint--bottom::before {
   margin-top: -12px;
 }
-.hint--bottom:after {
+
+.hint--bottom::after {
   margin-left: -18px;
 }
-.hint--bottom:before,
-.hint--bottom:after {
+
+.hint--bottom::before,
+.hint--bottom::after {
   top: 100%;
   left: 50%;
 }
-.hint--bottom:hover:after,
-.hint--bottom:hover:before {
+
+.hint--bottom:hover::after,
+.hint--bottom:hover::before {
   -webkit-transform: translateY(8px);
   transform: translateY(8px);
 }
-.hint--top:before {
+
+.hint--top::before {
   margin-bottom: -12px;
 }
-.hint--top:after {
+
+.hint--top::after {
   margin-left: -18px;
 }
-.hint--top:before,
-.hint--top:after {
+
+.hint--top::before,
+.hint--top::after {
   bottom: 100%;
   left: 50%;
 }
-.hint--top:hover:after,
-.hint--top:hover:before {
+
+.hint--top:hover::after,
+.hint--top:hover::before {
   -webkit-transform: translateY(-8px);
   transform: translateY(-8px);
 }
-.hint--top-left:before {
+
+.hint--top-left::before {
   margin-bottom: -12px;
 }
-.hint--top-left:after {
+
+.hint--top-left::after {
   margin-right: -6px;
 }
-.hint--top-left:before,
-.hint--top-left:after {
+
+.hint--top-left::before,
+.hint--top-left::after {
   bottom: 100%;
   right: 30%;
 }
-.hint--top-left:hover:after,
-.hint--top-left:hover:before {
+
+.hint--top-left:hover::after,
+.hint--top-left:hover::before {
   -webkit-transform: translateY(-8px);
   transform: translateY(-8px);
 }
-.hint--bottom-left:before {
+
+.hint--bottom-left::before {
   margin-top: -12px;
 }
-.hint--bottom-left:after {
+
+.hint--bottom-left::after {
   margin-right: -6px;
 }
-.hint--bottom-left:before,
-.hint--bottom-left:after {
+
+.hint--bottom-left::before,
+.hint--bottom-left::after {
   top: 100%;
   right: 30%;
 }
-.hint--bottom-left:hover:after,
-.hint--bottom-left:hover:before {
+
+.hint--bottom-left:hover::after,
+.hint--bottom-left:hover::before {
   -webkit-transform: translateY(8px);
   transform: translateY(8px);
 }
-.hint--left:before {
+
+.hint--left::before {
   margin-right: -12px;
   margin-top: -6px;
 }
-.hint--left:after {
+
+.hint--left::after {
   margin-right: -14px;
 }
-.hint--left:before,
-.hint--left:after {
+
+.hint--left::before,
+.hint--left::after {
   right: 100%;
   bottom: 50%;
 }
-.hint--left:hover:after,
-.hint--left:hover:before {
+
+.hint--left:hover::after,
+.hint--left:hover::before {
   -webkit-transform: translateX(-8px);
   transform: translateX(-8px);
 }
diff --git a/app/variables.scss b/app/variables.scss
index 1da936ab..510ef096 100644
--- a/app/variables.scss
+++ b/app/variables.scss
@@ -4,21 +4,21 @@ $black: #000;
 $main: #ebb864;
 $secondary: #1d1d1d;
 $grey: #f2f2f2;
-$traditionalgrey: #cccccc;
-$lightgrey: #F7F7F7;
-$darkgrey: #EBEBEB;
-$darkestgrey: #999999;
-$bluegrey: #2A2D38;
-$spacegrey: #222E2B;
+$traditionalgrey: #ccc;
+$lightgrey: #f7f7f7;
+$darkgrey: #ebebeb;
+$darkestgrey: #999;
+$bluegrey: #2a2d38;
+$spacegrey: #222e2b;
 $spaceblue: #252832;
 $darkspaceblue: #1c1e26;
 $spaceborder: #404040;
 
-$gold: #DEA326;
+$gold: #dea326;
 $green: #0bb634;
-$terminalgreen: #00FF00;
-$red: #FF556A;
+$terminalgreen: #0f0;
+$red: #ff556a;
 $blue: #007bb6;
-$orange: #FF8A65;
-$yellow: #FFF680;
-$curve: cubic-bezier(0.650, 0.000, 0.450, 1.000);
\ No newline at end of file
+$orange: #ff8a65;
+$yellow: #fff680;
+$curve: cubic-bezier(0.65, 0, 0.45, 1);
diff --git a/package.json b/package.json
index bb44ab86..8419f0c7 100644
--- a/package.json
+++ b/package.json
@@ -189,8 +189,8 @@
     "sinon": "^2.3.5",
     "spectron": "^3.7.0",
     "style-loader": "^0.18.1",
-    "stylelint": "^7.12.0",
-    "stylelint-config-standard": "^16.0.0",
+    "stylelint": "^9.1.1",
+    "stylelint-config-standard": "^18.2.0",
     "url-loader": "^0.5.8",
     "webpack": "^3.7.1",
     "webpack-bundle-analyzer": "^2.8.2",

From 8cca14cf4aef7d7d372134b0bb985b5e34d299d0 Mon Sep 17 00:00:00 2001
From: Ben Woosley <ben.woosley@gmail.com>
Date: Tue, 2 Jan 2018 16:56:22 -0800
Subject: [PATCH 4/4] enhance(ci): Add lint-styles to CI and yarn test-all

---
 package.json | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package.json b/package.json
index 8419f0c7..24da0a80 100644
--- a/package.json
+++ b/package.json
@@ -12,7 +12,7 @@
     "flow": "flow",
     "flow-typed": "rimraf flow-typed/npm && flow-typed install --overwrite || true",
     "lint": "cross-env NODE_ENV=development eslint --cache --format=node_modules/eslint-formatter-pretty .",
-    "lint-ci": "npm run lint && npm run flow",
+    "lint-ci": "npm run lint && npm run lint-styles && npm run flow",
     "lint-fix": "npm run lint -- --fix",
     "lint-styles": "stylelint app/*.scss app/components/*.scss --syntax scss",
     "lint-styles-fix": "stylelint --fix app/*.scss app/components/*.scss --syntax scss",
@@ -27,7 +27,7 @@
     "start-renderer-dev": "cross-env NODE_ENV=development node --trace-warnings -r babel-register ./node_modules/webpack-dev-server/bin/webpack-dev-server --config webpack.config.renderer.dev.js",
     "test": "cross-env NODE_ENV=test BABEL_DISABLE_CACHE=1 node --trace-warnings ./test/runTests.js",
     "test-ci": "npm run package && npm run test && npm run test-e2e",
-    "test-all": "npm run lint && npm run flow && npm run build && npm run test && npm run test-e2e",
+    "test-all": "npm run lint && npm run lint-styles && npm run flow && npm run build && npm run test && npm run test-e2e",
     "test-e2e": "cross-env NODE_ENV=test BABEL_DISABLE_CACHE=1 node --trace-warnings ./test/runTests.js e2e",
     "test-watch": "npm test -- --watch",
     "install-grpc": "cd app && npm run install-grpc"