diff --git a/installer/resources/themes/console/dark/console.css b/installer/resources/themes/console/dark/console.css
index 71a22a6c07617387828f52102502109f7d183232..847cab1a5a0295b18bee3e9dd9af3500815ea52a 100644
--- a/installer/resources/themes/console/dark/console.css
+++ b/installer/resources/themes/console/dark/console.css
@@ -247,7 +247,7 @@ div.warning {
 
 /* end proxy errors */
 
-div.routersummaryouter {
+.routersummaryouter {
      float: left;
      width: 200px;
      margin: 0 0 10px 5px;
@@ -259,7 +259,7 @@ div.routersummaryouter {
      position: absolute; /* so no interference with /home app icons */
 }
 
-div.routersummary {
+.routersummary {
      width: 174px;
      padding: 8px 10px 8px;
      text-align: center;
@@ -274,18 +274,18 @@ div.routersummary {
      margin-bottom: 7px !important;
 }
 
-div.routersummary img[src$="i2plogo.png"] {
+.routersummary img[src$="i2plogo.png"] {
      opacity: 0.9;
-     transition: ease filter 0.3s 0s, ease opacity 0.3s 0s;
+     transition: ease filter 0.3s, ease opacity 0.3s;
      margin-top: 1px;
      margin-left: -1px;
      width: 176px;
      height: auto;
 }
 
-div.routersummary img[src$="i2plogo.png"]:hover {
+.routersummary img[src$="i2plogo.png"]:hover {
      opacity: 1;
-     transition: ease filter 0.3s 0s, ease opacity 0.3s 0s;
+     transition: ease filter 0.3s, ease opacity 0.3s;
      filter: saturate(200%) drop-shadow(0 0 2px #f60);
 }
 
@@ -297,19 +297,19 @@ div.routersummary img[src$="i2plogo.png"]:hover {
      filter: drop-shadow(0 0 2px #f60) saturate(200%);
 }
 
-div.routersummary input[type="text"] {
+.routersummary input[type="text"] {
      text-align: right !important;
      box-shadow: inset 1px 1px 1px 0 #000;
 }
 
-div.routersummary hr {
+.routersummary hr {
      color: #494;
      background: #494;
      height: 1px;
      margin: 9px -10px 7px -10px;
 }
 
-div.routersummary h3 {
+.routersummary h3 {
      border: none;
      font-size: 9.5pt;
      letter-spacing: 0.08em;
@@ -344,7 +344,7 @@ div.routersummary h3 {
      box-shadow: inset 4px 4px 2px #000;
 }
 
-div.routersummary h4 {
+.routersummary h4 {
      border: 0;
      border-bottom: 0 !important;
      font-size: 8pt;
@@ -372,11 +372,11 @@ div.routersummary h4 {
      width: calc(100% - 5px);
 }
 
-div.routersummary ul {
+.routersummary ul {
      text-align: left !important;
 }
 
-div.routersummary table {
+.routersummary table {
      border: 0;
      text-align: center !important;
      margin: -5px -7px -6px -8px !important;
@@ -475,21 +475,21 @@ p:empty + .sb_notice {
      margin-top: 9px;
 }
 
-div.routersummary tr {
+.routersummary tr {
      background-image: none !important;
      background-color: transparent !important;
      border: 0 !important;
 }
 
-div.routersummary form {
+.routersummary form {
      margin: -4px -9px -6px;
 }
 
-div.routersummary form:first-child {
+.routersummary form:first-child {
      margin: 6px 0 -5px 0 !important;
 }
 
-div.routersummary p {
+.routersummary p {
      padding: 0;
 }
 
@@ -499,11 +499,11 @@ div.refresh {
      padding: 2px 0 0 0 !important;
 }
 
-div.routersummary a:link, div.routersummary a:visited {
+.routersummary a:link, .routersummary a:visited {
      word-spacing: 0.05em;
 }
 
-div.routersummary a:hover {
+.routersummary a:hover {
      color: #f60;
 }
 
@@ -588,7 +588,7 @@ div.routersummary a:hover {
 */
 /* end custom sidebar links */
 
-div.routersummary td {
+.routersummary td {
      padding: 0 2px 0 2px;
      background-image: none !important;
      border: 0 !important;
@@ -597,13 +597,13 @@ div.routersummary td {
      text-overflow: ellipsis; /* force ellipsis rather than truncate rare, overlong text strings eg. Swedish sidepanel */
 }
 
-div.routersummary td:first-child {
+.routersummary td:first-child {
      max-width: 90px;
      overflow: hidden;
      text-transform: capitalize;
 }
 
-div.routersummary hr:last-child {
+.routersummary hr:last-child {
      margin-top: 5px;
      margin-bottom: -5px !important;
 }
@@ -960,17 +960,19 @@ div.widepanel h3 {
      border: 1px solid #494;
 }
 
-#graphs .messages {
-     margin-top: 15px;
-}
-
 .main#events .messages {
      margin-top: 26px;
      margin-bottom: -13px;
      box-shadow: inset 0 0 0 1px #700 !important;
 }
 
-div.graphspanel {
+/* graphs */
+
+#graphs .messages {
+     margin-top: 15px;
+}
+
+.graphspanel {
      padding: 0;
      margin: 15px 0 -15px 0;
      background: none;
@@ -979,32 +981,32 @@ div.graphspanel {
      width: 100%;
 }
 
-div.graphspanel form {
+.graphspanel form {
      text-align: left;
      padding: 0 15px 0 15px;
      margin-bottom: 25px;
 }
 
-div.graphspanel a img {
+.graphspanel a img {
      border: 1px solid #494;
      padding: 3px;
      margin: 5px;
      text-align: center !important;
      opacity: 0.9;
-     transition: ease all 0.3s 0s;
+     transition: ease all 0.3s;
 }
 
-div.graphspanel a img:hover {
+.graphspanel a img:hover {
      border: 1px solid #f60;
      padding: 3px;
      margin: 5px;
      text-align: center !important;
      opacity: 1;
-     transition: ease all 0.3s 0s;
+     transition: ease all 0.3s;
      cursor: url(/themes/console/images/cursor_zoom.png), pointer;
 }
 
-div.graphspanel img {
+.graphspanel img {
      border: 1px solid #333;
      background: #000;
      padding: 2px;
@@ -1013,7 +1015,22 @@ div.graphspanel img {
      max-width: calc(100% - 18px);
 }
 
-div.graphspanel p {
+.graphspanel img:not(old) {
+     background: #fff;
+     border: #ccc;
+     filter: invert(1);
+     mix-blend-mode: lighten;
+}
+
+.graphspanel a img:not(old) {
+     border: 1px solid #bb66bb;
+}
+
+.graphspanel a img:hover:not(old) {
+     border: 1px solid #0099ff;
+}
+
+.graphspanel p {
      text-align: center;
      text-transform: capitalize;
      margin-top: 10px;
@@ -1034,7 +1051,7 @@ h3#graphinfo {
      border-radius: 0 !important;
 }
 
-div.graphspanel p:last-child {
+.graphspanel p:last-child {
      display: none;
 }
 
@@ -1125,7 +1142,7 @@ h3#graphdisplay a {
      min-width: 60px;
 }
 
-/* end new graphs optionbox */
+/* end graphs */
 
 table {
      border-collapse: collapse;
@@ -1383,7 +1400,6 @@ a:active {
 .links b {
      color: #bb0 !important;
      letter-spacing: 0.08em;
-     font-size: 8.5pt;
      line-height: 165%;
 }
 
@@ -1483,7 +1499,7 @@ h4 {
      font-size: 11pt;
 }
 
-h1, h2, h3:not([id*="help"]), h4.app, h4.app2, div.routersummary h3 {
+h1, h2, h3:not([id*="help"]), h4.app, h4.app2, .routersummary h3 {
      background: linear-gradient(to bottom, #1a261a 0%, #223022 7%, #212f21 9%, #172317 21%, #091109 49%, #050d05 50%, #020602 51%, #010301 53%, #000000 56%, #000000 100%) !important;
 }
 
@@ -1799,7 +1815,7 @@ input[type="text"]:focus, input[type="password"]:focus, textarea:focus {
      color: #ee9 !important;
      background: #000 !important;
      filter: drop-shadow(0 0 1px #880);
-     transition: filter ease 0.3s 0s;
+     transition: filter ease 0.3s;
      font-weight: bold;
      outline: none;
 }
@@ -2284,11 +2300,11 @@ table#udpconnections table i {
       margin-top: 3px !important;
 }
 
-#udpconnections tr:hover, #ntcpconnections tr:hover, #jobstats tr:hover, #schedjobs tr:hover, #netdboverview table tr:hover, #portfaq tr:hover {
+#udpconnections tr:hover, #ntcpconnections tr:hover, #jobstats tr:hover, #schedjobs tr:hover, #netdboverview table tr:hover, #portfaq tr:hover, .tunneldisplay tr:hover {
      background: #020;
 }
 
-#udpconnections tr td, #ntcpconnections tr td {
+#udpconnections td, #ntcpconnections td, .tunneldisplay td {
      color: #bb7;
 }
 
@@ -2298,7 +2314,7 @@ table#udpconnections table i {
      white-space: nowrap;
 }
 
-#udpconnections tr:hover td, #ntcpconnections tr:hover td {
+#udpconnections tr:hover td, #ntcpconnections tr:hover td, .tunneldisplay tr:hover td {
      color: #ee9;
 }
 
@@ -2336,10 +2352,15 @@ table#udpconnections table i {
      width: 100px;
 }
 
-table#ntcpconnections {
+#ntcpconnections {
      overflow-x: scroll !important;
 }
 
+#profilelist a[href^="viewprofile"] {
+     display: inline-block;
+     margin-bottom: 2px;
+}
+
 .backlogged {
      font-size: 14pt;
      line-height: 0;
@@ -2459,7 +2480,7 @@ div.themechoice {
 
 .themechoice:hover object {
      filter: drop-shadow(0 0 1px #f60);
-     transition: ease filter 0.3s 0s;
+     transition: ease filter 0.3s;
 }
 
 .themechoice:hover .themelabel {
@@ -2652,7 +2673,7 @@ td#themeselect {
 
 .langselect input:hover + img {
      box-shadow: 0 0 2px 1px #f60;
-     transition: ease box-shadow 0.3s 0s;
+     transition: ease box-shadow 0.3s;
 }
 
 .langselect input:hover + img + div.ui_lang {
@@ -4249,14 +4270,14 @@ ul#banlist + hr {
 
 /* end /configpeers banlist */
 
-div.footnote {
+.footnote {
      text-align: right;
      color: #494;
      font-size: 7pt;
      margin-bottom: 5px !important;
 }
 
-div.footnote hr {
+.footnote hr {
      margin: 10px 0 5px 0 !important;
      color: #494;
      background: #494;
@@ -4445,7 +4466,7 @@ button.search {
 div.app:hover.app img, a:focus .app img {
      filter: drop-shadow(0 0 1px #f60) saturate(200%);
      opacity: 1;
-     transition: filter ease 0.3s 0s;
+     transition: filter ease 0.3s;
 }
 
 .app table {
@@ -4545,7 +4566,7 @@ body.iframed {
      background: transparent url(/themes/console/images/transparent.gif) !important;
 }
 
-.iframed div.routersummaryouter {
+.iframed .routersummaryouter {
      display: none !important;
 }
 
@@ -5636,6 +5657,10 @@ p#upnpstatus, .main#peers .infohelp {
      margin: 0;
 }
 
+#upnpscan {
+     margin-bottom: 5px;
+}
+
 .main#peers h3, #profiles h3, .main#peers .infohelp {
      margin-top: 5px !important;
 }
@@ -5785,6 +5810,12 @@ ul.statlist a[name], ul.statlist b, ul.statlist li b, ul.statlist a[name]:hover,
      font-size: 10pt !important;
 }
 
+.cells tt, #profilelist tt, #floodfills tt {
+     font-size: 9pt !important;
+     margin-left: 1px !important;
+     margin-right: 2px !important;
+}
+
 .main button, .main input, select, textarea, div.news {
      font-size: 10pt !important;
 }
@@ -5886,7 +5917,7 @@ p#fullhistory {
      margin-top: -13px;
 }
 
-div.routersummary img[src$="i2plogo.png"] {
+.routersummary img[src$="i2plogo.png"] {
      margin-left: -5px;
      transform: none;
      width: 210px;
@@ -5914,7 +5945,7 @@ table#permabanned {
      margin-bottom: 10px !important;
 }
 
-div.footnote, div.topness {
+.footnote, .topness {
      font-size: 9pt !important;
 }
 
diff --git a/installer/resources/themes/console/light/console.css b/installer/resources/themes/console/light/console.css
index e524d77f3823c236633e99f962e7ff23ca069f7d..9de89607d67f28cef791a6531db953774fc1fc88 100644
--- a/installer/resources/themes/console/light/console.css
+++ b/installer/resources/themes/console/light/console.css
@@ -145,7 +145,7 @@ pre {
      filter: drop-shadow(0 0 1px #f60);
 }
 
-div.routersummary a:active img[src$="i2plogo.png"] {
+.routersummary a:active img[src$="i2plogo.png"] {
      filter: drop-shadow(0 0 2px #f30);
 }
 
@@ -248,7 +248,7 @@ h3#helpfaq {
 }
 }
 
-div.routersummary h4 {
+.routersummary h4 {
      border: none;
      border-radius: 0;
      font-size: 8.5pt;
@@ -488,28 +488,28 @@ p:empty + .sb_notice {
 
 /* end webapp navigation */
 
-div.routersummary tr {
+.routersummary tr {
      background-image: none !important;
      background-color: transparent !important;
      border: 0 !important;
 }
 
-div.routersummary a:hover {
+.routersummary a:hover {
      color: #f60;
 }
 
-div.routersummary td {
+.routersummary td {
      padding: 0 2px;
      background-image: none !important;
      border: 0 !important;
 }
 
-div.routersummary img:first-child  {
+.routersummary img:first-child  {
      margin-bottom: -2px !important;
      opacity: 0.7;
 }
 
-div.routersummary img:hover:first-child {
+.routersummary img:hover:first-child {
      margin-bottom: -2px !important;
      opacity: 1;
 }
@@ -566,7 +566,7 @@ div.tunnels td, div.tunnels img:first-child {
      padding: 4px 0 !important;
 }
 
-div.routersummary p {
+.routersummary p {
      padding: 0;
 }
 
@@ -1283,7 +1283,7 @@ div.configure {
      margin-bottom: 0;
 }
 
-div.configure h3, div.graphspanel h3 {
+div.configure h3, .graphspanel h3 {
      border: 1px solid #7778bf;
      border-left: 5px solid #7778bf;
      padding: 5px;
@@ -1293,7 +1293,7 @@ div.configure h3, div.graphspanel h3 {
      text-align: left;
 }
 
-div.graphspanel h3 {
+.graphspanel h3 {
      text-transform: capitalize;
      letter-spacing: normal;
      word-spacing: normal;
@@ -1521,12 +1521,12 @@ p#tunnelconfig {
      margin-bottom: -14px;
 }
 
-div.graphspanel {
+.graphspanel {
      text-align: center !important;
      margin: 15px 0 -15px;
 }
 
-div.graphspanel img {
+.graphspanel img {
      border: 1px solid #7778bf;
      padding: 2px;
      margin: 6px;
@@ -1537,11 +1537,12 @@ div.graphspanel img {
      max-width: 98%;
 }
 
-div.graphspanel a img:hover {
+.graphspanel a img:hover {
      box-shadow: inset 0 0 2px 1px #f60;
+     cursor: url(/themes/console/images/cursor_zoom.png), pointer;
 }
 
-div.graphspanel form {
+.graphspanel form {
      text-align: left;
 }
 
@@ -3902,7 +3903,7 @@ body.iframed {
      background: transparent url(/themes/console/images/transparent.gif) !important;
 }
 
-.iframed div.routersummaryouter {
+.iframed .routersummaryouter {
      display: none !important;
 }
 
@@ -4320,6 +4321,60 @@ table#addkeyring tr:last-child td {
 
 /* end peers, profiles, tunnels dests */
 
+/* /peers */
+
+#ntcpconnections th:nth-child(6), #ntcpconnections th:nth-child(7), #ntcpconnections th:nth-child(8), #ntcpconnections th:nth-child(9), #ntcpconnections th:nth-child(10),
+#ntcpconnections td:nth-child(6), #ntcpconnections td:nth-child(7), #ntcpconnections td:nth-child(8), #ntcpconnections td:nth-child(9), #ntcpconnections td:nth-child(10),
+#udpconnections td:nth-child(6), #udpconnections td:nth-child(7), #udpconnections td:nth-child(9), #udpconnections td:nth-child(10), #udpconnections td:nth-child(11),
+#udpconnections td:nth-child(13), #udpconnections td:nth-child(14), #udpconnections td:nth-child(15), #udpconnections td:nth-child(16) {
+     text-align: right;
+     white-space: nowrap;
+}
+
+#ntcpconnections .tablefooter td:nth-child(3), #ntcpconnections .tablefooter td:nth-child(4), #ntcpconnections .tablefooter td:nth-child(5), #ntcpconnections .tablefooter td:nth-child(6),
+#udpconnections .tablefooter td:nth-child(3), #udpconnections .tablefooter td:nth-child(4), #udpconnections .tablefooter td:nth-child(7), #udpconnections .tablefooter td:nth-child(8),
+#udpconnections .tablefooter td:nth-child(10), #udpconnections .tablefooter td:nth-child(11), #udpconnections .tablefooter td:nth-child(12), #udpconnections .tablefooter td:nth-child(13) {
+     text-align: right;
+}
+
+#udpconnections .tablefooter td:nth-child(9) {
+     text-align: center !important;
+}
+
+#ntcpconnections td:nth-child(6), #ntcpconnections td:nth-child(7), #ntcpconnections td:nth-child(8), #ntcpconnections td:nth-child(9), #ntcpconnections td:nth-child(10),
+#ntcpconnections .tablefooter td:nth-child(3), #ntcpconnections .tablefooter td:nth-child(4), #ntcpconnections .tablefooter td:nth-child(5), #ntcpconnections .tablefooter td:nth-child(6) {
+     padding-left: 1vw !important;
+     padding-right: 1vw !important;
+}
+
+#ntcpconnections td:nth-child(4), #ntcpconnections td:nth-child(5), #udpconnections td:nth-child(4),
+#udpconnections td:nth-child(5), #udpconnections td:nth-child(8), #udpconnections td:nth-child(12) {
+     white-space: nowrap;
+}
+
+#udpconnections .tablefooter td {
+     padding-left: 5px;
+     padding-right: 5px;
+}
+
+@media screen and (min-width: 1500px) {
+#ntcpconnections td:nth-child(6), #ntcpconnections td:nth-child(7), #ntcpconnections td:nth-child(8), #ntcpconnections td:nth-child(9), #ntcpconnections td:nth-child(10),
+#udpconnections td:nth-child(6), #udpconnections td:nth-child(7), #udpconnections td:nth-child(9), #udpconnections td:nth-child(10), #udpconnections td:nth-child(11),
+#udpconnections td:nth-child(13), #udpconnections td:nth-child(14), #udpconnections td:nth-child(15), #udpconnections td:nth-child(16),
+#ntcpconnections .tablefooter td:nth-child(3), #ntcpconnections .tablefooter td:nth-child(4), #ntcpconnections .tablefooter td:nth-child(5), #ntcpconnections .tablefooter td:nth-child(6),
+#udpconnections .tablefooter td:nth-child(3), #udpconnections .tablefooter td:nth-child(4), #udpconnections .tablefooter td:nth-child(7), #udpconnections .tablefooter td:nth-child(8),
+#udpconnections .tablefooter td:nth-child(10), #udpconnections .tablefooter td:nth-child(11), #udpconnections .tablefooter td:nth-child(12), #udpconnections .tablefooter td:nth-child(13) {
+     padding-right: 10px !important;
+}
+
+.cells {
+     border-left: none;
+     border-right: none;
+}
+}
+
+/* end peers */
+
 /* netdb */
 
 .main#netdb, .main#events {
@@ -4382,18 +4437,18 @@ a.viewfullentry:hover {
      filter: drop-shadow(0 0 1px #f60);
 }
 
-table#leasesetdebug th a:not(old), table#leasesetsummary th a:not(old) {
+#leasesetdebug th a:not(old), table#leasesetsummary th a:not(old) {
      font-size: 0;
 }
 
-table#leasesetdebug th a::after, table#leasesetsummary th a::after {
+#leasesetdebug th a::after, table#leasesetsummary th a::after {
      content: url(/themes/console/images/buttons/floodfill.png);
      vertical-align: text-top;
      padding-right: 0;
      filter: drop-shadow(0 0 1px #999);
 }
 
-table#leasesetdebug th a:hover, table#leasesetsummary th a:hover {
+#leasesetdebug th a:hover, table#leasesetsummary th a:hover {
      filter: drop-shadow(0 0 1px #f60);
 }
 
@@ -4498,6 +4553,15 @@ table#leasesetdebug th a:hover, table#leasesetsummary th a:hover {
      padding-right: 5px;
 }
 
+.leaseset td:first-child img {
+     margin: 0 3px 2px 5px;
+     vertical-align: middle;
+}
+
+.leaseset tt {
+     margin-right: 3px;
+}
+
 #leasesetdebug, #leasesetsummary {
      margin-bottom: 14px !important;
 }
@@ -4887,7 +4951,7 @@ ul#banlist {
 
 #profilelist tr:hover td, table#floodfills tr:hover td, #ntcpconnections tr:nth-last-child(n+2):hover td, #udpconnections tr:nth-last-child(n+2):hover td,
 #schedjobs tr:hover td, #jobstats tr:nth-last-child(n+2):hover td, #jardump tr:hover td, #sidebarconf tr:nth-last-child(n+2):hover td, #eventlog tr:hover td,
-#netdboverview table tr:hover td, #debug tr:hover td, #clientconfig tr:hover td, #webappconfig tr:hover td, #portfaq tr:hover td {
+#netdboverview table tr:hover td, #debug tr:hover td, #clientconfig tr:hover td, #webappconfig tr:hover td, #portfaq tr:hover td, .tunneldisplay tr:hover td {
      background: #ffd;
      color: #111;
 }
@@ -5590,7 +5654,7 @@ input[name="pluginURL"] {
      white-space: normal;
 }
 
-.main#help h3, #faq h3, table#leasesetdebug th, table#leasesetsummary th {
+.main#help h3, #faq h3, #leasesetdebug th, table#leasesetsummary th {
      font-size: 10pt !important;
 }
 }
@@ -5620,6 +5684,13 @@ input[name="pluginURL"] {
 }
 }
 
+@media screen and (min-width: 1000px) {
+.leaseset td:first-child img {
+     margin-bottom: 3px;
+     vertical-align: middle;
+}
+}
+
 @media screen and (min-width: 1200px) {
 #ntcpconnections td:first-child, #udpconnections td:first-child {
      padding-left: 5px !important;
@@ -5632,7 +5703,8 @@ body, .main, .main td, .news p, #news p, .tab, .tab2, .main li b, div.joblog li,
      font-size: 10pt !important;
 }
 
-.routersummary td, .routersummary a, .routersummary button, .routersummary h4, .routersummary h4 a, div.newss, pre, #jardump tt, #jardump td, div.news, #logs li, .cells tt, #profilelist tt {
+.routersummary td, .routersummary a, .routersummary button, .routersummary h4, .routersummary h4 a, div.newss, pre,
+#jardump tt, #jardump td, div.news, #logs li, .cells tt, #profilelist tt, .leaseset tt {
      font-size: 9pt !important;
 }
 
@@ -5716,7 +5788,7 @@ h1 {
      font-size: 11pt !important;
 }
 
-div.routersummary img[src$="i2plogo.png"] {
+.routersummary img[src$="i2plogo.png"] {
      margin-left: 0 !important;
      transform: none !important;
      width: 205px !important;
@@ -5828,58 +5900,3 @@ _:-ms-lang(x), .tunnels_client th:first-child::after {
 
 /* end Edge/IE tweaks */
 
-/* /peers */
-/* TODO: merge with main classes */
-
-#ntcpconnections th:nth-child(6), #ntcpconnections th:nth-child(7), #ntcpconnections th:nth-child(8), #ntcpconnections th:nth-child(9), #ntcpconnections th:nth-child(10),
-#ntcpconnections td:nth-child(6), #ntcpconnections td:nth-child(7), #ntcpconnections td:nth-child(8), #ntcpconnections td:nth-child(9), #ntcpconnections td:nth-child(10),
-#udpconnections td:nth-child(6), #udpconnections td:nth-child(7), #udpconnections td:nth-child(9), #udpconnections td:nth-child(10), #udpconnections td:nth-child(11),
-#udpconnections td:nth-child(13), #udpconnections td:nth-child(14), #udpconnections td:nth-child(15), #udpconnections td:nth-child(16) {
-     text-align: right;
-     white-space: nowrap;
-}
-
-#ntcpconnections .tablefooter td:nth-child(3), #ntcpconnections .tablefooter td:nth-child(4), #ntcpconnections .tablefooter td:nth-child(5), #ntcpconnections .tablefooter td:nth-child(6),
-#udpconnections .tablefooter td:nth-child(3), #udpconnections .tablefooter td:nth-child(4), #udpconnections .tablefooter td:nth-child(7), #udpconnections .tablefooter td:nth-child(8),
-#udpconnections .tablefooter td:nth-child(10), #udpconnections .tablefooter td:nth-child(11), #udpconnections .tablefooter td:nth-child(12), #udpconnections .tablefooter td:nth-child(13) {
-     text-align: right;
-}
-
-#udpconnections .tablefooter td:nth-child(9) {
-     text-align: center !important;
-}
-
-#ntcpconnections td:nth-child(6), #ntcpconnections td:nth-child(7), #ntcpconnections td:nth-child(8), #ntcpconnections td:nth-child(9), #ntcpconnections td:nth-child(10),
-#ntcpconnections .tablefooter td:nth-child(3), #ntcpconnections .tablefooter td:nth-child(4), #ntcpconnections .tablefooter td:nth-child(5), #ntcpconnections .tablefooter td:nth-child(6) {
-     padding-left: 1vw !important;
-     padding-right: 1vw !important;
-}
-
-#ntcpconnections td:nth-child(4), #ntcpconnections td:nth-child(5), #udpconnections td:nth-child(4),
-#udpconnections td:nth-child(5), #udpconnections td:nth-child(8), #udpconnections td:nth-child(12) {
-     white-space: nowrap;
-}
-
-#udpconnections .tablefooter td {
-     padding-left: 5px;
-     padding-right: 5px;
-}
-
-@media screen and (min-width: 1500px) {
-#ntcpconnections td:nth-child(6), #ntcpconnections td:nth-child(7), #ntcpconnections td:nth-child(8), #ntcpconnections td:nth-child(9), #ntcpconnections td:nth-child(10),
-#udpconnections td:nth-child(6), #udpconnections td:nth-child(7), #udpconnections td:nth-child(9), #udpconnections td:nth-child(10), #udpconnections td:nth-child(11),
-#udpconnections td:nth-child(13), #udpconnections td:nth-child(14), #udpconnections td:nth-child(15), #udpconnections td:nth-child(16),
-#ntcpconnections .tablefooter td:nth-child(3), #ntcpconnections .tablefooter td:nth-child(4), #ntcpconnections .tablefooter td:nth-child(5), #ntcpconnections .tablefooter td:nth-child(6),
-#udpconnections .tablefooter td:nth-child(3), #udpconnections .tablefooter td:nth-child(4), #udpconnections .tablefooter td:nth-child(7), #udpconnections .tablefooter td:nth-child(8),
-#udpconnections .tablefooter td:nth-child(10), #udpconnections .tablefooter td:nth-child(11), #udpconnections .tablefooter td:nth-child(12), #udpconnections .tablefooter td:nth-child(13) {
-     padding-right: 10px !important;
-}
-
-.cells {
-     border-left: none;
-     border-right: none;
-}
-}
-
-/* end peers */
-
diff --git a/installer/resources/themes/console/midnight/console.css b/installer/resources/themes/console/midnight/console.css
index dde0bd042ec690bda3f9e2c939e590dee32d79a2..56a612366f98d39e56481698c8f7dbb787174fcb 100644
--- a/installer/resources/themes/console/midnight/console.css
+++ b/installer/resources/themes/console/midnight/console.css
@@ -174,7 +174,7 @@ input[type=text]:focus, input[type=password]:focus, textarea:focus {
      border: 1px solid #443da0;
      box-shadow: 0 0 0 1px rgba(101, 39, 135, 0.5);
      filter: drop-shadow(0 0 1px #99f);
-     transition: filter ease 0.3s 0s;
+     transition: filter ease 0.3s;
 }
 
 input[type=image] {
@@ -1166,7 +1166,7 @@ div.logo hr {
 
 .routersummary img[src*="i2plogo"] {
      opacity: 0.7;
-     transition: ease-out opacity 0.3s 0s, ease filter 0.3s 0s;
+     transition: ease-out opacity 0.3s, ease filter 0.3s;
      margin-top: 1px;
      margin-left: -3px;
      width: 176px;
@@ -1176,18 +1176,18 @@ div.logo hr {
 
 .routersummary img[src*="i2plogo"]:hover {
      opacity: 1;
-     transition: ease-in opacity 0.3s 0s, ease filter 0.3s 0s;
+     transition: ease-in opacity 0.3s, ease filter 0.3s;
      filter: drop-shadow(0 0 2px #652787) saturate(100%);
 }
 
 .routersummary img[src*="i2plogo"]:active {
      filter: drop-shadow(0 0 5px #450519) saturate(140%) !important;
-     transition: ease-out opacity 0s 0s, ease filter 0s 0s;
+     transition: ease-out opacity 0.3s, ease filter 0.3s;
 }
 
 .routersummary a[href="/"]:focus img, .routersummary a[href="/console"]:focus img {
      opacity: 1;
-     transition: ease-in opacity 0.5s 0s, ease filter 0.5s 0s;
+     transition: ease-in opacity 0.3s, ease filter 0.3s;
      filter: drop-shadow(0 0 3px #652787) saturate(200%);
 }
 
@@ -1337,16 +1337,14 @@ div.logo hr {
      padding: 1px 3px;
 }
 
-#sb_services a:hover, #sb_internals a:hover, #sb_advanced a:hover, #sb_localtunnels tr:hover, #sb_localtunnels tr:hover a, .news a:hover, #console a:hover ,
-tt a:hover {
+#sb_services a:hover, #sb_internals a:hover, #sb_advanced a:hover, #sb_localtunnels tr:hover, #sb_localtunnels tr:hover a, .news a:hover, #console a:hover, tt a:hover {
      background: #652787;
      color: #fff; !important;
      border-radius: 2px;
 }
 
-#sb_services a:active, #sb_internals a:active, #sb_advanced a:active, #sb_localtunnels tr:active,
-.news a:active, #console a:active, tt a:active {
-     background: #39144F;
+#sb_services a:active, #sb_internals a:active, #sb_advanced a:active, #sb_localtunnels tr:active, .news a:active, #console a:active, tt a:active {
+     background: #39144f;
      color: #c9ceff !important;
 }
 
@@ -1908,7 +1906,7 @@ div.messages i {
 }
 
 div.messages span.error {
-     color: #D6FFFD;
+     color: #d6fffd;
 }
 
 div.messages span.notice {
@@ -1936,7 +1934,9 @@ div.widepanel h3 {
      border: 1px solid #443da0;
 }
 
-div.graphspanel {
+/* graphs */
+
+.graphspanel {
      padding: 0;
      margin: 15px 0 -15px 0;
      background: none;
@@ -1945,43 +1945,59 @@ div.graphspanel {
      width: 100%;
 }
 
-div.graphspanel form {
+.graphspanel form {
      text-align: left;
      padding: 0 15px 0 15px;
      margin-bottom: 25px;
 }
 
-div.graphspanel a img {
+.graphspanel a img {
      border: 1px solid #443da0;
      padding: 3px;
      margin: 5px;
      text-align: center !important;
      background: #000;
      opacity: 0.9;
-     transition: all 0.3s ease 0s;
+     transition: ease all 0.3s;
 }
 
-div.graphspanel a img:hover {
+.graphspanel a img:hover {
      border: 1px solid #652787;
      padding: 3px;
      margin: 5px;
      text-align: center !important;
      background: #000;
      opacity: 1;
-     transition: all 0.3s ease 0s;
+     transition: ease all 0.3s;
      cursor: url(/themes/console/images/cursor_zoom.png), auto;
 }
 
-div.graphspanel img {
+.graphspanel img {
      border: 1px solid #2f2e38;
      padding: 2px;
      max-width: 97%;
      max-width: calc(100% - 20px);
      vertical-align: top;
-/*     filter: sepia(100%) invert(100%);*/
 }
 
-div.graphspanel p {
+.graphspanel img:not(old) {
+     filter: invert(1) hue-rotate(180deg);
+     background: #fff;
+     border: 1px solid #fff;
+}
+
+.graphspanel a img:not(old) {
+     border: 1px solid #a2acdb;
+     padding: 2px;
+}
+
+.graphspanel a img:hover:not(old) {
+     border: 1px solid #9678d7;
+     background: #fff;
+     padding: 2px;
+}
+
+.graphspanel p {
      text-align: center;
      text-transform: capitalize;
      margin-top: 10px;
@@ -2001,7 +2017,7 @@ h3#graphinfo {
      word-spacing: normal;
 }
 
-div.graphspanel p:last-child {
+.graphspanel p:last-child {
      display: none;
 }
 
@@ -2020,8 +2036,6 @@ h3#graphdisplay a {
      float: right;
 }
 
-/* new graphs optionbox */
-
 #graphs form {
      padding: 0 !important;
 }
@@ -2077,7 +2091,7 @@ h3#graphdisplay a {
      min-width: 60px;
 }
 
-/* end new graphs optionbox */
+/* end graphs */
 
 table {
      border-collapse: collapse;
@@ -2141,7 +2155,7 @@ td img[src$="c=a1"], td img[src$="c=a2"] {
 }
 
 tt {
-     font: bold 9pt "Droid Sans Mono", "Andale Mono", "DejaVu Sans Mono", "Lucida Console", monospace;
+     font: bold 8pt "Droid Sans Mono", "Andale Mono", "DejaVu Sans Mono", "Lucida Console", monospace;
      color: #393;
 }
 
@@ -2685,67 +2699,67 @@ h3[id="udpcon"] {
      width: auto;
 }
 
-table#udpconnections table {
+#udpconnections table {
      overflow-x: auto !important;
 }
 
-table#udpconnections th {
+#udpconnections th {
       padding: 5px 2px;
 }
 
-table#udpconnections table i {
+#udpconnections table i {
      font-weight: bold;
      line-height: 150%;
      letter-spacing: 0.1em;
 }
 
-table#udpconnections tr a img {
+#udpconnections tr a img {
       margin-top: 3px !important;
 }
 
-table#udpconnections tr:hover, table#ntcpconnections tr:hover, #jobstats tr:hover, #schedjobs tr:hover, #jardump tr:hover, #webappconfig tr:hover td {
+#udpconnections tr:hover, #ntcpconnections tr:hover, #jobstats tr:hover, #schedjobs tr:hover, #jardump tr:hover, #webappconfig tr:hover td, .tunneldisplay tr:hover td {
      background: #020022;
      color: #eff1ff;
 }
 
-table#udpconnections td > *, table#ntcpconnections td > * {
+#udpconnections td > *, #ntcpconnections td > * {
      vertical-align: middle;
 }
 
-table#udpconnections td:first-child, table#udpconnections td:nth-child(2) {
+#udpconnections td:first-child, #udpconnections td:nth-child(2) {
      width: 50px;
      padding: 2px 4px;
      white-space: nowrap;
 }
 
-table#udpconnections tr:hover td, table#ntcpconnections tr:hover td {
+#udpconnections tr:hover td, #ntcpconnections tr:hover td {
      color: #c9ceff;
 }
 
-table#udpconnections tr.tablefooter td {
+#udpconnections tr.tablefooter td {
      color: #c9ceff;
 }
 
-table#udpconnections tr.tablefooter:hover td {
+#udpconnections tr.tablefooter:hover td {
      border-top: 1px solid #443da0;
 }
 
-table#udpconnections tr.tablefooter td:first-child {
+#udpconnections tr.tablefooter td:first-child {
      padding-left: 9px;
 }
 
-table#udpconnections td[class="cells"]:first-child, table#ntcpconnections td[class="cells"]:first-child {
+#udpconnections td[class="cells"]:first-child, #ntcpconnections td[class="cells"]:first-child {
      width: 50px;
      white-space: nowrap;
      text-align: right;
 }
 
-table#ntcpconnections td[class="cells"]:last-child {
+#ntcpconnections td[class="cells"]:last-child {
      font-weight: bold !important;
      width: 100px;
 }
 
-table#ntcpconnections {
+#ntcpconnections {
      overflow-x: scroll !important;
 }
 
@@ -4530,11 +4544,11 @@ font[color="#000099"] { /* info */
 
 /* /profiles */
 
-#profilelist tr:hover, table#floodfills tr:hover {
+#profilelist tr:hover, #floodfills tr:hover {
      background: #040033;
 }
 
-#profilelist tr:hover td, table#floodfills tr:hover td {
+#profilelist tr:hover td, #floodfills tr:hover td {
      color: #c9ceff;
 }
 
@@ -4659,42 +4673,42 @@ table#profile_defs + hr {
      margin-top: -4px;
 }
 
-table#floodfills {
+#floodfills {
      margin: 0 0 10px;
 }
 
-table#floodfills + hr {
+#floodfills + hr {
      display: none;
 }
 
-table#floodfills th, table#floodfills td  {
+#floodfills th, #floodfills td  {
      text-align: right !important;
 }
 
-table#floodfills th {
+#floodfills th {
      white-space: normal;
      text-align: center !important;
 }
 
-table#floodfills td  {
+#floodfills td  {
      padding: 3px !important;
 }
 
-table#floodfills th:first-child, table#floodfills td:first-child  {
+#floodfills th:first-child, #floodfills td:first-child  {
      text-align: center !important;
      width: 52px;
      white-space: nowrap;
      padding: 0 !important;
 }
 
-table#floodfills td:first-child {
+#floodfills td:first-child {
      text-align: right !important;
      padding-left: 4px !important;
      padding-right: 5px !important;
 }
 
-#profilelist td:first-child > *, table#floodfills td:first-child > *,
-table#udpconnections td:first-child > *, table#ntcpconnections td:first-child > * {
+#profilelist td:first-child > *, #floodfills td:first-child > *,
+#udpconnections td:first-child > *, #ntcpconnections td:first-child > * {
      vertical-align: middle;
 }
 
@@ -4939,7 +4953,7 @@ div.app {
      text-align: center !important;
      opacity: 0.8;
      box-shadow: inset 0 0 0 1px #000;
-     transition: border ease 0.3s 0s;
+     transition: border ease 0.3s;
 }
 
 .app a:link, .app a:visited {
@@ -5191,7 +5205,7 @@ h3[id*="job"] {
 
 /* netdb */
 
-table.netdbentry, table.leaseset {
+.netdbentry, .leaseset {
      width: 100% !important;
      margin-bottom: 10px;
 }
@@ -5200,7 +5214,7 @@ table.netdbentry, table.leaseset {
      margin-top: -4px !important;
 }
 
-.netdbentry td b, .leaseset td b, table#leasesetdebug td b, .sybil_routerinfo td b {
+.netdbentry td b, .leaseset td b, #leasesetdebug td b, .sybil_routerinfo td b {
      color: #c9ceff !important;
 }
 
@@ -5264,6 +5278,11 @@ span#distance {
      padding-right: 5px;
 }
 
+.leaseset td:first-child img {
+     margin-left: 3px;
+     margin-right: 2px;
+}
+
 #leasesetdebug th, #leasesetsummary th {
      font-weight: bold;
      text-transform: uppercase;
@@ -5485,7 +5504,7 @@ p.sybil_info + p.sybil_info, p.family + p.family {
      margin-top: -4px;
 }
 
-p.sybil_info + a[name] + table.sybil_routerinfo, p.hashdist + a[name] + table.sybil_routerinfo  {
+p.sybil_info + a[name] + .sybil_routerinfo, p.hashdist + a[name] + .sybil_routerinfo  {
      margin-top: 10px !important;
 }
 
@@ -5507,16 +5526,16 @@ p.sybil_info + a[name] + table.sybil_routerinfo, p.hashdist + a[name] + table.sy
      margin-top: 12px;
 }
 
-table.configtable {
+.configtable {
      margin-top: -1px;
      margin-bottom: -2px !important;
 }
 
-table.configtable tr:last-child {
+.configtable tr:last-child {
      border-top: 1px solid #443da0;
 }
 
-table#netconfig th, table#externali2cp th, table#plugininstall th, .configtable th, th.th_title {
+#netconfig th, #externali2cp th, #plugininstall th, .configtable th, th.th_title {
     text-align: left;
     padding: 5px 10px !important;
     text-transform: uppercase;
@@ -5525,7 +5544,7 @@ table#netconfig th, table#externali2cp th, table#plugininstall th, .configtable
     word-spacing: 0.1em;
 }
 
-table.configtable td {
+.configtable td {
      padding: 6px 10px;
      background: #000;
      line-height: 180%;
@@ -5575,7 +5594,7 @@ p.infowarn, td.infowarn {
      border: 1px solid #443da0;
 }
 
-table.logtable, table#enviro {
+.logtable, #enviro {
      margin-top: -1px !important;
 }
 
@@ -5660,7 +5679,7 @@ p#webappconfigtext {
      background-size: 28px 28px !important;
 }
 
-table#pluginconfig, table#i2pupdates, table.homelinkedit, table#peerdefs {
+#pluginconfig, #i2pupdates, .homelinkedit, #peerdefs {
      margin-top: -1px;
 }
 
@@ -6167,6 +6186,12 @@ body, .main, .main td, .news p, #news p, .statusnotes, textarea, th, .applabel a
      font-size: 10pt !important;
 }
 
+.cells tt, #profilelist tt, #floodfills tt {
+     font-size: 9pt !important;
+     margin-left: 1px !important;
+     margin-right: 2px !important;
+}
+
 h1 {
      font-size: 19pt;
      padding: 15px;
diff --git a/installer/resources/themes/snark/classic/snark.css b/installer/resources/themes/snark/classic/snark.css
index 101317b2255b9c1e08c4f8a6753d07a469b27cc9..adb1e16e3a372d03087a90309c7e91cabdf0a0e5 100644
--- a/installer/resources/themes/snark/classic/snark.css
+++ b/installer/resources/themes/snark/classic/snark.css
@@ -1297,6 +1297,10 @@ input[type=image], thead img {
      border-radius: 3px;
 }
 
+thead a:active img {
+     transform: scale(0.9);
+}
+
 input[type="image"], a img {
      filter: drop-shadow(0 0 1px #ccc);
 }
@@ -2469,7 +2473,7 @@ td#bwHelp a {
 }
 
 #newRating td:first-child {
-     text-align: right;
+     text-align: center;
 }
 
 #newRating select {
diff --git a/installer/resources/themes/snark/dark/snark.css b/installer/resources/themes/snark/dark/snark.css
index 04e6be2af1f0a4cd4b18479e71b0e17cdee14932..364342d0e31c2e48e6bb65720113df7405575962 100644
--- a/installer/resources/themes/snark/dark/snark.css
+++ b/installer/resources/themes/snark/dark/snark.css
@@ -962,7 +962,7 @@ _:-ms-lang(x), .snarkTorrentOdd, .SnarkTorrentEven {
      box-shadow: none;
      opacity: 1;
      box-shadow: 0 0 1px 1px rgba(0,0,0,0.8);
-     margin: auto;
+     margin: 1px auto;
 }
 
 .snarkDirInfo .percentBarOuter {
@@ -989,7 +989,7 @@ _:-ms-lang(x), .snarkTorrentOdd, .SnarkTorrentEven {
 .percentBarText {
      text-align: center;
      font-weight: bold;
-     padding: 1px 0;
+     padding: 0.5px 0 0;
      white-space: nowrap;
      display: block;
      color: #dfd137;
@@ -1003,6 +1003,16 @@ _:-ms-lang(x), .snarkTorrentOdd, .SnarkTorrentEven {
      transition: ease opacity 0.2s;
 }
 
+@media screen and (-webkit-min-device-pixel-ratio: 0) {
+.percentBarText {
+     padding: 0;
+}
+
+.iframed .percentBarText, .iframed .percentBarText:hover, .iframed .percentBarText:focus {
+     transition: none;
+}
+}
+
 .percentBarOuterComplete .percentBarText {
      color: #ee9;
      font-weight: normal;
@@ -1287,6 +1297,10 @@ input[type="image"]:hover, a img:hover, input[type="image"]:focus, a:focus img {
      outline: none;
 }
 
+thead a:active img {
+     transform: scale(0.9);
+}
+
 .snarkTorrents thead th:last-child, .snarkTorrents td:last-child {
      white-space: nowrap;
 }
@@ -2444,6 +2458,10 @@ input[type="checkbox"][disabled]:checked, input[type="radio"][disabled]:checked,
      border-top: 1px solid #050;
 }
 
+#newRating select {
+     width: 90%;
+}
+
 .snarkCommentInfo textarea { /* remember to set 10pt @ > 1400px */
      font-family: "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "DejaVu Sans", Verdana, "Lucida Grande", Helvetica, sans-serif;
      width: 100%;
@@ -2682,11 +2700,16 @@ body, .snarkTorrents td, .snarkAddInfo, th, td,  code, textarea, input, input[ty
      padding-bottom: 3px !important;
 }
 
-.snarkTorrentInfo td, .snarkDirInfo td, .snarkTorrents .peerinfo td {
+.snarkDirInfo td, .snarkTorrents .peerinfo td {
      padding-top: 4px !important;
      padding-bottom: 4px !important;
 }
 
+.snarkTorrentInfo td {
+     padding-top: 6px !important;
+     padding-bottom: 6px !important;
+}
+
 #configs td:first-child {
      min-width: 220px !important;
 }
diff --git a/installer/resources/themes/snark/light/snark.css b/installer/resources/themes/snark/light/snark.css
index a8bb2b95efa98f0628d17b0747982488046360fc..e5647179832ee12bd0e43555bd6f2b480e6d60d0 100644
--- a/installer/resources/themes/snark/light/snark.css
+++ b/installer/resources/themes/snark/light/snark.css
@@ -752,7 +752,7 @@ tr:hover .percentBarText {
 
 .percentBarText, .percentBarOuter {
      text-align: center;
-     height: 16px;
+     height: 14px;
      vertical-align: middle;
 }
 
@@ -760,7 +760,6 @@ tr:hover .percentBarText {
      text-align: center;
      font-weight: bold !important;
      line-height: 15px;
-     padding: 1px 0;
      white-space: nowrap;
      display: block;
      color: #005;
@@ -769,6 +768,16 @@ tr:hover .percentBarText {
      transition: ease opacity 0.2s;
 }
 
+@media screen and (-webkit-min-device-pixel-ratio: 0) {
+.percentBarText {
+     line-height: 16px;
+}
+
+.iframed .percentBarText, .iframed .percentBarText:hover, .iframed .percentBarText:focus {
+     transition: none;
+}
+}
+
 .percentBarText:hover, .percentBarText:focus {
      opacity: 0.75;
      transition: ease opacity 0.2s;
@@ -1115,6 +1124,11 @@ thead a:hover img, thead a img:hover {
      filter: hue-rotate(60deg) drop-shadow(0 0 1px #f60);
 }
 
+thead a:active img {
+     transform: scale(0.9);
+     filter: hue-rotate(45deg) drop-shadow(0 0 1px #f30) !important;
+}
+
 .addtorrentsection input[type="text"], .newtorrentsection input[type="text"] {
      width: 80%;
 }
@@ -1257,7 +1271,7 @@ img {
      vertical-align: middle;
      opacity: 1.0;
      line-height: 100%;
-     filter: drop-shadow(0 0 1px #999);
+     filter: drop-shadow(0 0 1px rgba(153, 153, 153, 0.5));
 }
 
 img:hover {
diff --git a/installer/resources/themes/snark/midnight/snark.css b/installer/resources/themes/snark/midnight/snark.css
index 51250146b31a6cd0c3360c6e0c003c1aae18f5df..84d441df39f129f901a0bab40be4ceec966bfc3b 100644
--- a/installer/resources/themes/snark/midnight/snark.css
+++ b/installer/resources/themes/snark/midnight/snark.css
@@ -1342,6 +1342,10 @@ thead a img:hover, thead a img:focus, thead a:hover img, thead a:focus img {
      filter: saturate(200%) hue-rotate(80deg) drop-shadow(0 0 2px #652787) !important;
 }
 
+thead a:active img, .snarkTorrentAction input[type="image"]:active {
+     transform: scale(0.9);
+}
+
 input[type="checkbox"], .optbox, input[type="radio"] {
      background: none;
      min-width: 16px !important;
@@ -2552,15 +2556,15 @@ tfoot .snarkTorrentDownloaded, tfoot .snarkTorrentRateDown {
 .snarkMessages li:first-child::after {
      content: "minimode";
      display: inline-block;
-     font-size: 9pt !important;
+     font-size: 8pt !important;
      float: right;
      vertical-align: middle;
      position: relative;
-     bottom: -38px;
-     right: -16px;
-     background: rgba(0,0,48,0.3);
-     padding: 2px;
-     border-radius: 4px;
+     bottom: -42px;
+     right: -20px;
+     background: rgba(0,0,48,0.4);
+     padding: 1px 4px 2px;
+     border-radius: 4px 0 0 4px;
      z-index: 0;
 }
 
@@ -2712,7 +2716,7 @@ a, th, thead th, tfoot th, td, select, select option, .snarkAddInfo, .snarkFileN
 }
 
 @media screen and (min-width: 1400px) {
-code, textarea, .snarkMessages li, .snarkMessages a, input, tt {
+code, textarea, input, tt {
      font-size: 10pt !important;
 }
 
@@ -2720,6 +2724,10 @@ a, th, thead th, tfoot th, td, select, select option, .snarkAddInfo, .snarkFileN
      font-size: 10pt !important;
 }
 
+.snarkMessages li, .snarkMessages a {
+     font-size: 9pt !important;
+}
+
 .snarkConfigTitle, .toggleview {
      padding: 4px 25px 4px 22px;
 }
diff --git a/installer/resources/themes/snark/ubergine/snark.css b/installer/resources/themes/snark/ubergine/snark.css
index 1ce5680c3455d910607c8b47f95192905faf52e0..98c53652aff22e1a5b73ac910c044192526e098b 100644
--- a/installer/resources/themes/snark/ubergine/snark.css
+++ b/installer/resources/themes/snark/ubergine/snark.css
@@ -550,10 +550,15 @@ th.snarkTorrentAction input[type="image"] {
      border: 1px solid #202;
 }
 
-th.snarkTorrentAction input[type="image"]:hover {
+th.snarkTorrentAction input[type="image"]:hover, .snarkTorrentAction input[type="image"]:focus {
      border: 1px solid #f60;
 }
 
+.snarkTorrentAction input[type="image"]:active {
+     border: 1px solid #f30 !important;
+     transform: scale(0.9);
+}
+
 .snarkTorrentAction img {
      margin: 0 2px !important;
      opacity: 0.6;
@@ -1291,7 +1296,8 @@ thead img:hover, thead img:focus, thead a:hover img, thead a:focus img {
 }
 
 thead a:active img {
-     filter: drop-shadow(0 0 1px #f90) !important;
+     filter: drop-shadow(0 0 1px #f30) !important;
+     transform: scale(0.9);
 }
 
 input[type="submit"]:disabled:active, a.control:disabled:active {
@@ -2395,11 +2401,12 @@ input#toggle_debug:checked + label + #dhtDebugInner {
 
 #commentDeleteAction {
      background: linear-gradient(to bottom, #202, #101);
-     box-shadow: inset 0 0 0 1px #303;
 }
 
 #commentDeleteAction td {
+     box-shadow: inset 0 0 0 1px #303;
      padding-right: 6px;
+     padding-bottom: 2px !important;
 }
 
 .commentAction, .commentDelete {
@@ -2674,6 +2681,10 @@ b.alwaysShow {
 .dirInfoComplete {
      display: none;
 }
+
+#commentDeleteAction td {
+    padding-top: 4px;
+}
 }
 
 @media screen and (-webkit-min-device-pixel-ratio:0) and (max-width: 1200px) {
diff --git a/installer/resources/themes/snark/vanilla/snark.css b/installer/resources/themes/snark/vanilla/snark.css
index 845e1cb8c624f980debaa2df34ddaa19981fd074..1193a706f5469a607da8e68ca2fc5ecc7f50119e 100644
--- a/installer/resources/themes/snark/vanilla/snark.css
+++ b/installer/resources/themes/snark/vanilla/snark.css
@@ -436,6 +436,11 @@ thead a:hover img, thead a:focus img {
      filter: drop-shadow(0 0 1px #f60);
 }
 
+thead a:active img {
+     transform: scale(0.9);
+     filter: drop-shadow(0 0 1px #f30);
+}
+
 th br {
      display: none;
 }
@@ -699,6 +704,12 @@ th.snarkTorrentStatus {
      color: #bbb !important;
 }
 
+.snarkTorrents th:empty + th:empty, .snarkTorrents td:empty + td:empty, .snarkTorrentETA:empty,
+.snarkTorrentRateDown:empty, .snarkTorrentRateUp:empty, .snarkTorrentAction:empty {
+     width: 0 !important;
+     min-width: 0 !important;
+}
+
 /* end main torrents listing */
 
 .snarkTorrentEven {
@@ -2412,9 +2423,14 @@ td#bwHelp a {
      text-align: center;
 }
 
+#newRating td:first-child {
+     padding-right: 0 !important;
+}
+
 #newRating select {
      width: 90%;
      width: calc(100% - 10px);
+     margin-left: 8px;
 }
 
 #addCommentText {
@@ -2603,6 +2619,10 @@ _:-ms-lang(x), .snarkRefresh:link, .snarkRefresh:visited {
 .snarkDirInfo td:first-child::before {
      min-height: 20px;
 }
+
+.snarkCommentInfo td, .snarkComments td {
+     padding: 5px !important;
+}
 }
 
 @media screen and (max-width: 1400px) {
@@ -2690,13 +2710,13 @@ body, .snarkTorrents td, .snarkAddInfo, th, td, .snarkFileName, a.control, input
      padding-right: 10px !important;
 }
 
-.snarkTorrentRateUp {
-     padding-right: 15px !important;
-}
-
 thead a img, thead img {
      max-height: 21px;
 }
+
+.mainsection .snarkCommentInfo td, .mainsection .snarkComments td {
+     padding: 8px 5px !important;
+}
 }
 
 @media screen and (-webkit-min-device-pixel-ratio:0) and (min-width: 1200px) {
@@ -2751,6 +2771,10 @@ select {
      padding-left: 5px;
 }
 
+.snarkTorrentRateUp {
+     padding-right: 15px !important;
+}
+
 thead a img, thead img {
      max-height: 22px;
 }
diff --git a/installer/resources/themes/susidns/midnight/susidns.css b/installer/resources/themes/susidns/midnight/susidns.css
index 369a5420de8d09307001150077b480c11fa818da..a58b628b04fd01dfbda48f79ba5a6f51d01e53f8 100644
--- a/installer/resources/themes/susidns/midnight/susidns.css
+++ b/installer/resources/themes/susidns/midnight/susidns.css
@@ -1010,7 +1010,7 @@ p.book {
      width: 20px;
      height: 20px;
      vertical-align: middle;
-     margin: 1px 10px 1px 1px;
+     margin: 5px 8px 5px 0;
      padding: 1px;
      border: 1px solid #17142f;
      border-radius: 2px;
@@ -1042,7 +1042,7 @@ p.book {
 }
 
 #host_list th:first-child {
-     padding-left: 39px !important;
+     padding-left: 37px !important;
 }
 
 #host_list td:last-child {
@@ -1103,7 +1103,8 @@ p.book {
 }
 
 #host_list .destaddress {
-     overflow: auto !important;
+     overflow: hidden !important;
+     text-overflow: ellipsis;
      white-space: nowrap;
      font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", monospace !important;
      font-weight: normal;
@@ -1113,6 +1114,11 @@ p.book {
      user-select: all;
 }
 
+#host_list .destaddress:hover, #host_list .destaddress:focus {
+     overflow: auto !important;
+     text-overflow: clip;
+}
+
 td.destinations {
      max-width: 50px !important;
      border-left: 1px solid #2d295f;