/* I2P Theme: Light */


/* Description: Light blue highlights. */


/* Author: dr|z3d */

html {
    margin: 0 !important;
}

body {
    margin: 6px;
    text-align: center;
    color: #33333f;
    font-size: 9pt;
    line-height: 130%;
    background: #f6f6fa;
}


/* preload button mouseovers */

@supports (text-justify: auto) {
    /* Firefox 55+ */
    body {
        background-attachment: fixed !important;
    }
}

b {
    color: #41465f;
}

.hide,
.hideme {
    display: none;
}

div.clearer {
    clear: left;
    height: 0;
    line-height: 0;
}

::selection {
    background: #27377f !important;
    color: white;
    text-shadow: none;
}

::-moz-selection {
    background: #27377f !important;
    color: white;
    text-shadow: none;
}

body,
input,
button,
select {
    font-family: "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Lucida Grande", Verdana, Helvetica, sans-serif;
}

tt,
code,
pre,
textarea,
#logs li {
    font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", monospace;
}

.routersummary img[src$="i2plogo.png"],
.routersummary h3,
.confignav,
*::before,
*::after,
div.app,
.themechoice,
.langselect,
.langbox,
.newsAuthor,
#netdbcountrylist img,
.viewfullentry,
.sybil_routerinfo th img,
.graphspanel,
#themeoptions,
#graphopts,
#newsDisplay {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

* {
    outline: none;
}

img {
    border: none;
}

img:not(img[src$="i2plogo.png"]) {
    image-rendering: -moz-crisp-edges;
    image-rendering: -o-crisp-edges;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
    -ms-interpolation-mode: nearest-neighbor;
}

a:hover img {
    filter: drop-shadow(0 0 1px #f60);
}

pre {
    width: 98%;
    overflow: auto;
    text-align: left;
    font-size: 8.5pt;
    color: #33333f;
    margin: 10px;
}


/* sidebar */

.routersummaryouter {
    float: left;
    width: 200px;
    margin: 0 0 10px 0;
    padding: 0;
    border: 0;
    clear: left;
    /* fixes a bug in Opera */
    text-align: center !important;
    display: block;
    position: absolute;
    /* so no interference with /home app icons */
}

.routersummary {
    width: 192px;
    padding: 8px;
    margin-bottom: 2px;
    text-align: center !important;
    color: #33333f;
    font-size: 8pt;
    clear: left;
    /* fixes a bug in Opera */
    border-radius: 2px;
    background: #fafaff;
}

.routersummary div[style="height: 36px;"] {
    margin: 0;
    height: 36px !important;
    padding: 0 0 1px;
    text-align: center;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    .routersummary div[style="height: 36px;"] {
        height: 34px !important;
    }
}

.routersummary img[src$="i2plogo.png"] {
    opacity: 1;
    transition: ease filter 0.3s 0s, ease opacity 0.3s 0s;
    margin: 0 !important;
    width: 190px;
    height: auto;
}

.routersummary img[src$="i2plogo.png"]:hover {
    opacity: 1;
    transition: ease filter 0.3s 0s, ease opacity 0.3s 0s;
}

.routersummary a[href="/"]:focus img,
.routersummary a[href="/console"]:focus img {}

.routersummary a:active img[src$="i2plogo.png"] {}

.routersummary a[href="/"],
.routersummary a[href="/console"] {
    outline: none !important;
}

.routersummary form {
    margin: -2px -7px;
    padding: 0 0 3px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    .routersummary form {
        margin: -1px -7px -3px !important;
    }
}

.routersummary form button.download {
    display: inline-block;
    vertical-align: middle;
    margin: -3px 0;
    background: url(/themes/console/images/buttons/download.png) 6px center no-repeat, linear-gradient(to bottom, #fff, #efefff);
    background-size: 14px 14px, 100% 100% !important;
    padding: 5px 7px 5px 25px !important;
}

.routersummary input[type=text] {
    text-align: right !important;
}

.routersummary hr {
    color: #99f;
    background: #99f;
    height: 1px;
    border-bottom: 1px solid #dee2e6;
    margin: 8px -7px 8px -7px;
    box-shadow: inset 0 1px 1px 1px #fff;
}

.routersummary hr.b {
    color: #fff;
    background: transparent;
    border-bottom: 1px solid transparent;
    height: 0 !important;
    margin-bottom: 5px;
}

.routersummary h3 {
    font-size: 9.5pt;
    letter-spacing: 0.04em;
    margin: -9px -7px -2px;
    padding: 2px 0;
    background: #f6f6fa !important;
    border: 1px solid #dee2e6;
    border-left: none;
    border-right: none;
    border-radius: 0;
    box-shadow: inset 0 0 0 1px #fff, inset 0 0 0 0 #fff;
    ;
    filter: none;
}

.routersummary h3:hover {
    background: #adb5bd;
}

.routersummary h3:active {
    background: #4661A9 !important;
}

.routersummary h3 a,
.routersummary h3 a:visited {
    text-transform: capitalize;
    text-decoration: none;
    display: inline-block;
    width: 100%;
    width: calc(100% - 4px);
    padding: 3px 0 2px;
    color: #495057;
    line-height: 110%;
}

.routersummary h3:hover,
.routersummary h3 a:hover {
    color: #4661A9 !important;
    text-shadow: 0 0 1px #fff;
}

.routersummary h3:active a,
.routersummary h3 a:active {
    color: #dee2e6 !important;
    text-shadow: 0 1px 1px #5f2d0c;
}


/*
h3#helpfaq {
     margin-bottom: -9px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
h3#helpfaq {
     margin-bottom: -10px;
}
}
*/

.routersummary h4 {
    border: #dee2e6;
    font-size: 8.5pt;
    letter-spacing: normal;
    text-transform: none;
    margin: -7px;
    padding: 6px 2px !important;
    background: #dee2e6;
    border-radius: 6px;
    text-decoration: none !important;
    color: #343a40;
    box-shadow: inset 0 0 0 1px #dee2e6;
}

.routersummary h4::after {
    content: "";
    display: inline-block;
    box-sizing: border-box;
    min-height: 12px;
    padding-top: 8px;
    padding-bottom: 8px;
    vertical-align: middle;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    .routersummary h4 {
        margin-bottom: -8px !important;
    }
}

.routersummary h4 a {
    vertical-align: baseline;
}

h4.sb_info {
    margin-top: -11px !important;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sb_info a {
    vertical-align: baseline !important;
}

h4.sb_info+hr+form {
    padding-top: 5px !important;
    margin-bottom: -1px;
}

.routersummary ul {
    text-align: left !important;
}

.routersummary table {
    border: 0;
    text-align: center !important;
    margin: -8px -5px -5px -5px;
    width: 202px !important;
    overflow: hidden;
    font-size: 8pt;
    background-image: none !important;
    background-color: #f6f6fa !important;
}

#sb_version {
    margin-top: 7px !important;
    margin-bottom: 10px !important;
}

#sb_localtunnels td {
    vertical-align: middle;
}

#sb_localtunnels td:first-child {
    text-align: left !important;
    width: 16px;
    padding: 1px 2px;
    border-radius: 2px 0 0 2px;
}

#sb_localtunnels td:first-child img {
    margin: 0 0 2px !important;
}

#sb_localtunnels td img {}

#sb_localtunnels td:last-child {
    text-align: right !important;
    width: 16px;
    padding: 2px 0 2px 2px;
    border-radius: 0 2px 2px 0;
}

#sb_localtunnels a {
    display: inline-block;
    width: 100%;
    max-width: 158px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-left: 2px;
}

#sb_localtunnels tr:hover td {
    background: #fffff0 !important;
}

#sb_internals,
#sb_advanced,
#sb_help {
    margin: -9px -6px -5px;
    width: 204px !important;
}

#sb_internals a,
#sb_advanced a,
#sb_help a {
    padding: 2px;
    display: inline-block;
    vertical-align: middle !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#sb_internals a:hover,
#sb_advanced a:hover,
#sb_help a:hover {
    background: #e9ecef;
    border-radius: 3px;
}

#sb_general,
#sb_shortgeneral,
#sb_advancedgeneral,
#sb_bandwidth,
#sb_peers,
#sb_peersadvanced,
#sb_tunnels,
#sb_queue {
    margin-bottom: -4px !important;
    margin-top: -10px !important;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    #sb_general,
    #sb_shortgeneral,
    #sb_advancedgeneral,
    #sb_bandwidth,
    #sb_peers,
    #sb_peersadvanced,
    #sb_tunnels,
    #sb_queue {
        margin-bottom: -6px !important;
    }
}

#sb_shortgeneral {
    margin-top: -7px !important;
}

#sb_general td,
#sb_shortgeneral td,
#sb_advancedgeneral td {
    white-space: nowrap;
}

#sb_general td:first-child,
#sb_shortgeneral td:first-child,
#sb_advancedgeneral td:first-child {
    max-width: 130px;
}

#sb_general td::after,
#sb_shortgeneral td::after,
#sb_advancedgeneral td::after,
#sb_bandwidth td::after,
#sb_peers td::after,
#sb_peersadvanced td::after,
#sb_tunnels td::after,
#sb_queue td::after {
    content: "";
    display: inline-block;
    min-height: 13px;
}

#sb_peers td:first-child,
#sb_peersadvanced td:first-child,
#sb_tunnels td:first-child,
#sb_queue td:first-child,
#sb_bandwidth td:first-child,
#sb_general td:first-child,
#sb_shortgeneral td:first-child,
#sb_advancedgeneral td:first-child {
    text-transform: capitalize;
}

#sb_peersadvanced a:hover b,
#sb_peersadvanced a:visited:hover b {
    color: #f60 !important
}

#sb_peersadvanced a:active b,
#sb_peersadvanced a:visited:active b {
    color: #f90 !important
}

#sb_peersadvanced .separator td {
    padding: 0;
}

.separator hr,
.separator hr:last-child {
    color: transparent;
    background: transparent;
    height: 1px;
    border-bottom: 1px dashed #dee2e6 !important;
    margin: 3px 0 -10px !important;
    display: block !important;
}


/* mini sidebar graph */

#sb_bandwidthgraph {
    width: 100%;
    margin: -5px 0 -6px -5px;
    border-collapse: separate;
    border-spacing: 0;
    padding: 0;
    border: 1px solid #dee2e6;
    border-radius: 2px;
    box-shadow: 0 0 1px #ccf;
    transition: ease border 0.7s;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    #sb_bandwidthgraph {
        margin: -5px 0 -6px -5px !important;
    }
}

#sb_bandwidthgraph:hover {
    border: 1px solid #f60;
    cursor: url(/themes/console/images/cursor_zoom.png), pointer;
    transition: ease border 0.7s;
}

a:active #sb_bandwidthgraph {
    border: 1px solid #f30;
}

#sb_bandwidthgraph {
    background-color: transparent !important;
}

#sb_bandwidthgraph td {
    background: linear-gradient(to top, #f3f3ff 2px, rgba(255, 255, 255, 0.0) 2px, rgba(255, 255, 255, 0.0) 89%, #f3f3ff 93%), linear-gradient(to right, #f3f3ff, rgba(255, 255, 255, 0.0) 2%, rgba(255, 255, 255, 0.0) 98%, #f3f3ff), repeating-linear-gradient(to right, rgba(255, 255, 255, 0.0) 10px, rgba(120, 120, 255, 0.8) 11px, rgba(255, 255, 255, 0.0) 11px, rgba(255, 255, 255, 0.0) 20px), repeating-linear-gradient(to top, rgba(255, 255, 255, 0.0) 1px, rgba(120, 120, 255, 0.8) 2px, rgba(255, 255, 255, 0.0) 2px, rgba(255, 255, 255, 0.0) 10px) !important;
    padding: 0 1px;
    box-shadow: inset 0 0 0 1px #fff;
    height: 40px;
    vertical-align: top;
}

#sb_graphstats {
    display: inline-block;
    padding: 2px 8px;
    font-weight: bold;
    background: #ddf;
    background: linear-gradient(to right, #ddf, #efefff, #ddf);
    border: 1px solid #89f;
    border-top: none;
    border-radius: 0 0 3px 3px;
    box-shadow: inset 0 0 0 1px #fff, 0 0 1px #fff;
    opacity: 0;
    transition: ease opacity 0.3s;
}

#sb_graphcontainer:hover #sb_graphstats {
    opacity: 1;
    transition: ease opacity 0.3s;
}

#sb_graphcontainer {
    background-color: #f3f3ff;
    background-position: left -60px top -23px !important;
    background-size: 280px 77px !important;
    background-repeat: no-repeat !important;
    background-blend-mode: multiply;
    will-change: background;
}

@media screen and (min-width: 1500px) {
    #sb_graphcontainer {
        background-size: 300px 77px !important;
    }
}


/* end mini sidebar graph */


/* status bars for memory usage and router/plugin updates */

.percentBarOuter {
    width: 196px;
    margin: -4px -5px -4px -3px;
    text-align: center;
    border: 1px solid #99f;
    box-shadow: 0 0 1px rgba(200, 200, 200, 0.8);
    background: #eef;
    background: linear-gradient(to right, rgba(0, 255, 0, 0.05) 50%, rgba(255, 255, 0, 0.05) 75%, rgba(255, 128, 0, 0.05) 90%, rgba(255, 0, 0, 0.1)), repeating-linear-gradient(to right, rgba(180, 180, 255, 0.7) 1px, rgba(180, 180, 255, 0.7) 2px, rgba(221, 221, 255, 0.7) 2px, rgba(221, 221, 255, 0.7) 4px);
}

@media screen and (min-width: 1500px) {
    .percentBarOuter {
        width: 212px;
    }
}

.percentBarInner {
    vertical-align: middle;
    border: none;
    height: 14px;
    background: #bbf;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.6), rgba(238, 238, 255, 0.6) 50%, rgba(180, 180, 255, 0.7) 50%, rgba(140, 140, 255, 0.7));
    box-shadow: inset 0 0 0 1px #ddf;
}

.percentBarText {
    display: inline !important;
    white-space: nowrap;
    text-align: center !important;
    font-weight: bold !important;
    color: #41465f;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);
    float: left;
    width: 100%;
    height: 14px;
    padding: 0;
    opacity: 0;
    transition: ease opacity 0.2s;
}

.percentBarOuter:hover .percentBarText {
    opacity: 1;
    transition: ease opacity 0.2s;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    #sb_memoryBar {
        margin-bottom: -5px;
    }
}


/* updates download bar */

.sb_update a {
    white-space: nowrap;
    vertical-align: baseline;
}

.sb_updatestatus {
    display: block;
    font-style: italic;
    border: 1px solid #99f;
    border-top: none;
    border-radius: 0 0 3px 3px;
    background: #ccf;
    background: linear-gradient(to right, #ddf, #efefff 30%, #efefff 60%, #ddf);
    box-shadow: inset 0 0 0 1px #fff;
    margin: -3px 2px 5px !important;
    padding: 4px 0 3px;
}

.sb_info .percentBarOuter {
    margin: 3px -4px -19px 2px;
    background: repeating-linear-gradient(135deg, rgba(238, 238, 255, 0.7) 1px, rgba(238, 238, 255, 0.7) 5px, rgba(221, 221, 255, 0.7) 6px, rgba(221, 221, 255, 0.7) 11px);
}

@keyframes downloadbar {
    from {
        background: repeating-linear-gradient(135deg, rgba(221, 221, 255, 0.7) 1px, rgba(221, 221, 255, 0.7) 6px, rgba(238, 238, 255, 0.7) 7px, rgba(238, 238, 255, 0.7) 11px);
    }
    to {
        background: repeating-linear-gradient(135deg, rgba(238, 238, 255, 0.7) 1px, rgba(238, 238, 255, 0.7) 5px, rgba(221, 221, 255, 0.7) 6px, rgba(221, 221, 255, 0.7) 11px);
    }
}

.sb_info .percentBarOuter {
    animation: downloadbar 3s linear infinite;
}

.sb_info .percentBarInner {
    height: 16px;
}

.sb_info .percentBarText {
    opacity: 1;
    padding-top: 3px;
    mix-blend-mode: multiply;
}


/* end updates download bar */


/* end status bars */

#sb_warning {
    border-bottom: 1px solid #99f;
}

#sb_warning+hr {
    margin-top: 6px;
}

#sb_warning+.sb_notice {
    margin-top: 10px;
}

#sb_warning a {
    line-height: 100%;
}

#sb_warning+p:empty+form {
    margin-top: 12px;
    margin-bottom: -4px;
}

.sb_notice {
    background: #f2f2ff;
    border: 1px solid #89f;
    border-radius: 2px;
    box-shadow: 0 0 1px #bbb, inset 0 0 0 1px #fff;
    margin: -5px;
    padding: 5px;
    line-height: 140%;
}

p:empty+.sb_notice {
    margin-top: 9px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    .sb_notice {
        margin-bottom: -6px;
    }
}


/* experimental sidebar navigation for webapps */

#sb_services {
    margin: -15px -9px -11px -7px;
    width: 206px !important;
}

#sb_services td {
    text-align: left !important;
}

#sb_services td:first-child {
    width: 16px;
    padding: 1px 2px;
}

#sb_services td:first-child img {
    margin: 0 0 2px !important;
}

#sb_services a:link,
#sb_services a:visited {
    padding: 4px 2px 4px 3px;
    text-align: left;
}

#sb_services a:link:last-child {
    border-bottom: none;
}

#sb_services a:hover {
    background-blend-mode: normal;
    background-color: #e9ecef;
}

.notifcount {
    background-color: #e33;
    border: 1px solid #e33;
    border-radius: 9px;
    color: #fff;
    margin: 0 6px 0 3px;
    padding: 0 4px;
}

.notifbubble {
    background-color: #e33;
    border: 1px solid #e33;
    border-radius: 9px;
    color: #fff;
    margin: -2px 0 0 -67px;
    padding: 0 4px;
    position: absolute;
}

/* end webapp navigation */

.routersummary tr {
    background-image: none !important;
    background-color: transparent !important;
    border: 0 !important;
}

.routersummary a:hover {
    color: #495057;
}

.routersummary td {
    padding: 0 2px;
    background-image: none !important;
    border: 0 !important;
}


/* sidebar network status */

.sb_netstatus,
.tunnelBuildStatus {
    display: inline-block;
    vertical-align: baseline;
    line-height: 120%;
    border: 1px solid #dee2e6;
    border-radius: 2px;
    padding: 6px 4px;
    width: calc(100% - 10px);
    width: 100%;
    margin: -4px -1px;
    box-sizing: border-box;
    box-shadow: inset 0 0 0 1px #fff, 0 0 1px rgba(96, 96, 96, 0.5);
    text-shadow: 0 1px 1px #fff;
}

.sb_netstatus a {
    vertical-align: baseline;
}

.routersummary .firewalled {
    background: #dee2e6;
}

.routersummary .error {
    background: rgba(255, 110, 110, 0.1);
    box-shadow: inset 0 0 0 1px rgba(200, 0, 0, 0.5), 0 0 1px rgba(96, 96, 96, 0.5);
    background: repeating-linear-gradient(135deg, rgba(255, 100, 100, 0.05) 2px, rgba(255, 200, 200, 0.2) 3px, rgba(255, 100, 100, 0.05) 5px);
}

.routersummary .warn,
.routersummary .clockskew {
    background: rgba(255, 255, 200, 0.25);
}

.routersummary .testing {
    background: rgba(255, 220, 110, 0.1);
}

.routersummary .hidden,
.routersummary .vmcomm {
    background: rgba(220, 220, 220, 0.4);
}

.routersummary .vmcomm {
    border: 1px dotted #999daf;
}

.routersummary .running {
    background: rgba(220, 255, 220, 0.15);
}

.routersummary .error::before,
.routersummary .warn::before,
.routersummary .testing::before,
.routersummary .hidden::before,
.routersummary .running::before,
.routersummary .firewalled::before,
.routersummary .vmcomm::before,
.routersummary .clockskew::before {
    margin-bottom: -1.5px;
    padding-right: 4px;
    vertical-align: text-bottom;
    display: inline-block;
    transform: scale(0.9);
}

.routersummary .error::before {
    content: url(/themes/console/images/info/network_status/network_error.png);
}

.routersummary .warn::before {
    content: url(/themes/console/images/info/network_status/network_warning.png);
}

.routersummary .testing::before {
    content: url(/themes/console/images/info/network_status/network_testing.png);
}

.routersummary .hidden::before {
    content: url(/themes/console/images/info/network_status/network_hidden.png);
}

.routersummary .running::before {
    content: url(/themes/console/images/info/network_status/network_ok.png);
}

.routersummary .firewalled::before {
    content: url(/themes/console/images/info/network_status/network_firewalled.png);
    padding-right: 4px;
    opacity: 0.8;
}

.routersummary .vmcomm::before {
    content: url(/themes/console/images/info/network_status/network_vm.png);
}

.routersummary .clockskew::before {
    content: url(/themes/console/images/info/network_status/network_clockskew.png);
}


/* end network status */


/* tunnel build status */

.tunnelBuildStatus {
    padding: 7px 2px;
}


/* TO DO: activate this when we have build status specific spans */


/*
.tunnelStatusAccept {
     background: rgba(220,255,220,0.15);
     color: #070;
}

.tunnelStatusReject {
     background: rgba(255,110,110,0.1);
     color: #070;
}

.tunnelStatusRejectHidden {
     background: rgba(220,220,220,0.4);
     color: #777;
}

.tunnelBuildStatus::before, .tunnelStatusAccept::before, .tunnelStatusReject::before, .tunnelStatusRejectHidden::before {
     margin-bottom: 1px;
     padding-right: 1px;
     vertical-align: -30%;
     vertical-align: middle;
     display: inline-block;
     filter: drop-shadow(.*);
}

.tunnelBuildStatus::before {
     content: url(/themes/console/images/info/network_status/accepting.png);
}

.tunnelStatusAccept::before {
     content: url(/themes/console/images/info/network_status/accepting.png);
}

.tunnelStatusReject::before {
     content: url(/themes/console/images/info/network_status/rejecting.png);
}

.tunnelStatusRejectHidden::before {
     content: url(/themes/console/images/info/network_status/rejecting_hidden.png);
}
*/


/* end tunnel build status */


/* sidebar news */

.sb_newsheadings {
    margin: -5px 0 0 8px;
}

.sb_newsheadings table {
    table-layout: auto;
    width: 204px !important;
    margin: -12px 0 -8px -14px;
}

.sb_newsheadings td a {
    padding: 2px 0 !important;
    display: inline-block;
    width: 100%;
    line-height: 120%;
}

.sb_newsheadings a {
    display: inline-block;
    margin: -1px 0 -2px;
}

.sb_newsheadings td {
    background: url(images/newsbullet_mini.png) 2px 7px no-repeat !important;
    padding-left: 19px !important;
    border-bottom: 1px dotted #ddf !important;
    padding: 6px 1px;
    text-align: left;
    line-height: 100%;
}

.sb_newsheadings tr:hover td {
    background: url(images/newsbullet_mini.png) 2px 7px no-repeat #ffe !important;
    background-blend-mode: luminosity;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    .sb_newsheadings table {
        width: 202px !important;
        margin-bottom: -10px;
    }
    .sb_newsheadings td,
    .sb_newsheadings tr:hover td {
        background-position: 2px 6px !important;
    }
}

.sb_newsheadings tr:last-child td {
    border-bottom: none !important;
}


/* end sidebar news */


/* end sidebar */


/* proxy error messages */

.logo {
    float: left;
    padding: 10px;
    text-align: center;
    color: #222;
    margin: 0 10px;
    border: 1px solid #447;
    border-radius: 2px;
    background: #f8f8ff;
    width: 185px;
    box-shadow: inset 0 0 0 1px #bbf;
}

.logo hr {
    margin: 8px -10px;
    background: #7778bf;
    height: 1px
}

.warning hr {
    background: #7778bf;
    background: linear-gradient(to right, #7778bf, #c2c4ef);
}

.logo a {
    display: inline-block !important;
    width: 100%;
}

.logo hr~a {
    margin: 3px 2px;
}

.warning {
    margin: 16px 12px 30px 232px;
    padding: 10px 25px 20px 75px;
    background: #fafaff;
    border: 1px solid #447;
    color: #33333f;
    border-radius: 2px;
    text-align: justify;
    background-image: url(/themes/console/images/itoopie_sm.png);
    background-position: 10px center;
    background-repeat: no-repeat;
    box-shadow: inset 0 0 1px 0 #d00;
    word-wrap: break-word;
    min-width: 400px;
}

.warning:not(old) {
    background: url(/themes/console/images/itoopie_sm.png) no-repeat scroll 10px center, linear-gradient(to bottom, rgba(248, 248, 255, 0.8), rgba(240, 240, 255, 0.8)) #f8f8ff;
    background-size: 54px auto, 100% 100%;
    background-position: 10px calc(50% + 16px);
}

.warning h3 {
    text-align: left;
    margin: -9px -24px 20px !important;
    border: none;
    border-bottom: 1px solid #447;
    border-radius: 2px 2px 0 0;
    padding: 10px 10px 8px;
    font-size: 10.5pt;
}

#jumplinks {
    margin-top: -15px;
}

#jumplinks h3 {
    margin: 0 0 10px;
}

#jumplinks a {
    display: inline-block;
    padding: 2px 0;
    line-height: 16px;
}

#jumplinks a::before {
    content: "\279F\00A0";
    font-size: 16pt;
    display: inline-block;
    padding: 3px 0;
    vertical-align: sub;
    line-height: 16px;
}

.proxyfooter {
    margin: 0 20px 10px 240px;
    padding: 20px 25px 20px 75px;
    color: #f00;
    font-size: 7pt;
    text-align: right !important;
    border-radius: 2px;
    border: 1px solid #447;
    display: none;
}

@media screen and (max-width: 800px) {
    .warning {
        margin: 114px 5px 0 !important;
        background: #fff !important;
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.3)) #f8f8ff !important;
        padding-left: 25px !important;
    }
    .warning h3 {
        font-size: 10pt !important;
    }
    .logo {
        position: absolute;
        top: 0;
        width: calc(100% - 40px) !important;
        min-width: 430px;
        margin: 10px 5px 0 !important;
    }
    .logo a:link:not(img) {
        display: inline-block;
        width: auto;
        margin: 0 5px;
    }
}

@media screen and (min-width: 800px) {
    .warning h3 {
        margin: -9px -24px 20px -74px !important;
    }
}

@media screen and (min-width: 1400px) {
    #jumplinks h4 {
        font-size: 10.5pt;
    }
}

@media screen and (min-height: 700px) {
    .proxyfooter {
        position: absolute;
        bottom: 0;
        right: 0;
        padding: 0 20px 0 0;
        text-align: right;
        background: #030;
        width: 100%;
        opacity: 0.7;
        border-top: 1px solid #000;
    }
    .proxyfooter p {
        text-align: right;
        line-height: 130% !important;
        margin: 5px 0;
    }
    .warning {
        margin-bottom: 30px;
    }
}

@media screen and (max-height: 700px) {
    .proxyfooter {
        display: none;
    }
}

.proxyfooter p {
    text-align: right !important;
    line-height: 115%;
    color: #6b4612;
}

#proxyNewAddressHelper .warning {
    padding-bottom: 5px !important;
}

#proxyNewHost {
    margin-bottom: 20px;
}

#proxyNewHost td {
    padding: 8px !important;
    font-size: 10pt !important;
}

#proxyNewHost tr:last-child td:first-child {
    vertical-align: top;
}

#proxyNewHost textarea {
    white-space: pre-wrap;
    word-break: break-all;
    overflow: auto;
    border: none;
    resize: none;
    background: none !important;
    box-shadow: none !important;
    width: 100% !important;
    height: 6em;
    margin: 0 !important;
    padding: 0 !important;
}

#proxyNewHost textarea:focus {
    filter: none;
}

#proxyNewHost+hr {
    display: none;
}

#proxyNewHost a {
    display: inline-block;
    word-break: break-all;
}

#proxyNewHost td:first-child {
    font-weight: bold;
}

#proxyNewHost tr:last-child td:first-child {
    vertical-align: top;
}

.warning h4 {
    box-shadow: none !important;
    text-align: left;
    font-size: 10pt;
    margin-top: 20px;
    text-transform: none;
    letter-spacing: 0;
    word-spacing: 0;
    background: none;
    border-radius: 0;
    border: none;
    border-bottom: 1px solid #447 !important;
    padding-left: 0;
    margin-bottom: -5px;
}

#jumplinks h4 {
    margin-bottom: 10px;
    border-color: #7778bf !important;
    color: #41465f;
    padding-bottom: 10px;
}

.warning p+.formaction {
    margin: -5px -3px 10px 0;
    padding: 0;
    background: none !important;
    border: none;
    box-shadow: none;
}

.hostaddform {
    display: inline-block;
    width: 45%;
    vertical-align: top;
}

.hostadd {
    min-height: 20%;
    width: 100%;
    background: #fafaff !important;
}

.unicodeicon {
    font-size: 2rem;
    vertical-align: middle;
}

.hostaddaction {
    background: transparent !important;
    border: none !important;
    padding-bottom: 15px !important;
    padding-top: 0px !important;
}


/* end proxy error messages */


/* console error messages */

.sorry {
    margin: -11px 0 10px 214px;
    padding: 20px 25px 20px 70px;
    border: 1px solid #447;
    border-radius: 0 0 2px 2px;
    text-align: justify;
    background: #fafaff url(/themes/console/images/info/errortriangle.png) 16px 40% no-repeat;
    background: url(/themes/console/images/info/errortriangle.png) 16px 40% no-repeat, linear-gradient(to top, rgba(250, 250, 255, 0.5), #f8f8ff 40px), repeating-linear-gradient(135deg, #fafaff 2px, rgba(248, 248, 255, 0.8) 3px, #fafaff 5px) #f8f8ff;
    box-shadow: inset 0 0 1px #f00;
    word-wrap: break-word;
    font-weight: bold;
    min-width: 481px;
}

.sorry {
    color: #41465f;
}

.sorry hr,
.sorry hr:last-child {
    color: #558;
    background: #558;
    background: linear-gradient(to right, #558, #77a);
    height: 1px;
    margin: 10px 0 !important;
}

#warning2 {
    min-width: 536px;
    margin-top: -25px;
    margin-bottom: 5px;
    padding: 20px 20px 5px;
    background: #fafaff;
    background: linear-gradient(to bottom, rgba(252, 252, 255, 0.8), rgba(252, 252, 255, 0.5)) #fafaff;
    color: #33333f;
    font-weight: normal;
}

#warning2 h3 {
    margin: -21px -19px 5px;
    padding: 8px 10px;
    border-width: 1px;
    border-left: none;
    border-right: none;
    border-radius: 0;
}

#warning2 p:first-of-type {
    font-weight: bold;
    color: #41465f;
}

#warning2 p+h3 {
    margin-top: -10px !important;
}

#warning2 b {
    display: inline-block;
    min-width: 140px;
    margin-right: 5px;
    text-align: right;
}


/* end console error messages */


/* main content div & variations */

.main,
.routersummary,
.logo {
    background: #f6f6fa !important;
}

.main {
    margin: -12px 0 8px 214px;
    padding: 0 15px 10px 15px;
    text-align: left;
    color: #33333f;
    width: auto;
    min-width: 546px;
    border: 1px solid #dee2e6;
    border-radius: 0 0 2px 2px;
    box-shadow: inset 0 0 0 1px #dee2e6;
}

.main[id^="config_"] {
    padding-bottom: 5px !important;
}

.main#console {
    box-shadow: inset 0 0 0 1px #dee2e6;
}

.news,
.main#news,
.main#oldconsole,
#warning2 {
    background: #f6f6fa;
    background-size: 100% 100%, auto 160px, 100% 100% !important;
}

.main#news {
    padding: 3px 15px 5px;
}

.news#news {
    margin: -12px 0 5px 214px;
    padding: 5px 15px 12px;
    border: 1px solid #dee2e6;
    color: #224;
    border-radius: 0 0 2px 2px;
    text-align: left;
    font-size: 8pt;
    line-height: 140%;
    box-shadow: inset 0 0 0 1px #dee2e6;
    min-width: 546px;
}

.main#oldconsole {
    background-size: 100% 100%, auto 70%, 100% 100% !important;
}

.main#torrents {
    padding: 0;
    min-width: 576px;
}

#i2psnarkframe {
    margin: 0;
}

.main#webmail {
    padding: 0 8px;
}

#susimailframe {
    margin-top: 3px;
}

.main#dns {
    padding: 0;
    min-width: 576px;
}

#susidnsframe {
    margin: 0 0 -2px;
    width: 100%;
    overflow: hidden;
}

.main#tunnelmgr {
    padding: 0 10px;
    min-width: 556px;
}

#i2ptunnelframe {
    margin: -4px 0 -1px;
    overflow: hidden;
}

.main#embedded {
    padding: 1px 11px 4px;
}


/* end main content div & variations */

.main li:first-child {
    margin-top: 10px;
}

.main hr,
hr {
    color: #113;
    background: #113;
    height: 1px;
    border: 0 solid #113;
    margin: 10px 0;
}

hr:last-child {
    margin-top: 20px !important;
}

.main textarea {
    color: #33333f;
    margin: 5px 0;
    resize: none;
}

td.tabletextarea {
    padding: 0 !important;
    background: #fafaff;
}

textarea[id="advancedsettings"]:focus {
    background: #fff !important;
    color: #19191f;
    border-radius: 0 !important;
}

textarea[id="advancedsettings"],
textarea[id="advancedsettings"][disabled]:focus {
    background: #f8f8ff !important;
    width: 99% !important;
    width: calc(100% - 3px) !important;
    border: none !important;
    margin: 0 !important;
    padding: 3px 5px !important;
    white-space: pre-wrap;
    box-shadow: none;
    filter: none !important;
    font-size: 9pt;
    color: #33333f;
}

textarea[name="reseedURL"] {
    margin-bottom: 20px !important;
}

#resetreseed {
    border: 0 !important;
    background: none !important;
    padding: 5px 0;
}

#config_reseed input[type="text"],
#config_reseed input[type="password"] {
    min-width: 300px;
}

#reseedconfig tr:nth-child(2) br {
    display: none;
}

#reseedconfig tr:nth-child(2) label {
    white-space: nowrap;
    margin-right: 10px;
}


/* news */

.news hr {
    background: #339;
    opacity: 0.6;
    display: none;
}

.newsentry {
    box-shadow: 0 0 1px #ccc;
}

.news#news .newsentry:first-child {
    margin-top: -2px;
}

.main#news .newsentry:last-child {
    margin-bottom: -5px !important;
}

.newscontent {
    background: #f6f6fa !important;
    /*border-radius: 0 0 2px 2px;*/
    margin: 0 0 14px;
    padding: 10px 15px;
}

div.newscontent p {
    font-size: 9pt;
    text-align: justify !important;
    line-height: 140%;
    margin: 0;
    padding: 0;
    text-shadow: 0 0 1px #fff;
}

.newscontent p:nth-child(n+2) {
    margin-top: 8px;
}

.newscontent hr {
    color: #225;
    background: #225;
    height: 1px;
    border: 0 dotted #225;
    margin: 10px 0 5px;
}

.newsentry+hr+i {
    margin-right: 8px;
}

#newsStatus,
#newsDisplay {
    display: inline-block;
    color: #41465f;
}

#newsStatus,
.news #newsDisplay {
    padding-top: 6px !important;
    padding-bottom: 3px !important;
}

.news #newsdisplay,
#graphopts {
    color: transparent;
}

.news #newsdisplay a,
#graphopts a {
    border: 1px solid #8b8edf;
    padding: 2px 10px;
    border-radius: 12px;
    background: #f8f8ff;
    background: rgba(248, 248, 255, 0.5);
    margin-left: -3px;
    box-shadow: 0 0 0 1px #ddf;
    box-shadow: 0 0 0 1px rgba(220, 220, 255, 0.6);
}

.news #newsdisplay a:hover,
.news #newsdisplay a:focus,
#graphopts a:hover,
#graphopts a:visited:hover,
#graphopts a:focus,
#graphopts a:visited:focus {
    color: #4f8fff;
    border: 1px solid #dee2e6;
    background: #dee2e6;
    box-shadow: 0 0 0 1px rgba(220, 220, 255, 0.6), inset 0 0 0 1px #efefff;
}

.news #newsdisplay a:focus,
#graphopts a:focus,
#graphopts a:visited:focus {
    border: 1px solid #f60;
}

.news #newsdisplay a:active,
#graphopts a:active,
#graphopts a:visited:active {
    box-shadow: inset 3px 3px 3px rgba(41, 61, 95, 0.8);
    color: #559 !important;
    border: 1px solid #7778bf;
}

.newsentry+hr+#newsStatus,
.newsentry+hr+#newsStatus+#newsDisplay {
    margin-top: -2px;
    margin-bottom: 3px;
}

hr+#newsStatus,
hr+#newsStatus+#newsDisplay {
    padding-top: 1px !important;
}

#news #newsStatus {
    float: left;
    text-align: justify;
    margin-bottom: 6px !important;
}

#newsDisplay {
    white-space: nowrap;
    margin-left: 10px;
    color: #337;
    float: right;
}

.newsAuthor {
    padding: 0 0 0 15px !important;
    float: right;
    background: url(/themes/console/images/info/author.png) left 2px center no-repeat;
    background-size: 10px 10px;
    font-size: 8pt !important;
    display: inline-block;
    opacity: 0.9;
    letter-spacing: 0.1em !important;
    text-transform: none;
}

.newsDate {
    opacity: 0.9;
    margin-right: 1px;
}

div.news h3,
#news h3 {
    background: #f6f6fa !important;
    text-align: left;
    padding: 6px 10px 5px 15px;
    border-radius: 2px 2px 0 0;
    font-size: 10pt !important;
    letter-spacing: 0.08em;
    word-spacing: 0.05em;
    text-transform: capitalize !important;
    margin-bottom: -1px;
    filter: none;
    border: none;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    div.news h3,
    #news h3 {
        padding: 7px 10px 5px 15px;
    }
}

div.newscontent h4 {
    border-bottom: 0;
    padding: 0;
    margin: 14px 15px 7px 15px;
    font-size: 10pt;
    text-align: left;
}

div.newscontent h5 {
    border-bottom: 0;
    padding: 0;
    margin: 12px 15px 6px 15px;
    font-size: 9.5pt;
    text-align: left;
}

div.newscontent h6 {
    border-bottom: 0;
    padding: 0;
    margin: 12px 15px 6px 15px;
    font-size: 9pt;
    text-align: left;
}


/* end news */


/* top navigation */

h1,
.confignav {
    position: relative;
}

.confignav,
#help div.confignav {
    padding: 8px;
    margin: -1px -15px 5px -15px;
    border: 1px solid #dee2e6;
    border-left: none;
    border-right: none;
    box-shadow: inset 0 0 0 1px #dee2e6;
    font-size: 9pt;
    text-align: center;
    font-weight: bold;
    color: #33333f;
    background: linear-gradient(to bottom, #fbfbff 50%, rgba(248, 248, 255, 0.6) 50%), repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px) #fafaff !important;
}

.tab,
.tab2 {
    box-sizing: border-box;
    display: inline-block;
    border: 1px solid #dee2e6;
    border-radius: 12px;
    margin: 2px 1px 1px 1px !important;
    padding: 1px 0;
    background: #fff;
    min-width: 60px !important;
}

.tab a {
    display: inline-block;
    padding: 3px 14px;
}

.tab:hover a {
    color: #495057 !important;
}

.tab {
    background: #f6f6fa;
    box-shadow: inset 0 0 0 1px #f6f6fa;
}

.tab:hover {
    background: #dee2e6;
    box-shadow: inset 0 0 0 1px #dee2e6;
    position: relative;
    z-index: 30;
}

.tab:active {
    box-shadow: inset 3px 2px 2px #4661A9;
    background: #4661A9;
    transition: ease box-shadow 0.05s;
}

.tab:active a {
    color: #dee2e6 !important;
    text-shadow: 0 1px 1px #5f2d0c;
}

.tab2 {
    position: relative;
    z-index: 50;
    padding: 4px 12px;
    color: #fafaff;
    text-shadow: 0 1px 1px #113;
    box-shadow: inset 1px 1px 1px rgba(31, 43, 63, 0.7);
    background: #4661A9;
}


/* end topnav */

.th_title a,
.th_title a:hover {
    color: #41465f !important;
}

.configure {
    min-width: 400px;
    margin-bottom: 0;
}

.configure h3,
.graphspanel h3 {
    border: 1px solid #dee2e6;
    border-left: 5px solid #dee2e6;
    margin: 15px 0 15px 0;
    border-radius: 0 2px 2px 0;
    text-align: left;
}

.graphspanel h3 {
    text-transform: capitalize;
    letter-spacing: normal;
    word-spacing: normal;
}

h3#advancedconfig a,
h3#bwlimiter a,
h3.tabletitle a,
h3.ptitle a,
th a.script,
th#upnpconfig a,
h3#graphinfo a,
h3#graphdisplay a {
    float: right;
    font-size: 9pt;
    letter-spacing: normal;
    text-transform: capitalize;
}

h3 a.script,
th a.script {
    text-transform: lowercase;
}

h3#iptransport a:not(old),
h3#advancedconfig a:not(old) {
    font-size: 0;
    height: 20px;
}

h3#iptransport a::after,
h3#advancedconfig a::after {
    content: url(images/help.png);
    display: inline-block;
    padding: 0;
    margin: -2px 0 0 0;
    vertical-align: middle;
    cursor: help;
    filter: hue-rotate(-20deg) saturate(200%) drop-shadow(0 0 1px #999daf);
    mix-blend-mode: luminosity;
}

h3#iptransport a:hover,
h3#advancedconfig a:hover {}

h3#transports,
h3#upnp {
    border: 1px solid #dee2e6;
}

pre#transports {
    display: inline-block;
    border: 1px solid #dee2e6;
    background: #fafaff;
    padding: 10px 0 0 10px;
    width: calc(100% - 12px);
    margin: -16px 0 0;
}

#upnpscan {
    border: 1px solid #dee2e6;
    margin: -16px 0 5px;
    padding: 5px 10px;
    background: #fafaff;
    background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fff 5px);
}


/* confignet tidyup */


/*
#netconfig .optbox {
     margin: 10px 6px 2px !important;
     display: inline-block !important;
     vertical-align: sub !important;
}

#netconfig .optbox:first-child {
     margin-top: 6px !important;
     margin-bottom: 6px !important;
}

#netconfig .optbox:last-child, #netconfig .optbox[value="only"], #netconfig .optbox[name="disableUDP"], #netconfig .optbox[value="disabled"] {
     margin-bottom: 6px !important;
}

#netconfig input[type="text"] + br + .optbox, #netconfig .optbox[name="ntcpAutoPort"] {
     margin-top: 3px !important;
}
*/

#netconfig input[name*="ost"] {
    width: 250px !important;
}

b.suboption {
    display: inline-block;
    margin: 5px 0;
}


/* end confignet tidyup */

h3#exploratorytunnels {
    margin-top: 15px;
}

#tunnels h3 a:not(old),
#logs h3.tabletitle a.configure:not(old),
#logs h3.tabletitle a.delete:not(old) {
    font-size: 0;
}

#tunnels h3 a[href^="/configtunnels#"]::after,
a.configure::after {
    content: url(/themes/console/images/buttons/configure.png);
    float: right;
    padding: 0 0 0 8px;
}

a.delete::after {
    content: url(/themes/console/images/buttons/delete.png);
    float: right;
    padding: 0 0 0 8px;
}

#tunnels h3 a[href^="/configtunnels#"]:hover,
a.configure:hover,
a.delete:hover {}

h3#passwordheading {
    margin-bottom: -2px;
    border: 1px solid #dee2e6;
    border-radius: 0;
    filter: none;
}

.mlabtable {
    width: 30%;
    top: 150px;
    position: absolute;
    font-size: 10pt !important;
}

h3#themeheading,
h3#pluginmanage,
h3#pconfig,
h3#webappconfig,
h3#advancedclientconfig,
h3#i2pclientconfig,
#config_stats h3 {
    border: 1px solid #dee2e6;
    border-radius: 0;
    box-shadow: inset 0 0 0 1px #fff;
    filter: none;
}

h3#advancedclientconfig,
p#webappconfigtext,
p#pluginconfigtext,
p#clientconf.infowarn,
p#profiles_overview {
    margin-bottom: -2px;
}

h3#pconfig,
h3#webappconfig,
h3#i2pclientconfig,
h3#pluginmanage,
p#clientconf.infohelp,
#config_stats h3 {
    margin-bottom: -13px;
}

p#enablefullstats {
    border: 1px solid #dee2e6;
    padding: 10px;
    margin-bottom: 13px;
}

#configstats th {
    text-transform: uppercase;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
}

#configstats td {
    padding: 4px 3px;
}

#configstats td::before {
    content: "";
    display: inline-block;
    min-height: 20px;
    vertical-align: middle;
}

#configstats td:first-child {
    width: 1%;
    white-space: nowrap;
    padding: 4px 8px;
}

#configstats td:first-child:empty+td>label {
    /* remove pointer from inert labels */
    cursor: text;
    color: #33333f;
}

#configstats td:last-child {
    border-right: 1px solid #dee2e6;
}

#sidebarconf button {
    margin: 2px 0 2px 3px !important;
    padding: 2px 3px;
    min-width: 0;
    background-size: 100% 100% !important;
}

#sidebarconf select {
    width: 100%;
}

#sidebarconf th:nth-child(1),
#sidebarconf th:last-child {
    text-align: center;
}

#sidebarconf th:nth-child(2) {
    text-align: left;
}

#sidebarconf td:first-child {
    width: 60px;
    text-align: center;
}

#sidebarconf td:nth-child(3),
#sidebarconf td:nth-child(4) {
    width: 50px;
    padding: 0;
    white-space: nowrap;
}

#sidebarconf td:nth-child(3) button,
#sidebarconf td:nth-child(4) button {
    margin: 0;
}

#sidebarconf td:nth-child(3) {
    text-align: right;
}

#sidebarconf td:nth-child(4) {
    text-align: left;
    padding-right: 5px;
}

#sidebarconf tr:last-child td {
    padding: 5px !important;
}

#sidebarconf tr:last-child td:last-child {
    text-align: left;
}

p#tunnelconfig {
    margin-bottom: -14px;
}


/* graphs */

.graphspanel {
    text-align: center !important;
    margin: 15px 0 -15px;
}

#graph_single h3 {
    margin: 15px 0 0 !important;
}

#graph_single .graphspanel {
    margin: 9px -9px -20px;
}

.graphspanel a {
    font-size: 0;
}

.graphspanel img {
    padding: 1px;
    margin: 6px 5px;
    text-align: center !important;
    vertical-align: top !important;
    background: #fff;
    border: 1px solid #dee2e6;
    box-shadow: 0 0 1px #ccc;
    max-width: 98%;
}

.graphspanel a img {
    box-shadow: 0 0 1px #ccf;
    filter: none !important;
    white-space: nowrap;
}

.graphspanel a img:hover {
    box-shadow: inset 0 0 1px 1px #f60;
    cursor: url(/themes/console/images/cursor_zoom.png), pointer;
    mix-blend-mode: multiply;
}

.graphspanel a img:active {
    box-shadow: inset 0 0 1px 1px #f90;
    border: 1px solid #f90;
}

.graphspanel form {
    text-align: left;
}

#graphs hr {
    display: none;
}

#graphopts {
    text-align: center;
    text-transform: capitalize;
    padding: 10px 0 9px;
    margin: 30px -14px -9px;
    border-top: 1px solid #dee2e6;
    box-shadow: inset 0 0 0 1px #fff;
    background: #e8e8ff;
    background: repeating-linear-gradient(135deg, rgba(248, 248, 255, 0.6) 2px, rgba(220, 220, 255, 0.3) 3px, #f8f8ff 5px), #f8f8ff;
}

#graphopts a {
    margin: 3px -2px !important;
    display: inline-block;
    padding: 1px 10px !important;
    line-height: 140%;
}

#graphopts a:empty {
    display: none;
}

.formaction#graphing {
    margin: 8px -11px -11px;
}

h3#graphdisplay {
    border-radius: 0;
    border-width: 1px;
    box-shadow: none;
    filter: none;
}

.main#graphs form {
    border: 1px solid #dee2e6;
    padding: 10px;
    margin: -16px 0 5px;
}


/* new graphs optionbox */

#graphs form {
    padding: 0 !important;
}

#graphs form hr {
    margin: 0 -1px 8px !important;
}

#graphs form table {
    border: none;
    margin: 0;
}

.formaction#graphing {
    margin: -1px 0 !important;
    padding: 5px 3px;
    border-left: none;
    border-right: none;
}

#graphs tr:first-child td {
    border-top: none;
}

#graphs td:first-child {
    text-align: right;
    width: 10%;
    white-space: nowrap;
    padding: 13px 3px 13px 15px;
    font-weight: bold;
    color: #41465f;
}

#graphs td:nth-child(2) {
    width: 10%;
    white-space: nowrap;
}

#graphs td.infohelp {
    border: none !important;
    background: url("/themes/console/images/info/infohelp.png") no-repeat scroll 12px center;
    background-size: 20px 20px !important;
    padding: 5px 5px 5px 40px !important;
    text-align: left;
}

#graphs form input,
#graphs form select {
    margin: 3px 5px 3px 0;
    vertical-align: middle;
}

#graphs input[type="text"] {
    min-width: 60px;
}


/* end new graphs optionbox */


/* end graphs */

.messages {
    margin: 15px 0;
    padding: 10px 15px;
    z-index: 999;
    border-radius: 2px;
    border: 1px solid #dee2e6;
    background: #eef;
    background: linear-gradient(to right, #fafaff, #eef);
    background-size: auto 100%, 100% 100%;
    box-shadow: inset 0 0 0 1px #fff;
    font-weight: bold;
    line-height: 130%;
}

.main#config_update .messages {
    background: url(/themes/console/images/info/newspaper.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, auto 100%, 100% 100% !important;
}

.main#graphs .messages {
    margin-bottom: -5px;
}

.main#events .messages {
    margin-bottom: 0;
}

.error {
    color: #900;
}

.notice {
    font-style: italic;
    margin: 0;
    padding: 0;
}

.messages ul {
    padding: 0;
    margin: 0;
}

.messages li,
.messages li:first-child,
.error li:first-child,
.error li {
    font-weight: bold;
    list-style: none;
    background: url(images/warning.png) left center no-repeat;
    margin: 0 10px 0 0 !important;
    padding: 0 0 0 30px !important;
    border: 0 !important;
    line-height: 220%;
}

.notice li {
    background: url(images/help.png) left center no-repeat !important;
    list-style: none !important;
}

.error li {
    background: url(images/warn.png) left center no-repeat !important;
}

table {
    border-collapse: collapse;
    width: 100%;
    border: 1px solid #dee2e6;
    font-size: 9pt;
    background: #fafaff;
}

#configinfo th {
    color: #050;
}

#configinfo td {
    text-align: justify;
    padding: 10px;
}

td.optionsave {
    text-align: right;
    padding: 5px !important;
    background: #f6f6fa;
    /*border-top: 1px solid #dee2e6 !important;*/
}

#pluginupdater {
    padding: 15px 5px 15px 50px;
    background: #f6f6fa !important;
    background-size: 28px 28px, 100% 100% !important;
}

.configtable {
    box-shadow: none !important;
    white-space: normal;
}

#bandwidthconfig table.configtable {
    border: none;
    bottom: 5rem;
    right: 10rem;
}

.configtable td {
    padding: 5px;
}

.configtable tr:last-child td {
    border-top: 1px solid #dee2e6;
}

.wizard tr:last-child td {
    border-top: none !important;
}

.wizardnotice {
    width: 22%;
    margin: auto;
    margin-left: 75%;
    margin-top: -3%;
}

#bandwidthconfig .configtable tr:last-child td {
    border: none;
}

td.infohelp,
#help tr:hover td.infohelp,
#eventlog tr:hover .infohelp {
    background: #fff url(/themes/console/images/info/infohelp.png) 12px center no-repeat;
    background: url(/themes/console/images/info/infohelp.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    padding: 15px 15px 15px 50px;
    /*border-bottom: 1px solid #dee2e6 !important;
     border-top: 1px solid #dee2e6 !important;*/
    border: unset;
    text-align: justify;
}

td.infowarn,
#help tr:hover td.infowarn {
    background: #fff url(/themes/console/images/info/infowarn.png) 12px center no-repeat;
    background: url(/themes/console/images/info/infowarn.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    padding: 15px 15px 15px 50px !important;
    border-bottom: 1px solid #dee2e6 !important;
    border-top: 1px solid #dee2e6 !important;
    text-align: justify;
}


/* logs */

#criticallogs tr:first-child {
    display: none;
    /* hide empty placeholder for log location */
}

.main#logs ul li {
    padding-left: 0;
    margin-left: 18px;
}

.main#logs li:first-child {
    margin-top: 0 !important;
}

.main#logs li:last-child {
    margin-bottom: 0 !important;
}

table#wrapperlogs,
table#routerlogs {
    width: 100%;
    table-layout: fixed;
    margin-bottom: 10px;
}

table#wrapperlogs {
    margin-bottom: 5px;
}

#logs table[id$="logs"] tr:first-child td,
.subheading {
    background: linear-gradient(45deg, #fcfcff, #eef) !important;
    box-shadow: inset 0 0 0 1px #fff;
}

#routerlogs ul {
    word-wrap: break-word;
}

#wrapperlogs pre {
    margin: 0;
    padding: 3px 0 0 5px;
    white-space: pre-wrap !important;
    word-wrap: break-word !important;
    width: calc(100% - 5px);
    overflow: visible;
}

#logs ul {
    margin: -3px -26px -3px 0;
    display: inline-block;
    word-break: break-all;
}

#logs li {
    list-style: none;
    font-size: 8.5pt;
    line-height: 130%;
    text-align: left;
    width: calc(100% - 48px);
    padding-top: 1px !important;
}

#logs li::after {
    content: "";
    display: block;
    border-top: 1px dotted #ddf;
    width: 100%;
    margin: 2px 0 -3px;
}

#logs li:last-child::after {
    border: none;
    margin: 0;
}

#logs font[color^="#"]::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    background: #fff;
    border-radius: 50%;
    margin-right: 5px;
    margin-left: -17px;
    vertical-align: calc(1px);
}

#logs li font[color="#cc0000"]::before {
    background: #c00;
}

#logs li font[color="#006600"]::before {
    background: #060;
}

#logs li font[color="#ff3300"]::before {
    background: #f30;
}

#logs li font[color="#bf00df"]::before {
    background: #bf00df;
}

#logs li font[color="#000099"]::before {
    background: #009;
}

#bugreports {
    margin-top: 15px;
    padding: 10px;
    font-size: 9pt !important;
}

#enviro,
table[id$="logs"] {
    font-size: 8pt !important;
    padding: 10px;
}

#enviro {
    -moz-user-select: all;
    -webkit-user-select: all;
    -ms-user-select: all;
    user-select: all;
    cursor: text;
}

#enviro td {
    padding-top: 4px;
    padding-bottom: 4px;
}

#enviro:hover td {
    background: rgba(255, 255, 239, 0.4);
    border-top: 1px inset transparent;
    border-bottom: 1px inset transparent;
    color: #19191f;
}

#enviro td:first-child {
    width: 1%;
    text-align: right;
    padding-right: 0;
    white-space: nowrap;
    padding-left: 10px;
}

#enviro:hover td:first-child b {
    color: #26262f !important;
}

table[id$="logs"] td {
    padding: 5px;
}

table[id$="logs"] td:empty {
    display: none;
}

table[id$="logs"] tr:first-child {
    border-bottom: 1px solid #dee2e6;
}

table[id$="logs"] ul li:last-child {
    margin-bottom: 10px !important;
}

#wrapperlogs tr:last-child td {
    padding: 0;
}


/* end logs */

table hr {
    padding: 0 0;
    color: #99f;
    background: #99f;
    border: 0 solid #99f;
    margin: 0 0;
    height: 1px;
    display: none;
}

th {
    padding: 6px 5px;
    color: #41465f;
    text-align: left;
    font-size: 9pt;
    line-height: 110%;
    border-bottom: 1px solid #dee2e6 !important;
    border-top: 1px solid #dee2e6 !important;
    vertical-align: middle;
    background: #f6f6ff !important;
}

th img[src="/themes/console/images/outbound.png"] {
    vertical-align: middle;
}

th img[src="/themes/console/images/outbound.png"] {
    vertical-align: text-top;
}

.main[id^="config_"] th {
    font-size: 10pt;
}

.main[id^="config_"] th:first-child {
    padding-left: 10px;
}

tr {
    vertical-align: middle !important;
}

.main tr:nth-child(even),
pre#transports {
    background: #efefff;
    background: repeating-linear-gradient(135deg, rgba(252, 252, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fafaff 5px) #fafaff;
}

.main tr:nth-child(odd) {
    background: #f7f8ff;
    background: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.5) 2px, rgba(200, 200, 255, 0.3) 3px, #fafaff 5px), #fafaff;
}

td {
    padding: 3px 5px;
    color: #33333f;
    vertical-align: middle;
    border-top: 1px inset #ddf;
    border-bottom: 1px inset #ddf;
}

#floodfillconfig tr:nth-child(2) td {
    padding: 8px 10px 8px 18px;
}

#floodfillconfig tr:nth-child(2) b {
    margin-right: 10px;
}

#tunnelconfig tr:last-child,
#webappconfig tr:last-child {
    background: #efefff;
    background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fff 5px);
}

#clientconfig td:first-child label {
    display: inline-block;
    vertical-align: middle;
}

#clientconfig td:first-child::after {
    content: "";
    display: inline-block !important;
    min-height: 36px !important;
    vertical-align: middle;
}

#clientconfig tr:last-child {
    background: #f7f8ff;
}

#netconfig tr {
    background: #fafaff;
    background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fff 5px);
}

.main[id^="config_"] select,
.main[id^="config_"] textarea,
.main[id^="config_"] .optbox {
    margin-left: 3px !important;
    border-radius: 12px;
}

#wizardheading {
    border: none;
    padding: 2%;
    margin: auto;
    font-size: xx-large;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
    color: #41465f;
    line-height: normal;
    background: none !important;
    box-shadow: none !important;
}

.clickableProgression {
    color: #327bbf;
}

#infodiv {
    position: absolute;
    width: 31%;
    font-size: larger;
    margin: auto;
    margin-top: auto;
    margin-left: auto;
    float: right;
    margin-left: 60%;
    margin-top: -10%;
    text-align: start;
}

#bandwidthconfig {
    border: 1px solid #dee2e6;
}

#bandwidthconfig.configtable.wizardtable {
    width: 31%;
    margin-left: 15%;
    background: none;
    font-size: 10pt !important;
}

.configtable.wizard {
    width: 30%;
    box-shadow: none !important;
    white-space: normal;
    background: none;
    font-size: larger;
    margin-top: 5%;
}

#bandwidthconfig td:first-child {
    width: 200px;
    white-space: nowrap;
    padding-right: 10px;
}

#bandwidthconfig td:last-child {
    white-space: normal;
    background: none;
}

#bandwidthconfig.configtable td {
    white-space: normal;
    background: none;
}

#bandwidthconfig.configtable.wizard td {
    white-space: normal;
    background: none;
}

#xhr.notification {
    width: 20%;
    margin: auto;
    font-size: larger;
    background-size: auto;
}

#xhr2.notification {
    width: 20%;
    margin: auto;
    font-size: larger;
    background-size: auto 100%, 100% 100%;
    box-shadow: inset 0 0 0 1px #fff;
}


/* begin home page */

#homepanel {
    margin-bottom: 0;
}

h4.app,
h4.app2 {
    margin: 0 auto 3px;
    padding: 7px 10px 6px;
    border: none;
    font-size: 12pt;
    text-transform: capitalize;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
    background: #eef;
    background: linear-gradient(to bottom, #fff 50%, #eef 50%);
    box-shadow: inset 0 0 0 1px #dee2e6;
    display: inline-block;
    width: 99%;
    border-radius: 2px;
    color: #41465f;
    padding-right: 5px;
}

h4.app {
    background: #f6f6fa !important;
    margin-top: 15px;
}

h4.app2 {
    clear: left;
    margin-top: 10px !important;
    background: #f6f6fa !important;
}

div.ag2 {
    margin: 0;
}

div.search+div.ag2 {
    margin: -15px 0 0;
}

div.app {
    float: left;
    padding: 0;
    min-width: 140px;
    text-align: center !important;
    border-radius: 2px;
    margin: 3px;
}

div.app:hover {
    background: #e9ecef;
    box-shadow: none;
    cursor: pointer;
}

div.app:hover a:link,
div.app:hover a:visited {
    color: #495057;
}

div.app:hover img.app,
.app:hover img {
    transition: ease filter 0.3s 0s;
}

div.app:hover .applabel {
    border-color: #dee2e6;
    background: #e9ecef !important;
}

div.app:active .applabel {
    box-shadow: inset 0 0 0 1px #fff;
}

div.app:active .applabel,
div.app:active .applabel a {
    background: #dee2e6 !important;
    color: #4661A9 !important;
}

div.app:active .applabel {
    box-shadow: inset 0 0 0 1px #4661A9, inset 1px 1px 1px #4661A9;
}

.appimg {
    min-height: 52px;
}

div.appgroup {
    margin: 5px 0;
    padding: 0;
    width: auto;
}


/* optional homepage search */

div.search {
    margin: 10px 10px 0 0;
    padding: 8px 8px 0 8px;
    width: auto;
}

table.search {
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 0 0 2px 2px;
    border: 1px solid #dee2e6;
    border-top: 1px solid #dee2e6;
    background: #fafaff !important;
    background: linear-gradient(to bottom, #fafaff 50%, rgba(255, 255, 255, 0.6) 50%, rgba(240, 240, 255, 0.4)), repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px) !important;
    padding: 4px 6px;
    width: 70%;
    margin-left: auto;
    margin-right: auto;
    margin-top: -19px;
    box-shadow: 0 1px 1px 1px rgba(210, 210, 255, 0.3), inset 0 0 1px 1px #dee2e6;
}

.search tr {
    background: none !important;
}

table.search td {
    border: none;
    padding: 0 5px;
    white-space: nowrap;
}

table.search td:first-child {
    padding-right: 2px;
    padding-left: 0;
}

table.search td:nth-child(2) {
    text-align: center !important;
    padding-right: 0;
    padding-left: 6px;
    width: 60px;
}

table.search td:nth-child(3) {
    padding-left: 0;
    padding-right: 8px;
}

table.search input[type="text"] {
    min-width: 40px !important;
    width: 100%;
    padding-left: 24px;
}

table.search select {
    min-width: 80px;
    width: 100%;
    text-overflow: ellipsis;
}


/* end optional homepage search */

.app img {
    width: auto;
    height: 32px;
    max-height: 32px;
    max-width: 32px;
    padding: 6px;
    padding: 10px 60px;
}

.app table {
    background: none;
    border: 0;
    margin: auto;
    width: auto;
}

.app tr {
    background: none;
    border: 0;
    margin: 0;
}

.app td {
    background: none;
    border: 0;
    padding: 0;
}

.applabel {
    font-size: 8pt;
    margin: 0;
    padding: 4px 6px;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.applabel a {
    display: inline-block;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


/* end home page */

tt,
code {
    font-size: 8.5pt;
    font-weight: bold;
    color: #050;
}

tt::-moz-selection {
    color: #fff;
    background: #030 !important;
}

.main ul {
    list-style-type: square;
}

.main li, .news li {
    text-align: left;
    margin: 2px 20px 0 40px;
    padding: 1px 10px 1px 10px;
    word-wrap: break-word;
}

.statlist b a:hover {
    color: #41465f !important;
}

.tidylist {
    text-align: justify !important;
}

.tidylist li:first-child {
    margin-top: -10px !important;
}

.tidylist:last-child {
    padding-bottom: 5px;
}

.tidylist code {
    color: #910;
    font-size: 9pt;
    font-weight: bold;
    text-align: left;
}

ol {
    margin: 0 0 10px;
    padding: 0;
}

ul {
    display: inline;
    margin: 0;
    padding: 0;
}

code {
    text-align: left;
    font-size: 8.5pt;
    color: #030;
}

th code {
    font-weight: bold;
    margin-left: 3px;
}

a,
h1,
h2,
h3,
h4,
th,
input[type="submit"],
input[type="reset"],
button,
select {
    text-shadow: 0 1px 1px #fff;
}

a:hover,
a:focus,
a:active,
.app:hover a,
.app:focus a,
.app:active a,
input[type="submit"]:hover,
input[type="submit"]:focus,
input[type="submit"]:active,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="reset"]:active,
button:hover,
button:focus,
button:active,
select:hover,
select:focus,
select:active,
.graphspanel a {
    text-shadow: none;
}

a:link,
#graphopts a:visited,
.news #newsdisplay a,
.news #newsdisplay a:visited {
    color: #3b6bbf;
    text-decoration: none;
    font-weight: bold;
    word-wrap: break-word;
    outline: none;
    padding-top: 4px;
}

a:visited,
.tab a {
    color: #2c4e8f;
    text-decoration: none;
    font-weight: bold;
}

a:hover,
a:focus {
    color: #f60;
    text-decoration: none;
    font-weight: bold;
    text-shadow: none;
}

a:active {
    color: #f30 !important;
    font-weight: bold;
}

.links li {
    list-style: none;
    text-align: justify !important;
    line-height: 140% !important;
    margin-right: 10px !important;
}

.links li:first-child {
    padding-top: 0 !important;
}

.links ul {
    margin-top: -5px !important;
}

.links code,
#console code {
    color: #910;
    font-size: 8.5pt !important;
    font-weight: bold;
}

p {
    text-align: justify;
    line-height: 130%;
}

p.infohelp,
p#sybilinfo,
p#debugmode,
p#upnpstatus,
p#pluginconfigtext,
p#gatherstats {
    border: 1px solid #dee2e6;
    padding: 15px 15px 15px 50px;
    background: #fff url(/themes/console/images/info/infohelp.png) 12px center no-repeat;
    background: url(/themes/console/images/info/infohelp.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    line-height: 130%;
}

p#statusok {
    border: 1px solid #dee2e6;
    padding: 15px 15px 15px 50px;
    background: #fff url(images/confirmed.png) 12px center no-repeat;
    background: url(images/confirmed.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    line-height: 130%;
}

p#upnpstatus,
p#keyringhelp,
.widescroll+p.infohelp,
#profiles ul#banlist,
#config_reseed .confignav+p.infohelp p#sybilinfo,
p#debugmode,
#config_family p.infohelp,
p#profiles_overview,
p#gatherstats {
    border-radius: 2px;
}

p#profiles_overview {
    margin-bottom: 13px;
}

#profiles_overview+.widescroll {
    margin-bottom: -5px;
}

#profiles .tunnel_peer {
    margin-left: -6px;
}

#profiles .tunnel_peer img {
    margin-left: -6px;
}

#profiles .wideload {
    text-align: center;
}

.infohelp+hr {
    display: none;
}

#bugreports {
    padding: 0 0 0 10px;
    border-collapse: separate;
    border-radius: 2px;
    background: linear-gradient(135deg, #fafaff, #f8f8ff);
}

#bugreports tr {
    background: transparent
}

#bugreports td.infohelp {
    background: #fff url(/themes/console/images/info/bugreport.png) no-repeat left center !important;
    background: url(/themes/console/images/info/bugreport.png) no-repeat left center !important;
    padding: 10px 15px 10px 40px;
    background-size: 28px 28px;
    border: none !important;
    text-align: justify;
}

p#debugmode {
    padding: 15px 15px 15px 50px;
    background: #fff url(/themes/console/images/info/debug.png) 12px center no-repeat;
    background: url(/themes/console/images/info/debug.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    background-size: 28px 28px;
}

p#sybilinfo {
    padding: 15px 15px 15px 50px;
    background: #fff url(/themes/console/images/info/experimental.png) 12px center no-repeat;
    background: url(/themes/console/images/info/experimental.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    background-size: 28px 28px;
    border-radius: 2px;
}

p.infowarn {
    border: 1px solid #dee2e6;
    padding: 15px 15px 15px 50px;
    background: #fff url(/themes/console/images/info/infowarn.png) 10px center no-repeat;
    background: url(/themes/console/images/info/infowarn.png) 10px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    line-height: 130%;
}

#bandwidthconfig tr:first-child .infohelp {
    background: #fff url(/themes/console/images/info/bandwidth.png) 12px center no-repeat;
    background: url(/themes/console/images/info/bandwidth.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    padding: 15px 15px 15px 55px;
}

#addkeyring td.infohelp {
    background: #fff url(/themes/console/images/info/keys.png) 12px center no-repeat;
    background: url(/themes/console/images/info/keys.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px;
}

#joinfamily tr:nth-child(3) td:first-child {
    background: #fff url(/themes/console/images/info/key.png) 12px center no-repeat;
    background: url(/themes/console/images/info/key.png) 12px center no-repeat, linear-gradient(to bottom, #fafaff 50%, rgba(220, 220, 255, 0.3)), repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px), #fff !important;
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%, 100% 100% !important;
}

#joinfamily tr:nth-child(2) td {
    background: #fafaff;
    background: linear-gradient(135deg, #fafaff, #f8f8ff);
    padding: 10px 15px;
}

#newfamily tr:last-child td:first-child {
    background: #fff url(/themes/console/images/info/label.png) 12px center no-repeat;
    background: url(/themes/console/images/info/label.png) 12px center no-repeat, linear-gradient(to bottom, #fafaff 50%, rgba(220, 220, 255, 0.3)), repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px), #fff !important;
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%, 100% 100% !important;
}

#exportfamily tr:nth-child(2) td:first-child {
    background: url(/themes/console/images/info/export_key.png) 12px center no-repeat, #fff !important;
    background: url(/themes/console/images/info/export_key.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff) !important;
    padding: 20px 15px 20px 50px;
    background-size: 28px 28px, 100% 100%;
}

#leavefamily {
    margin: 14px 0 10px;
}

#leavefamily tr:last-child td:first-child {
    background: #f6f6fa url(/themes/console/images/info/leave_family.png) 12px center no-repeat;
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px;
}

#oldhome td:first-child {
    background: #fff url(/themes/console/images/info/home.png) 12px center no-repeat;
    background: url(/themes/console/images/info/home.png) 12px center no-repeat, linear-gradient(to bottom, #fafaff 50%, rgba(220, 220, 255, 0.3)), repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px), #fff !important;
    padding: 10px 15px 10px 50px;
    background-size: 28px 28px, 100% 100%, 100% 100%;
}

#oldhome input[type="checkbox"],
#enablefullstats input[type="checkbox"] {
    vertical-align: sub;
}

#floodfillconfig tr:first-child .infohelp {
    background: #f6f6fa url(/themes/console/images/info/floodfill_32x32.png) 12px center no-repeat;
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

#floodfillconfig label {
    margin-right: 5px;
}

p#clientconf.infohelp,
p#webappconfigtext.infohelp {
    background: #fff url(/themes/console/images/info/java_edit.png) 12px center no-repeat;
    background: url(/themes/console/images/info/java_edit.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

p#pluginconfigtext {
    background: #f6f6fa url(/themes/console/images/info/plugin_link.png) 12px center no-repeat;
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

#plugininstall .infohelp {
    background: #f6f6fa url(/themes/console/images/info/plugin_link.png) 12px center no-repeat;
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

#plugininstall tr:nth-child(3) td:nth-last-child(2),
#manualreseed tr:nth-child(3) td:nth-last-child(2) {
    background: #f6f6fa url(/themes/console/images/info/plugin_link.png) 12px center no-repeat;
    padding: 10px 15px 10px 50px;
    background-size: 28px 28px, 100% 100%, 100% 100% !important;
}

#plugininstall tr:nth-child(3) td:nth-last-child(1),
#manualreseed tr:nth-child(3) td:nth-last-child(1),
#manualreseed tr:nth-child(5) td:nth-last-child(1) {
    background: #f6f6fa;
}

.optionsave form {
    margin: 0;
    padding: 0;
}

#manualreseed tr:nth-child(5) td:nth-last-child(2),
#plugininstall2 tr:nth-child(2) td:nth-last-child(2) {
    background: #f6f6fa url(/themes/console/images/info/from_file.png) 12px center no-repeat;
    padding: 10px 15px 10px 50px;
    background-size: 28px 28px, 100% 100%, 100% 100% !important;
}

#manualreseed tr:nth-last-child(2) td.infohelp {
    background: #f6f6fa url(/themes/console/images/info/box.png) 12px center no-repeat;
    background: url(/themes/console/images/info/box.png) 12px center no-repeat, linear-gradient(135deg, #f6f6fa, #f8f8ff);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

#config_peers tr:nth-child(3) td.infohelp {
    background: #f6f6fa url(/themes/console/images/info/blocked.png) 12px center no-repeat;
    background: url(/themes/console/images/info/blocked.png) 12px center no-repeat, linear-gradient(135deg, #f6f6fa, #f8f8ff);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

h3#shutdownrouter+p.infohelp {
    background: #f6f6fa url(/themes/console/images/info/power.png) 12px center no-repeat;
    background: url(/themes/console/images/info/power.png) 12px center no-repeat, linear-gradient(135deg, #f6f6fa, #f8f8ff);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

h3#restartrouter+p.infohelp,
#config_family .infohelp.needrestart {
    background: url(/themes/console/images/info/reboot.png) 12px center no-repeat, linear-gradient(135deg, #f6f6fa, #f8f8ff);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

h3#shutdownrouter,
h3#systray,
h3#servicedebug {
    margin-bottom: -13px;
}

h3#systray+p.infohelp {
    background: #f6f6fa url(/themes/console/images/info/systray.png) 12px center no-repeat;
    background: url(/themes/console/images/info/systray.png) 12px center no-repeat, linear-gradient(135deg, #f6f6fa, #f8f8ff);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

h3#servicedebug+p.infohelp {
    background: #f6f6fa url(/themes/console/images/info/debug.png) 12px center no-repeat;
    background: url(/themes/console/images/info/debug.png) 12px center no-repeat, linear-gradient(135deg, #f6f6fa, #f8f8ff);
    padding: 10px 15px 10px 50px;
    background-size: 28px 28px, 100% 100%;
}

h3#browseronstart+p.infohelp {
    background: #f6f6fa url(/themes/console/images/info/launch_browser.png) 12px center no-repeat;
    background: url(/themes/console/images/info/launch_browser.png) 12px center no-repeat, linear-gradient(135deg, #f6f6fa, #f8f8ff);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

.main#config_reseed p.infohelp {
    background: #f6f6fa url(/themes/console/images/info/connect.png) 12px center no-repeat;
    background: url(/themes/console/images/info/connect.png) 12px center no-repeat, linear-gradient(135deg, #f6f6fa, #f8f8ff);
    padding: 10px 15px 10px 50px;
    background-size: 28px 28px, 100% 100%;
    border-radius: 2px;
    box-shadow: 0 0 1px #ccf;
}

p#enablefullstats,
p#gatherstats {
    background: #f6f6fa url(/themes/console/images/info/statistics.png) 12px center no-repeat;
    background: url(/themes/console/images/info/statistics.png) 12px center no-repeat, linear-gradient(135deg, #f6f6fa, #f8f8ff);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

#config_family .infohelp {
    background: #f6f6fa url(/themes/console/images/info/family.png) 12px center no-repeat !important;
    background: url(/themes/console/images/info/family.png) 12px center no-repeat, linear-gradient(135deg, #f6f6fa, #f8f8ff) !important;
    padding: 15px 15px 15px 50px !important;
    background-size: 28px 28px, 100% 100% !important;
}


/* stats page */

.main#stats {
    padding-bottom: 15px;
}

.main#stats h3 {
    border-width: 1px;
    border-radius: 0;
    filter: none;
    margin-bottom: 4px;
    margin-top: -1px;
}

p#gatherstats+form,
ul.statlist {
    border: 1px solid #dee2e6;
    padding: 10px;
    background: #fafaff;
    background: linear-gradient(135deg, #fafaff, #f8f8ff);
}

ul.statlist {
    border: 1px solid #dee2e6;
    padding: 0 10px 10px;
    display: inline-block;
    width: calc(100% - 22px);
    background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(241, 241, 255, 0.3) 3px, #fff 5px);
    box-shadow: inset 0 0 0 1px #fff;
}

.joblog .statlist li {
    line-height: 140% !important;
    padding-top: 6px;
    padding-bottom: 0;
    margin-right: 5px;
}

.statlist li:not(old) {
    list-style: none !important;
}

.statlist li::before,
.statlist li a[href^="graph"]::before {
    content: "";
    display: inline-block;
    height: 4px !important;
    width: 4px !important;
    margin-left: -17px;
    margin-right: 10px;
    margin-top: -4px;
    transform: rotate(45deg);
    vertical-align: middle;
    opacity: 0.8;
}

.statlist li::before {
    background: #779;
    border: 1px solid #335;
}

.statlist li a[href^="graph"]::before {
    background: #3b6bbf;
    border: 1px solid #3b6bbf;
}

.statlist li a[href$="&showEvents=true"]::before {
    display: none;
}

.statlist li a[href^="graph"] {
    margin-top: 4px;
    margin-bottom: 2px;
    display: inline-block;
}

.statlist li.statsName::before {
    background: #446;
    box-shadow: inset 0 0 0 1px #fff !important;
    height: 6px !important;
    width: 6px !important;
    opacity: 1;
}

.statlist li li:last-child::before {
    background: #335;
}

.statsName i {
    color: #004f28;
    font-weight: bold;
}

.statsName li i {
    color: inherit;
    font-weight: normal;
}

.statsViewGraphs {
    display: inline-block;
    margin: 0 0 -5px 18px;
}

.statsLongName {
    display: inline-block;
}

.statsLongName::first-letter {
    text-transform: uppercase;
}

.nowrap {
    display: inline-block;
    white-space: nowrap;
}

.statlist>li::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    border-top: 1px dotted #ddf;
}

li.noevents::after {
    content: "";
    margin-top: 12px !important;
    display: block;
}

.statlist>li:last-child::after {
    display: none;
}

li.noevents {
    margin: 0 0 5px 40px !important;
    font-style: italic;
}


/* end stats page */

h1 {
    text-align: left;
    color: #41465f;
    padding: 17px 15px 14px;
    margin: 0 0 10px 214px;
    font-size: 18pt;
    line-height: 90%;
    letter-spacing: 0.08em;
    text-shadow: 0 1px 1px #fff;
    box-shadow: inset 0 0 0 1px #dee2e6;
    white-space: normal;
    background: #fcfcff;
    background: linear-gradient(135deg, #fcfcff, rgba(252, 252, 255, 0) 600px), linear-gradient(to bottom, #fcfcff 50%, rgba(248, 248, 255, 0.6) 50%), repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px) #fafaff !important;
    border: 1px solid #dee2e6;
    border-radius: 2px 2px 0 0;
    min-width: 546px;
    z-index: 999;
}

span.newtab {
    text-align: right;
    font-size: 8pt;
    float: right;
    letter-spacing: 0;
}

.newtab img {
    margin-top: -3px;
    opacity: 0.8;
}

.newtab img:hover {}

h2 {
    font-size: 13pt;
    color: #41465f;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
    padding: 10px;
    border: 1px solid #dee2e6;
    border-radius: 2px;
    margin: 15px 0 15px 0 !important;
    /*box-shadow: inset 0 0 0 1px #fff, 0 0 1px #ccc;*/
    word-wrap: break-word;
    text-transform: uppercase !important;
}

.welcome h2 {
    /* fixes occluded langbox rendering bug */
    filter: none;
    /*box-shadow: inset 0 0 0 1px #fff, 0 0 1px #ccc;*/
    white-space: nowrap;
}

.main#home .welcome+#homepanel>.ag2>h4 {
    /* fix placement of initial /home "welcome to i2p" h2 */
    margin-top: -1px;
}

h2 a,
h3 a {
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
}

h2 a:hover,
h3 a:hover {
    color: #115;
}

h3.tabletitle a:hover,
h3.ptitle a:hover,
h3#graphinfo a:hover,
#news h3 a:hover {
    color: #f60;
}

h2 img {
    opacity: 0.9 !important;
}

h3 {
    padding: 7px 5px 6px 7px;
    border-radius: 0 2px 2px 0;
    font-size: 11pt;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
    color: #41465f;
    border: 1px solid #dee2e6;
}

h3#transports {
    margin: revert !important;
}

h3.tabletitle,
h3.ptitle,
#config_advanced h3.tabletitle,
h3#bannedpeers {
    border-radius: 0;
    border: 1px solid #dee2e6;
    margin-bottom: -2px;
    box-shadow: inset 0 0 0 1px #fff;
    text-align: left;
}

h3.ptitle {
    margin-bottom: -13px;
}

h3#bannedpeers {
    margin-bottom: -1px;
}

h2,
h3 {
    background: #F5F5F5 !important;
}


/* /configpeers */

#banlist li {
    min-height: 34px;
}

#bannedips {
    margin-bottom: 10px;
}

#bannedips td {
    vertical-align: top;
    padding: 0;
    width: 50%;
}

#permabanned tr:nth-child(2) td,
#ipv4 td,
#ipv6 td {
    border-bottom: 1px solid #dee2e6;
    background: #fff !important;
    background: linear-gradient(to bottom, #fff 50%, rgba(238, 238, 255, 0.2) 50%, #eef 100%) #fff !important;
}

#ipv6 td {
    border-top: 1px solid #dee2e6;
}

#bannedips table {
    border: none;
    border-bottom: 1px solid #dee2e6;
    margin: -1px 0 !important;
}

#bannedips table th {
    text-align: center;
}

#bannedips table td {
    text-align: center;
    padding: 4px 2px;
}

#banneduntilrestart,
#permabanned {
    width: 100%;
}

#permabanned td:first-child {
    border-left: 1px solid #dee2e6;
    text-align: right;
    padding-right: 10px;
    width: 49%;
}

#permabanned td:nth-child(2) {
    width: 2%;
}

#permabanned td:last-child {
    text-align: left;
    padding-left: 10px;
    width: 49%;
}

#banneduntilrestart td {
    border-right: 1px solid #dee2e6;
    text-align: right !important;
}

#banneduntilrestart td:last-child {
    text-align: center !important;
}

#bannedips tr:nth-child(even) {
    background: #eef;
    background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fff 5px);
}

#bannedips tr:nth-child(odd) {
    background: #f7f8ff;
    background: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px);
}


/* end /configpeers */

h4 {
    border: 1px solid #dee2e6;
    padding: 4px 6px;
    margin: 5px 0 10px 0;
    font-size: 10pt;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
    border-radius: 2px;
    background: #eef;
    background: linear-gradient(to right, #fff, #eef);
    color: #41465f;
    box-shadow: inset 0 0 0 1px #fff;
}

#certs p:empty {
    display: none;
}

#certs h3 {
    margin-bottom: -6px;
    border-width: 1px;
    border-radius: 0;
    filter: none;
}

#certs h4 {
    border-radius: 0;
}

#certs h3+p {
    border: 1px solid #dee2e6;
    padding: 15px;
    margin: 5px 0 !important;
}

#certs h3+p:empty+h4 {
    margin-top: 5px !important;
}

#certs p+h3,
#certs p+h4 {
    margin-top: 10px;
}

#certs h4+p {
    border: 1px solid #dee2e6;
    padding: 15px;
    margin: -11px 0;
}

#certs p {
    background: #efefff;
    box-shadow: inset 0 0 0 1px #fff;
}

#certs textarea {
    margin: -1px 0 10px 0;
    width: 100%;
}

#certs h4+textarea {
    margin: -11px 0 5px !important;
    border: 1px solid #dee2e6;
    box-shadow: none;
}

.underline {
    border-bottom: 1px solid #000022;
    padding: 5px 0 5px 0;
    margin: 0 0 10px 0;
}


/* welcome section */

div[lang="es"] li,
div[lang="pt"] li,
div[lang="sv"] li,
div[lang="zh"] li {
    margin-left: 15px;
    margin-right: 15px;
    list-style: none;
    text-align: justify;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    div[lang="es"] li,
    div[lang="pt"] li,
    div[lang="sv"] li,
    div[lang="zh"] li {
        margin-left: 25px;
    }
}

div[lang="es"] .twocol,
div[lang="pt"] .twocol,
div[lang="sv"] .twocol,
div[lang="zh"] .twocol {
    margin-left: 25px;
}

div[lang="sv"] li::first-letter {
    text-transform: uppercase !important;
}

div[lang="de"] .links li {
    padding-left: 0;
}

.langbox {
    margin: 3px 1px 0 5px;
    padding: 2px 3px;
    font-size: 7pt;
    width: 380px;
    text-align: right;
    float: right;
    vertical-align: middle;
    opacity: 1 !important;
}

.langbox>form>select#langsettings {
    height: unset;
}

.langbox img {
    padding: 0 !important;
    opacity: 0.9;
    margin: -1px 0 0;
    border: 1px solid #dee2e6;
    filter: none;
    border-radius: 1px;
    height: 6%;
    height: 1.5rem;
    max-height: 1.5rem;
    margin-top: .1rem !important;
}

.langbox img:hover,
.langbox a:focus img {
    border: 1px solid #f60;
    filter: none !important;
    box-shadow: 0 0 1px 0 #f60;
    opacity: 1;
    transform: scale(1.2);
    transition: ease box-shadow 0.3s, ease border 0.3s;
}

.langbox a:active img {
    transform: scale(1.0);
}

.twocol {
    -moz-columns: 2 400px;
    -webkit-columns: 2 400px;
    columns: 2 400px;
    -moz-column-gap: 0 !important;
    -webkit-column-gap: 0 !important;
    column-gap: 0 !important;
    display: block;
    margin: 10px 0;
}

.twocol li {
    break-inside: avoid;
    page-break-inside: avoid;
    -webkit-column-break-inside: avoid;
}

.twocol li:first-child {
    margin-top: 0 !important;
}

.main#console p {
    margin-left: 10px;
    margin-right: 10px;
}


/* end welcome section */

input[type="submit"],
input[type="reset"],
button,
.optbox,
select {
    cursor: pointer;
}

button.search {
    background: url(/themes/console/images/buttons/search.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 7px 5px 26px;
}

button.search:hover,
button.search:focus,
button.search:active {
    background: url(/themes/console/images/buttons/search_hover.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff) !important;
    background-size: 14px 14px, 100% 100% !important;
}

input.search[type="text"] {
    background: #f8f8ff url(/themes/console/images/buttons/search.png) no-repeat 4px center !important;
    padding: 4px 3px 4px 22px;
    background-size: 16px 16px !important;
    background-blend-mode: luminosity;
}

input.search[type="text"]:focus {
    background: #fff url(/themes/console/images/buttons/search.png) no-repeat 4px center !important;
    background-blend-mode: normal;
}

input,
input:visited,
button,
button:visited {
    border: 1px solid #999daf;
    box-shadow: inset 0 0 0 1px #fff, inset 0 0 0 1px #fff;
    background: #eee;
    background: linear-gradient(to bottom, #fff, #efefff);
    color: #41465f;
    margin: 3px;
    font-size: 9pt;
    padding: 4px 5px;
    text-decoration: none;
    border-radius: 12px;
    opacity: 1;
    background-size: 14px auto, 100% 100% !important;
}

input[type="text"],
textarea,
input[type="password"] {
    border-radius: 6px;
}

input[type="submit"],
input[type="reset"],
button,
select {}

button::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner {
    outline: none;
    border: none;
}

button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
button:focus,
input[type="submit"]:focus,
input[type="reset"]:focus {
    color: #19191f;
    border: 1px solid #f60;
    background: linear-gradient(to bottom, #eee, #fff);
    filter: saturate(100%) drop-shadow(0 0 1px rgba(204, 204, 204, 0.8));
    transition: ease border 0.7s;
}

button:active,
input[type="submit"]:active,
input[type="reset"]:active {
    color: #4c526f;
    box-shadow: inset 0 0 0 1px #fff, inset 2px 2px 2px #555;
    background-blend-mode: luminosity;
    transition: ease box-shadow 0.05s;
}

input.wizardbuttons,
button.wizardbuttons {
    font-size: large;
}

input.accept,
button.accept {
    background: url(/themes/console/images/buttons/yes.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.accept:hover,
button.accept:hover,
input.accept:focus,
button.accept:focus {
    background: url(/themes/console/images/buttons/yes.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.accept[value^="Unban"],
button.accept[value^="Unban"] {
    background: url(/themes/console/images/buttons/unban.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.accept[value^="Unban"]:hover,
button.accept[value^="Unban"]:hover,
input.accept[value^="Unban"]:focus,
button.accept[value^="Unban"]:focus {
    background: url(/themes/console/images/buttons/unban.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.accept[value^="Create"],
button.accept[value^="Create"] {
    background: url(/themes/console/images/buttons/create.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.accept[value^="Create"]:hover,
button.accept[value^="Create"]:hover,
input.accept[value^="Create"]:focus,
button.accept[value^="Create"]:focus {
    background: url(/themes/console/images/buttons/create.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.accept[value^="Filter"],
button.accept[value^="Filter"] {
    background: url(/themes/console/images/buttons/filter.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.accept[value^="Filter"]:hover,
button.accept[value^="Filter"]:hover,
input.accept[value^="Filter"]:focus,
button.accept[value^="Filter"]:focus {
    background: url(/themes/console/images/buttons/filter.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.add,
button.add {
    background: url(/themes/console/images/buttons/add.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.add:hover,
button.add:hover,
input.add:focus,
button.add:focus {
    background: url(/themes/console/images/buttons/add.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.add[value^="Adjust"],
button.add[value^="Adjust"] {
    background: url(/themes/console/images/buttons/edit2.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.add[value^="Adjust"]:hover,
button.add[value^="Adjust"]:hover,
input.add[value^="Adjust"]:focus,
button.add[value^="Adjust"]:focus {
    background: url(/themes/console/images/buttons/edit2.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.cancel,
button.cancel {
    background: url(/themes/console/images/buttons/no.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.cancel:hover,
button.cancel:hover,
input.cancel:focus,
button.cancel:focus {
    background: url(/themes/console/images/buttons/no.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.accept[value^="Show"],
button.accept[value^="Show"],
input.check[value^="View"],
button.check[value^="View"] {
    background: url(/themes/console/images/buttons/show.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.accept[value^="Show"]:hover,
button.accept[value^="Show"]:hover,
input.check[value^="View"]:hover,
button.check[value^="View"]:hover,
input.accept[value^="Show"]:focus,
button.accept[value^="Show"]:focus,
input.check[value^="View"]:focus,
button.check[value^="View"]:focus {
    background: url(/themes/console/images/buttons/show.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.cancel[value^="Hide"],
button.cancel[value^="Hide"],
input.delete[value^="Do not view"],
button.delete[value^="Do not view"] {
    background: url(/themes/console/images/buttons/hide.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.cancel[value^="Hide"]:hover,
button.cancel[value^="Hide"]:hover,
input.delete[value^="Do not view"]:hover,
button.delete[value^="Do not view"]:hover,
input.cancel[value^="Hide"]:focus,
button.cancel[value^="Hide"]:focus,
input.delete[value^="Do not view"]:focus,
button.delete[value^="Do not view"]:focus {
    background: url(/themes/console/images/buttons/hide.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.check,
button.check {
    background: url(/themes/console/images/buttons/yes.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.check:hover,
button.check:hover,
input.check:focus,
button.check:focus {
    background: url(/themes/console/images/buttons/yes.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.check[value$="updates"],
button.check[value$="updates"] {
    background: url(/themes/console/images/buttons/update.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.check[value$="updates"]:hover,
button.check[value$="updates"]:hover,
input.check[value$="updates"]:focus,
button.check[value$="updates"]:focus {
    background: url(/themes/console/images/buttons/update_hover.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.delete,
button.delete {
    background: url(/themes/console/images/buttons/delete.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.delete:hover,
button.delete:hover,
input.delete:focus,
button.delete:focus {
    background: url(/themes/console/images/buttons/delete_hover.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.delete[value^="Ban"],
button.delete[value^="Ban"] {
    background: url(/themes/console/images/buttons/ban.png) no-repeat 9px center;
    padding: 5px 9px 2px 26px;
}

input.delete[value^="Ban"]:hover,
button.delete[value^="Ban"]:hover,
input.delete[value^="Ban"]:focus,
button.delete[value^="Ban"]:focus {
    background: url(/themes/console/images/buttons/ban.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.download,
button.download {
    background: url(/themes/console/images/buttons/download.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.download:hover,
button.download:hover,
input.download:focus,
button.download:focus {
    background: url(/themes/console/images/buttons/download.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.download[value^="Join"],
button.download[value^="Join"] {
    background: url(/themes/console/images/buttons/users.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.download[value^="Join"]:hover,
button.download[value^="Join"]:hover,
input.download[value^="Join"]:focus,
button.download[value^="Join"]:focus {
    background: url(/themes/console/images/buttons/users.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.download[value$="from File"],
button.download[value$="from File"],
input.download[value$="from file"],
button.download[value$="from file"] {
    background: url(/themes/console/images/buttons/from-file.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.download[value$="from File"]:hover,
button.download[value$="from File"]:hover,
input.download[value$="from file"]:hover,
button.download[value$="from file"]:hover,
input.download[value$="from File"]:focus,
button.download[value$="from File"]:focus,
input.download[value$="from file"]:focus,
button.download[value$="from file"]:focus {
    background: url(/themes/console/images/buttons/from-file.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.download[value^="Dump"],
button.download[value^="Dump"] {
    background: url(/themes/console/images/buttons/dump-threads.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.download[value^="Dump"]:hover,
button.download[value^="Dump"]:hover,
input.download[value^="Dump"]:focus,
button.download[value^="Dump"]:focus {
    background: url(/themes/console/images/buttons/dump-threads.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.go,
button.go,
input[value="GO"] {
    background: url(/themes/console/images/buttons/go.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.go:hover,
button.go:hover,
input[value="GO"]:hover,
input.go:focus,
button.go:focus,
input[value="GO"]:focus {
    background: url(/themes/console/images/buttons/go.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.go[value^="Create"],
button.go[value^="Create"] {
    background: url(/themes/console/images/buttons/create-file.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.go[value^="Create"]:hover,
button.go[value^="Create"]:hover,
input.go[value^="Create"]:focus,
button.go[value^="Create"]:focus {
    background: url(/themes/console/images/buttons/create-file.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.back {
    background: url(/themes/console/images/buttons/back.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.back:hover,
input.back:focus {
    background: url(/themes/console/images/buttons/back.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.reload,
button.reload {
    background: url(/themes/console/images/buttons/restore.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.reload:hover,
button.reload:hover,
input.reload:focus,
button.reload:focus {
    background: url(/themes/console/images/buttons/restore_hover.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.reload[value$="restart"],
button.reload[value$="restart"] {
    background: url(/themes/console/images/buttons/restart.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.reload[value$="restart"]:hover,
button.reload[value$="restart"]:hover,
input.reload[value$="restart"]:focus,
button.reload[value$="restart"]:focus {
    background: url(/themes/console/images/buttons/restart_hover.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.reload[value^="Update"],
button.reload[value^="Update"] {
    background: url(/themes/console/images/buttons/update.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.reload[value^="Update"]:hover,
button.reload[value^="Update"]:hover,
input.reload[value^="Update"]:focus,
button.reload[value^="Update"]:focus {
    background: url(/themes/console/images/buttons/update_hover.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.reload[value="Force GC"],
button.reload[value="Force GC"] {
    background: url(/themes/console/images/buttons/clean.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.reload[value="Force GC"]:hover,
button.reload[value="Force GC"]:hover,
input.reload[value="Force GC"]:focus,
button.reload[value="Force GC"]:focus {
    background: url(/themes/console/images/buttons/clean_hover.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}

input.stop,
button.stop {
    background: url(/themes/console/images/buttons/shutdown.png) no-repeat 9px center, linear-gradient(to bottom, #fff, #efefff);
    padding: 5px 9px 2px 26px;
}

input.stop:hover,
button.stop:hover,
input.stop:focus,
button.stop:focus {
    background: url(/themes/console/images/buttons/shutdown_hover.png) no-repeat 9px center, linear-gradient(to bottom, #eee, #fff);
}


/* client config buttons aka project "X" */

button.control {
    font-size: 0 !important;
    padding: 12px !important;
    text-indent: -99999px !important;
    background-size: 16px 16px, 100% 100% !important;
}

button.accept.control {
    background: url(/themes/console/images/buttons/Xstart.png) center center no-repeat, linear-gradient(to bottom, #fff, #efefff);
}

button.accept.control:hover,
button.accept.control:focus {
    background: url(/themes/console/images/buttons/Xstart.png) center center no-repeat, linear-gradient(to bottom, #eee, #fff);
}

button.stop.control {
    background: url(/themes/console/images/buttons/Xstop.png) center center no-repeat, linear-gradient(to bottom, #fff, #efefff);
}

button.stop.control:hover,
button.stop.control:focus {
    background: url(/themes/console/images/buttons/Xstop.png) center center no-repeat, linear-gradient(to bottom, #eee, #fff);
}

button.add.control {
    background: url(/themes/console/images/buttons/edit2.png) center center no-repeat, linear-gradient(to bottom, #fff, #efefff);
}

button.add.control:hover,
button.add.control:focus {
    background: url(/themes/console/images/buttons/edit2.png) center center no-repeat, linear-gradient(to bottom, #eee, #fff);
}

button.delete.control {
    background: url(/themes/console/images/buttons/delete.png) center center no-repeat, linear-gradient(to bottom, #fff, #efefff);
}

button.delete.control:hover,
button.delete.control:focus {
    background: url(/themes/console/images/buttons/delete_hover.png) center center no-repeat, linear-gradient(to bottom, #eee, #fff);
}

button.check.control {
    background: url(/themes/console/images/buttons/update.png) center center no-repeat, linear-gradient(to bottom, #fff, #efefff);
}

button.check.control:hover,
button.check.control:focus {
    background: url(/themes/console/images/buttons/update_hover.png) center center no-repeat, linear-gradient(to bottom, #eee, #fff);
}

button.download.control {
    background: url(/themes/console/images/buttons/download.png) center center no-repeat, linear-gradient(to bottom, #fff, #efefff);
}

button.download.control:hover,
button.download.control:focus {
    background: url(/themes/console/images/buttons/download.png) center center no-repeat, linear-gradient(to bottom, #eee, #fff);
}


/* end project "X" */


/* sidebar buttons */

.routersummary button {
    margin: 0 1px -3px;
    min-width: 87px;
}

.routersummary .reload,
.routersummary .stop {
    text-indent: -99999px;
    background-size: 16px 16px, 100% 100% !important;
    min-width: 93px;
    margin: 0 2px -3px;
}

.routersummary .reload {
    background: url(/themes/console/images/buttons/restart.png) center center no-repeat, #f6f6fa !important;
}

.routersummary .reload:hover,
.routersummary .reload:focus {
    background: url(/themes/console/images/buttons/restart_hover.png) center center no-repeat, #f1f3f5 !important;
    background: url(/themes/console/images/buttons/shutdown_hover.png) 37% center no-repeat, url(/themes/console/images/buttons/restart_hover.png) 63% center no-repeat, linear-gradient(to bottom, #eee, #fff) !important;
    border: 1px solid #dee2e6;
}

.routersummary .reload:active,
.routersummary .stop:active,
.routersummary .download:active {
    box-shadow: inset 0 0 0 1px #fff, inset 2px 2px 2px #555;
}

.routersummary .reload[value="Reseed"] {
    text-indent: 0;
    text-align: left;
    min-width: 0;
    background: url(/themes/console/images/buttons/download.png) center left 6px no-repeat, #f6f6fa !important;
}

.routersummary .reload[value="Reseed"]:hover,
.routersummary .reload[value="Reseed"]:focus {
    background: url(/themes/console/images/buttons/download.png) center left 6px no-repeat, #f1f3f5 !important;
    padding: 5px 7px 5px 22px !important;
}

.routersummary .stop {
    background: url(/themes/console/images/buttons/shutdown.png) center center no-repeat, #f6f6fa;
}

.routersummary .stop:hover,
.routersummary .stop:focus {
    background: url(/themes/console/images/buttons/shutdown_hover.png) center center no-repeat, #f1f3f5;
    border: 1px solid #dee2e6;
}

.routersummary .download {
    background: url(/themes/console/images/buttons/download.png) 6px center no-repeat, #f6f6fa;
    background-size: 14px 14px, 100% 100% !important;
    padding: 5px 7px 5px 22px !important;
}

.routersummary .cancel {
    margin-top: 10px;
    padding: 5px 7px 1px 24px !important;
}


/* Show text on context specific buttons (eg deferred shutdown) */

.routersummary .reload[value="restartImmediate"],
.routersummary .stop[value="shutdownImmediate"],
.routersummary .reload[value="Reseed"],
.routersummary .reload[value="Reseed"]:hover,
.routersummary .reload[value="Reseed"]:focus {
    background-size: 14px 14px, 100% 100% !important;
    text-indent: 0;
    text-align: left;
    min-width: 0 !important;
    text-transform: capitalize;
}

.routersummary .cancel[value="cancelShutdown"] {
    background: url(/themes/console/images/buttons/no.png) center left 6px no-repeat, linear-gradient(to bottom, #fff, #efefff) !important;
    background-size: 14px 14px, 100% 100% !important;
}

.routersummary .cancel[value="cancelShutdown"]:hover,
.routersummary .cancel[value="cancelShutdown"]:focus,
.routersummary .cancel[value="cancelShutdown"]:active {
    background: url(/themes/console/images/buttons/no.png) center left 6px no-repeat, linear-gradient(to bottom, #eee, #fff) !important;
    background-size: 14px 14px, 100% 100% !important;
}

.routersummary .reload[value="restartImmediate"] {
    background: url(/themes/console/images/buttons/restart.png) center left 6px no-repeat, linear-gradient(to bottom, #fff, #efefff) !important;
    background-size: 14px 14px, 100% 100% !important;
}

.routersummary .reload[value="restartImmediate"]:hover,
.routersummary .reload[value="restartImmediate"]:focus,
.routersummary .reload[value="restartImmediate"]:active {
    background: url(/themes/console/images/buttons/restart_hover.png) center left 6px no-repeat, linear-gradient(to bottom, #eee, #fff) !important;
    background-size: 14px 14px, 100% 100% !important;
}

.routersummary .stop[value="shutdownImmediate"] {
    background: url(/themes/console/images/buttons/shutdown.png) center left 6px no-repeat, linear-gradient(to bottom, #fff, #efefff) !important;
    background-size: 14px 14px, 100% 100% !important;
}

.routersummary .stop[value="shutdownImmediate"]:hover,
.routersummary .stop[value="shutdownImmediate"]:focus,
.routersummary .stop[value="shutdownImmediate"]:active {
    background: url(/themes/console/images/buttons/shutdown_hover.png) center left 6px no-repeat, linear-gradient(to bottom, #eee, #fff) !important;
    background-size: 14px 14px, 100% 100% !important;
}

.routersummary .reload[value="Reseed"] {
    background: url(/themes/console/images/buttons/download.png) center left 6px no-repeat, linear-gradient(to bottom, #fff, #efefff) !important;
    background-size: 14px 14px, 100% 100% !important;
}

.routersummary .reload[value="Reseed"]:hover,
.routersummary .reload[value="Reseed"]:focus,
.routersummary .reload[value="Reseed"]:active {
    background: url(/themes/console/images/buttons/download.png) center left 6px no-repeat, linear-gradient(to bottom, #eee, #fff);
    background-size: 14px 14px, 100% 100% !important;
}

.routersummary .download:hover,
.routersummary .download:focus,
.routersummary .download:active {
    background: url(/themes/console/images/buttons/download.png) 6px center no-repeat, linear-gradient(to bottom, #eee, #fff);
    background-size: 14px 14px, 100% 100% !important;
    padding: 5px 7px 5px 22px !important;
}


/* end sidebar buttons */

input[type="text"],
input[type="password"] {
    background: #f8f8ff;
    box-shadow: inset 1px 1px 1px rgba(204, 204, 204, 0.6);
}

input[name="refreshInterval"] {
    text-align: right;
    min-width: 80px;
    width: 80px;
}

input[type="text"]:focus,
input[type="password"]:focus {
    background: #fff;
    box-shadow: none;
    color: #19191f;
    border: 1px solid #676c7f;
}

.main[id^="config_"] input[name="port"] {
    min-width: 120px !important;
    max-width: 120px;
}

input[type="file"] {
    border: none;
    background: none;
    box-shadow: none;
    cursor: pointer;
}

.optbox,
input[type="checkbox"],
input[type="radio"] {
    background: none;
    margin: 4px 5px 7px;
    padding: 2px;
    min-height: 16px;
    height: 16px;
    min-width: 16px !important;
    width: 16px !important;
    vertical-align: sub !important;
    opacity: 1.0;
    box-shadow: none;
    cursor: pointer;
}

.optbox:hover,
input[type="checkbox"]:hover,
input[type="radio"]:hover,
input[type="checkbox"]:focus,
input[type="radio"]:focus {
    outline: none;
    min-height: 16px;
    height: 16px;
    min-width: 16px !important;
    width: 16px !important;
    opacity: 1.0;
    border: 0;
    filter: sepia(100%) hue-rotate(185deg) drop-shadow(0 0 3px #89f);
}

input[type="checkbox"][disabled],
input[type="radio"][disabled],
input[type="checkbox"][disabled]:hover,
input[type="radio"][disabled]:hover,
input[type="checkbox"][disabled]:focus,
input[type="radio"][disabled]:focus {
    filter: sepia(100%) hue-rotate(185deg);
    box-shadow: none;
}

label {
    cursor: pointer;
}

label:hover {
    color: #19191f;
}

.main#config_clients label[for="0"] {
    cursor: default;
}

select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: url(images/dropdown.png) right 4px center no-repeat #f6f6fa;
    background-blend-mode: hard-light, normal;
    padding: 4px 16px 4px 4px !important;
    color: #41465f;
    margin: 5px;
    border: 1px solid #999daf;
    min-width: 120px;
    font-size: 9pt;
    border-radius: 6px !important;
    text-align: left !important;
    box-shadow: inset 0 0 0 1px #fff;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    select {
        padding: 5px 24px 5px 6px !important;
    }
}

select:-moz-focusring {
    outline: 1px solid transparent;
}

select option {
    background: #fff;
}

select,
input[type="text"] {
    min-width: 120px;
}

select:hover,
select:active {
    color: #19191f;
    background: url(images/dropdown_hover.png) right 4px center no-repeat, linear-gradient(to bottom, #eee, #fff) !important;
}

select:focus {
    color: #19191f;
    background: url(images/dropdown_hover.png) right 4px center no-repeat, linear-gradient(to bottom, #eee, #fff) !important;
    box-shadow: 0 0 1px #89f;
}

select::-moz-focus-inner {
    outline: none !important;
    border: none !important;
}

select::-ms-expand {
    display: none;
}

input[readonly],
input[disabled],
input[readonly]:focus,
input[disabled]:focus,
input[disabled]:hover {
    background: #e9e9e9;
    box-shadow: inset 1px 1px 1px rgba(204, 204, 204, 0.6);
    color: #4d4d5f;
    filter: none;
    cursor: default;
}

textarea {
    padding: 5px;
    margin: 5px !important;
    background: #f8f8ff;
    color: #33333f !important;
    font-size: 9pt;
    border-radius: 2px;
    min-height: 100px;
    min-width: 97%;
    border: 1px solid #999daf;
    box-shadow: inset 1px 1px 1px rgba(204, 204, 204, 0.6);
}

textarea:focus {
    background: #fff;
    color: #19191f !important;
    box-shadow: none;
    border: 1px solid #676c7f;
}

.statusnotes {
    font-style: normal;
    font-size: 9pt;
    text-align: center;
    border: 1px solid #dee2e6 !important;
    border-top: 0 !important;
    margin: -5px 0 5px 0;
    padding: 7px;
    background: #eef;
    background: linear-gradient(to right, #efefff, #fafaff, #efefff) #fff;
    letter-spacing: 0em !important;
    box-shadow: inset 0 0 0 1px #fff;
}

h3+.statusnotes {
    margin-top: 2px !important;
}

div.joblog {
    border: 0;
    margin-top: 5px;
}

div.joblog ul {
    word-wrap: break-word !important;
    text-align: justify;
    line-height: 100% !important;
    margin-top: -5px !important;
}

div.joblog li {
    word-wrap: break-word !important;
    line-height: 115% !important;
    padding: 0;
    font-size: 9pt !important;
    page-break-inside: avoid;
    -webkit-break-inside: avoid;
    break-inside: avoid;
}

div.joblog li:last-child {
    margin-bottom: -5px;
}

div.joblog li:first-child {
    margin-top: 10px;
}

.joblog li li:first-child {
    margin-top: 0;
}

div.joblog form:first-child {
    margin-top: 10px;
}

div.joblog table {
    margin-top: 15px;
}

div.joblog p {
    line-height: 130%;
}

div.joblog hr {
    margin: 15px 0;
}

div.joblog h3 {
    margin-bottom: 5px;
}

.main#jobs ol {
    -moz-columns: 350px 2;
    -webkit-columns: 350px 2;
    columns: 350px 2;
    border: 1px solid #dee2e6;
    padding: 8px 0;
    margin-top: 1px;
    background: #efefff;
    background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fff 5px), #fff;
    box-shadow: inset 0 0 0 1px #fff;
    break-inside: avoid;
    page-break-inside: avoid;
    -webkit-break-inside: avoid;
}

.main#jobs ol:empty {
    display: none;
}

.main#jobs ol li:first-child {
    margin-top: 0 !important;
}

.main#jobs ol li {
    margin-top: 5px;
    margin-bottom: 5px;
    border-bottom: 1px dotted #dee2e6;
    padding-bottom: 3px;
}

.main#jobs ol li:last-child {
    margin-bottom: 0;
}

h3#finishedjobs+ol li,
h3#scheduledjobs+ol li,
h3#activejobs+ol li,
h3#readyjobs+ol li {
    list-style: none !important;
}

h3#activejobs+ol li:before,
h3#scheduledjobs+ol li:before,
h3#readyjobs+ol li:before,
h3#finishedjobs+ol li:before {
    content: '\2023\00A0\00A0';
    margin-left: -20px;
    font-size: 15pt;
    font-weight: bold;
    line-height: 50%;
    vertical-align: sub;
    color: #41465f;
}

h3#finishedjobs+ol li:before {
    color: #5a5;
    content: '\2714\00A0';
}

h3#readyjobs+ol li:before {
    color: #dd3;
}

h3#scheduledjobs+ol li:before {
    color: #970;
}

#schedjobs {
    width: 100% !important;
    margin: 15px 0 0 !important;
}

.main#jobs h3 {
    border-width: 1px;
    border-radius: 0;
    filter: none;
    margin-bottom: -2px;
}

.smallhead th {
    font-size: 8pt
}

.mediumtags {
    font-weight: bold;
}

.cells {
    border-left: 1px inset #ddf;
    border-top: 1px inset #ddf !important;
    border-bottom: 1px inset #ddf !important;
    padding-top: 4px;
    padding-bottom: 4px;
}

.tablefooter {
    background: #f8f8ff;
}

.tablefooter tr,
.tablefooter td {
    background: #f8f8ff;
    border-top: 1px solid #dee2e6;
    border-bottom: 1px solid #dee2e6 !important;
    padding: 8px 2px;
    font-size: 9pt;
    line-height: 110%;
}

.formaction {
    text-align: right;
    border: 1px solid #dee2e6;
    margin-top: -15px;
    padding: 5px;
    background: #fafaff;
}

#config_homepage .formaction,
#config_clients .formaction,
#webappconfigactions {
    margin-top: -6px;
}

#sidebardefaults {
    margin-top: -6px;
}

div.footnote {
    text-align: right;
    color: #447;
    font-size: 8pt;
    margin-bottom: -5px !important;
}

div.footnote hr {
    margin: 24px 0 5px 0 !important;
    background: #447;
    background: linear-gradient(to right, #77a, #669, #77a);
    height: 1px;
    border-bottom: 1px solid #fff;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    div.footnote hr {
        height: 1px;
    }
}

.topness {
    font-size: 8pt;
    text-align: right;
    margin-top: 0;
    margin-bottom: -18px;
    margin-right: 5px;
}

iframe {
    height: 100vh;
}

iframe.iframed {
    margin: 10px 0 0;
}


/* Fixes for when app is not started and console error loads inside iframe */

body.iframed {
    background: transparent url(/themes/console/images/transparent.gif) !important;
}

.iframed .routersummaryouter {
    display: none !important;
}

.iframed h1 {
    margin: 0 10px 10px 7px !important;
}

.iframed .sorry {
    margin: 5px 10px 10px 7px !important;
}


/* end iframed console fixes */


/* Theme choice & Language selection in /configui */

#themeui.formaction {
    border: none;
    border-top: 1px solid #dee2e6;
    background: none;
    margin: 5px -5px 0;
}

#langui.formaction {
    border: none;
    border-top: 1px solid #dee2e6;
    background: none;
    margin: 5px 0 0;
}

#consolepass.formaction {
    margin-top: -6px;
    margin-bottom: -3px;
}

#consolepass tr:first-child td {
    background: #fff url(/themes/console/images/info/user_add.png) 12px center no-repeat;
    background: url(/themes/console/images/info/user_add.png) 12px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    background-size: 28px 28px;
    padding: 15px 15px 15px 50px;
}

#config_ui .themechoice .optbox,
#config_ui .langselect .optbox {
    vertical-align: text-bottom;
}

.themechoice {
    width: 115px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    /*! border: 1px solid #dee2e6; */
    float: left;
    text-align: center;
    padding: 0 4px;
    margin: 4px;
    border-radius: 2px;
    /*     background: #dee2e6;*/
    transition: filter ease 0.3s 0s;
}

.themechoice:hover {
    border: 1px solid #dee2e6;
    background: #e9ecef;
    transition: filter ease 0.3s 0s;
}

.themechoice:hover>img~.themelabel {
    /*! border-top: 1px solid #dee2e6 !important; */
    background: #e9ecef !important;
}

.themechoice:active>img~.themelabel {
    background: #4661A9 !important;
    color: #fff;
}

.themechoice:hover>img {}

#config_ui .themechoice .optbox {
    min-height: 88px !important;
    min-width: 123px !important;
    opacity: 0;
    /* hide the radio icon so we can use thumbnail img instead */
    margin-left: -38px !important;
    margin-top: 0;
    z-index: 999 !important;
    outline: 1px dotted #f00;
    position: absolute;
}

.themechoice .optbox+img {
    margin-left: -1px;
    margin-top: 6px;
    padding: 2px 0 !important;
    margin-bottom: 31px;
}

.themechoice img,
.themechoice img {
    margin-bottom: 31px !important;
}

.themechoice .optbox:checked+img,
.themechoice .optbox:checked+img {
    transform: scale(0.9);
}

#themeoptions {
    clear: both;
    border-top: 1px solid #dee2e6;
    background: repeating-linear-gradient(45deg, rgba(252, 252, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fafaff 5px), #fafaff;
    margin: 0 -5px 5px;
    position: relative;
    top: 4px;
    padding: 5px 10px 5px 5px;
}

#themeoptions label {
    white-space: nowrap;
    margin: 2px 10px 2px 0 !important;
    display: inline-block;
}

p#helptranslate {
    position: relative;
    top: 4px;
    text-align: left !important;
    padding: 15px 10px 15px 50px !important;
    border-top: 1px solid #dee2e6;
    background: url(/themes/console/images/info/notice.png) left 14px center no-repeat, #fff;
    background: url(/themes/console/images/info/notice.png) left 14px center no-repeat, linear-gradient(135deg, #fafaff, #f8f8ff);
    background-size: 28px 28px;
}

#themeoptions input {
    margin: 2px 5px 2px 5px;
    vertical-align: sub;
}

div.themelabel {
    /*! border-top: 1px solid #dee2e6 !important; */
    margin-left: -4px;
    margin-right: -4px;
    margin-top: -24px;
    padding: 3px 2px;
    /*     background: #dee2e6;*/
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    /*! box-shadow: inset 0 0 0 1px #fff; */
    font-size: 9pt;
}

.themechoice .optbox:hover+img~.themelabel {
    color: #495057;
    font-weight: bold;
}

.themechoice .optbox:checked+img~.themelabel {
    /*     background: #e9ecef !important;*/
    color: #338 !important;
    font-weight: bold;
}

.themechoice .optbox:focus+img~.themelabel {
    color: #f60 !important;
    box-shadow: inset 0 0 0 1px #fff;
    /*! background: linear-gradient(to right, #eef, #fff, #eef) !important; */
}

.themechoice .optbox:active+img~.themelabel {
    color: #fff !important;
    box-shadow: inset 0 0 0 1px #fff;
    background: #4661A9 !important;
}

.themechoice .optbox:checked:active+img~.themelabel {
    color: #e9ecef !important;
    box-shadow: inset 0 0 0 1px #fff !important;
}

div#themesettings {
    clear: both;
    padding: 4px 5px 0;
    border: 1px solid #dee2e6;
    background: #fafaff;
    background: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(248, 248, 255, 0.3) 3px, #fafaff 5px);
}

select#langsettings {
    width: 15rem;
    margin: 20px !important;
}

div#langsettings {
    border: 1px solid #dee2e6;
}

#themesettings hr,
#langsettings hr {
    display: none;
}

img.wizard.progress {
    margin-left: -50%;
    max-height: 10%;
    max-width: 30%;
}

.overlay {
    height: 100%;
}

.wizard {
    border: none !important;
    background: none !important;
    box-shadow: none !important;
    border-top: none !important;
}

#bwconfigheader {
    background: white;
}

.wizardtext {
    width: 75%;
    margin: auto;
    font-size: larger;
}

.wizardbuttons {
    /*margin-left: 44%;*/
}

.wizardbuttons.wizard {
    padding-top: 5%;
}

#wizard {
    z-index: 0;
    height: 100%;
    width: 100%;
    background-color: #f8f9fa;
}

.langselect {
    /* containing box for lang selection */
    width: 40%;
    min-height: 64px;
    float: left;
    margin: 4px;
    text-align: center;
    padding: 4px 4px 0;
    background-color: white;
    border: none;
    float: left;
    margin-left: 15%;
    transition: transform 0.3s ease 0s;
}

.wizardimg {
    max-width: 75%;
    max-height: 100%;
    margin: auto;
    z-index: 0;
    mix-blend-mode: multiply;
}

.langselect:hover {
    border: 1px solid #f60;
    background: #fff;
}

#config_ui .langselect .optbox,
#config_ui .langselect .optbox:hover,
#config_ui .langselect .optbox:focus {
    width: 118px !important;
    min-height: 56px !important;
    height: 56px !important;
    margin-left: -2px;
    margin-bottom: 6px;
    margin-top: -2px;
    opacity: 0;
    z-index: 999;
    position: relative;
    outline: 1px dotted #f00;
}

.langselect:hover>input+img {
    transform: scale(1.1);
}

.langselect img[src^="/flags"] {
    margin-bottom: 42px;
    margin-left: 0;
    margin-top: -52px;
    opacity: 1;
    z-index: 3;
    position: relative;
}

.langselect input,
.themechoice input {
    cursor: pointer;
}

.langselect input[name="lang"]:checked+img {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
}

.langselect:hover>input[name="lang"]+img+.ui_lang {
    color: #f60;
    border-top: 1px solid #f60;
    background: #fff !important;
    background: linear-gradient(to bottom, #fff 50%, #ffe8bf 50%, #efd9b3 100%) !important;
}

.langselect:active>input[name="lang"]+img+.ui_lang {
    background: #f60 !important;
    color: #fff;
}

.langselect input[name="lang"]:checked+img+.ui_lang {
    background: #ddf !important;
    color: #338;
    font-weight: bold;
    margin: -32px -4px 0;
    z-index: 2;
}

.langselect input[name="lang"]:focus+img+.ui_lang {
    color: #f60 !important;
    box-shadow: inset 0 0 0 1px #fff;
    background: linear-gradient(to right, #eef, #fff, #eef) !important;
}

.langselect input[name="lang"]:active+img+.ui_lang {
    color: #fff !important;
    box-shadow: inset 0 0 0 1px #fff9ef, inset 2px 2px 3px #7f3000;
    background: #f60 !important;
}

.langselect input[name="lang"]:checked:active+img+.ui_lang {
    color: #f60 !important;
    box-shadow: inset 0 0 0 1px #fff;
    background: linear-gradient(to right, #eef, #fff, #eef) !important;
}

div.langselect+br {
    display: none !important;
}

div.langselect br {
    display: block;
}


/* large flags */

.langselect img {
    margin-top: -60px !important;
    margin-bottom: 34px !important;
    width: 40px;
    height: 40px;
    opacity: 0.9 !important;
    transform: none !important;
}

.langselect input[name="lang"]:checked+img,
.langselect input[name="lang"]:checked+#config_ui img[src="/flags.jsp?c=a1"] {
    margin-top: -56px !important;
    margin-bottom: 30px !important;
    width: 32px !important;
    height: 32px !important;
    opacity: 1 !important;
    transform: none !important;
    animation: glow 20s 10s infinite;
}

.langselect input:hover+img {
    box-shadow: none !important;
    border: none !important;
    transition: none !important;
}

.langselect input[name="lang"]:checked+img+.ui_lang {
    margin: -24px -4px 0;
}

@keyframes glow {
    0% {
        filter: drop-shadow(0 0 1px rgba(256, 100, 0, 0.1));
    }
    20% {
        filter: drop-shadow(0 0 2px #f60);
    }
    50% {
        filter: drop-shadow(0 0 2px #930);
    }
    80% {
        filter: drop-shadow(0 0 2px #d40);
    }
    100% {
        filter: drop-shadow(0 0 1px rgba(256, 100, 0, 0.1));
    }
}


/* end large flags */

div.ui_lang {
    text-align: center;
    background: #eef url(images/tinytitle.png) center center !important;
    background: linear-gradient(to bottom, #fff 50%, #eef 50%) !important;
    padding: 3px 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin: -32px -4px 0;
    border-top: 1px solid #dee2e6;
    border-radius: 0 0 2px 2px;
    text-transform: capitalize;
    font-size: 9pt;
    z-index: 2;
    box-shadow: inset 0 0 0 1px #fff;
}

p#helptranslate {
    clear: both;
    padding: 5px 10px 10px;
    text-align: right;
}


/* configui password*/

table#consolepass th:nth-child(2) {
    text-align: left;
}

table#consolepass td:first-child {
    width: 100px;
    white-space: nowrap;
}

table#consolepass td {
    padding: 5px 10px;
    font-size: 9pt;
}

table#consolepass input {
    margin: 5px;
}

table#consolepass td#pw_adduser {
    padding: 5px 10px;
    border-top: 1px solid #dee2e6;
}

td#pw_adduser input {
    margin: 5px 20px 5px 5px !important;
}

table#consolepass input[name="name"] {
    margin-right: 20px;
}

#consolepass input[name="name"],
#externali2cp input[name="user"],
#reseedconfig input[name="username"],
#reseedconfig input[name="susername"],
#consolepass input[name="nofilter_pw"],
#externali2cp input[name="nofilter_pw"],
#reseedconfig input[type="password"] {
    padding: 4px 5px 4px 26px !important;
    background-size: 16px 16px !important;
    background-blend-mode: luminosity;
}

#consolepass input[name="name"],
#externali2cp input[name="user"],
#reseedconfig input[name="username"],
#reseedconfig input[name="susername"] {
    background: #f8f8ff url(/themes/console/images/buttons/user.png) 5px center no-repeat;
}

#consolepass input[name="nofilter_pw"],
#externali2cp input[name="nofilter_pw"],
#reseedconfig input[type="password"] {
    background: #f8f8ff url(/themes/console/images/buttons/password.png) 5px center no-repeat !important;
}

#consolepass input[name="name"]:focus,
#externali2cp input[name="user"]:focus,
#reseedconfig input[name="username"]:focus,
#consolepass input[name="nofilter_pw"]:focus,
#externali2cp input[name="nofilter_pw"]:focus,
#reseedconfig input[type="password"]:focus {
    background-color: #fff !important;
    background-blend-mode: normal;
}


/* end configui */

#config_update form {
    margin-bottom: 0 !important;
}

table#addkeyring tr:last-child td {
    padding: 5px;
    border-top: 1px solid #dee2e6;
}

#config_summarybar .configtable td:not(.optionsave) {
    padding-left: 50px;
    background: url(/themes/console/images/info/interval.png) 12px center no-repeat;
    background: url(/themes/console/images/info/interval.png) 12px center no-repeat, linear-gradient(to bottom, #fafaff 50%, rgba(220, 220, 255, 0.3)), repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px), #fff !important;
    background-size: 28px 28px, 100% 100%, 100% 100% !important;
}


/* peers, profiles, tunnels */

.cells tt,
#profilelist tt,
tt a {
    font-size: 8.5pt !important;
    letter-spacing: 0.1em;
}

img+tt {
    margin-left: 4px !important;
    letter-spacing: 0.1em;
}


/* end peers, profiles, tunnels dests */


/* /peers */

#ntcpconnections th:nth-child(7),
#ntcpconnections th:nth-child(8),
#ntcpconnections th:nth-child(9),
#ntcpconnections th:nth-child(10),
#ntcpconnections td:nth-child(7),
#ntcpconnections td:nth-child(8),
#ntcpconnections td:nth-child(9),
#ntcpconnections td:nth-child(10),
#udpconnections td:nth-child(7),
#udpconnections td:nth-child(8),
#udpconnections td:nth-child(10),
#udpconnections td:nth-child(11),
#udpconnections td:nth-child(12),
#udpconnections td:nth-child(14),
#udpconnections td:nth-child(15),
#udpconnections td:nth-child(16),
#udpconnections td:nth-child(17) {
    text-align: right !important;
    white-space: nowrap;
}

#ntcpconnections .tablefooter td:nth-child(3),
#ntcpconnections .tablefooter td:nth-child(4),
#ntcpconnections .tablefooter td:nth-child(5),
#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(4),
#ntcpconnections td:nth-child(5),
#udpconnections td:nth-child(5),
#udpconnections td:nth-child(6),
#udpconnections td:nth-child(9),
#udpconnections td:nth-child(13) {
    white-space: nowrap;
}

#udpconnections .tablefooter td,
#ntcpconnections .tablefooter td {
    padding-left: 5px;
    padding-right: 5px;
}

#ntcpconnections th:nth-child(7),
#ntcpconnections th:nth-child(8),
#ntcpconnections th:nth-child(9),
#ntcpconnections th:nth-child(10) {
    text-align: right !important;
}

#udpconnections th:nth-child(7),
#udpconnections th:nth-child(8),
#udpconnections th:nth-child(n+10) {
    text-align: right !important;
}

#udpconnections th:nth-child(13) {
    text-align: center !important;
}

.peersort {
    text-align: center;
    display: inline-block;
}

.right {
    text-align: right;
    margin: 0 1px;
    display: inline-block;
    width: 40%
}

.left {
    text-align: left;
    margin: 0 1px;
    display: inline-block;
    width: 40%
}

.peeripv6:empty {
    padding: 0;
    width: 0;
}

.cwnd .left,
.cwnd .right {
    width: auto;
}

#udpconnections td:nth-child(n+14),
#udpconnections .tablefooter td:nth-child(n+10) {
    padding-right: 1%;
}

#peerdefs td {
    line-height: 150%;
    padding: 5px;
}

.peer_arrow {
    display: inline-block;
    width: 22px;
    text-align: center;
    margin: 2px 1px;
}


/* end peers */


/* /tunnels */

tt a {
    letter-spacing: 0.1em;
}

.tunnel_cap {
    background: rgba(0, 0, 64, 0.3);
    color: #fff;
    border: 1px solid rgba(0, 0, 64, 0.2);
    border-radius: 2px;
    min-width: 12px;
    padding: 0 2px;
    display: inline-block;
    margin: 1px 2px 1px 8px;
    text-align: center !important;
    text-shadow: 0 1px 1px #555;
}

#tunnel_defs b {
    color: #fff !important;
}

.tunnel_cap:empty {
    border: none;
}

.tunnel_id {
    display: inline-block;
    min-width: 78px;
    text-align: right;
}

.tunnel_id:empty {
    min-width: 0;
}

.tunnel_id:empty+.tunnel_cap {
    margin-left: 12px !important;
    display: inline-block;
}

#tunnels .tunnel_peer {
    display: inline-block;
    min-width: 64px;
    text-align: center;
}

.tunnel_local {
    font-size: 8pt;
    background: rgba(187, 187, 255, 0.3);
    background: #dfdfff;
    border-radius: 2px;
    text-align: center;
    padding: 2px 0;
    margin-left: -4px;
    margin-right: 4px;
    text-transform: lowercase;
}

.tunnel_peer:empty {
    vertical-align: top;
}

#tunnel_defs td {
    padding: 4px;
}

#tunnel_defs td:nth-child(even) {
    text-align: right;
    padding-right: 0;
    width: 1%;
}

#tunnel_defs td:nth-child(3) {
    border-right: 1px inset #ddf;
}

#tunnel_defs td:first-child,
#tunnel_defs td:last-child {
    font-size: 0;
    width: 0;
    padding: 0;
}


/* end tunnels */


/* netdb */

.confignav+.netdbentry {
    margin-top: 10px;
}

.confignav+#banlist {
    margin-bottom: 5px;
}

.confignav+.tabletitle,
.confignav+form>.ptitle,
.confignav+form>.tabletitle,
.confignav+ul,
.confignav+.infowarn,
.confignav+.infohelp,
.confignav+h3,
.confignav+table,
.confignav+p {
    margin-top: 15px !important;
}

.netdbentry th {
    font-weight: normal;
}

.netdbentry th:last-child {
    text-align: right;
    padding: 5px;
    white-space: nowrap;
    width: 50px;
}

.netdbentry th:first-child,
.netdbentry td:first-child {
    white-space: nowrap;
    padding: 4px 6px !important;
    text-align: left;
}

.netdbentry td:first-child {
    width: 80px;
}

.netdbentry td:nth-child(2) {
    word-wrap: break-word;
}

.netdbentry img {
    margin: 1px 0 0 0;
}

a.viewfullentry:not(old),
#profilelist a[href^="viewprofile"]:not(old) {
    font-size: 0;
}

a.viewfullentry::after,
#profilelist a[href^="viewprofile"]::after {
    content: url(/themes/console/images/buttons/fullview.png);
    vertical-align: text-top;
}

#profilelist a[href^="viewprofile"]::after {
    vertical-align: bottom;
}

a.viewfullentry:hover {
    /*     filter: drop-shadow(0 0 1px #f60);*/
}

#leasesetdebug th a:not(old),
table#leasesetsummary th a:not(old) {
    font-size: 0;
}

#leasesetdebug th a::after,
table#leasesetsummary th a::after {
    content: url(/themes/console/images/buttons/floodfill.png);
    vertical-align: text-top;
    padding-right: 0;
}

#leasesetdebug th a:hover,
table#leasesetsummary th a:hover {
    /*     filter: drop-shadow(0 0 1px #f60);*/
}

#leasesetsummary {
    margin-top: 10px;
}

#netdboverview th {
    text-transform: uppercase;
    font-size: 11pt !important;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
    background: #f6f6ff url(/themes/console/images/buttons/floodfill.png) 8px center no-repeat !important;
    background: url(/themes/console/images/buttons/floodfill.png) 8px center no-repeat, linear-gradient(to bottom, #fcfcff 50%, rgba(255, 255, 255, 0.6) 50%, rgba(240, 240, 255, 0.4)), linear-gradient(to right, #fcfcff 5%, rgba(231, 231, 255, 0.8) 25%) !important;
    background-size: 18px 18px, 100% 100%, 100% 100% !important;
    padding: 8px 5px 8px 32px;
}

#geomap {
    width: 100%;
}

path.mapoverlaytunnel:hover {
    stroke: #ff33cc;
    stroke-width: 7;
}

#netdblookup th {
    text-transform: uppercase;
    font-size: 11pt !important;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
    background: #f6f6ff url(/themes/console/images/buttons/search.png) 8px center no-repeat !important;
    background: url(/themes/console/images/buttons/search.png) 8px center no-repeat, linear-gradient(to bottom, #fcfcff 50%, rgba(255, 255, 255, 0.6) 50%, rgba(240, 240, 255, 0.4)), linear-gradient(to right, #fcfcff 5%, rgba(231, 231, 255, 0.8) 25%) !important;
    background-size: 18px 18px, 100% 100%, 100% 100% !important;
    padding: 8px 5px 8px 32px;
}

#netdblookup input[type="checkbox"] {
    margin-left: 3px;
}

#netdbversions th,
#netdbtransports th,
#netdbcountrylist th {
    font-size: 10pt !important;
}

#netdboverview th:last-child,
#netdboverview td:last-child {
    text-align: right;
}

#netdboverview th:first-child,
#netdboverview td:first-child {
    text-align: left;
}

#netdboverview table {
    margin: -1px 0;
    border: none;
    border-bottom: 1px solid #dee2e6;
}

#netdboverview table th {
    text-transform: none;
    letter-spacing: normal;
    word-spacing: normal;
    background: #f6f6ff;
    background: linear-gradient(to bottom, #fcfcff 50%, rgba(255, 255, 255, 0.6) 50%, rgba(240, 240, 255, 0.4)) !important;
    background-size: 100% 100%;
    padding: 8px 5px;
    font-size: 9pt;
}

#netdboverview table td {
    padding: 3px 5px;
}

#netdboverview td {
    padding: 0;
}

#netdboverview a {
    display: inline-block;
    width: 100%;
}

#netdbversions tr {
    border-right: 1px solid #447;
}

#netdbcountrylist tr {
    border-left: 1px solid #447;
}

#netdbcountrylist img {
    margin-right: 5px;
    text-align: right;
}

#leasesetsummary td:first-child {
    width: 50px;
    white-space: nowrap;
}

#leasesetdebug,
table.leaseset,
#leasesetsummary {
    font-size: 9pt;
}

#leasesetdebug td,
table.leaseset td {
    padding: 5px !important;
}

.leaseset,
.netdbentry {
    margin-bottom: 10px;
}

.leaseset th {
    font-weight: normal;
    padding: 5px;
    text-align: left;
    font-size: 10pt;
}

.leaseset th:last-child {
    font-size: 9pt;
}

.leaseset th:last-child,
.leaseset td:nth-child(2) {
    text-align: right;
    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;
}

.leaseset:last-child,
.netdbentry:last-child {
    margin-bottom: 5px;
}

#leasesetdebug th,
#leasesetsummary th {
    font-weight: bold;
    padding: 8px;
    text-align: left;
    font-size: 11pt !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
}

#leasesetdebug th a {
    font-size: 9pt;
    text-transform: capitalize;
    letter-spacing: normal;
    word-spacing: normal;
}

#leasesetdebug th:last-child,
#leasesetsummary th:last-child {
    text-align: right;
    white-space: nowrap;
    font-size: 9pt;
}

#leasesetdebug td:nth-child(odd) {
    width: 200px;
    white-space: nowrap;
    text-align: right;
    border-right: 1px inset #cfd1ff;
}

#leasesetdebug td:nth-child(even) {
    text-align: left;
    white-space: nowrap;
}

#leasesetdebug td:nth-child(2) {
    width: 10px;
}

.addtobook {
    text-align: right;
}

.addtobook a:not(old) {
    font-size: 0;
}

.addtobook a::after {
    content: url(/themes/console/images/buttons/add_address.png);
}

.addtobook a:hover {
    /*     filter: drop-shadow(0 0 1px #f60);*/
}

#noleasesets,
#notinitialized,
.netdbnotfound {
    margin-top: -6px;
    margin-bottom: 5px;
    padding: 10px 20px;
    font-weight: bold;
    text-align: center;
    color: #41465f;
    border: 1px solid #dee2e6;
    box-shadow: 0 0 1px #ccf;
    border-radius: 2px;
    background: #f2f2ff;
    background: linear-gradient(to right, #f2f2ff, #f8f8ff, #f2f2ff);
}

#notinitialized,
.netdbnotfound {
    margin-top: 15px !important;
}

#sybilnav {
    padding: 10px;
    border-radius: 2px;
    -moz-columns: 4;
    -webkit-columns: 4;
    columns: 4;
    -moz-column-gap: 10px;
    -webkit-column-gap: 10px;
    column-gap: 10px;
}

#sybilnav,
#sybils_summary {
    border: 1px solid #dee2e6;
    margin-bottom: 10px;
    background: repeating-linear-gradient(135deg, rgba(248, 238, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fafaff 5px), #fafaff;
    box-shadow: inset 0 0 0 1px #fff;
}

#sybils_summary {
    padding: 5px 10px;
    line-height: 160%;
    -moz-columns: 400px auto;
    -webkit-columns: 400px auto;
    columns: 400px auto;
}

h3.sybils {
    margin-bottom: 9px;
}

#sybilnav ul li:first-child {
    margin-top: 0;
}

#sybilnav ul li:last-child {
    margin-bottom: 0;
}

#sybilnav li {
    list-style: none;
    padding: 5px 3px 5px 24px;
    border: 1px solid #dee2e6;
    border-radius: 2px;
    box-shadow: inset 0 0 0 1px #fff;
    margin: 2px 0;
    background: #eef url(images/eye.png) 5px center no-repeat;
    background: url(images/eye.png) 5px center no-repeat, linear-gradient(45deg, #fafaff 60%, #eef);
    line-height: 88%;
}

#sybilnav li a {
    width: 100%;
    display: inline-block;
}

.sybil_routerinfo {
    margin-bottom: 10px;
}

.sybil_routerinfo:last-of-type {
    margin-bottom: 5px;
}

.sybil_routerinfo th {
    padding: 1px 1px 1px 6px !important;
}

.sybil_routerinfo:first-of-type th {
    padding: 6px !important;
}

.sybil_routerinfo th:first-child {
    white-space: nowrap;
    text-align: left;
}

.sybil_routerinfo th:nth-last-child(2) {
    text-align: right !important;
    padding-right: 0 !important;
}

.sybil_routerinfo th:last-child {
    width: 20px;
}

.sybil_routerinfo td:first-child {
    width: 50px;
    white-space: nowrap;
}

p.sybil_info,
p.family,
p.threatpoints,
p.hashdist,
p#sybil_totals,
p.notfound {
    margin: 3px 0;
    padding: 7px 5px 7px 30px;
    border: 1px solid #dee2e6;
    box-shadow: inset 0 0 0 1px #fff;
    font-weight: bold;
    color: #41465f;
    text-align: left;
    background: url(images/eye.png) 8px center no-repeat, repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fafaff 5px), #fafaff;
}

p#sybil_totals {
    font-weight: normal;
}

p.family+p.family,
p.sybil_info+p.sybil_info {
    margin-top: -4px;
}

p.family:nth-child(even) {
    background: #efefff;
    background: url(images/eye.png) 8px center no-repeat, repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fafaff 5px), #fafaff;
}

p.family:nth-child(odd) {
    background: #f7f8ff;
    background: url(images/eye.png) 8px center no-repeat, repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fafaff 5px), #fff;
}

p.sybil_info+a[name]+table.sybil_routerinfo,
p.hashdist+a[name]+table.sybil_routerinfo,
table.sybil_routerinfo+p {
    margin-top: 10px !important;
}

.threatpoints+ul {
    border: 1px solid #dee2e6;
    padding: 0 10px;
    display: inline-block;
    width: calc(100% - 22px);
    margin: -4px 0 8px;
    background: #eef;
    background: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fafaff 5px), #fafaff;
    box-shadow: inset 0 0 0 1px #fff;
}

.threatpoints+ul li {
    background: none;
    margin: 0 0 0 20px;
}

.threatpoints+ul li:last-child {
    margin-bottom: 10px;
}

p:empty {
    /* empty paragraph nuke */
    display: none;
}


/* Advanced lookup */

#netdblookup {
    margin-top: 15px;
    margin-bottom: -8px;
}

#netdblookup td:first-child {
    text-align: right;
    width: 100px;
    white-space: nowrap;
    font-weight: bold;
    color: #41465f;
}

#netdblookup td:nth-child(2) {
    width: 100px;
}

.subheading {
    text-align: left !important;
    background: #fafaff;
    padding: 10px;
    border: 1px solid #dee2e6;
}

.subheading b {
    font-size: 9.5pt !important;
}

.sybil_distance th {
    text-align: left;
    padding: 5px;
}

.sybil_distance th:last-child,
.sybil_distance td:last-child {
    text-align: right;
}

.sybil_distance tr:nth-child(n+2):hover {
    background: #ffe;
    font-weight: bold;
}


/* leasesets */

.netdb_leases,
.netdb_leases li,
.netdb_leases li:first-child {
    margin: 0;
}

.netdb_leases {
    columns: auto 420px !important;
    column-rule: 1px solid #ccf;
    column-gap: 1em;
    display: block;
}

.netdb_leases li {
    list-style: none;
    display: inline-block;
    padding: 1px 0;
    margin: 1px 0;
    min-width: 400px;
}

.netdb_leases li b:first-child {
    display: inline-block;
    min-width: 80px !important;
    text-align: right;
    margin: 0 !important;
    padding: 0 !important;
}

.netdb_tunnel {
    display: inline-block;
    background: #e2e2ff;
    background: rgba(204, 204, 255, 0.4);
    padding: 0 4px;
    margin-left: 4px;
    margin-right: -4px;
    border-radius: 2px;
}

.netdb_leases .tunnel_id {
    min-width: 74px;
}

.netdb_leases .tunnel_peer {
    min-width: 64px;
}

.netdb_leases .tunnel_peer tt,
.netdb_leases .tunnel_peer tt a {
    font-size: 8pt !important;
    font-weight: bold !important;
}

.netdb_leases .tunnel_peer tt,
.netdb_leases .tunnel_peer a {
    letter-spacing: 0.1em !important;
    margin: 0 !important;
    padding: 0 !important;
}

.main li .netdb_expiry {
    font-weight: normal;
    text-transform: lowercase;
    font-style: italic;
}

img.unknownflag {
    opacity: 0.8;
}


/* end leasesets */


/* end netdb */

ul#banlist {
    display: block;
    padding: 5px 0;
    border: 1px solid #dee2e6;
    border-radius: 2px;
    background: #fafaff;
    text-align: left;
    -moz-columns: auto;
    -webkit-columns: auto;
    columns: auto;
    -moz-column-gap: 0;
    -webkit-column-gap: 0;
    column-gap: 0;
}

#profiles #banlist {
    border: none;
    background: none;
}

#banlist li {
    display: inline-block;
    min-width: 400px;
    line-height: 120%;
    margin: 3px 0 3px 5px !important;
    padding: 8px 10px 0 35px;
    list-style: none;
    border: 1px solid #dee2e6;
    border-radius: 2px;
    box-shadow: inset 0 0 0 1px #fff;
    background: #eef url(/themes/console/images/buttons/ban.png) 10px center no-repeat;
    background: url(/themes/console/images/buttons/ban.png) 10px center no-repeat, repeating-linear-gradient(135deg, rgba(252, 252, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fff 5px) #fafaff;
    font-size: 9pt;
    -webkit-break-inside: avoid;
    break-inside: avoid;
    page-break-inside: avoid;
}

#config_peers #banlist li {
    margin: 0 -2px 5px 5px;
}

#banlist li:first-child {
    margin-top: 0;
}

#banlist a[href^="configpeer?peer"]::after {
    vertical-align: top;
}

#banlist tt {
    margin-left: 2px;
}

#tunnelconfig th[colspan="3"] {
    text-transform: uppercase;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
}

#tunnelconfig font[color="red"] {
    background: url(images/warn.png) left center no-repeat;
    padding: 4px 5px 4px 20px;
}

#tunnelconfig td:nth-child(n+2) {
    text-align: left;
}

#tunnelconfigsave {
    margin-top: -22px;
}

#profiles th:nth-child(n+3) {
    text-align: right;
}

#profiles th:nth-child(8) {
    text-align: center;
}

#profilelist {
    margin-bottom: 10px;
}

#profilelist td:first-child {
    width: 1%;
    text-align: right;
    white-space: nowrap;
}

#profilelist td:nth-child(2) {
    text-align: left;
}

#profilelist td[colspan="9"] {
    background: #77f;
    padding: 0;
}

#view_profile h2 {
    text-transform: none !important;
    letter-spacing: normal;
    word-spacing: normal;
}

#thresholds p {
    margin-left: 5px;
    line-height: 140%;
}

#profile_defs b {
    text-transform: capitalize;
}

#profile_defs td:first-child {
    width: 8% !important;
    white-space: nowrap;
    text-align: right;
}

#profile_defs td:last-child {
    white-space: normal;
    line-height: 120%;
    text-align: left;
}

#profile_defs td:nth-child(2)::first-letter {
    text-transform: uppercase;
}

#thresholds th,
#thresholds td {
    text-align: center !important;
}

#capabilities_key td {
    padding: 0 !important;
}

#capabilities_key table {
    margin: 0 !important;
    border: none;
    border-top: 1px solid #ddf;
    border-bottom: 1px solid #ddf;
}

#capabilities_key table td {
    padding: 3px 5px !important;
    text-align: left;
}

#capabilities_key b {
    text-transform: none !important;
    display: inline-block;
    min-width: 16px;
    background: #e2e2ff;
    text-align: center;
    border-radius: 2px;
    padding: 1px 2px;
}

#profilelist tr:hover td,
#floodfills tr:hover td,
#ntcpconnections tr:nth-last-child(n+2):hover td,
#udpconnections tr:nth-last-child(n+3):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,
.tunneldisplay tr:hover td {
    background: #ffd;
    color: #19191f;
}


/* peers - sort icons */

#udpconnections th {
    vertical-align: top;
    padding-top: 3px;
}

.sortup,
.sortdown,
.sortupactive,
.sortdownactive {
    padding: 1px 0;
    border: 1px solid #999daf;
    border-radius: 2px;
    margin: 3px 1px 0 !important;
    vertical-align: middle;
    text-align: center;
    display: inline-block;
    width: 16px;
    height: 12px;
    background-size: 10px auto, 100% 100% !important;
}

.sortup,
.sortdown {
    box-shadow: inset 0 0 0 1px #fff, 0 0 1px #ddd;
    opacity: 0.75;
}

.sortup img,
.sortdown img,
.sortupactive img,
.sortdownactive img {
    margin: 0;
    padding: 0;
    opacity: 0;
    width: 16px;
    height: 14px;
    vertical-align: middle;
    text-align: center;
}

.sortupactive,
.sortdownactive {
    opacity: 1;
    box-shadow: inset 1px 1px 1px #ccc;
}

.sortup {
    background: url(images/sort_up.png) center center no-repeat;
}

.sortup:hover {
    background: url(images/sort_up.png) center center no-repeat, linear-gradient(to bottom, #eee, #fff);
    border: 1px solid #f60;
    opacity: 1;
}

.sortup a:focus,
.sortdown a:focus {
    background: rgba(255, 102, 0, 0.15);
    border-radius: 2px;
    box-shadow: inset 0 0 0 1px #fff;
    margin-top: -1px;
    display: inline-block;
}

.sortupactive {
    background: url(images/sort_up.png) center center no-repeat, #fff;
}

.sortdown {
    background: url(images/sort_down.png) center center no-repeat;
}

.sortdown:hover {
    background: url(images/sort_down.png) center center no-repeat, linear-gradient(to bottom, #eee, #fff);
    border: 1px solid #f60;
    opacity: 1;
}

.sortdownactive {
    background: url(images/sort_down.png) center center no-repeat, #fff;
}


/* end peer sort */

table#schedjobs {
    margin-top: -11px !important;
}

#schedjobs th:last-child {
    text-align: center;
}

#schedjobs td:first-child {
    font-weight: bold;
    color: #41465f;
}

#jobstats th:nth-child(n+2) {
    text-align: right;
}

#jobstats tr:last-child {
    font-weight: bold;
}

#jobstats tr:last-child td {
    padding: 5px;
    color: #41465f;
}

#advconf {
    margin-bottom: 12px;
}

#peerdefs,
#profile_defs,
#thresholds,
#configinfo,
.infohelp,
.infowarn {
    font-size: 9pt;
}

.infodiv {
    font-size: larger;
    text-align: justify;
}

#peerdefs td:first-child {
    text-align: right;
    white-space: nowrap;
}

.sybil_routerinfo th img {
    width: 24px;
    height: 24px;
    margin: -1px;
    border-left: 1px solid #dee2e6;
}

.threatpoints+ul+a[name]+.sybil_routerinfo th img {
    margin-top: 1px;
}

.main#tunnels th,
.main#peers th,
#ntcpconnections td,
#udpconnections td {
    text-align: center;
}

h3#ntcpcon,
h3#udpcon {
    border-width: 1px;
    margin-bottom: -2px;
    border-radius: 0;
    filter: none;
    text-transform: capitalize;
    letter-spacing: 0;
}

.backlogged {
    font-size: 14pt;
    line-height: 0;
}

#ntcpconnections td:first-child,
#udpconnections td:first-child {
    width: 1%;
    white-space: nowrap;
    text-align: right;
    padding-left: 3px !important;
}

#ntcpconnections tr:last-child td:first-child,
#udpconnections tr:last-child td:first-child {
    text-align: left;
    padding-left: 10px !important;
}

#profilelist td:last-child {
    text-align: center;
    padding-right: 5px;
    width: 1%;
    white-space: nowrap;
}

#floodfills {
    margin-top: 8px;
}

#floodfills th {
    text-align: center !important;
    border-right: 1px solid #dee2e6;
}

#floodfills td:first-child {
    text-align: right;
    padding-left: 3px;
    padding-right: 3px;
    width: 1%;
    white-space: nowrap;
}

#floodfills td:first-child img {
    margin-right: 2px;
    margin-left: 4px;
}

#floodfills td:nth-child(2),
#profilelist td:nth-child(3) {
    text-align: right;
    letter-spacing: 0.15em;
}

#i2pupdates input[type="text"]:not([readonly]),
#i2pupdates textarea,
.main[id^="config_"] textarea,
input[name="newsURL"] {
    width: calc(100% - 5px);
}

#i2pupdates select {
    min-width: 220px;
}

#i2pupdates td:first-child {
    width: 15%;
    white-space: nowrap;
}

#loggingoptions input[type="text"],
#loggingoptions select:not([name="newlogclass"]):not([name="newloglevel"]) {
    width: calc(100% - 10px);
}

#loggingoptions td:last-child:not(.optionsave) {
    text-align: left;
}

#loggingoptions p {
    text-align: left;
    margin: 0 5px 2px 5px;
    line-height: 150%;
}

#volunteer,
#sidebarhelp,
#configurationhelp,
#reachabilityhelp,
#advancedsettings,
#legal,
#faq {
    border: 1px solid #dee2e6;
    border-radius: 2px;
    margin-bottom: 10px;
    padding: 0 10px 5px;
    background: #fafaff;
}

#volunteer {
    margin-top: 15px;
}

#changelog h2 {
    background: #cee !important;
    border-radius: 10px;
    font-size: 12pt;
    margin: 20px 10px 20px 12px !important;
    padding: 25px 10px;
    text-align: left;
}

#changelog h3 {
    background: #eee !important;
    border-radius: 0;
    font-size: 11pt;
    margin: 5px 20px 5px !important;
    padding: 10px 4px 10px 4px;
    text-align: left;
}

#changelog p {
    margin: 0;
    padding: 0 10px 5px 10px;
    width: calc(100% - 32px);
}

#changelog .star {
    padding: 0 4px 0 25px;
}

#changelog .bullet {
    padding: 0 4px 0 48px;
}

#help h2 {
    margin: -1px -11px 10px !important;
    border-radius: 2px 2px 0 0;
    filter: none;
}

#help h3 {
    margin-bottom: -3px;
}

#help div,
.logtable tr:nth-child(n+2) td,
.main#console,
.debug_container {
    background: #f6f6fa;
    margin-bottom: 13px;
}

#help #volunteer,
#wrapperlogs pre {
    background: linear-gradient(to bottom, #fafaff, rgba(248, 248, 255, 0.3)), repeating-linear-gradient(135deg, rgba(252, 252, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fafaff 5px) #fafaff !important;
    box-shadow: inset 0 0 0 1px #fff;
}

#help p {
    padding-left: 10px;
    padding-right: 10px;
}

#help p.infohelp {
    padding-left: 50px;
}

#help td.infohelp,
#help td.infowarn,
#help td.infohelp:hover,
#help td.infowarn:hover {
    background-size: 24px 24px !important;
    padding-left: 50px !important;
    color: #33333f !important;
    padding-right: 15px !important;
}

#configinfo td.infowarn,
#configinfo tr:hover td.infowarn {
    padding-left: 46px !important;
}

#help code,
#help tt {
    font-size: 8.5pt;
    font-weight: bold;
    color: #050;
}

#sidebarhelp ul {
    display: inline-block;
    margin-bottom: 0 !important;
}

#sidebarhelp ul:last-child {
    margin-bottom: 5px !important;
}

#sidebarhelp p+ul {
    margin-top: -15px !important;
}

#help li {
    text-align: justify;
}

#help li code {
    font-weight: bold;
    color: #050;
}


/* mini faq */

#faq h3 {
    padding: 5px 10px 6px 35px;
    background: #f6f6fa;
    background-size: 18px 18px, 100% 100%, 100% 100% !important;
    background-blend-mode: luminosity, normal, normal;
    text-transform: none;
    letter-spacing: 0;
    word-spacing: 0;
    font-size: 10.5pt;
}

#faq ul li {
    margin-top: 0;
}

#faq code,
#advancedsettings code {
    user-select: all;
    -moz-user-select: all;
    -webkit-user-select: all;
    -ms-user-select: all;
}

#portfaq {
    margin-top: 18px;
}

#portfaq th:first-child,
#portfaq td:first-child {
    font-weight: bold;
    text-align: right;
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 10px;
}

#portfaq .infohelp {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

#portfaq th[colspan="3"] {
    text-align: left;
    font-size: 10.5pt !important;
    letter-spacing: 0.08em;
    word-spacing: 0.1em;
}

#portfaq td:nth-child(2) {
    white-space: nowrap;
}

#portfaq td:last-child,
#portfaq td[colspan="3"] {
    text-align: justify;
    padding-right: 10px;
}

#portfaq td[colspan="3"] {
    font-weight: normal;
}


/* end mini faq */

#wrapperlogs pre {
    background-size: 100% 100%, auto 120px, 100% 100% !important;
    resize: vertical;
}

#fullhistory {
    text-align: right;
    margin: 0 0 0 -10px;
    padding: 6px 5px 5px;
    border-top: 1px solid #dee2e6;
    background: linear-gradient(to right, #efefff 65%, #fafaff);
}

#fullhistory a {
    margin-right: -4px;
}

#fullhistory::before {
    content: "";
    display: inline-block;
    background: url(/themes/console/images/buttons/fullview.png) left center no-repeat !important;
    background-size: 14px 14px !important;
    height: 20px;
    width: 18px;
    vertical-align: middle;
    margin-bottom: 1px;
}

#oldconsole p {
    margin: 20px 5px 10px;
    padding: 10px 0;
    line-height: 180%;
    background: #f2f2ff;
    background: linear-gradient(135deg, #fafaff, rgba(240, 240, 255, 0.5));
    border: 1px solid #99b;
    border-radius: 2px;
    box-shadow: inset 0 0 0 1px #fff, 0 0 1px #ccf;
}

#oldconsole b {
    margin-right: 5px;
    display: inline-block;
    min-width: 160px;
    text-align: right;
}

.homelinkedit th:first-child,
#sidebarconf th:first-child,
#consolepass th:first-child {
    text-align: center;
    background: #f6f6ff url(/themes/console/images/buttons/delete.png) center center no-repeat !important;
    font-size: 0 !important;
    width: 5%;
}

.homelinkedit tr:last-child td:first-child {
    text-align: right;
}

.homelinkedit input[type="text"],
#sidebarconf select {
    margin-left: 0;
}

.homelinkedit img {
    width: auto;
    height: 20px;
}

.main#config_homepage input.delete {
    float: left;
}

#webappconfig td:first-child::after {
    content: "";
    display: inline-block;
    min-height: 32px;
    vertical-align: middle;
}

#clientconfig th:first-child,
#webappconfig th:first-child,
#pluginconfig th:first-child,
#clientconfig td:first-child,
#webappconfig td:first-child,
#pluginconfig td:first-child {
    text-align: right !important;
}

#clientconfig th:nth-child(2),
#clientconfig th:nth-child(3),
#webappconfig th:nth-child(2),
#webappconfig th:nth-child(3),
#pluginconfig th:nth-child(2),
#pluginconfig th:nth-child(3) {
    text-align: center !important;
}

#clientconfig td:nth-child(3),
#webappconfig td:nth-child(3),
#pluginconfig td:nth-child(3) {
    white-space: nowrap;
}

#pluginconfig table {
    margin: 5px 0 5px 0 !important;
    width: calc(100% - 5px);
}

#pluginconfig td:first-child {
    width: 80px;
    white-space: nowrap;
}

#pluginconfig td:nth-child(2) {
    border-right: 1px inset rgba(119, 120, 191, 0.1);
}

#pluginconfig td:last-child {
    padding-right: 3px;
}

table#plugininstall2 td:first-child,
table#plugininstall td:first-child {
    white-space: nowrap !important;
}

h4#updateplugins {
    background: #f6f6fa !important;
    padding: 5px;
    font-size: 10pt;
    margin: -15px 0 14px;
    text-transform: none;
    letter-spacing: normal;
    color: #41465f;
}

.formaction#pluginupdater,
table#permabanned,
table#i2pupdates {
    margin-bottom: 10px;
}

.formaction#pluginupdater form {
    padding: 0;
    margin: 0;
}

#pluginconfigactions {
    margin-top: -6px;
}

h3#displayevents {
    border-width: 1px;
    filter: none;
    border-radius: 0;
    margin-top: 0;
}

form[action="events"] {
    border: 1px solid #ddf;
    padding: 10px 10px 10px 50px;
    background: url(/themes/console/images/info/logs.png) 12px center no-repeat;
    background-size: 28px 28px;
}

#newfamily {
    margin-top: -6px;
    margin-bottom: 10px;
}

a[href^="configpeer?peer"] {
    font-size: 0;
    /*filter: drop-shadow(0 0 1px #777);*/
}

a[href^="configpeer?peer"]::after {
    content: url(/themes/console/images/buttons/unban.png);
    display: inline-block;
    vertical-align: bottom;
    margin: 0 0 0 3px;
}

a[href^="configpeer?peer"]:hover {
    /*     filter: drop-shadow(0 0 1px #f60);*/
}

.widescroll {
    overflow: auto;
}

#webappconfigactions,
#externali2cp {
    margin-bottom: 5px !important;
}

#pluginupdater {
    margin-bottom: 10px !important;
}


/* netdb router address info */

.leasesets_container {
    -moz-columns: 680px 2;
    -webkit-columns: 680px 2;
    columns: 680px 2;
    -moz-column-gap: 10px;
    -webkit-column-gap: 10px;
    column-gap: 10px;
    padding: 8px;
    border: 1px groove rgb(82, 75, 94);
}

th code {
    -moz-user-select: all;
    -webkit-user-select: all;
    -ms-user-select: all;
    user-select: all;
}

@media screen and (min-width: 1634px) {
    .leasesets_container {
        margin-bottom: 2px;
    }
    th code {
        font-size: 9pt !important;
    }
}

.leasesets_container table:first-child {
    margin-top: 0;
}

.leasesets_container table {
    break-inside: avoid;
    page-break-inside: avoid;
    -webkit-column-break-inside: avoid;
}

.netdb_addresses br:first-child,
.sybil_routerinfo tr:last-child td br:first-child {
    display: none;
}

.netdbentry th:first-child::after {
    content: "";
    display: inline-block;
    min-height: 20px;
    vertical-align: middle;
}

.netdbentry th:last-child>*,
.sybil_routerinfo th:nth-child(2)>* {
    vertical-align: middle !important;
}

.netdbentry th a img {
    display: inline-block;
    vertical-align: middle;
    margin-right: 1px;
    margin-top: -2px;
}

.netdbentry a.viewfullentry::after {
    display: inline-block;
    vertical-align: middle !important;
    margin-left: 3px;
}

.netdbentry td:first-child {
    text-align: right;
}

.netdbentry .netdb_addresses {
    padding-left: 40px;
}

b.netdb_transport {
    display: inline-block;
    width: 50px;
    text-align: right;
    margin-left: -40px;
    margin-right: 5px;
}

#netdb code {
    font-weight: normal !important;
}

.netdb_name {
    color: #335;
    text-transform: capitalize;
    font-weight: bold;
}

.netdb_info {
    margin-right: 1px;
}

.netdb_expiry {
    margin-left: 5px;
}

.sybil_routerinfo th img[src^="/flags"] {
    height: 11px;
    width: 16px;
    margin-right: 3px;
}

.sybil_routerinfo b.netdb_transport {
    margin-left: -13px;
    margin-right: 0;
}

.netdbentry td:first-child {
    text-align: right !important;
    padding-right: 0;
}

.sybil_routerinfo td[colspan="3"] {
    white-space: normal;
}

.sybil_container {
    -moz-columns: 680px 2;
    -webkit-columns: 680px 2;
    columns: 680px 2;
    margin: 10px 0;
}

.sybil_container p {
    break-inside: avoid;
    page-break-inside: avoid;
    -webkit-column-break-inside: avoid;
}

.sybil_container p:first-child {
    margin-top: 0;
}

.sybil_container p:last-child {
    margin-bottom: 0;
}


/* end netdb router address */


/* sybils */

@media screen and (-webkit-min-device-pixel-ratio:0) {
    .leaseset th:last-child,
    .leaseset td:last-child,
    .sybil_routerinfo th:last-child {
        border-right: 1px solid #dee2e6 !important;
    }
}

.sybilinfo_params {
    padding: 0;
    border: 1px solid #dee2e6;
}

.sybilinfo_container {
    columns: 240px auto;
    -moz-columns: 240px auto;
    -webkit-columns: 240px auto;
    -moz-column-gap: 0;
    -webkit-column-gap: 0;
    column-gap: 0;
    background: #f8f8ff;
    background: repeating-linear-gradient(135deg, rgba(252, 252, 255, 0.5) 2px, rgba(240, 240, 255, 0.3) 3px, #fafaff 5px), #f9f9ff;
    padding: 4px 5px;
    box-shadow: inset 0 0 0 1px #fff;
}

.sybilinfo_container b {
    color: #335;
}

.sybil_routerinfo p {
    margin: 0;
    padding: 1px 0;
    break-inside: avoid;
    page-break-inside: avoid;
    -webkit-column-break-inside: avoid;
}

.sybilinfo_familyname {
    display: inline-block;
    vertical-align: top;
    max-width: 150px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sybil_routerinfo,
.sybil_routerinfo tr:nth-child(2) td,
.sybil_routerinfo tr:last-child td {
    border-bottom: none !important;
}

.sybil_routerinfo tr:last-child td {
    border-top: none !important;
}

.sybil_addresses td:first-child {
    max-width: 155px;
    font-weight: bold;
    padding-right: 9px;
}

.sybil_addresses table {
    width: 100%;
    margin: 0;
    border-top: 1px solid #dee2e6 !important;
    border-bottom: 1px solid #dee2e6 !important;
}

.sybil_addresses {
    padding: 0;
    border-bottom: 1px solid #dee2e6;
}

.sybil_addresses table,
.sybil_addresses td {
    border: none;
}

.threatpoints+ul {
    -moz-columns: auto 500px;
    -webkit-columns: auto 500px;
    columns: auto 500px;
    -moz-column-rule: 1px solid #dee2e6;
    -webkit-column-rule: 1px solid #dee2e6;
    column-rule: 1px solid #dee2e6;
    padding-top: 3px;
    padding-bottom: 3px;
}

.threatpoints+ul li:first-child {
    margin-top: 0;
}

.threatpoints+ul li:last-child {
    margin-bottom: 0;
}

.threatpoints+ul li {
    list-style: none;
    margin-left: 0;
    line-height: 120%;
    break-inside: avoid;
    page-break-inside: avoid;
    -webkit-column-break-inside: avoid;
}

.threatpoints+ul li a {
    white-space: nowrap;
    font-size: 8pt !important;
    background: #eef;
    margin-left: 2px;
    border-radius: 1px;
    padding: 0 2px;
}

.sybil_routerinfo+.threatpoints+ul+a[name]+table {
    margin-top: -11px !important;
}


/* end sybils */


/* debug */

#debug {
    background: #fafaff;
}

#debug li:first-child {
    margin-top: 0 !important;
}

#debug td:first-child,
#debug th:first-child {
    padding-left: 10px;
    color: #41465f;
}

#debug td:last-child {
    text-align: right;
    vertical-align: top;
}

#debug ul li {
    list-style: none;
    margin-left: 0;
    padding: 0;
}

#debug h2 {
    border-radius: 0;
    padding: 8px 10px;
}

#debug h3 {
    border-radius: 0;
}

#debug table {}

#debug h2+table {
    margin-top: -16px;
}

#debug hr {
    display: none;
}

.debug_container,
#debug td {
    line-height: 140%;
}

.debug_container {
    padding: 10px 15px;
    background: linear-gradient(to bottom, #fafaff, rgba(250, 250, 255, 0.3)), repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px) #efefff !important;
    border: 1px solid #dee2e6;
    box-shadow: inset 0 0 0 1px #fff;
}

.debug_container:empty {
    display: none;
}

.debug_container.buckets {
    word-break: break-all;
    margin-bottom: 5px;
    padding-bottom: 0;
    overflow: auto;
}

.main#debug h3 {
    border-width: 1px;
}

#debug td {
    padding-top: 5px;
    padding-bottom: 5px;
}

#debug h2 {
    background: url(/themes/console/images/info/debug.png) right 6px center no-repeat, linear-gradient(to bottom, #fcfcff 50%, rgba(255, 255, 255, 0.6) 50%, rgba(240, 240, 255, 0.4)), linear-gradient(to right, #fcfcff 5%, rgba(231, 231, 255, 0.8) 25%) !important;
    background-size: 20px 20px, 100% 100%, 100% 100% !important;
    background-blend-mode: luminosity, normal, normal;
}

#debug h3 {
    padding-left: 10px;
}

.debug_section {
    margin-bottom: 29px !important;
}

.debug_section+.debug_section {
    margin-top: -13px !important;
}

.debug_section h2+h3 {
    margin-top: -16px !important;
}

.debug_section table {
    margin-bottom: -13px !important;
}

.debug_section .debug_container {
    margin-bottom: -13px;
}

.expiry td {
    padding-left: 3% !important;
}

.expiry ul {
    display: block;
    columns: auto 400px;
}

#debug h2,
#debug h3 {
    position: relative;
    z-index: 100;
}

#portmapper td:first-child {
    font-weight: bold;
}

#portmapper tr:hover td:first-child {
    color: #363b4f !important;
}

#portmapper td:last-child {
    text-align: left !important;
}

#debug h3.debug_outboundsessions,
#debug h3.debug_inboundsessions {
    padding: 6px 10px 6px 28px;
    background-blend-mode: luminosity, normal, normal;
}

#debug h3.debug_outboundsessions {
    background: url(/themes/console/images/outbound.png) 6px center no-repeat, linear-gradient(to bottom, #fcfcff 50%, rgba(255, 255, 255, 0.6) 50%, rgba(240, 240, 255, 0.4)), linear-gradient(to right, #fcfcff 5%, rgba(231, 231, 255, 0.8) 25%) !important;
}

#debug h3.debug_inboundsessions {
    background: url(/themes/console/images/inbound.png) 6px center no-repeat, linear-gradient(to bottom, #fcfcff 50%, rgba(255, 255, 255, 0.6) 50%, rgba(240, 240, 255, 0.4)), linear-gradient(to right, #fcfcff 5%, rgba(231, 231, 255, 0.8) 25%) !important;
}

.debug_version {
    color: #050;
}

.debug_tx_total, .debug_tx_resource, .debug_tx_file {
    width: auto;
}

.debug_tx_total td:nth-child(3),
.debug_tx_total td:nth-child(4),
.debug_tx_resource td:nth-child(3),
.debug_tx_resource td:nth-child(4) {
    text-align: right;
}

.debug_tx_center,
.debug_tx_total td:nth-child(2),
.debug_tx_resource td:nth-child(2),
.debug_tx_file td:nth-child(2),
.debug_tx_file td:nth-child(3) {
    text-align: center !important;
}


/* end debug */


/* jardump */

#jardump {
    overflow-x: auto;
    min-width: 576px;
    padding: 0;
}

#jardump table {
    margin: -1px 0 0;
    border: none;
    font-size: 8pt;
}

#jardump .subheading {
    padding: 5px;
    border-left: none !important;
    border-right: none !important;
}

#jardump .subheading code {
    font-weight: bold !important;
}

.subheading.routerfiles {
    padding-left: 10px !important;
    background: url(/themes/console/images/eepsite.png) right 7px center no-repeat, linear-gradient(to right, #7778bf 5px, #fafaff 5px, #eef) !important;
    background-size: 16px auto, 100% 100% !important;
}

.subheading.pluginfiles {
    padding-left: 10px !important;
    background: url(/themes/console/images/plugin.png) right 7px center no-repeat, linear-gradient(to right, #7778bf 5px, #fafaff 5px, #eef) !important;
    background-size: 16px auto, 100% 100% !important;
}

.subheading.routerfiles {
    padding-left: 5px !important;
    background: url(/themes/console/images/eepsite.png) right 5px center no-repeat, linear-gradient(to right, #fafaff, #eef) !important;
    background-size: 16px auto, 100% 100% !important;
    box-shadow: none !important;
}

.subheading.pluginfiles {
    padding-left: 5px !important;
    background: url(/themes/console/images/plugin.png) right 5px center no-repeat, linear-gradient(to right, #fafaff, #eef) !important;
    background-size: 16px auto, 100% 100% !important;
    box-shadow: none !important;
}

.revision,
.sha256,
.unsignedmod {
    -moz-user-select: all;
    -webkit-user-select: all;
    -ms-user-select: all;
    user-select: all;
}

.unsignedmod::-moz-selection {
    background: #f00 !important;
    color: #fff;
}

.unsignedmod::selection {
    background: #f00 !important;
    color: #fff;
}

.revision tt::-moz-selection,
.sha256 tt::-moz-selection {
    background: #070 !important;
    color: #fff !important;
}

.revision tt::selection,
.sha256 tt::selection {
    background: #070 !important;
    color: #fff !important;
}

.revision br::-moz-selection,
.sha256 br::-moz-selection {
    background: transparent !important;
}

.revision br::selection,
.sha256 br::selection {
    background: transparent !important;
}

#jardump tt {
    letter-spacing: -0.03em;
    font-size: 8pt !important;
    font-weight: normal !important;
}

#jardump a tt {
    color: #359;
}

#jardump code {
    font-weight: normal !important;
}

#jardump a:visited tt {
    color: #218;
}

#jardump a:hover tt {
    color: #f60;
}

#jardump a:active tt {
    color: #f90;
}

#jardump hr {
    margin: 0 !important;
    background: #ddf;
    width: 100%;
    height: 1px;
    display: block;
}

#jardump tr:hover td:first-child {
    background: url(/themes/console/images/info/box.png) 5px center no-repeat #ffd;
    background-size: 16px 16px;
}

#jardump tr:hover td:first-child b,
#portmapper tr:hover td:first-child,
#portfaq tr:hover td:first-child {
    color: #26262f;
}

#jardump tr:hover .unsignedmod:not(:empty) {
    background: #8f0000;
    color: #fff;
}

#jardump tr:hover hr {
    background: transparent;
}

#jardump th {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    font-size: 9.5pt;
}

#jardump th:nth-child(n+2) {
    text-align: center;
}

#jardump td {
    border-right: 1px inset #ddf;
    text-align: center;
}

#jardump td:first-child {
    padding-left: 26px;
    padding-right: 3px;
    white-space: nowrap;
    background-image: url(/themes/console/images/info/box.png);
    background-position: 5px center;
    background-repeat: no-repeat;
    background-size: 16px 16px;
}

#jardump td:first-child,
#jardump td:last-child {
    text-align: left;
}

#jardump td:nth-child(2) {
    padding-right: 7px;
    padding-left: 7px;
    width: 5%;
    white-space: nowrap;
    color: #41465f;
    text-align: right;
    font-style: italic;
    font-weight: bold;
}

.unsignedmod {
    display: inline-block;
    padding: 2px;
    border-radius: 1px;
}

#jardump td:last-child {
    word-break: break-all;
    padding: 1px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    #jardump table {
        border: 1px solid #7778bf !important;
        border-bottom: none !important;
        border-top: none !important;
        width: calc(100% - 1px) !important;
    }
    #jardump,
    #jardump tr {
        border-left: none !important;
        border-right: none !important;
    }
    #jardump td:nth-child(3),
    #jardump td:nth-child(7) {
        width: 10%;
    }
}


/* end jardump */


/* custom radios/checkboxes for chrome/blink  */

@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution:.001dpcm) {
    input[type="checkbox"],
    input[type="checkbox"]:checked,
    input[type="checkbox"][disabled],
    input[type="checkbox"][disabled]:checked {
        background: #f8f8ff;
        width: 19px !important;
        height: 19px !important;
        box-shadow: inset 1px 1px 1px rgba(204, 204, 204, 0.6);
        border-radius: 2px;
        -webkit-appearance: inherit;
        /*     border: 1px solid #999daf !important;*/
        position: relative;
        box-sizing: border-box;
        vertical-align: middle !important;
    }
    #netconfig .optbox {
        vertical-align: middle !important;
    }
    input[type="checkbox"]:checked::before {
        position: absolute;
        top: 1px;
        left: 1px;
        content: "\2714";
        border-radius: 1px;
        font-size: 15pt;
        color: #41465f;
        line-height: 80%;
        font-family: sans-serif;
        overflow: hidden;
        width: 16px;
        height: 16px;
    }
    input[type="radio"],
    input[type="radio"]:checked,
    input[type="radio"][disabled],
    input[type="radio"][disabled]:checked {
        background: #f8f8ff;
        width: 19px !important;
        height: 19px !important;
        box-shadow: inset 0 0 2px #7778bf;
        border-radius: 50%;
        -webkit-appearance: none;
        /*! border: 1px solid #999daf !important; */
        position: relative;
        box-sizing: border-box;
        vertical-align: middle !important;
    }
    input[type="radio"]:checked::before {
        content: "";
        position: absolute;
        border-radius: 50%;
        left: 25%;
        top: 25%;
        width: 9px;
        height: 9px;
        background: #41465f;
    }
    input[type="checkbox"]:hover,
    input[type="radio"]:hover,
    input[type="checkbox"]:focus,
    input[type="radio"]:focus {
        background: #fff;
        width: 19px !important;
        height: 19px !important;
    }
    input[type="checkbox"][disabled],
    input[type="radio"][disabled],
    input[type="checkbox"][disabled]:hover,
    input[type="radio"][disabled]:hover,
    input[type="checkbox"][disabled]:checked,
    input[type="radio"][disabled]:checked,
    input[type="checkbox"][disabled]:checked:hover,
    input[type="radio"][disabled]:checked:hover {
        filter: none !important;
        box-shadow: none !important;
        opacity: 0.5;
    }
}


/* end custom radios/checkboxes */


/* responsive layout */

@media screen and (max-width: 900px) {
    .homelinkedit input[name="nofilter_url"] {
        width: 240px !important;
    }
    #newfamily tr:last-child td:first-child,
    #joinfamily tr:last-child td:first-child,
    #leavefamily tr:last-child td:first-child {
        background-size: 22px 22px, 100% 100% !important;
        background-position: center left 6px !important;
        padding-left: 34px !important;
    }
    #joinfamily input[type="file"] {
        width: 220px;
    }
    h3#ntcpcon,
    h3#udpcon {
        font-size: 10pt;
        letter-spacing: 0;
    }
    #ntcpconnections th:last-child:not(old) {
        font-size: 0;
    }
    #ntcpconnections th:last-child::before {
        content: url(/themes/console/images/info/backlogged.png) !important;
    }
    .main#config_family input.download {
        max-width: 230px;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    input[name="family"] {
        min-width: 120px;
        width: 120px;
    }
    input[name="speed"],
    input[name="capacity"] {
        min-width: 60px;
        width: 60px;
    }
    select[name="newlogclass"] {
        width: 200px;
        text-overflow: ellipsis;
    }
    input[name="pluginFile"],
    #manualreseed input[name="url"] {
        min-width: 220px;
        width: 220px;
    }
    .main#profiles,
    .main#peers,
    .main#tunnels {
        overflow: auto;
    }
}

@media screen and (max-width: 1000px) {
    #consolepass input[name="name"],
    #consolepass input[name="nofilter_pw"],
    #externali2cp input[name="user"],
    #externali2cp input[name="nofilter_pw"],
    #newfamily input[type="text"] {
        max-width: 140px !important;
    }
    #config_reseed input[type="text"],
    #config_reseed input[type="password"] {
        max-width: 200px;
    }
    input[name="pluginURL"] {
        max-width: 260px !important;
    }
    #i2pupdates td:first-child,
    #clientconfig td:nth-child(3),
    #webappconfig td:nth-child(3),
    #pluginconfig td:nth-child(3) {
        white-space: normal;
    }
    #i2pupdates td:first-child {
        width: 25%;
        line-height: 120%;
    }
    .main#config_clients th,
    #bannedips th {
        font-size: 9pt !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
    }
    .main#config_clients td:last-child {
        word-break: break-all;
    }
    .main#tunnels {
        padding: 0 5px;
        min-width: 566px;
    }
    .main#tunnels h3 {
        margin-top: 5px;
    }
    #netdbversions th,
    #netdbtransports th,
    #netdbcountrylist th,
    table.leaseset th {
        font-size: 9pt !important;
    }
    .welcome h2 {
        font-size: 11pt;
        padding-left: 8px;
    }
    .cells {
        padding: 3px 2px !important;
    }
    .cells tt,
    #profilelist tt {
        margin-left: 2px !important;
        margin-right: 2px !important;
    }
    #profilelist th {
        font-size: 8pt;
    }
    #profilelist th:last-child {
        font-size: 0;
    }
}

@media screen and (max-width: 1100px) {
    .tunnel_id,
    .tunnel_peer {
        min-width: 0 !important;
        text-align: center !important;
    }
    .tunnel_local {
        margin-right: 5px;
        margin-left: 2px;
        padding: 2px 4px;
    }
    .tunnel_peer:empty {
        vertical-align: middle;
    }
    .tunnel_peer:empty::before {
        margin: 1px 6px 1px 2px;
    }
    .tunnel_cap {
        margin-left: 5px !important;
    }
}

@media screen and (max-width: 1200px) {
    #portfaq td:nth-child(2) {
        white-space: normal;
    }
    #help h3,
    #faq h3,
    #leasesetdebug th,
    table#leasesetsummary th {
        font-size: 10pt !important;
    }
    #jardump td:first-child,
    #jardump td:nth-child(6),
    #jardump td:last-child {
        word-break: break-all;
        min-width: 100px;
    }
    .sha256,
    .revision {
        display: inline-block;
        width: 100px;
        overflow: auto;
    }
}

@media screen and (max-width: 1500px) {
    body {
        margin: 4px;
    }
    #sb_general td::after,
    #sb_shortgeneral td::after,
    #sb_advancedgeneral td::after,
    #sb_bandwidth td::after,
    #sb_peers td::after,
    #sb_peersadvanced td::after,
    #sb_tunnels td::after,
    #sb_queue td::after {
        min-height: 12px;
    }
    #sb_internals a,
    #sb_advanced a #sb_help a {
        max-width: 200px;
    }
    .tunnels_client th:first-child:not(old) {
        font-size: 0;
    }
    .tunnels_client th:first-child::after {
        content: "\21E9\21E7";
        font-family: sans-serif;
        font-size: 12pt;
        line-height: 0;
        vertical-align: middle;
        letter-spacing: -0.25em;
    }
}

@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;
    }
    #ntcpconnections .cells {
        border-left: none;
        border-right: none;
    }
    #jardump {
        overflow: hidden;
    }
}

@media screen and (min-width: 1400px) {
    #profiles .tab:first-child,
    #profiles .tab2:first-child,
    #help .tab:first-child,
    #help .tab2:first-child,
    #netdb .tab:first-child,
    #netdb .tab2:first-child,
    #debug .tab:first-child,
    #debug .tab2:first-child {
        border-radius: 12px;
    }
    #profiles .tab:last-child,
    #profiles .tab2:last-child,
    #help .tab:last-child,
    #help .tab2:last-child,
    #netdb .tab:last-child,
    #netdb .tab2:last-child,
    #debug .tab:last-child,
    #debug .tab2:last-child {
        border-radius: 12px;
    }
}

@media screen and (min-width: 1500px) {
    body,
    .main,
    .main td,
    .news p,
    #news p,
    .tab,
    .tab2,
    .main li b,
    div.joblog li,
    .themelabel,
    .ui_lang,
    .applabel a,
    .routersummary button.download,
    #peerdefs,
    #profile_defs,
    #thresholds,
    #configinfo,
    .infohelp,
    .infowarn,
    button,
    input,
    select,
    textarea,
    #configinfo th,
    code,
    th,
    .statusnotes {
        font-size: 10pt !important;
    }
    .routersummary td,
    .routersummary a,
    .routersummary button,
    .routersummary h4,
    .routersummary h4 a,
    div.news,
    pre,
    #help code,
    #help tt,
    #jardump tt,
    #jardump td,
    div.news,
    #logs li,
    tt,
    .cells tt,
    #profilelist tt,
    .leaseset tt,
    .links code,
    #console code {
        font-size: 9pt !important;
    }
    #udpconnections .cells {
        border-left: none;
        border-right: none;
    }
    tt a,
    .cells tt,
    #profilelist tt,
    .cells tt a,
    #profilelist tt a,
    .leaseset td tt {
        margin-left: 0 !important;
        margin-right: 3px !important;
        font-size: 9pt !important;
        letter-spacing: 0.1em !important;
    }
    #tunnels .tunnel_peer tt {
        margin-left: 3px !important;
        letter-spacing: 0.1em !important;
    }
    .main[id^="config_"] th,
    h4#updateplugins {
        font-size: 10.5pt !important;
    }
    .homelinkedit th:first-child,
    #sidebarconf th:first-child,
    #consolepass th:first-child {
        font-size: 0 !important;
    }
    h3#shutdownrouter,
    h3#systray,
    h3#servicedebug {
        margin-bottom: -15px;
    }
    .main,
    .news,
    h1 {
        margin-left: 232px !important;
    }
    .routersummary {
        width: 208px !important;
    }
    .routersummary div[style="height: 36px;"] {
        height: 40px !important;
        margin-top: 4px;
    }
    .routersummary table[id^="sb_"] {
        width: 218px !important;
    }
    #sb_services {
        width: 222px !important;
    }
    .sb_newsheadings table {
        width: 220px !important;
    }
    .routersummary h3::after {
        content: "";
        display: inline-block;
        min-height: 18px;
        vertical-align: middle;
        box-sizing: border-box;
    }
    div.app {
        width: 180px;
    }
    .applabel {
        width: 168px !important;
    }
    .footnote {
        font-size: 8pt !important;
    }
    h3#pconfig,
    h3#webappconfig,
    h3#i2pclientconfig,
    h3#pluginmanage,
    p#clientconf.infohelp,
    #config_stats h3 {
        margin-bottom: -15px;
    }
    .sorry {
        margin-left: 232px !important;
    }
    .routersummary .reload,
    .routersummary .stop {
        min-width: 100px;
        margin: 0 3px -5px;
    }
    .subheading b {
        font-size: 10.5pt !important;
    }
    h3#restartrouter,
    p#tunnelconfig {
        margin-bottom: -15px !important;
    }
    h3.ptitle {
        margin-bottom: -14px;
    }
    h1 {
        padding: 21px 15px 17px;
        font-size: 19pt;
    }
    .routersummary h3 a {
        font-size: 11pt !important;
        padding: 4px 0 2px;
    }
    .routersummary img[src$="i2plogo.png"] {
        margin-left: 0 !important;
        transform: none !important;
        width: 150px !important;
        margin-top: -2px !important;
    }
    #sb_internals a,
    #sb_advanced a,
    #sb_help a {
        max-width: 212px;
    }
    #sb_general,
    #sb_shortgeneral,
    #sb_advancedgeneral,
    #sb_bandwidth,
    #sb_peers,
    #sb_peersadvanced,
    #sb_tunnels,
    #sb_queue {
        margin-bottom: -4px !important;
        margin-top: -10px !important;
    }
    #sb_general,
    #sb_shortgeneral,
    #sb_advancedgeneral {
        margin-top: -7px !important;
    }
    #sb_general td::after,
    #sb_shortgeneral td::after,
    #sb_advancedgeneral td::after,
    #sb_bandwidth td::after,
    #sb_peers td::after,
    #sb_peersadvanced td::after,
    #sb_tunnels td::after,
    #sb_queue td::after {
        min-height: 14px;
    }
    #banlist li {
        font-size: 10pt;
        min-height: 38px !important;
    }
    .langbox {
        line-height: 120%;
        margin: 4px 2px 0 5px;
    }
    .langbox img {
        margin: -1px 0 2px 2px;
    }
    .th_title a {
        font-size: 11pt !important;
    }
    #logs font[color^="#"]::before {
        margin-right: 6px;
        margin-left: -15px;
        width: 7px;
        height: 7px;
    }
    .statlist li a[href^="graph"]::before,
    .statlist li::before {
        height: 6px;
        width: 6px;
    }
    button.control {
        padding: 14px !important;
    }
    #configstats td::before {
        min-height: 24px;
    }
    .newsAuthor {
        font-size: 9pt;
        background-size: 11px 11px;
        padding: 0 0 0 14px;
        background-position: left center !important;
    }
    .topness,
    .footnote {
        font-size: 9pt !important;
    }
    #ntcpconnections td:first-child,
    #udpconnections td:first-child {
        min-width: 58px;
    }
    .themechoice,
    .langselect {
        width: 140px !important;
    }
    #config_ui .themechoice .optbox,
    #config_ui .langselect .optbox,
    #config_ui .themechoice .optbox:hover,
    #config_ui .langselect .optbox:hover,
    #config_ui .themechoice .optbox:focus,
    #config_ui .langselect .optbox:focus {
        width: 144px !important;
    }
    #config_ui .themechoice .optbox {
        margin-left: -49px !important;
        min-height: 92px !important;
    }
    #config_ui .langselect .optbox,
    #config_ui .langselect .optbox:hover,
    #config_ui .langselect .optbox:focus {
        margin-left: -2px !important;
    }
    .tunnel_cap {
        margin-left: 10px;
        padding: 0 1px;
        min-width: 14px;
    }
    .tunnel_id:empty {
        margin-right: -10px;
    }
    _:-ms-lang(x),
    #browseronstart {
        margin-bottom: -15px !important;
    }
    _:-ms-lang(x),
    .tab,
    .tab2 {
        padding: 3px 6px 6px !important;
    }
}

@media screen and (-webkit-min-device-pixel-ratio:0) and (min-width: 1500px) {
    .routersummary div[style="height: 36px;"] {
        height: 38px !important;
    }
}

@media screen and (min-width: 1600px) {
    .tab,
    .tab2 {
        padding-left: 8px;
        padding-right: 8px;
    }
}


/* Edge/IE tweaks */

_:-ms-lang(x),
*,
*:hover,
*:focus,
input,
input:hover,
input:focus,
a:hover,
a:focus,
h1,
h2,
h3,
h4 {
    filter: none !important;
    text-shadow: none !important;
}

_:-ms-lang(x),
.tunnels_client th:first-child::after {
    letter-spacing: -0.05em;
    font-weight: normal;
}


/* end Edge/IE tweaks */


/* TO DO: Merge with main classes */

.optionlist {
    -moz-columns: 500px auto;
    -webkit-columns: 500px auto;
    columns: 500px auto;
    padding-bottom: 1px;
}

.optionlist label {
    min-width: 300px;
    break-inside: avoid;
    page-break-inside: avoid !important;
    -webkit-column-break-inside: avoid;
}

th.options {
    padding: 7px 5px !important;
}

textarea[name="reseedURL"] {
    height: 20px !important;
    max-height: 20px !important;
}

th.options {
    font-size: 9pt !important;
}

.options input[type="checkbox"] {
    margin: 0 3px 0 0;
}

#reseedconfig th label,
#i2pupdates th label {
    vertical-align: text-top;
}

#reseedconfig .nowrap b,
#externali2cp .nowrap b {
    display: inline-block;
    min-width: 120px;
    margin: 0 3px 0 5px;
    text-align: right;
}

#reseedconfig th[colspan="2"],
#i2pupdates th[colspan="2"] {
    padding: 8px;
    vertical-align: middle;
}

#reseedconfig th label,
#i2pupdates th label {
    margin-right: 10px;
}

#reseedconfig textarea,
#i2pupdates textarea {
    min-height: 76px !important;
    height: 76px !important;
    margin: 2px 6px 2px 3px !important;
    padding: 3px 5px;
}

#reseedconfig td {
    vertical-align: middle;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    #reseedconfig .optbox[type="radio"] {
        margin: 4px 4px 4px 15px !important;
    }
    #reseedconfig .optbox[type="checkbox"] {
        vertical-align: sub !important;
    }
    #manualreseed th:last-child,
    #manualreseed td:last-child {
        border-right: 1px solid #7778bf;
    }
}

#reseedconfig td:first-child label {
    min-width: 200px;
    white-space: nowrap;
    display: inline-block;
}

#resetreseed {
    padding: 15px 0 0;
}


/*
#externaltcp {
     padding: 0;
}


#netconfig .infowarn, #netconfig .infohelp, #config_reseed tr:first-child .infohelp, #manualpeercontrol tr:nth-last-child(2) .infohelp,
#bandwidthconfig tr:nth-last-child(2) .infohelp, #clientconf.infowarn, #externali2cp .infowarn, #advconf .infohelp {
     background-size: 22px 22px !important;
     background-position: 8px center;
     padding: 10px 10px 10px 37px !important;
}
*/


/* i2p version & environment */

#enviro,
.configtable,
#graphs table,
#netdb table {
    box-shadow: inset 0 0 4px 2px #eef;
    background: repeating-linear-gradient(135deg, rgba(248, 248, 255, 0.8) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px) #fff;
}

#enviro tr:first-child td {
    -moz-user-select: none !important;
    -webkit-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
}

@supports (text-justify: auto) {
    /* only Firefox 55 or newer */
    #enviro tr,
    .configtable tr,
    #pluginconfig table tr,
    #graphs tr,
    #netdb tr {
        background: linear-gradient(to bottom, rgba(248, 248, 255, 0.6) 50%, rgba(248, 248, 255, 0.2)) !important;
        box-shadow: inset 0 0 0 1px #fff;
    }
}

#sidebarconf tr:nth-child(odd),
.homelinkedit tr:nth-child(odd),
#clientconfig tr:nth-child(odd),
#netdb tr:nth-child(odd),
#webappconfig tr:nth-child(odd),
#configstats tr:nth-child(odd),
#pluginconfig table tr:nth-child(even),
#routerinfo tr {
    background: linear-gradient(to bottom, rgba(240, 240, 255, 0.6) 50%, rgba(240, 240, 255, 0.4)) !important;
}

#enviro:hover tr {
    box-shadow: none;
}

#enviro:hover b {
    color: #333337 !important;
}

#enviro td {
    padding-top: 4px;
    padding-bottom: 4px;
}

#enviro td:last-child b {
    margin-right: 1px;
}

#cputype {
    background: #557;
    padding: 2px 4px;
    margin: -1px 1px -1px 0;
    display: inline-block;
    font-weight: bold;
    border-radius: 2px;
    color: #fff;
    text-transform: uppercase;
}

#enviro:hover #cputype {
    background: none;
    color: #333337;
}


/* end i2p version & environment */

#webappconfig tr:last-child td,
#clientconfig tr:last-child td,
#tunnelconfig tr:last-child td {
    border-top: none !important;
}

.messages #newsDisplay,
.messages #newsStatus {
    padding: 0 !important;
}

.config_experimental:not(old) {
    font-size: 0;
}

.config_experimental::after {
    content: "";
    display: inline-block;
    background: url(/themes/console/images/info/experimental.png) right center no-repeat;
    background-size: 16px 16px;
    width: 16px;
    margin-bottom: -2px;
    height: 16px;
}

#manualreseed,
.formaction#consolepass {
    margin-bottom: 10px;
}

#themesettings,
#themeoptions {
    box-shadow: inset 0 0 0 1px #fff;
}

#themeoptions {
    margin-bottom: -1px;
    padding-bottom: 6px;
}


/* graphs */

.statimage {
    animation: fadein 1s ease-in;
    /* prevent white background flicker on refresh */
}

@keyframes fadein {
    from {
        background: #f7f7ff;
    }
    to {
        background: #fff;
    }
}

#graphs td:first-child {
    font-weight: normal;
    text-align: left;
    padding: 5px 0 0;
}

@media screen and (min-width: 1060px) {
    #graphs td:first-child {
        padding: 5px 0;
    }
}

#graphs td b {
    min-width: 150px;
    text-align: right;
    display: inline-block;
    margin-right: 5px;
}

#graphs .nowrap {
    line-height: 300%;
    display: inline-block;
}


/* end graphs */

#pluginconfigtext+form {
    float: right;
    margin: -38px 6px 0 0;
}

#pluginconfig table {
    border: 1px solid #bbf;
}

#manualreseed tr:last-child td.infohelp {
    background: #fafaff url(/themes/console/images/info/box.png) 12px center no-repeat;
    background: url(/themes/console/images/info/box.png) 12px center no-repeat, linear-gradient(to bottom, #fafaff 50%, rgba(220, 220, 255, 0.3)) repeat scroll 0 0%, rgba(0, 0, 0, 0) repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px);
    padding: 15px 15px 15px 50px;
    background-size: 28px 28px, 100% 100%;
}

#manualpeercontrol tr:nth-child(3) td.infohelp {
    background: #fafaff url(/themes/console/images/info/blocked.png) 12px center no-repeat;
    background: url(/themes/console/images/info/blocked.png) 12px center no-repeat, linear-gradient(to bottom, #fafaff 50%, rgba(220, 220, 255, 0.3)) repeat scroll 0 0%, rgba(0, 0, 0, 0) repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.5) 2px, rgba(221, 221, 255, 0.3) 3px, #fff 5px) !important;
    padding: 15px 15px 15px 50px !important;
    background-size: 28px 28px, 100% 100% !important;
}

#netconfig tr:nth-last-child(3) .optionlist {
    margin-bottom: -1px;
}

.netdb_addresses {
    line-height: 135%;
}

#leasesetsummary td {
    padding: 5px;
}

.buckets br+br {
    line-height: 5px;
}


/* chrome/blink overrides */

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    .main,
    table {
        background: #f6f6fa !important;
    }
    #help #sidebarhelp,
    #help #configurationhelp,
    #help pre,
    #help #faq,
    .debug_container {
        background: #f3f3ff !important;
    }
    #help #volunteer,
    #help #sidebarhelp,
    #help #configurationhelp,
    #help pre,
    #help #faq,
    #help #legal,
    #help #reachabilityhelp,
    .debug_container,
    #help #advancedsettings {
        background: #f8f8ff !important;
    }
    #help #volunteer {
        background: #f3f3ff !important;
        background-size: auto 80%;
    }
    #help tr:nth-child(odd),
    .main tr:nth-child(odd) {
        background: #f8f8ff !important;
    }
    .main tr,
    #themeoptions {
        box-shadow: none !important;
    }
    th.options .optbox {
        vertical-align: sub !important;
    }
}

* {
    forced-color-adjust: none;
    -ms-high-contrast-adjust: none;
    high-contrast-adjust: none;
}


/* end chrome overrides */
