/* I2P Theme: Classic */
/* I2P Description: Light blue "classic" I2P theme; optimized for less capable browsers and system specifications. */
/* Author: dr|z3d */

body {
     margin: 3px;
     padding: 0;
     text-align: left;
     background: #bbf url(images/bg.png) center center scroll;
     background-size: 120px 120px;
     color: #2c354f;
     font: 9pt/130% "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Lucida Grande", "DejaVu Sans", Verdana, Helvetica, sans-serif;
}

/* preload button mouseovers */
body {
     background: url(images/bg.png) scroll,
     url(/themes/console/images/buttons/clean_hover.png) no-repeat,
     url(/themes/console/images/buttons/configure_hover.png) no-repeat,
     url(/themes/console/images/buttons/delete_hover.png) no-repeat,
     url(/themes/console/images/buttons/restart_hover.png) no-repeat,
     url(/themes/console/images/buttons/restore_hover.png) no-repeat,
     url(/themes/console/images/buttons/search_hover.png) no-repeat,
     url(/themes/console/images/buttons/shutdown_hover.png) no-repeat,
     url(/themes/console/images/buttons/update_hover.png) no-repeat, #bbf;
     background-size: 120px 120px, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0;
}

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

::selection {
     text-shadow: none;
     background: #4a90d9;
     color: white;
}

::-moz-selection {
     text-shadow: none;
     background: #4a90d9;
     color: white;
}

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

.hide, .hideme {
     display: none;
}

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

img {
     border: none;
}

/* Sidepanel for proxy errors */

.logo {
     float: left;
     position: relative;
     width: 200px;
     margin: 0 0 0 20px;
     padding: 10px 5px 8px;
     text-align: center;;
     border: 5px solid #ddf;
     background: #eff1ff;
}

.logo {
     background: url(/themes/console/classic/images/i2plogo.png) center 12px no-repeat #eff1ff !important;
     background-size: 90% auto !important;
     background-blend-mode: luminosity;
}

.logo:hover {
     background-blend-mode: normal;
}

.logo a img, .logo a:first-child:hover {
     opacity: 0;
     background: none !important;
}

.logo hr {
     color: #ddf;
     background: #ddf;
     height: 5px;
     border: 0 solid #ddf;
     margin: 8px -5px 8px;
}

.logo a {
     display: inline-block;
     padding: 4px 0;
     width: 100%;
}

.logo a:active {
     color: #f60;
     box-shadow: inset 0 0 0 1px #fff, inset 3px 3px 3px #999 !important;
}

.logo a:hover {
     color: #900;
     background: rgba(220,220,255,0.5);
     box-shadow: inset 0 0 0 1px #fff;
     border-radius: 3px;
}

/* HTTP Proxy warning Main box */

.warning {
     margin: 25px 20px 0 260px;
     padding: 0 20px 40px;
     border: 5px solid #fb7;
     text-align: left;
     color: inherit;
     background: #ffd;
     box-shadow: inset 0 0 0 2px #f60;
     min-width: 500px;
}

.warning a:link {
     color: #f60 !important;
}

.warning a:visited {
     color: #f40 !important;
}

.warning a:hover, .warning a:focus, .warning a:visited:focus {
     color: #d30 !important;
}

.warning a:active {
     color: #900 !important;
}

.warning hr {
     color: #fb7;
     background: #fb7;
     height: 1px;
     border: 0 solid #fb7;
     margin: 5px 0;
}

#jumplinks {
     margin-bottom: -22px;
}

#jumplinks h3 {
     border: 0;
     border-top: 1px solid #fb7;
     border-bottom: 1px solid #fb7;
     padding-bottom: 10px;
     background: #ffe !important;
     padding-left: 15px;
     font-size: 10.5pt;
     margin-top: 20px;
}

.warning h3:first-child {
     margin: 2px -18px 10px -18px;
     padding: 10px 10px 8px 35px;
     background: #ffe !important;
     background: #ffe url(/themes/console/images/itoopie_sm.png) 8px center no-repeat !important;
     background-size: auto 75% !important;
     background-position: 8px calc(50% + 2px) !important;
     border: none;
     border-bottom: 1px solid #fb7;
     text-transform: uppercase;
     letter-spacing: 0.08em;
     word-spacing: 0.1em;
     font-size: 12pt;
}

.warning p {
     padding: 5px 0 0;
}

.warning > br + br {
     display: none;
}

.warning textarea {
     width: 100%;
     resize: none;
     white-space: pre-wrap;
     word-break: break-all;
     height: 100% !important;
     font-size: 8pt;
     border: none;
}

.warning .formaction {
     background: none !important;
}

.warning button {
     margin-right: 0;
}

.warning table {
     margin-bottom: 15px;
     border: 1px solid #fb7;
}

.warning tr {
     background: #ffe !important;
     border: 1px solid #fb7;
}

.warning tr:last-child {
     background: #fff !important;
     height: 80px;
     white-space: nowrap;
}

.warning table td:first-child {
     font-weight: bold;
     vertical-align: top;
}

#jumplinks a::before {
     content: "\279F\00A0";
     font-size: 14pt;
     display: inline-block;
     padding: 3px 0;
}

.proxyfooter {
     font-size: 8pt;
     padding: 0 5px 5px;
     margin: -50px 8px 0 260px;
     min-width: 600px;
}

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

#proxyNewAddressHelper .proxyfooter {
     display: none;
}

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

#proxyNewHost {
     margin-bottom: 15px;
}

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

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

#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;
}

.warning h4 {
     box-shadow: none !important;
     text-align: left;
     font-size: 10pt;
     margin: 0 -18px -5px;
     background: #ffe;
     border: 1px solid #fb7;
     border-left: none;
     border-right: none;
     padding: 8px 10px;
}

#jumplinks h4 {
     margin: 15px -18px 8px;
}

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

.warning p + .formaction {
     margin: -5px -5px 10px 0;
     padding: 0;
}

/* end proxy errors */

/* console error messages */

img[src="/themes/console/images/i2plogo.png"] {
     box-shadow: none !important;
}

.sorry {
     padding: 20px 20px 20px 75px;
     background: #fff url(/themes/console/images/info/errortriangle.png) 20px 40% no-repeat;
     background: url(/themes/console/images/info/errortriangle.png) 20px 40% no-repeat, linear-gradient(to bottom, #fff, #ffe);
     margin: -1px 0 0 211px;
     min-width: 475px;
     border: 1px solid #89f;
     box-shadow: inset 0 0 0 1px #ff9;
     text-align: justify;
     word-wrap: break-word;
     font-weight: bold;
     color: #351d02;
}

.sorry hr {
     color: #89f;
     background: #8c4d16;
     height: 1px;
     border: 0 solid #89f;
     margin: 10px 0;
}

.sorry p {
    padding: 0 !important;
}

#warning2 {
     min-width: 540px;
     background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.2)) repeat scroll 0 0 / 100% 100%, rgba(0, 0, 0, 0) url(images/bg0.png) repeat scroll 0 0 / 120px 120px;
     margin-top: -15px;
     padding: 0 15px 5px;
     box-shadow: inset 0 0 0 1px #f99;
     font-weight: normal;
     color: #2c354f;
}

#warning2 h3 {
     margin: -1px -16px 15px;
     color: #2c354f;
     box-shadow: inset 0 0 0 1px #f99;
     padding: 8px 10px;
}

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

#warning2 p {
     margin-left: 10px;
     margin-right: 10px;
}

/* sidebar */

.routersummaryouter {
     float: left;
     width: 193px;
     margin: 0;
     padding: 0;
     border: 0;
     clear: left; /* fixes a bug in Opera */
     position: absolute; /* so no interference with /home app icons */
}

.routersummary {
     background: #eef url(images/bg0.png);
     background: linear-gradient(to bottom, rgba(255,255,255,0.8), rgba(255,255,255,0.2)), url(images/bg0.png);
     background-size: 100% 100%, 120px 120px;
     width: 204px;
     color: inherit;
     margin: 0 0 5px;
     padding: 9px 1px 7px 1px;
     text-align: center !important;
     border: 1px solid #89f;
     word-wrap: break-word;
     font-size: 9pt;
     line-height: 125%;
}

/* siderbar logo */

.routersummary div[style="height: 36px;"] {
     height: 32px !important;
}

.routersummary img[src$="i2plogo.png"] {
     width: 190px;
     height: auto;
     box-shadow: 0 0 1px 1px rgba(180,180,180,0.7);
     -moz-user-select: none;
     -webkit-user-select: none;
     user-select: none;
}

.routersummary a img:first-child {
     opacity: 0.8;
     border: none;
}

.routersummary a img:first-child:hover, .routersummary a img:first-child:active {
     opacity: 1;
     filter: drop-shadow(0 0 1px #f60);
     box-shadow: none;
}

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

.routersummary a[href="/"]:focus img, .routersummary a[href="/console"]:focus img {
     filter: drop-shadow(0 0 1px #f60) saturate(200%);
}

/* end siderbar logo */

.routersummary a {
     padding: 2px;
     vertical-align: middle;
}

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

.routersummary button[type="submit"] {
     min-width: 87px;
     margin: 2px 2px 1px;
}

#xhr {
     margin-top: 15px;
}

.routersummary hr {
     color: #89f;
     background: #89f;
     height: 0;
     border-bottom: 1px solid #89f;
     margin: 8px -1px 7px -1px;
}

.routersummary b {
     text-transform: capitalize;
}

.routersummary h3 {
     border: none;
     font-size: 9.5pt;
     letter-spacing: 0.05em;
     margin: -7px -1px -8px -1px;
     padding: 3px 0;
     background: #fff url(images/tinytitle.png) center center repeat;
     background: linear-gradient(to bottom, #fff 50%, #eff2ff 50%) !important;
     text-transform: uppercase;
}

.routersummary h3:hover {
     background: linear-gradient(to bottom, #fff 50%, #ffd 50%) !important;
}

.routersummary h3:hover a {
     color: #f60 !important;
}

.routersummary h3:active {
     box-shadow: inset 2px 2px 2px #777;
}

.routersummary h3:active a {
     color: #f90 !important;
}

.routersummary h4 {
     border: 0;
     border-bottom: 0 !important;
     font-size: 8.5pt;
/*     letter-spacing: 0.05em;*/
     margin: -7px -1px -7px -1px !important;
     padding: 8px 2px;
     text-transform: capitalize;
     text-decoration: none !important;
     color: #1f7096;
     line-height: 108%;
     background: #fff url(images/bg2.png);
     background: linear-gradient(to right, #eff2ff 0%, #fff 50%, #eff2ff);
     box-shadow: inset 0 0 2px 1px #f2f7fa;
}

.routersummary h3 a {
     text-decoration: none;
     white-space: normal;
     display: inline-block;
     width: 100%;
     width: calc(100% - 5px);
}

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

.routersummary table {
     table-layout: fixed;
     border: 0;
     text-align: center !important;
     margin: -5px 0 -5px 0;
     width: 204px !important;
     overflow: hidden;
     font-size: 8pt;
     padding: 0;
     background-image: none !important;
     background-color: transparent !important;
}

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

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

#sb_general, #sb_shortgeneral, #sb_advancedgeneral, #sb_bandwidth, #sb_peers, #sb_peersadvanced, #sb_tunnels, #sb_queue {
     margin-bottom: -5px !important;
     margin-top: -6px !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 {
   content: "";
   display: inline-block;
   min-height: 14px;
}

#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 {
     white-space: nowrap;
}

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

#sb_peersadvanced a {
     padding: 0;
}

#sb_peersadvanced a b {
     color: #2c354f;
}

#sb_peersadvanced a:hover b {
     color: #f60;
}

#sb_peersadvanced .separator td::after {
     min-height: 0;
}

#sb_peersadvanced .separator hr {
     margin: 3px 0 2px !important;
     color: transparent;
     background: transparent;
     border-bottom: 1px dashed #89f;
}

#sb_localid {
     margin: -3px 0 -1px;
}

#sb_version {
     margin: -1px 0;
}

#sb_uptime {
     margin: -1px 0 -3px;
}

#sb_internals, #sb_services, #sb_advanced, #sb_help {
     margin-top: -3px !important;
}

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

#sb_localtunnels {
     margin: -6px -2px -7px 0 !important;
     text-align: center !important;
     width: 196px;
     box-sizing: border-box;
}

#sb_localtunnels td {
     padding: 1px !important;
}

#sb_localtunnels tr:nth-child(odd) td {
     background: rgba(220,220,255,0.5);
}

#sb_localtunnels tr:nth-child(even) td {
     background: rgba(230,230,255,0.5);
}

#sb_localtunnels tr:hover td {
     background: #ffe !important;
     transition: ease background 0.3s;
}

#sb_localtunnels a {
     text-transform: none;
     display: inline-block;
     width: 100%;
     max-width: 180px;
     overflow: hidden;
     text-overflow: ellipsis;
     white-space: nowrap;
}

#sb_localtunnels td:first-child {
     width: 12px !important;
     padding-right: 0;
     text-align: left;
}

#sb_localtunnels td:nth-child(2) {
     width: 156px;
}

#sb_localtunnels td:last-child {
     width: 12px;
     text-align: right;
     padding-right: 2px !important;
}

#sb_warning {
     border-bottom: 1px solid #89f !important;
}

#sb_warning + hr {
     margin-bottom: 5px;
}

.sb_notice {
     background: #fff;
     border: 1px solid #89f;
     border-radius: 2px;
     box-shadow: 0 0 1px #bbb, inset 0 0 0 1px #fbb;
     margin: -4px 2px -5px;
     padding: 6px 5px;
     line-height: 110%;
     font-size: 8pt;
}

.sb_notice a {
     vertical-align: baseline;
     padding: 0;
}

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

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

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

#sb_warning + hr {
    opacity: 0;
}

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

#sb_warning + p:empty + form {
     margin-top: 10px;
     margin-bottom: -3px;
}

/* sidebar news */

.sb_newsheadings {
     text-align: right;
     margin: -1px 5px -5px 0;
     margin: -3px 0 -7px 0;
     padding: 0;
     font-size: 8pt;
}

.sb_newsheadings table {
     margin: -6px 0 2px !important;
     width: 100%;
     table-layout: auto;
     background: #fff;
}

.sb_newsheadings td {
     text-align: left;
     border: none;
     padding: 5px 3px;
     border-collapse: collapse;
     border-bottom: 1px solid #fff !important;
     line-height: 100%;
}

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

.sb_newsheadings td {
     background: #eff2ff;
     padding-left: 20px;
     padding-right: 8px;
     text-align: left;
     background: url(images/link.png) 4px 4px no-repeat !important;
     background-size: 12px auto !important;
     background-blend-mode: luminosity;
     vertical-align: middle !important;
     transition: ease background 0.2s;
     word-spacing: 0.1em;
}

.sb_newsheadings tr:hover td {
     background: url(images/link.png) 4px 4px no-repeat #ffd !important;
     background-size: 12px auto !important;
     background-blend-mode: normal;
     transition: ease background 0.2s;
}

.sb_newsheadings td a {
     line-height: 110%;
     display: inline-block;
     margin: 0;
     padding: 0;
     width: 100%;
}

/* end sidebar news */

div.refresh {
     margin-top: 10px !important;
     margin-bottom: 10px !important;
     padding: 2px 0 !important;
}

.routersummary p {
     padding: 0;
}

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

/* network status */

.routersummary .error, .routersummary .warn, .routersummary .testing, .routersummary .hidden,
.routersummary .running, .routersummary .firewalled, .routersummary .vmcomm, .routersummary .clockskew, .tunnelBuildStatus {
     display: inline-block;
     vertical-align: middle;
     border: 1px solid #88f;
     border-radius: 2px;
     padding: 6px 5px;
     width: calc(100% - 12px);
     margin: -6px 0 -7px;
     box-shadow: inset 0 0 0 1px #fff, 0 0 1px rgba(96,96,96,0.5);
     text-shadow: 0 1px 1px #fff;
}

.routersummary .firewalled {
     background: rgba(255,220,255,0.3);
     background: repeating-linear-gradient(135deg, rgba(220,255,220,0.3) 2px, rgba(255,255,220,0.3) 3px, rgba(220,255,220,0.3) 5px);
}

.routersummary .error {
     background: rgba(255,110,110,0.1);
     box-shadow: inset 0 0 0 1px rgba(255,0,0,0.3), 0 0 1px rgba(96,96,96,0.5);
}

.routersummary .warn, .routersummary .clockskew {
     background: rgba(255,255,200,0.4);
     box-shadow: inset 0 0 0 1px #ff0, 0 0 1px rgba(96,96,96,0.5);
}

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

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

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

.routersummary .error::before, .routersummary .warn::before, .routersummary .testing::before, .routersummary .hidden::before,
.routersummary .running::before, .routersummary .firewalled::before, .routersummary .vmcomm::before, .routersummary .clockskew::before {
     padding-right: 1px;
     vertical-align: middle;
     display: inline-block;
     filter: drop-shadow(0 0 1px rgba(96,96,96,0.5));
     transform: scale(0.9);
}

.routersummary .error::before, .routersummary .clockskew::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);
     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 */

/* mini sidebar graph */

#sb_bandwidthgraph {
     width: 202px !important;
     margin: 0;
     margin: -20px 0 0 0;
     border-collapse: separate;
     border-spacing: 0;
     padding: 0;
     border: 1px solid #89f;
     border-radius: 2px;
     box-shadow: 0 0 1px #ccf;
}

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

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

#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: 38px;
     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;
     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 -35px !important;
     background-position: left -60px top -29px !important;
     background-size: 280px 92px !important;
     background-size: 280px 77px !important;
     background-repeat: no-repeat !important;
     background-blend-mode: multiply;
     margin: 0 2px -21px 1px !important;
     padding: 0 5px 0 0;
}

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

#sb_graphcontainer {
     background-size: 300px 77px !important;
}
}
/* end mini sidebar graph */

/* status bars */

.percentBarOuter {
     width: 196px;
     margin: -4px 0 -5px 3px;
     text-align: center;
     border: 1px solid #99f;
     box-shadow: 0 0 1px rgba(200,200,200,0.8);
     background: #eef;
     background: 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: 210px;
}
}

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

.percentBarText {
     display: inline !important;
     white-space: nowrap;
     text-align: center !important;
     font-weight: bold !important;
     color: #2c354f;
     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;
}

/* updates download bar */

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

.sb_info .percentBarOuter {
     margin: 3px -4px -5px 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 infinite;
}

.sb_info .percentBarInner {
     height: 16px;
     background: linear-gradient(to bottom, rgba(255, 255, 255,0.6) 0%, rgba(238, 238, 255, 0.6) 50%, rgba(180, 180, 255, 0.7) 50%, rgba(140, 140, 255, 0.7) 100%);

}

.sb_info .percentBarText {
     opacity: 1;
     padding-top: 2px;
     mix-blend-mode: multiply;
     color: #33f;

}
/* end updates download bar */
/* end status bars */

/* end sidebar */

/* welcome */

div[lang="es"] li, div[lang="pt"] li, div[lang="sv"] li, div[lang="zh"] li {
     list-style: none;
}

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

div[lang="ar"] li {
     margin: 0 10px 0 30px;
}

div[lang="ar"] h3, div[lang="ar"] li {
     text-align: right;
}

div[lang="de"] .twocol {
     margin-left: 50px !important;
     margin-top: -8px !important;
}

div[lang="sv"] .twocol {
     margin-top: 2px !important;
}

div[lang="es"] li {
    list-style-type: none;
    margin-left: -10px;
}

div[lang="es"] .twocol {
     background: #eff2ff;
     border-radius: 1px;
     box-shadow: 0 0 0 1px #bbf;
     padding: 5px 0 8px 48px;
     margin-top: 15px !important;
}

div[lang="es"] .twocol:not(old) {
     margin-left: 0 !important;
     margin-right: 0 !important;
}

div[lang="pt"] li br {
     display: none;
}

#console .links {
     margin-left: 0;
}

#console li:first-child {
     padding-top: 10px;
}

#console li {
     line-height: 140%;
     text-align: justify;
}

.langbox {
     margin: 3.5px 2px 0;
     color: #001;
     font-size: 7pt;
     width: 380px;
     text-align: right;
     float: right;
     padding: 1px;
     overflow: hidden;
}

.langbox img {
     padding: 0 !important;
     margin: 0 1px -1px;
     opacity: 0.9;
     border: 1px solid #bbf;
     transform: none !important;
}

.langbox img:hover, .langbox a:focus img {
     opacity: 1;
     transform: scale(1.1) !important;
}

.langbox img:hover:active {
     transform: none !important;
}

.links {
     padding-bottom: 0;
     text-align: justify;
     margin-top: 5px !important;
}

.links li {
     list-style-image: url(images/link.png) !important;
     padding: 5px 10px 0 !important;
}

.links:not(old) {
     margin-left: -15px !important;
     margin-right: -15px !important;
}

.links li:not(old) {
     list-style: url(/themes/console/images/transparent.gif) !important;
     list-style-position: outside;
     padding: 5px 10px 0 !important;
}

.links li::before {
     content: "";
     display: inline-block;
     width: 16px;
     height: 18px;
     background: url(images/link.png) left top 4px no-repeat !important;
     background-size: 14px 14px !important;
     margin-right: 4px;
     margin-left: -20px;
}

div[lang="ar"] .links li::before {
     background-position: right top 4px !important;
     margin-right: -20px;
     margin-left: 4px;
}

.links li:first-child {
     padding: 15px 10px 5px !important;
}

.links li:last-child {
     margin-bottom: 0 !important;
     margin-top: 0;
}

.links b {
     font-size: 10pt;
     line-height: 150%;
     letter-spacing: 0.02em;
}

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

p + .twocol {
     margin: 10px 30px !important;
}

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

@media screen and (-webkit-min-device-pixel-ratio:0) {
#console .twocol {
     margin-left: -20px !important;
}

#console div[lang="de"] .twocol {
     margin-left: 30px !important;
}

#console div[lang="es"] .twocol {
     margin-left: 0 !important;
}

.twocol li {
     margin-left: 20px;
}
}

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

.main#console p {
     padding-top: 0;
     padding-bottom: 0;
}

/* end welcome */

a:link {
     color: #33a;
     text-decoration: none;
     font-weight: bold;
     word-wrap: break-word;
}

a:visited, #graphopts a, #graphopts a:visited, .tab a, .tab a:visited {
     color: #448 !important;
     text-decoration: none;
     font-weight: bold;
}

a:hover, a:visited:hover, a:focus, a:visited:focus {
     color: #f60 !important;
     text-decoration: none;
     font-weight: bold;
     outline: none;
}

a:active, a:visited:active {
     color: #f93 !important;
     text-decoration: none;
     font-weight: bold;
}

a.script {
     letter-spacing: normal;
     word-spacing: normal;
}

pre {
     margin: 0 20px;
     overflow: auto;
     font-size: 8.5pt;
     width: 95%;
     padding-top: 10px;
}

tt, code {
     font: bold 8.5pt "Droid Sans Mono", "Andale Mono", "DejaVu Sans Mono", "Lucida Console", monospace !important;
     color: darkgreen;
}

/* buttons & inputs */

select {
     -moz-appearance: none;
     -webkit-appearance: none;
     appearance: none;
     background: url(images/dropdown.png) right center no-repeat #eee;
     background: url(images/dropdown.png) right center no-repeat, linear-gradient(to bottom, #fff, #ddd);
     margin: 3px 5px;
     vertical-align: middle;
     min-width: 160px;
     border-radius: 2px;
     border: 1px solid #bbb;
     box-shadow: inset 0 0 0 1px #fff;
     padding: 4px 16px 4px 4px;
     text-overflow: ellipsis;
     color: #333;
     cursor: pointer;
}

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

select option {
     background: #fff;
}

select:hover, select:active {
     background: #ddd url(images/dropdown_hover.png) right center no-repeat !important;
     background: url(images/dropdown_hover.png) right center no-repeat, linear-gradient(to bottom, #ddd 0%, #fff 100%) !important;
}

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

select:focus {
     color: #000;
}

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

select[name="newlogclass"] {
     width: 80%;
     width: calc(100% - 180px);
     margin-right: 0;
}

select[name="newlogclass"] {
     margin-right: 0;
}

.optbox {
     vertical-align: middle;
     margin-right: 0;
}

.homelinkedit .optbox {
     margin: 0;
}

#config_homepage .delete {
     float: left !important;
     margin-left: 5px;
}

input {
     margin: 3px 5px 3px 0;
}

input[type="radio"], input[type="checkbox"] {
     min-width: 16px !important;
     min-height: 16px !important;
     vertical-align: sub;
     background: none;
     margin: 6px;
}

input[type="radio"]:hover, input[type="radio"]:focus, input[type="checkbox"]:hover, input[type="checkbox"]:focus {
     filter: drop-shadow(0 0 2px #89f);
     box-shadow: inset 0 0 1px 2px #89f;
     outline: none;
}

input[type="checkbox"][disabled]:hover, input[type="radio"][disabled]:hover,
input[type="checkbox"][disabled]:focus, input[type="radio"][disabled]:focus {
     box-shadow: none;
     filter: none;
}

label {
     cursor: pointer;
}

label:hover {
     color: #03050f;
}

label[for="0"] {
     cursor: default;
     color: #2c354f;
}

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

input[type="file"] {
     margin: 3px 5px;
     background: none;
}

input[type="text"], input[type="password"] {
     margin: 3px 5px 3px 5px;
     vertical-align: middle;
     min-width: 160px;
     border: 1px solid #bbb;
     box-shadow: inset 1px 1px 1px #ddd;
     border-radius: 2px;
     padding: 4px;
     color: #333;
     background-color: #fefefe;
}

input[type="text"]:focus, input[type="password"]:focus {
     box-shadow: inset 0 0 0 1px #89f, 0 0 1px rgba(136, 153, 255, 0.4);
     color: #000;
}

input[type="text"][readonly], input[type="text"][readonly]:focus {
     background: #efefef;
     box-shadow: inset 1px 1px 1px #ddd;
     color: #333;
}

button, input, select {
     background-color: #eee;
     font: 9pt/130% "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Lucida Grande", "DejaVu Sans", Verdana, Helvetica, sans-serif;
     color: #333;
}

button:hover, input[type="submit"]:hover, input[type="reset"]:hover {
     background-color: #ddd;
     background: linear-gradient(to bottom, #ddd, #fff);
}

button:active, input[type="submit"]:active, input[type="reset"]:active {
     background-color: #fff;
}

input.search[type="text"] {
     background: #fff url(/themes/console/images/buttons/search.png) no-repeat 2px center;
     padding: 3px 3px 3px 24px;
     min-height: 22px;
     border: 1px solid #bbb;
     color: #333 !important;
}

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

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

/* accessibility tweak - colors rather than focus rings where possible */

.optbox:hover, .optbox:focus, input[type="checkbox"]:hover, input[type="checkbox"]:focus {
     filter: drop-shadow(0 0 2px #89f);
     box-shadow: 0 0 0 1px #89f;
     border: 0;
     outline: none;
}

.optbox:disabled:hover, input:disabled:hover {
     filter: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
     outline: none;
     border: none;
}

/* end accessibility */

/* 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;
}

/* end confignet tidyup */

/* graphical buttons */

input[type="submit"], input[type="reset"], button {
     border: 1px solid #999;
     box-shadow: inset 0 0 0 1px #fff, 0 0 1px #ddd;
     background: #eee;
     background: linear-gradient(to bottom, #fff, #ddd);
     color: #333;
     margin: 3px 8px 3px 0;
     font: 9pt "Droid Sans", Ubuntu, "Noto Sans", "Segoe UI", "Lucida Grande", Verdana, Helvetica, sans-serif;
     padding: 4px 5px;
     text-decoration: none;
     border-radius: 2px;
     opacity: 1;
     background-size: 14px auto, 100% 100% !important;
}

button:hover, input[type="submit"]:hover, input[type="reset"]:hover, button:focus, input[type="submit"]:focus, input[type="reset"]:focus {
     background: #ddd;
     background: linear-gradient(to bottom, #ddd, #fff);
     border: 1px solid #89f;
     color: #222;
     box-shadow: inset 0 0 0 1px #fff, 0 0 1px #89f;
}

button:active, input[type="submit"]:active, input[type="reset"]:active {
     border: 1px solid #999;
     box-shadow: inset 0 0 0 1px #fff, inset 3px 3px 3px 1px #555;
     background-color: #ddd;
     background-blend-mode: luminosity;
     color: #555;
}

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

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

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

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

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

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

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

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

input.add, button.add {
     background: #eee url(/themes/console/images/buttons/add.png) no-repeat 7px center;
     background: url(/themes/console/images/buttons/add.png) no-repeat 7px center, linear-gradient(to bottom, #fff, #ddd);
     padding: 5px 7px 5px 23px;
}

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

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

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

input.cancel, button.cancel {
     background: #eee url(/themes/console/images/buttons/no.png) no-repeat 7px center;
     background: url(/themes/console/images/buttons/no.png) no-repeat 7px center, linear-gradient(to bottom, #fff, #ddd);
     padding: 5px 7px 5px 23px;
}

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

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

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: #fff url(/themes/console/images/buttons/show.png) no-repeat 7px center;
     background: url(/themes/console/images/buttons/show.png) no-repeat 7px center, linear-gradient(to bottom, #ddd, #fff);
}

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

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: #fff url(/themes/console/images/buttons/hide.png) no-repeat 7px center;
     background: url(/themes/console/images/buttons/hide.png) no-repeat 7px center, linear-gradient(to bottom, #ddd, #fff);
}

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

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

input.check[value$="updates"], button.check[value$="updates"] {
     background: #eee url(/themes/console/images/buttons/update.png) no-repeat 7px center;
     background: url(/themes/console/images/buttons/update.png) no-repeat 7px center, linear-gradient(to bottom, #fff, #ddd);
     padding: 5px 7px 5px 23px;
}

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

input.delete, button.delete {
     background: #eee url(/themes/console/images/buttons/delete.png) no-repeat 7px center;
     background: url(/themes/console/images/buttons/delete.png) no-repeat 7px center, linear-gradient(to bottom, #fff, #ddd);
     padding: 5px 7px 5px 23px;
}

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

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

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

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

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

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

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

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

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: #fff url(/themes/console/images/buttons/from-file.png) no-repeat 7px center;
     background: url(/themes/console/images/buttons/from-file.png) no-repeat 7px center, linear-gradient(to bottom, #ddd, #fff);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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: #fff url(/themes/console/images/buttons/clean_hover.png) no-repeat 7px center;
     background: url(/themes/console/images/buttons/clean_hover.png) no-repeat 7px center, linear-gradient(to bottom, #ddd, #fff);
}

input.stop, button.stop {
     background: #eee url(/themes/console/images/buttons/shutdown.png) no-repeat 7px 6px;
     background: url(/themes/console/images/buttons/shutdown.png) no-repeat 7px 6px, linear-gradient(to bottom, #fff, #ddd);
     padding: 5px 7px 5px 23px;
}

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

button.search {
     background: #eee url(/themes/console/images/buttons/search.png) no-repeat 7px 6px;
     background: url(/themes/console/images/buttons/search.png) no-repeat 7px 6px, linear-gradient(to bottom, #fff, #ddd);
     padding: 5px 7px 5px 25px;
}

button.search:hover,
button.search:focus {
     background: #fff url(/themes/console/images/buttons/search_hover.png) no-repeat 7px 6px;
     background: url(/themes/console/images/buttons/search_hover.png) no-repeat 7px 6px, linear-gradient(to bottom, #ddd, #fff);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* end project "X" */

/* sidebar buttons */

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

.routersummary .reload, .routersummary .stop {
     min-width: 92px !important;
     text-indent: -99999px;
     background-size: 16px 16px, 100% 100% !important;
}

.routersummary .reload {
     background: #eee url(/themes/console/images/buttons/restart.png) center center no-repeat !important;
     background: url(/themes/console/images/buttons/restart.png) center center no-repeat, linear-gradient(to bottom, #fff 0%, #ddd 100%) !important;
}

.routersummary .reload:hover, .routersummary .reload:focus {
     background: #ddd url(/themes/console/images/buttons/restart_hover.png) center center no-repeat !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, #ddd 0%, #fff 100%) !important;
     border: 1px solid #89f;
}

.routersummary .reload:active, .routersummary .stop:active, .routersummary .download:active {
     box-shadow: inset 0 0 0 1px #fff, inset 3px 3px 3px 1px #555;
     border: 1px solid #999 !important;
}

.routersummary .stop {
     background: #eee url(/themes/console/images/buttons/shutdown.png) center center no-repeat;
     background: url(/themes/console/images/buttons/shutdown.png) center center no-repeat, linear-gradient(to bottom, #fff, #ddd);
}

.routersummary .stop:hover, .routersummary .stop:focus {
     background: url(/themes/console/images/buttons/shutdown_hover.png) center center no-repeat, linear-gradient(to bottom, #ddd, #fff);
     border: 1px solid #89f;
}

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

.routersummary .reload[value="restartImmediate"], .routersummary .stop[value="shutdownImmediate"], .routersummary .reload[value="Reseed"] {
     text-indent: 0;
     text-align: left;
     min-width: 0 !important;
     padding: 5px 7px 5px 23px !important;
     text-transform: capitalize;
}

.routersummary .cancel {
     text-transform: capitalize;
}

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

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

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

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

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

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

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

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

/* end sidebar buttons */
/* end buttons & inputs */

.main {
     margin: 0 0 0 211px;
     padding: 15px 15px 10px 15px;
     border: 1px solid #89f;
     border-top: 0;
     text-align: left;
     color: #2c354f;
     min-width: 540px;
     background: #eef;
     background: #eef url(/themes/snark/ubergine/images/hat.png) no-repeat scroll right bottom !important;
     background: url(/themes/snark/ubergine/images/hat.png) no-repeat scroll right bottom, url(images/bg0.png) repeat scroll top left !important;
     background: url(/themes/snark/ubergine/images/hat.png) no-repeat scroll right -3px bottom -5px, linear-gradient(to bottom, rgba(255,255,255,0.8), rgba(255,255,255,0.1)) top -1px center, url(images/bg0.png) top -3px center !important;
     background-size: auto 180px, 100% 100%, 120px 120px !important;
     box-shadow: inset 0 0 0 1px #e8e8f5;
}

.main#news h3 {
     padding: 3px 0;
     font-size: 10pt;
     border: none;
     border-bottom: 1px solid #bfc9ff;
     background: none;
}

.main#news p {
     padding: 0 10px;
}

.main ul {
     margin: -10px 0 10px -10px;
}

.main li {
     padding: 0 0 5px 0;
     list-style: square;
     word-wrap: break-word;
     margin-right: 20px;
}

.main li:first-child {
     padding-top: 15px;
}

.links li b {
     color: #1f7096 !important;
}

.main hr:last-child {
     margin: 15px 0 10px 0;
}

.main textarea {
     width: 98%;
     width: calc(100% - 5px);
     margin: 2px 0 2px 5px;
     min-height: 96px;
     resize: none;
     box-shadow: inset 1px 1px 1px #ddd;
     border: 1px solid #bbb;
     border-radius: 2px;
     padding: 3px 4px;
     color: #333;
}

.main textarea:focus {
     box-shadow: inset 0 0 0 1px #89f;
     box-shadow: inset 0 0 0 1px #89f, 0 0 1px rgba(136, 153, 255, 0.4);
     color: #000;
}

.main h2 {
     margin-bottom: 10px !important;
}

.main#home .welcome h2 {
     margin: -9px -10px -8px;
}

.main#home .langbox {
     margin-right: -7px;
}

div.welcome {
     margin-top: 0;
}

.welcome + div .tidylist {
     line-height: 150% !important;
}

.main#dns, .main#webmail, .main#torrents {
     padding: 0 !important;
     min-width: 570px;
}

.main#dns {
     background: linear-gradient(to bottom, rgba(255,255,255,0.8), rgba(255,255,255,0.8)), url(images/bg0.png) !important;
}

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

#help {
     background: linear-gradient(to bottom, rgba(255,255,255,0.8), rgba(255,255,255,0.1)), url(images/bg0.png) !important;
}

.welcome h2 {
     margin-top: 0;
}

.main h2:first-child, .main h3:first-child {
     margin-top: 0;
}

.topness {
     text-align: right;
     font-size: 8pt;
}

div.wideload h2 {
     margin-bottom: 0 !important;
}

div.wideload h3 {
     margin-top: 15px !important;
     margin-bottom: 0 !important;
}

div.wideload p {
     margin-top: 5px !important;
}

div.news {
     margin: -1px 0 0 211px;
     background: #f9f9ea url(images/bg1.png);
     background: linear-gradient(to bottom, rgba(255,255,255,0.6), rgba(255,255,255,0.5)), url(images/bg1.png) #efefe0;
     background-size: 100% 100%, 120px 120px;
     border: 1px solid #89f;
     border-bottom: 1px solid #89f;
     border-right: 1px solid #89f;
     text-align: right;
     color: #331e0c;
     min-width: 540px;
     padding: 3px 10px 3px 10px;
     font-size: 8pt;
}

/* convert the list entry to our title */

div.news li {
     text-align: justify;
     list-style: none;
     margin: 15px 15px -10px -20px;
     border-bottom: 2px dotted #331e0c;
     border-top: 0 solid #331e0c;
     padding: 3px 5px 5px 0;
     font-size: 10pt;
     color: #331e0c;
     text-transform: capitalize;
}

div.news h3 {
     text-align: left;
     border: none !important;
     border-bottom: 1px dotted !important;
     box-shadow: none;
     font-size: 10pt !important;
     letter-spacing: 0.05em;
     text-transform: capitalize !important;
     text-shadow: none !important;
     padding: 5px 0 3px 10px;
     margin: 10px 10px -7px !important;
     letter-spacing: 0.1em;
}

.newsentry:first-child {
     margin-top: -6px;
}

.newsentry h3 {
     letter-spacing: 0.1em;
     box-shadow: none;
     background: url(/themes/console/images/info/newspaper.png) left center no-repeat !important;
     background-size: 16px 16px !important;
     padding-left: 22px !important;
}

.newsentry h3 a {
     letter-spacing: 0.08em !important;
     font-size: 10pt !important;
}

.newsentry p {
     line-height: 140% !important;
}

div.news p {
     color: #331e0c;
     font-size: 9pt;
     margin-bottom: -10px;
}

div.news p:last-child {
     margin-bottom: 10px;
}

div.news a {
     color: #7f560f !important;
}

div.news a:hover, div.news a:focus, div.news a:visited:hover, div.news a:visited:focus {
     color: #f60 !important;
}

div.news a:visited {
     color: #5f4312 !important;
}

div.news hr {
     color: #cc7;
     background: #775628;
     height: 2px;
     border-bottom: 1px solid #fff9ef;
     margin: 10px 0 1px !important;
     opacity: 0.7;
}

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

div.news hr:last-child {
     margin-bottom: 10px !important;
}

.newsentry + hr {
     margin-bottom: 5px !important;
}

.newsAuthor {
     padding-left: 14px;
     float: right;
     background: url(/themes/console/images/info/author.png) left 2px bottom 3px no-repeat;
     background-size: 10px 10px;
     font-size: 8.5pt;
     padding: 2px 4px 0 14px;
     display: inline-block;
     opacity: 0.8;
     text-transform: none;
}

.newsDate {
     font-size: 10pt !important;
}

#newsStatus {
     float: left;
     text-align: justify;
}

#newsDisplay {
     white-space: nowrap;
     margin-left: 10px;
     color: #663;
     font-weight: bold;
}

#news #newsDisplay, #news #newsStatus {
     margin-top: 3px !important;
     margin-bottom: 3px !important;
     display: inline-block;
}

.messages #newsStatus, .messages #newsDisplay {
     float: none;
     color: #005;
}

.messages #newsDisplay {
     margin-left: 5px;
}

/* top navigation */

div.confignav {
     padding: 5px 7px 6px;
     margin: -16px -16px 5px -16px;
     border: 1px solid #89f;
     font-size: 9pt;
     text-align: center;
     font-weight: bold;
     background: linear-gradient(to bottom, #fff, #eff2ff);
}

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

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

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

.tab {
     background: linear-gradient(to bottom, #fff 50%, #efefff 50%);
     box-shadow: inset 0 0 0 1px #fff;
}

.tab:hover {
     background: #fff;
     box-shadow: inset 0 0 0 1px #f90;
}

.tab:active {
     box-shadow: inset 0 0 0 1px #f90, inset 3px 3px 3px 1px #5f2400;
     background: #f60;
}

.tab:active a {
     color: #fff !important;
}

.tab2 {
     padding: 4px 14px;
     color: #fff;
     text-shadow: 0 1px 1px #225;
     box-shadow: inset 3px 3px 2px #337;
     background: #89f;
     background: linear-gradient(to bottom, #89f 50%, #78f 50%);
     vertical-align: top;
}

/* end topnav */

div.configure {
     padding: 0;
}

div.configure hr {
     margin: 15px 0;
     display: none;
}

div.configure table {
     font-size: 9pt;
     border: 1px solid #89f;
}

table.configtable, #permabanned, #loggingoptions, #configstats, ul#banlist {
     margin-bottom: -5px;
}

#config_homepage td {
     padding: 5px;
}

#config_peers #permabanned {
     margin-bottom: 5px;
}

#configstats th {
     text-align: left;
     padding: 6px 10px;
     font-size: 10pt;
     text-transform: uppercase;
     letter-spacing: 0.08em;
     word-spacing: 0.1em;
}

#configstats th a {
     float: right;
     font-size: 9pt;
     text-transform: none;
}

#configstats td:first-child:empty + td > label, #configstats td:first-child:empty + td > label:hover { /* remove pointer from inert labels */
     cursor: default;
     color: #2c354f;
}

#configstats td:last-child { /* epiphany fix */
     border-right: 1px solid #89f !important;
}

.configtable td, #joinfamily td {
     padding: 5px 10px;
     border-top: 1px solid #89f;
     border-bottom: 1px solid #89f;
}

#joinfamily, #exportfamily{
     margin-top: 15px !important;
}

#newfamily {
     margin-bottom: 6px;
     margin-top: 4px;
}

#exportfamily tr:nth-child(2) td:first-child {
     background: #fff url(/themes/console/images/info/export_key.png) 12px center no-repeat;
     padding: 15px 15px 15px 50px;
     background-size: 28px 28px;
}

#leavefamily {
     margin-top: 19px;
     margin-bottom: 7px;
}

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

#peerdefs td:first-child {
     text-align: right;
     width: 10%;
     white-space: nowrap;
     padding: 5px;
     border-right: 1px inset #cfd6ff;
}

#peerdefs tr {
     border-top: 1px inset #cfd6ff;
}

#bandwidthconfig td:first-child {
     width: 25%;
     white-space: nowrap;
}

#advconf {
     margin-bottom: -5px !important;
}

#addkeyring {
     margin-bottom: -5px;
}

#addkeyring td:first-child:not(.infohelp) {
     line-height: 115%;
}

#addkeyring input[type="text"] {
     width: 99%;
     width: calc(100% - 5px);
}

#manualreseed {
     margin-bottom: 10px;
}

#manualreseed tr:nth-child(odd) {
     background: #fff;
}

#manualreseed td:first-child {
     white-space: nowrap;
     border-right: none;
}

#manualreseed .optionsave {
     padding-left: 0;
}

#manualreseed .optionsave input {
     min-width: 110px;
}

#manualreseed input[type="text"], #manualreseed input[type="file"] {
     width: 60%;
}

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

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

#reseedconfig td {
     width: 50%;
}

@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 #89f;
}
}

#loggingoptions textarea {
     width: 99%;
     width: calc(100% - 5px);
}

#loggingoptions td:nth-child(2) {
     width: 170px;
}

#profilelist {
     margin: 0 !important;
}

#profilelist th:nth-child(7) {
     text-align: right;
}

#profilelist td:first-child, #profilelist td:last-child {
     width: 1%;
     white-space: nowrap;
}

#profilelist th:nth-child(3), #profiles th:nth-child(4), #profiles th:nth-child(5), #profiles th:nth-child(6) {
     text-align: right;
}

#profilelist td:nth-child(3) {
     letter-spacing: 0.2em;
}

#profilelist td[colspan="9"], #profilelist tr td[colspan="9"]:hover {
     background: #77f;
     padding: 1px 0;
     border-top: 1px inset #fff !important;
     border-bottom: 1px inset #fff !important;
}

#profilelist td[colspan="9"] hr {
     display: none;
}

#profilelist tr:hover td, #floodfills tr:hover td,  #ntcpconnections tr:hover td, #udpconnections tr:hover td,
.homelinkedit tr:hover td, #portmapper tr:hover td {
     background: #ffe;
     background: linear-gradient(to bottom, #fff, #ffe);
     color: #104e99;
     border-top: 1px solid #89f;
     border-bottom: 1px solid #89f;
}

#thresholds tr:last-child:hover td {
     background: #fff;
}

tr.tablefooter:hover td, tr:hover .infohelp {
     color: #2c354f;
}

/* peers - sort icons */

#udpconnections th {
     vertical-align: top;
     background: #fff;
     padding-top: 3px;
}

#ntcpconnections th {
     background: #fff;
}

#peers > #ntcpcon {
     margin-top: 0 !important;
}

#upnpstatus + #ntcpcon {
     margin-top: 10px !important;
}

#upnpscan {
     border: 1px solid #89f;
     margin: -11px 0 5px;
     padding: 0 10px 5px;
     background: #fff;
}

.sortup, .sortdown, .sortupactive, .sortdownactive {
     padding: 1px 0;
     border: 1px solid #999;
     border-radius: 2px;
     margin: 2px 1px 0;
     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.7;
}

.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, linear-gradient(to bottom, #fff, #ddd);
}

.sortup:hover {
     background: url(images/sort_up.png) center center no-repeat, linear-gradient(to bottom, #ddd, #fff);
     border: 1px solid #89f;
     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, linear-gradient(to bottom, #fff, #ddd);
}

.sortdown:hover {
     background: url(images/sort_down.png) center center no-repeat, linear-gradient(to bottom, #ddd, #fff);
     border: 1px solid #89f;
     opacity: 1;
}

.sortdownactive {
     background: url(images/sort_down.png) center center no-repeat, #fff;
}

/* end peer sort */

.backlogged {
     font-size: 14pt;
     line-height: 0;
}

tr:hover th {
     color: #2c354f;
}

#thresholds, #profile_defs {
     margin-top: -1px;
     line-height: 150%;
}

#thresholds p {
     padding: 0 10px 0 5px;
     margin-top: 0 !important;
}

#profile_defs td:first-child {
     width: 5% !important;
     white-space: nowrap;
     text-align: right;
}

#profile_defs td:last-child {
     white-space: normal;
     line-height: 120%;
}

#thresholds th, #thresholds td {
     text-align: center !important;
     width: auto !important;
}

#thresholds tr:last-child td {
     background: #fff;
}

#profile_defs td:nth-child(2)::first-letter {
     text-transform: uppercase;
}

#capabilities_key td {
     padding: 0 !important;
}

#capabilities_key table td:nth-child(2)::first-letter {
     text-transform: none;
}

#capabilities_key table {
     margin: 0 !important;
     border: none;
     border-top: 1px solid #89f;
     border-bottom: 1px solid #89f;
}

#capabilities_key table td {
     padding: 3px 5px !important;
}

#capabilities_key table td:nth-child(even) {
     width: 16px;
}

#capabilities_key b {
     text-transform: none !important;
     display: inline-block;
     min-width: 16px;
     background: #dfe4ff;
     text-align: center;
     text-shadow: 0 1px 1px #fff;
     border-radius: 2px;
     padding: 1px 2px;
}

#thresholds tr:hover td, #profile_defs tr:hover td {
     background: none;
}

#profile_defs b {
     text-transform: capitalize;
}

#capabilities_key b {
     text-transform: none !important;
}

#floodfills {
     margin-top: 10px;
}

#floodfills th {
     font-size: 8pt;
}

#floodfills td:first-child, #profilelist td:first-child {
     text-align: right;
     width: 1%;
     white-space: nowrap;
}

ul#banlist {
     border: 1px solid #89f;
     margin: 15px 0 5px;
     padding: 8px 10px;
     background: #eff1ff;
     -moz-column-count: 4;
     -moz-column-width: 270px;
     -moz-column-gap: 35px;
     -moz-column-rule: 1px dotted #89f;
     -webkit-column-count: 4;
     -webkit-column-width: 270px;
     -webkit-column-gap: 35px;
     -webkit-column-rule: 1px dotted #89f;
     column-count: 4;
     column-width: 270px;
     column-gap: 35px;
     column-rule: 1px dotted #89f;
}

#config_peers #banlist {
     margin-bottom: 11px;
}

ul#banlist + h3.tabletitle {
     margin-top: 9px !important;
}

#banlist li {
     list-style: none !important;
     border-bottom: 1px dotted #89f;
     margin-bottom: 5px;
     min-width: 250px;
     width: calc(100% - 5px);
     padding-bottom: 2px;
     break-inside: avoid;
     page-break-inside: avoid;
     -webkit-column-break-inside: avoid;
     display: table;
     padding: 3px !important;
     line-height: 100%;
}

#banlist li img {
     margin-right: 3px;
}

#banlist li:first-child {
     margin-top: 0;
}

#banlist a[href^="configpeer?peer"] {
     margin-top: -5px;
     float: right;
     line-height: 0;
}

/* /configpeers banlist */

#bannedips {
     margin-bottom: 4px;
}

#bannedips table {
     margin-bottom: -1px !important;
}

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

#bannedips table tr {
     border-top: 1px solid #ddf;
}

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

#bannedips table tr:last-child {
     border-bottom: 1px solid #89f;
}

#permabanned, #banneduntilrestart {
     margin: -1px 0 !important;
     border: none;
}

#permabanned td:first-child {
     border-left: 1px solid #89f;
     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 #89f;
     text-align: center !important;
}

#ipv4, #ipv6, #permabanned tr:nth-child(2) {
     background: url(images/tinytitle.png) center center repeat-x;
     background: linear-gradient(to bottom, #fff 50%, #eff2ff 50%);
     border-top: 1px solid #89f !important;
     border-bottom: 1px solid #89f !important;
}

/* end /configpeer banlist */

.widescroll {
     overflow: auto;
}

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/edit.png);
     vertical-align: top;
}

a[href^="configpeer?peer"]:hover {
     filter: drop-shadow(0 0 1px #f60);
}

pre#transports {
     border: 1px solid #89f;
     padding: 15px 15px 0;
     margin: -11px 0 0;
     width: 95%;
     width: calc(100% - 32px);
     background: #fff;
}

#view_profile pre {
     word-break: break-all;
     word-wrap: break-word;
     white-space: pre-wrap;
}

#view_profile h2 {
     text-transform: none;
     line-height: 120%;
     margin-bottom: -1px !important;
     white-space: nowrap;
     overflow: hidden;
     text-overflow: ellipsis;
     letter-spacing: 0;
     word-spacing: 0;
}

#pluginconfig {
     margin-bottom: 0 !important;
}

#pluginconfig table {
     margin: 3px;
     width: calc(100% - 5px);
}

#pluginconfig tr td {
     background: #fff;
}

#pluginconfig button, #webappconfig button, #clientconfig button {
     margin: 3px;
}

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

#enviro:hover tr, #enviro:hover td {
     background: #ffe;
     border-top: 1px inset transparent;
     border-bottom: 1px inset transparent;
}

#enviro td, #eventlogs td {
     padding: 5px 10px;
}

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

#wrapperlogs pre {
     white-space: pre-wrap;
     word-break: break-all;
     margin: 0;
     width: 100%;
     padding: 0;
     height: 600px;
     overflow: auto;
}

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

#criticallogs tr:first-child {
     display: none;
}

.logtable tr:first-child {
     border-bottom: 1px solid #89f;
     padding: 5px 10px;
}

.logtable p {
     margin: 0;
     padding: 0;
}

.logtable ul {
     margin-bottom: 0 !important;
}

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

#i2pupdates input[name*="URL"] {
     width: 99%;
     width: calc(100% - 5px) !important;
}

#i2pupdates input.check, .optbox {
     margin-left: 5px;
}

#i2pupdates td:first-child {
     padding-right: 0;
     line-height: 120%;
}

#i2pupdates tr:last-child td {
     background: #fff !important;
     padding: 5px;
}

#i2pupdates td:last-child {
     padding-left: 0;
     padding-right: 8px;
}

div.configure tr, div.configure td {
     padding: 5px;
}

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

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

div.configure h2:first-child {
     margin-top: 15px;
}

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

#sidebarconf button img {
     height: 14px;
     width: 14px;
}

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

#sidebarconf th:nth-child(2), #sidebarconf td:nth-child(2) {
     text-align: left;
     padding-left: 20px;
}

#sidbarconf td:last-child[colspan="2"] {
     text-align: center !important;
     padding: 2px;
}

#sidebarconf tr, .homelinkedit tr, #clientconfig tr, #webappconfig tr,  #configstats tr, #tunnelconfig tr, #profiles tr,
#floodfills tr, #netdboverview tr, .netdbentry tr, #leasesetdebug tr, #leasesetsummary tr, .leaseset tr, #tunnel_defs tr,
.sybil_routerinfo tr, #enviro tr, #schedjobs tr, #jobstats tr, #eventlog tr, .tunneldisplay tr, #udpconnections tr, #ntcpconnections tr {
     border-top: 1px inset #cfd6ff;
}

#config_stats tr:not(.tablefooter) td:first-child::after {
     content: "";
     display: inline-block;
     min-height: 24px;
     vertical-align: middle;
}

#addkeyring tr td, #loggingoptions tr td, #profilelist tr:hover, #floodfills tr:hover {
     border-top: 1px solid #cfd6ff !important;
     border-bottom: 1px solid #cfd6ff !important;
}

 tr.tablefooter {
     border-top: 1px solid #89f !important;
     border-bottom: 1px solid #89f !important;
}

#sidebarconf tr:hover td, #eventlog tr:hover td, .tunneldisplay tr:hover td, #jobstats tr:hover td, #schedjobs tr:hover td, #jardump tr:hover td {
     background: #ffd;
     background: linear-gradient(to bottom, #fff, #ffe);
     color: #104e99;
}

#sidebarconf tr:last-child td, #sidebarconf tr:last-child:hover td {
     border-top: 1px solid #89f;
     background: #eff1ff;
}

#sidebarconf select {
     margin-left: 0;
     width: 100%;
}

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

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

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

#sidebarconf tr:last-child td:last-child {
     text-align: right;
     padding-right: 2px;
}

.topshimten {
     margin-top: 15px;
     margin-bottom: 15px;
}

.messages {
     padding: 15px 10px;
     background: #fff;
     border: 1px solid #89f;
     border-right: 0;
     margin: -6px -15px 10px -16px;
     text-align: center;
     font-size: 9pt;
     font-weight: bold;
     color: #474;
}

#config_update .messages {
     background: url(/themes/console/images/info/newspaper.png) 10px center no-repeat #fff;
     background-size: 28px 28px;
     padding-left: 48px;
     text-align: left;
     font-weight: normal;
}

#messages {
     margin-bottom: 5px;
}

.messages li, .messages ul {
     padding: 0 !important;
     margin: -10px 0 0 25px !important;
     list-style: none;
     text-align: left;
}

.messages .error li, .messages .error ul {
     margin: 0 !important;
}

.messages li {
     padding-left: 60px !important
}

#graphs .messages, #events #messages {
     margin-top: -16px;
}

#events #messages {
     margin-bottom: 15px;
     vertical-align: middle;
}

#events .messages li {
     padding: 0 !important;
     margin: 10px 10px 0 35px !important;
     text-align: justify;
}

div.error {
     color: #900;
     background: url(/themes/console/images/info/errortriangle.png) 20px center no-repeat;
     background-size: 28px auto;
     padding: 10px 5px;
     margin-left: -5px;
}

div.notice {
     padding: 10px 10px 10px 0 !important;
     margin: 0;
     background: url(/themes/console/images/info/infohelp.png) 15px center no-repeat;
}

.notice ul, .notice li {
     margin: 0 !important;
}

h1, .main, .sorry, div.news {
     margin-left: 211px;
}

h1 {
     font-size: 18pt;
     text-align: left;
     border: 1px solid #89f;
     padding: 18px 20px 16px;
     margin: 0 0 0 211px;
     line-height: 93%;
     text-transform: uppercase;
     letter-spacing: 0.08em;
     word-spacing: 0.1em;
     background: #fff url(images/titlebg.png) center right no-repeat !important;
     background: linear-gradient(to right, #fff 20%, rgba(255,255,255, 0.5) 70%), linear-gradient(to bottom, #e5f0f7 0%, #e5f0f7 50%, #b9c2f9 50%, #b9c2f9 100%) !important;
     min-width: 530px;
}

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

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

h2 {
     font-size: 14pt;
     padding: 10px;
     border: 1px solid #89f;
     letter-spacing: 0.04em;
     text-transform: uppercase;
     background: #fff;
}

h3, h4#updateplugins {
     font-size: 11pt;
     padding: 6px 10px;
     border: 1px solid #89f;
     margin-bottom: 10px;
     background: #fff;
}

h3.tabletitle {
     margin-bottom: -1px;
}

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

h3.ptitle, h3.tabletitle, th.th_title {
     font-size: 11pt;
}

h3.enbeddedtitle, h4.embeddedtitle {
     margin-bottom: 5px !important;
}

h3#udpcon, h3#ntcpcon {
     margin-bottom: -1px;
}

h3#i2pclientconfig {
     margin-top: 15px;
     margin-bottom: -13px;
}

h3#bannedpeers {
     margin-top: 16px;
     margin-bottom: -16px;
}

h3#bwlimiter, h3#iptransport {
     margin: 15px 0 -1px !important;
}

h3#iptransport a, th#upnpconfig a, h3#bwlimiter a, #config_stats h3 a, #config_logging h3 a, h3#graphdisplay a, #logs h3 a, h3#advancedconfig a, .h3navlinks {
     float: right;
     font-size: 9pt;
     letter-spacing: normal;
}

.h3navlinks a {
     text-transform: capitalize;
     letter-spacing: normal;
     margin-left: 5px;
}

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

h3#iptransport a::after, h3#advancedconfig a::after {
     content: url(images/help.png);
     padding: 0;
     margin: 0;
     vertical-align: bottom;
     height: 16px !important;
     display: inline-block;
}

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

h4 {
     border: 1px solid #89f;
     background: #fff;
     background: linear-gradient(to right, #fff, #eff2ff);
     padding: 3px 5px;
     font-size: 9pt;
     margin: 5px 0;
}

p#clientconf {
     margin-bottom: -1px !important;
}

table[id*="connections"] td {
     text-align: center;
}

table[id*="connections"] td:first-child {
     width: 1%;
     white-space: nowrap;
     text-align: right;
}

table[id*="connections"] .tablefooter td:first-child {
     text-align: left;
}

h3[id*="heading"] {
     margin-bottom: -1px;
}

h3#advancedclientconfig, h3#ffconf, h3#advancedconfig {
     margin-bottom: -1px !important;
}

h3#pluginmanage {
     margin-bottom: -18px !important;
}

.configure > h3#pluginmanage {
     margin-top: 11px;
}

h3#advancedclientconfig, h3#pconfig {
     margin-top: 15px;
}

h3#pluginmanage + p {
     padding: 5px 0 0 !important;
}

h3#webappconfig {
     margin-bottom: -30px;
     margin-top: 15px;
}

p#webappconfigtext {
     margin-bottom: -1px;
}

p:empty {
     display: none;
}

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

h2, h3, h4#updateplugins {
     background: #fff url(images/titlebg.png) right center no-repeat;
     background: linear-gradient(to bottom, #fff 50%, #eff2ff 50%);
     box-shadow: inset 0 0 0 1px #fff;
}

h4#updateplugins {
     margin-top: -13px;
}

.routersummary h2, .routersummary h3 {
     background: url(images/tinytitle.png) center center repeat-x;
     background: linear-gradient(to bottom, #fff 50%, #eff2ff 50%);
}

table {
     border-collapse: collapse;
     border: 1px solid #89f;
     margin: 0 0 5px 0;
     font-size: 9pt;
     background: #eff2ff;
     width: 100%;
}

table hr {
     padding: 0;
     color: #89f;
     background: #89f;
     border: 0 solid #89f;
     margin: -5px -5px -10px -5px !important;
     height: 1px;
}

table tt {
     font-size: 8pt;
}

th {
     background: #fff;
     background: linear-gradient(to bottom, #fff, #eff2ff);
     padding: 5px;
     text-align: center;
     border-bottom: 1px solid #89f;
     border-top: 1px solid #89f;
     font-size: 9pt;
}

th.th_title {
     text-align: left;
     padding: 6px 10px;
}

.configtable th {
     padding: 5px 10px;
     line-height: normal;
}

.smallhead th {
     font-size: 8pt;
}

td {
     padding: 3px 5px;
}

td.optionsave {
     text-align: right;
     border-top: 1px solid #89f;
     background: #fff;
     padding: 8px 5px;
}

td.optionsave[colspan="2"] {
     background: #fff;
}

td.infohelp, p.infohelp, td.infowarn, p.infowarn, p#upnpstatus, p#gatherstats, p#debugmode, p#sybilinfo, p#pluginconfigtext {
     padding: 15px 15px 15px 55px !important;
     border: 1px solid #89f;
     background: #fff url(/themes/console/images/info/infohelp.png) 15px center no-repeat;
     white-space: normal !important;
     text-align: justify;
}

td.infowarn, p.infowarn {
     background: #fff url(/themes/console/images/info/infowarn.png) 15px center no-repeat !important;
}

#config_summarybar .configtable td:not(.optionsave) {
     padding: 15px 15px 15px 50px !important;
     background: url(/themes/console/images/info/interval.png) 12px center no-repeat, #fff;
     background-size: 28px 28px;
}

.confignav + .infohelp, .confignav + h3.tabletitle, .confignav + form > h3.tabletitle, .confignav + .configure > form > h3.ptitle {
     margin-top: 15px !important;
}

p#profiles_overview, h3#shutdownrouter, h3#themeheading {
     margin-top: 15px !important;
}

p#gatherstats {
     margin-top: -9px;
     margin-bottom: 28px;
}

p#upnpstatus {
     margin-top: 0;
}

td.tabletextarea {
     padding: 0 !important;
}

.tabletextarea textarea {
     margin: 0 !important;
     width: 100% !important;
     height: 600px;
     resize: none;
     overflow: auto;
     border: 0;
     white-space: pre-wrap;
     word-break: break-all;
     font-size: 9pt;
     padding: 5px;
     box-shadow: 0 0 0 0 !important;
     border: none !important;
     color: #222;
}

.tabletextarea textarea:focus {
     box-shadow: inset 0 0 0 1px #89f !important;
     border-radius: 0 !important;
     color: #000;
}

tr:nth-child(even), #pluginconfig table tr:nth-child(even) td {
     background: #fff;
     background: rgba(255,255,255,0.5);
}

tr:nth-child(odd), #pluginconfig table tr:nth-child(odd) td, .main#profiles ul#banlist {
     background: #f1f3ff;
}

.configtable th {
     text-align: left;
}

/* begin home page */

h4.app, h4.app2 {
     margin: 0 0 7px;
     font-size: 11pt;
     padding: 7px 10px 6px;
     border: 1px solid #89f;
     border-left: none;
     border-right: none;
     box-shadow: inset 0 0 0 1px #fff;
     letter-spacing: 0.08em;
     word-spacing: 0.1em;
     background: #fff;
     text-transform: uppercase;
     background: url(images/tinytitle.png) center center repeat-x;
     background: linear-gradient(to bottom, #fff 50%, #eff2ff 50%);
}

h4.app {
     margin-top: -5px;
     background: #fefeff url(/themes/console/images/favicon.ico) 8px center no-repeat;
     background: url(/themes/console/images/eepsite.png) 8px center no-repeat, linear-gradient(to bottom, #fff 50%, #eff2ff 50%);
     background-size: 16px 16px, 100% 100%;
     background-blend-mode: luminosity, normal;
     padding-left: 32px;
}

h4.app2 {
     clear: left;
     margin-top: 5px !important;
     background: #fefeff url(/themes/console/light/images/globe.png) 8px center no-repeat;
     background: url(/themes/console/images/info/globe.png) 8px center no-repeat, linear-gradient(to bottom, #fff 50%, #eff2ff 50%);
     background-size: 16px 16px, 100% 100%;
     background-blend-mode: luminosity, normal;
     padding-left: 32px;
}

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

div.app {
     float: left;
     padding: 0;
     width: 140px;
     text-align: center !important;
     border: none;
     margin: 3px ;
     border: 1px solid #89f;
     border-radius: 2px;
     background: #fff;
     background: linear-gradient(to bottom, #fff, #ddf);
     box-shadow: 0 0 1px #fff;
}

div.app:hover {
     border: 1px solid #f60;
     background: #fff;
     cursor: pointer;
}

div.app:hover a {
     color: #f60 !important;
}

.app td {
     vertical-align: middle;
}

.applabel {
     background: url(images/tinytitle.png) center center repeat-x;
     background: linear-gradient(to bottom, #fff 50%, #eff2ff 50%);
     font-size: 9pt;
     margin: 0;
     padding: 4px 2px;
     text-align: center;
     width: 136px;
     line-height: 110%;
     text-transform: lowercase;
     font-size: 8pt;
     border-top: 1px solid #89f;
     overflow: hidden;
     text-overflow: ellipsis;
     white-space: nowrap;
}

.applabel a {
     margin: 0;
     padding: 1px;
     display: inline-block;
     width: 100%;
     width: calc(100% - 2px);
     white-space: nowrap;
     overflow: hidden;
     text-overflow: ellipsis;
}

.app:hover .applabel {
     border-top: 1px solid #f60;
     background: #fff;
}

.app:active .applabel {
     background: #f60 !important;
     color: #fff !important;
     box-shadow: inset 0 0 0 1px #fff !important;
}

.app:active .applabel a {
     color: #fff !important;
}

div.app:last-child {
     margin-bottom: 10px;
}

div.app a:link, div.app a:visited, div.app a:hover, div.app a:active {
     text-decoration: none;
}

div.app:hover a, .applabel a:focus {
     color: #f60;
     outline: none;
}

div.app:hover img, .appimg a:focus {
     filter: drop-shadow(0 0 1px rgba(255, 102, 0, 0.6)) saturate(150%);
     outline: none;
}

div.app:hover .applabel {
     box-shadow: none;
}

.appimg {
     min-height: 42px;
}

.appimg a {
     display: inline-block;
     width: 100%;
}

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

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

table.search {
     background: #eff1ff;
     margin-left: auto;
     margin-right: auto;
     width: auto;
     border: 1px solid #89f !important;
     border-collapse: separate;
     border-radius: 0 0 2px 2px;
}

.search td {
     padding: 1px 0;
}

.search td:nth-child(2) {
     text-align: center !important;
}

.search button.search {
     margin: 0;
}

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

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

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

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

.applabel:hover {
     box-shadow: none;
}

/* end home page */

#i2psnarkframe {
     margin-bottom: -18px;
}

#i2ptunnelframe {
     margin-bottom: -3px;
}

tt, pre, textarea, code {
     font: 8.5pt "Droid Sans Mono", "Andale Mono", "DejaVu Sans Mono", "Lucida Console", monospace;
}

hr {
     color: #89f;
     background: #89f;
     height: 2px;
     border: 0 solid #89f;
     margin: 3px 0;
}

p.infohelp + hr, p.infohelp + p + hr, #tunnelconfig + hr { /*configservice */
     display: none;
}

h3#servicedebug a, h3#graphinfo a {
     float: right;
     font-size: 9pt;
}

.main#tunnels h3 {
     padding-right: 5px;
}

.main#tunnels h3 a {
     float: right;
}

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

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

.main#tunnels h3 a[href^="/configtunnels#"]:hover {
     filter: drop-shadow(0 0 1px #f60);
}

h3 + .statusnotes {
     margin-top: -1px;
}

.statusnotes {
     font-style: italic;
     font-size: 9pt;
     color: #2c354f;
     text-align: center;
     margin: -6px 0 7px 0;
     border: 1px solid #89f !important;
     border-top: 0;
     padding: 5px 0;
     background: #fff;
     background: linear-gradient(to right, #eff2ff, #fff, #eff2ff);
     box-shadow: inset 0 0 0 1px #fff;
}

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

.joblog {
     margin: 10px 0;
     line-height: 130% !important;
}

.joblog li {
     word-wrap: break-word !important;
     line-height: 105% !important;
}

.joblog ul {
     word-wrap: break-word !important;
}

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

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

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

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

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

.joblog h3 {
     margin: 10px 0 20px 0;
}

.joblog h3:first-child {
     margin: -10px 0 15px 0;
}

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

h2#jobrunners {
     margin-top: -10px;
}

.joblog ol {
     margin-bottom: 5px !important;
     margin-top: -21px;
     -moz-column-count: 2;
     -moz-column-width: 400px;
     -moz-column-gap: 100px;
     -moz-column-rule: 1px dotted #89f;
     -webkit-column-count: 2;
     -webkit-column-width: 400px;
     -webkit-column-gap: 100px;
     column-count: 2;
     column-width: 400px;
     column-gap: 100px;
     column-rule: 1px dotted #89f;
     background: #eff1ff;
     border: 1px solid #89f;
     padding: 15px 50px;
}

.joblog ol:empty + h3 {
     margin-top: -10px;
}

.joblog ol:empty {
     display: none;
}

.joblog ol li {
     break-inside: avoid;
     page-break-inside: avoid;
     -webkit-column-break-inside: avoid;
     display: inline-block;
     border-bottom: 1px dotted #89f;
     min-width: 400px;
     margin-left: -15px;
     margin-bottom: 5px;
}

.joblog ol li:first-child {
     padding-top: 5px;
}

.joblog ol li:last-child {
     border: none;
}

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

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: #393;
}

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

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

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

h3#totaljobstats {
     margin-bottom: -1px !important;
}

#jobstats th:first-child, #jobstats td:first-child {
     text-align: left;
     padding-left: 10px;
}

#jobstats th {
     text-align: right;
}

#jobstats .tablefooter td {
     font-size: 9pt;
}

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

#schedjobs th {
     padding: 3px 10px;
}

#schedjobs td {
     padding: 3px 10px;
}

#schedjobs th:first-child {
     text-align: left;
}

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

#oldhome {
     margin-bottom: 10px;
}

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

.homelinkedit th:first-child, #sidebarconf th:first-child, #consolepass th:first-child {
     background: url(/themes/console/images/buttons/delete.png) center center no-repeat, linear-gradient(to bottom, #fff, #eff2ff);
     font-size: 0 !important;
     width: 5%;
}

.homelinkedit th:last-child, .homelinkedit th:nth-child(3) {
     text-align: left !important;
}

.homelinkedit input[type="text"], #reseedconfig input[type="text"], #reseedconfig input[type="password"], #reseedconfig .optbox, #reseedconfig textarea {
     margin-left: 0;
}

#reseedconfig textarea {
     width: 100% !important;
}

.homelinkedit tr:last-child {
     border-top: 1px solid #89f;
}

#addnew td:first-child {
     text-align: right;
}

tr#addnew:hover {
     color: #2c354f !important;
}

#loggingoptions input[type="text"] {
     width: 160px;
}

#loggingoptions td:first-child {
     line-height: 120%;
}

#oldhome {
     margin-bottom: 10px;
}

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

p {
     padding: 5px 20px 0 20px;
     text-align: justify;
}

p img:first-child {
     display: none;
}

p.infohelp, p.infohelp + p, p#enablefullstats {
     border: 1px solid #89f;
}

p.infohelp + p.infowarn {
     padding: 10px;
     margin-top: -1px;
}

p#keyringhelp {
     margin-top: 15px;
}

p#pluginconfigtext {
     border: 1px solid #89f;
     padding: 10px;
     margin: -11px 0 -1px;
}

#config_logging p {
     text-align: left;
     margin: 3px 0 5px -15px !important;
}

.formaction, td.optionsave {
     padding-right: 3px !important;
}

.configtable tr:last-child, #addkeyring tr:last-child, #loggingoptions tr:last-child {
     background: #fff;
     border-top: 1px solid #89f;
}

#addkeyring tr:last-child td {
     padding: 7px 2px;
}

.formaction form, td form {
     margin-bottom: 0;
}

p#enablefullstats {
     padding: 5px 10px;
     line-height: 120%;
     background: #fff;
     text-align: left;
}

.formaction {
     text-align: right;
     margin: 0;
     padding: 8px 5px;
     background: #fff;
}

.formaction, td.optionsave {
     padding-right: 3px !important;
}

.configtable tr:last-child, #addkeyring tr:last-child, #loggingoptions tr:last-child {
     background: #fff;
     border-top: 1px solid #89f;
}

.formaction form, td form {
     margin-bottom: 0;
}

.formaction#shutdown, .formaction#restart, .formaction#systray, .formaction#runonstart,
.formaction#dumpthreads, .formaction#browserstart, .formaction#sidebardefaults,
.formaction#tunnelconfigsave, .formaction#updateplugins, .formaction#consolepass {
     border: 1px solid #89f;
     margin-top: -13px;
     margin-bottom: -5px;
}

.formaction#clientsconfig, .formaction#webappconfigactions, .formaction#pluginupdater, .formaction#sidebardefaults,
.formaction#tunnelconfigsave, .formaction#consolepass {
     border: 1px solid #89f;
     margin-top: -6px;
}

.formaction#clientsconfig {
     margin-bottom: -5px;
}

.formaction#pluginconfigactions {
     border: 1px solid #89f;
     margin-top: -1px;
}

.formaction#pluginupdater {
     margin-bottom: 6px;
     background: url(/themes/console/images/info/update.png) 12px center no-repeat, #fff;
     background-size: 28px 28px;
     padding: 15px 15px 15px 50px;
}

.formaction#webappconfigactions {
     margin-bottom: -5px;
}

.formaction#resetreseed {
     margin: 0 -3px 0 0;
     background: none;
}

.formaction[id*="home"] {
     margin-top: -6px;
     padding: 5px;
     border: 1px solid #89f;
}

.formaction#homeapps {
     margin-top: -6px;
     margin-bottom: 0;
}

.formaction#homesites {
     margin-bottom: -6px;
}

.formaction#themeui {
     margin: 8px -5px 0;
     border-top: 1px solid #89f;
}

.formaction#langui {
     margin: 0 -5px;
}

.main#logs code {
     font-size: 8pt;
}

.tablefooter {
     border: 1px solid #89f;
}

.tablefooter tr, .tablefooter td {
     background: #fff !important;
     font-size: 9pt;
     line-height: 150%;
     white-space: nowrap;
     padding: 8px 5px !important;
}

#config_stats .tablefooter td {
     line-height: normal;
     padding: 2px 5px;
}

#netconfig tr, #externali2cp tr {
     background: #fff;
}

#externali2cp label + br {
     display: none;
}

#externali2cp label {
     white-space: nowrap;
     margin-right: 10px;
}

#pluginconfig tr {
     border-bottom: 1px solid #89f;
}

#pluginconfig td:first-child {
     width: 80px;
     white-space: nowrap;
}

.tidylist {
     text-align: justify;
     padding-right: 25px;
     margin-right: 15px !important;
     margin-left: 15px;
}

.tidylist code {
     text-align: left;
     font: 9pt "Droid Sans Mono", "Andale Mono", "DejaVu Sans Mono", "Lucida Console", monospace;
     color: #723;
     font-weight: bold;
}

/* graphs */

.graphspanel {
     padding: 15px 5px 1px;
     margin: -16px -16px -11px -16px;
     text-align: center !important;
     overflow: hidden;
}

#graphs .graphspanel {
     margin: -16px;
}

h3#graphdisplay {
     margin: 12px -16px 10px;
}

.graphspanel img {
     margin: 5px 4px;
     padding: 1px;
     background: #fff;
     border: 1px solid #9af;
     box-shadow: 0 0 1px 0 #abf;
     max-width: 95%;
     max-width: calc(100% - 50px);
}

.graphspanel a img {
     background: #fff;
     border: 1px solid #89f;
     opacity: 0.9;
     vertical-align: top;
}

.graphspanel a img:hover {
     border: 1px solid #f60;
     text-align: center !important;
     background: #ccf;
     opacity: 1;
     cursor: url(/themes/console/images/cursor_zoom.png), pointer;
}

.graphspanel a:active img {
     border: 1px solid #f90;
}

.graphspanel a {
     font-size: 0;
}

.graphspanel hr {
     margin: 10px 0;
}

.graphspanel form:last-child {
     text-align: left;
     margin: 0 20px;
}

.graphspanel h3 {
     text-align: left;
     margin: 10px 20px 10px 20px;
}

form[action="graphs"] {
     border: 1px solid #89f;
     padding: 5px 10px;
     margin: -11px 0 5px;
     background: #eef;
}

#graphs form[action="graphs"] {
     margin: -11px -16px;
}

form[action="graphs"] hr {
     margin: 5px -11px 3px;
     height: 1px;
}

form[action="graphs"] input[type="text"] {
     min-width: 80px !important;
}

.formaction#graphing {
     margin: -3px -10px -5px;
}

/* 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: -8px 0 0 !important;
     padding: 5px;
     border-left: none;
     border-right: none;
}

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

#graphs td:first-child {
     text-align: right;
     min-width: 100px;
     white-space: nowrap;
     padding: 13px 3px 13px 5px;
     font-weight: bold;
}

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

#graphs td.infohelp {
     border: none;
     border-right: none;
     background-size: 20px 20px !important;
     padding: 5px 5px 5px 40px !important;
     background: url(/themes/console/images/info/infohelp.png) 15px center no-repeat #f1f3ff;
     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 graphs optionbox */

/* single view */

#graph_single {
     padding-left: 0;
     padding-right: 0;
}

#graph_single .graphspanel {
     margin: 0 -1px -13px;
     padding: 3px 0 0 !important;
}

#graph_single .graphspanel img {
     margin: 10px 0;
}

#graphopts {
     text-align: center;
     border: 1px solid #89f;
     background: rgba(255,255,255,0.8);
     margin: 25px -1px -11px;
     padding: 10px 10px 9px;
     text-transform: capitalize;
     color: transparent;
}

h3#graphinfo {
     margin: 0 15px 9px;
     text-transform: capitalize;
}

#graphopts + p {
     text-align: right;
     background: #fff;
     margin: -1px -5px 0;
     padding: 10px;
     border: 1px solid #89f;
     display: none;
}

#graphopts a {
     display: inline-block;
     border: 1px solid #8b8edf;
     padding: 1px 10px;
     border-radius: 15px;
     background: #f8f8ff;
     background: rgba(248,248,255,0.3);
     margin: 3px -2px;
     box-shadow: 0 0 0 1px #ddf;
     box-shadow: 0 0 0 1px rgba(220,220,255,0.6);
}

#graphopts a:empty {
     display: none;
}

#graphopts a:hover, #graphopts a:focus {
     border: 1px solid #7778bf;
     background: #e2e2ff;
     background: linear-gradient(to bottom, #fff 50%, #d8d4ff 50%);
     box-shadow: 0 0 0 1px rgba(220,220,255,0.6), inset 0 0 0 1px #d8d4ff;
}

#graphopts a:active {
     box-shadow: inset 3px 3px 3px rgba(41,61,95,0.8);
     color: #557 !important;
}

/* end single view */
/* end graphs */

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

.footnote hr {
     margin: 10px 0 5px 0 !important;
     color: #99f;
     background: #99f;
     height: 1px;
     border: 0 solid #99f;
}

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

/* 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 !important;
}

.iframed .sorry {
     margin: -1px 0 0 !important;
}

/* end iframed console fixes */

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

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

.themechoice {
     width: 115px;
     min-height: 78px;
     overflow: hidden;
     text-overflow: ellipsis;
     white-space: nowrap;
     border: 1px solid #89f;
     float: left;
     text-align: center;
     padding: 0 4px;
     margin: 4px;
     border-radius: 2px;
     background: #fff;
     background: linear-gradient(to bottom, #fff, #ddf);
     transition: ease all 0.3s;
     box-shadow: 0 0 1px #fff;
}

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

.themechoice:hover > object ~ .themelabel {
     border-top: 1px solid #f60 !important;
     background: #fff;
     transition: ease all 0.1s;
}

.themechoice:hover > object {
     filter: drop-shadow(0px 0 1px #f60);
}

.themechoice .optbox {
     height: 80px !important;
     width: 110px !important;
     padding: 2px;
     opacity: 0; /* hide the radio icon so we can use thumbnail img instead */
     margin-top: 4px;
     margin-left: -32px;
     position: absolute;
     z-index: 999;
}

.themechoice .optbox + object {
     margin-left: 0;
     margin-top: 8px;
     padding: 0 !important;
     margin-bottom: 31px;
}

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

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

.themechoice:active .themelabel {
     background: #f60 !important;
     color: #fff !important;
     box-shadow: inset 0 0 0 1px #fff;
}

.themechoice .optbox:checked + object ~ div.themelabel {
     background: #ddf;
     color: #338;
     font-weight: bold;
}

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

.themechoice .optbox:focus + object ~ div.themelabel {
     color: #f60 !important;
     background: #fff;
     background: linear-gradient(to right, #eef, #fff, #eef);
}

.themechoice .optbox:active + object ~ div.themelabel {
     color: #fff !important;
}

.themechoice:active .optbox:checked + object ~ .themelabel {
     background: linear-gradient(to right, #eef, #fff, #eef) !important;
     color: #f60 !important;
     box-shadow: none !important;
     font-weight: bold;
}

#themeoptions {
     clear: both;
     border-top: 1px solid #89f;
     background: rgba(230, 230, 255, 0.5);
     margin: 0 -5px -3px;
     position: relative;
     top: 4px;
     padding: 5px 10px 5px 5px;
}

#themeoptions br {
     display: none;
}

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

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

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

.themelabel {
     border-top: 1px solid #89f !important;
     margin: -25px -4px 0;
     padding: 3px 2px;
     background: #eef url(images/tinytitle.png) center center;
     background: linear-gradient(to bottom, #fff 50%, #eff2ff 50%);
     overflow: hidden;
     text-overflow: ellipsis;
     white-space: nowrap;
}

#themesettings {
     clear: both;
     border: 1px solid #89f;
     padding: 4px 5px 0;
     margin: -1px 0;
     background: #eff1ff;
}

#langsettings {
     border: 1px solid #89f;
     padding: 4px 5px 0;
     background: #eff1ff;
}

#themesettings hr {
     display: none;
}

#langsettings hr {
     margin: 0 -5px;
     height: 1px;
}

.langselect {
     width: 115px;
     float: left;
     margin: 4px;
     text-align: center;
     border: 1px solid #89f;
     padding: 4px 4px 0;
     border-radius: 2px;
     background: #fff;
     background: linear-gradient(to bottom, #fff, #ddf);
     transition: ease all 0.3s;
     box-shadow: 0 0 1px #fff;
}

.langselect:hover {
     border: 1px solid #f60;
     background: #fff;
     transition: ease all 0.3s;
}

.langselect .optbox {
     width: 122px;
     height: 66px;
     margin: -4px 0 8px -54px;
     opacity: 0;
     z-index: 999;
     position: relative;
}

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

.langselect img[src^="/flags"] {
     border: 1px solid #89f;
     margin-bottom: 42px;
     margin-left: -72px;
     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);
     border: 1px solid #338;
}

.langselect:hover > input[name="lang"] + img + .ui_lang {
     color: #f60;
     border-top: 1px solid #f60;
     font-weight: bold;
     background: #fff !important;
     transition: ease all 0.1s;
}

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

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

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

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

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

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

.langselect br {
     display: block;
}

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

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

/* large flags */

.langselect img {
     margin-top: 2px !important;
     margin-bottom: 34px !important;
     margin-left: -70px !important;
     width: 40px;
     height: 40px;
     border: none !important;
     box-shadow: none;
     opacity: 0.9 !important;
     transform: none !important;
     filter: drop-shadow(0 0 1px #77d);
}

.langselect input[name="lang"]:checked + img, .langselect input[name="lang"]:checked + #config_ui img[src="/flags.jsp?c=a1"] {
     margin-top: 6px !important;
     margin-bottom: 38px !important;
     width: 32px !important;
     height: 32px !important;
     border: none !important;
     box-shadow: none !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;
     filter: drop-shadow(0 0 2px #f60);
}

/*
.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 1px #f60);
}

50% {
     filter: drop-shadow(0 0 2px #930);
}

80% {
     filter: drop-shadow(0 0 1px #d40);
}

100% {
     filter: drop-shadow(0 0 1px rgba(256, 100, 0, 0.1));
}
}

/* end large flags */

/* configui password*/

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

#consolepass tr:first-child td {
     background: #fff url("/themes/console/images/info/user_add.png") no-repeat scroll 12px center / 28px 28px;
     padding: 15px 15px 15px 50px;
}

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

#consolepass input {
     margin: 5px;
}

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

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

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

/* end configui */

.main#netdb > .confignav {
     margin-bottom: 15px;
}

#clientconfig th:first-child, #webappconfig th:first-child, #pluginconfig th:first-child {
     text-align: right;
}

#clientconfig th:last-child, #webappconfig th:last-child, #pluginconfig th:last-child {
     text-align: left;
}

#clientconfig th:nth-child(2), #clientconfig th:nth-child(3),
#webappconfig th:nth-child(2), #webappconfig th:nth-child(3) {
     text-align: center;
}

#clientconfig td:nth-child(3) {
     white-space: nowrap;
}

#netconfig {
     line-height: 160%;
}

/* netdb */

.netdbentry {
     margin-top: 10px !important;
}

.netdbentry th {
     font-weight: normal;
}

.netdbentry th:last-child {
     text-align: right;
     padding: 5px;
     white-space: nowrap;
     width: 50px;
}

.netdbentry th code, .sybil_routerinfo th code, .leaseset th code {
     color: #030 !important;
     border-radius: 3px;
     padding: 1px 3px;
     margin-left: 4px;
     font-family: "Droid Sans Mono", "Andale Mono", "DejaVu Sans Mono", "Lucida Console", monospace !important;
}

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);
     margin: 0 2px;
}

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

.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;
}

#leasesetsummary {
     margin-top: 15px;
     margin-bottom: 10px;
}

#leasesetsummary td:first-child {
     width: 50px;
     white-space: nowrap;
}

#leasesetdebug, #leasesetsummary {
     font-size: 9pt;
}

#leasesetdebug td, #leaseset td {
     padding: 5px !important;
}

#leasesetdebug {
     margin-bottom: 10px;
}

#leasesetdebug th, #leasesetsummary th {
     font-weight: bold;
     padding: 8px 5px;
     text-align: left;
}

#leasesetdebug th:last-child, #leasesetsummary th:last-child {
     text-align: right;
}

#leasesetdebug th:first-child, #leasesetsummary th:first-child {
     font-size: 10pt;
}

#leasesetdebug th a, #leasesetsummary th a {
     font-size: 8pt;
     text-transform: capitalize;
     letter-spacing: normal;
     word-spacing: normal;
}

#leasesetdebug th a:not(old), #leasesetsummary th a:not(old) {
     font-size: 0;
}

#leasesetdebug th a::after, #leasesetsummary th a::after {
     content: url(/themes/console/images/buttons/floodfill.png);
}

#leasesetdebug th a:hover, #leasesetsummary th a:hover {
     filter: drop-shadow(0 0 1px #f60);
}

#leasesetdebug td:nth-child(odd) {
     width: 200px;
     white-space: nowrap;
     text-align: right;
     border-right: 1px inset #cfd6ff;
}

#leasesetdebug td:nth-child(even) {
     text-align: left;
     white-space: nowrap;
}

#leasesetdebug td:nth-child(2) {
     width: 10px;
}

.leaseset {
     font-size: 9pt;
     margin: 5px 0 10px;
}

.leaseset:last-child {
     margin-bottom: 5px;
}

.leaseset th {
     font-weight: normal;
     padding: 5px;
     text-align: left;
}

.leaseset th:last-child, .leaseset td:nth-child(2) {
     text-align: right;
     padding-right: 5px;
}

.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 {
     border: 1px solid #89f;
     padding: 20px;
     font-weight: bold;
     background: #eff1ff;
     margin: 10px 0 7px;
     text-align: center;
}

.sybil_routerinfo {
     margin-bottom: 10px;
}

.sybil_routerinfo:last-child {
     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;
}

.sybil_routerinfo img[width="32"] {
     width: 24px;
     height: 24px;
     margin: -1px;
     border-left: 1px solid #89f;
}

.main#netdb code, .main#netdb tt {
     color: #03183f;
     font-family: "Droid Sans", "Noto Sans", Ubuntu, "Segoe UI", "Lucida Grande", "DejaVu Sans", Verdana, Helvetica, sans-serif;
     font-weight: normal;
}

#sybilnav, #sybils_summary {
     border: 1px solid #89f;
     padding: 10px;
     margin-bottom: 10px;
     background: #fff;
}

#sybilnav {
     background: #eff1ff;
     padding-bottom: 8px;
     -moz-columns: 4 250px;
     -webkit-columns: 4 250px;
     columns: 4 250px;
     -moz-column-gap: 10px;
     -webkit-column-gap: 10px;
     column-gap: 10px;
}

#sybilnav ul {
     margin: 0;
     padding: 0;
}

#sybilnav li {
     border: 1px solid #ddf;
     border-bottom: 2px solid #ccf;
     list-style: none;
     margin-bottom: 5px;
     margin-left: 0;
     margin-right: 0;
     padding: 3px;
     background: #fff;
     background: linear-gradient(to bottom, #fff 0%, #eef 100%);
     border-radius: 2px 2px 0 0;
     box-sizing: border-box;
     break-inside: avoid;
     page-break-inside: avoid;
     -webkit-column-break-inside: avoid;
}

#sybilnav li:first-child {
     margin-top: 0 !important;
}

#sybilnav li:last-child {
     margin-bottom: 0;
}

#sybilnav li a {
     display: inline-block;
     vertical-align: middle;
     line-height: 100%;
     width: calc(100% - 30px);
}

#sybilnav li::before {
     content: '\00A0\1F441\00A0';
     content: url(images/eye.png);
     padding: 0 5px;
     font-size: 16pt;
     line-height: 50%;
     vertical-align: middle;
}

p.sybil_info, p.family, p.threatpoints, p.hashdist, p.notfound, p#sybil_totals {
     border: 1px solid #89f;
     padding: 5px 5px 5px 30px;
     margin: 3px 0;
     font-weight: bold;
     text-align: left;
     background: #ffe url(images/eye.png) 8px center no-repeat;
     background: url(images/eye.png) 8px center no-repeat, linear-gradient(to right, #fff 40%, #dde1ff);
}

p#sybil_totals {
     font-weight: normal;
}

p.family a {
     display: inline-block;
}

p.family + p.family, p.sybil_info + p.sybil_info {
     margin-top: -4px;
}

p.sybil_info + a[name] + table.sybil_routerinfo, p.hashdist + a[name] + table.sybil_routerinfo {
     margin-top: 10px !important;
}

.threatpoints + a[name] + ul {
     border: 1px solid #89f;
     padding: 5px 5px 0;
}

.threatpoints + ul {
     border: 1px solid #89f;
     padding: 0 15px 0 30px;
     margin: -4px 0 10px !important;
     background: #eff1ff;
}

.threatpoints + ul li {
     padding: 0;
}

.threatpoints + ul li:last-child {
     margin-bottom: 6px;
}

.sybil_routerinfo + .threatpoints + ul + a[name] + table {
     margin-top: -11px;
}

p:empty { /* empty paragraph nuke */
     display: none;
}

/* Advanced lookup */

#netdblookup {
     margin-bottom: -8px;
}

#netdblookup th {
     font-size: 11pt;
     text-align: left;
     padding: 10px;
}

#netdblookup td:first-child {
     text-align: right;
     width: 100px;
     white-space: nowrap;
     font-weight: bold;
}

#netdblookup td:nth-child(2) {
     width: 100px;
}

.subheading {
     text-align: left !important;
     background: #fff;
     padding: 10px;
     border: 1px solid #89f;
}

.subheading b {
     font-size: 10pt !important;
}

/* leasesets */

.netdb_leases, .netdb_leases li {
     margin: -1px 0 0 !important;
     padding: 0 !important;
     columns: 400px auto;
     column-rule: 1px solid #ccdeff;
}

.netdb_leases li {
     line-height: 140%;
     list-style: none;
     vertical-align: middle;
     border-bottom: 1px solid #ccdeff;
     padding: 2px 0 3px !important;
}

.netdb_leases b:first-child {
    display: inline-block;
    min-width: 80px;
    margin-right: 2px;
    text-align: right;
}

.netdb_leases .tunnel_peer img {
     margin-bottom: -1px;
}

.netdb_gateway img {
     vertical-align: middle;
}

.netdb_tunnel {
     display: inline-block;
     background: #ddf;
     padding: 0 4px;
     margin-right: -4px;
     border-radius: 2px;
}

.netdb_leases .tunnel_peer {
     margin-left: 2px;
}

.netdb_leases .tunnel_peer tt, .netdb_leases .tunnel_peer tt a {
     letter-spacing: 0.1em;
}

.netdb_leases .tunnel_id {
     min-width: 74px;
}

.netdb_leases .tunnel_peer tt {
     margin: 0 3px;
}

.main li .netdb_expiry {
     font-weight: normal;
     text-transform: lowercase;
     color: #2c354f !important;
     font-style: italic;
}

#console h2, #console h3 {
     border-radius: 2px;
     box-shadow: 0 0 2px rgba(200,200,200,0.5);
}

img.unknownflag {
     opacity: 0.8;
}

/* end leasesets */

/* end netdb */

/* /stats */

form#statnav {
     border: 1px solid #89f !important;
     padding: 10px 10px 10px 15px;
}

h3.stats {
     border: 1px solid #89f;
     border-radius: 0;
}

.statlist {
     border: 1px solid #89f;
     padding: 0 10px 0 0;
     margin-left: 0 !important;
     margin-bottom: -27px !important;
     background: #eff1ff;
}

.statlist:last-of-type {
     margin-bottom: -22px !important;
}

.statlist a[name], .statlist b, .statlist li b, .statlist a[name]:hover {
     text-decoration: none;
     letter-spacing: normal;
     font-size: 9pt;
     line-height: 120%;
}

.statlist ul + br {
     display: none !important;
}

.statlist li b, .statlist b a:hover, h3.stats a:hover {
     color: #2c354f !important;
}

.statlist li::before {
     content: "\2B26\00A0";
     margin-left: 5px;
     font-size: 14pt;
     line-height: 60%;
     vertical-align: baseline;
     color: #2c354f;
}

.statlist li {
     margin-left: 5px;
     padding: 2px;
     list-style: none;
}

.statlist li li {
     margin-left: 16px;
     margin-right: -20px;
     margin-top: 2px;
     line-height: 150% !important;
     list-style: none;
     padding: 2px 0 2px 5px;
     text-align: left;
}

.statlist li li:first-child {
     margin-top: 12px !important;
     border-top: none;
     padding-top: 2px;
}

.statlist li li::before {
     content: "\279F\00A0";
     vertical-align: baseline;
     margin-left: 3px;
}

.main#stats a[href^="graph?"]::before {
     content: "\279F\00A0";
     color: #33a;
     font-size: 14pt;
     margin-left: 4px;
}

.main#stats a[href^="graph?"]:hover::before {
     color: #33a;
}

.main#stats a[href$="showEvents=true"]::before {
     display: none;
}

.statlist li li:last-child {
     padding-bottom: 2px;
     padding-left: 5px;
     border: 1px solid rgba(136, 153, 255, 0.3);
     background: #fff;
     background: linear-gradient(to right, #fff 0%, #eef 70%, #ddf 100%);
     box-shadow: inset 0 0 0 1px #fff;
}

.statlist li li.noevents {
     margin-top: 15px !important;
}

.statlist li:last-child {
     padding-bottom: 15px;
     margin-top: 2px;
}

.statlist li:first-child {
     margin-top: -5px;
}

.statlist li li:last-child::before {
     content: "\27A1\00A0";
     margin-left: 2px;
     vertical-align: text-top;
     vertical-align: calc(20% - 3px);
}

.statlist a[href*="graph"] {
     margin-top: 2px !important;
}

.statlist li a[href*="graph"]:first-of-type {
     margin-left: -1px;
}

.statlist a[href*="graph"]::after {
     content: "\00A0";
}

.statsViewGraphs {
     margin-left: 20px;
}

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

#gatherstats + form {
     background: #fff;
}

.main#stats form {
     border: 1px solid #89f;
     padding: 10px;
     margin: -13px 0 -11px;
}

h3.stats {
     margin-bottom: 9px !important;
}
/* end stats */

/* netdb (main section) */

#netdboverview {
     margin: 15px 0 5px;
     border: 1px solid #89f !important;
}

#netdboverview th {
     padding: 5px;
     font-size: 10pt;
}

#netdboverview td {
     padding: 5px 5px 0;
     padding: 0;
     background: rgba(255,255,255,0.4) !important;
}

#netdbtransports th:first-child, #netdbcountrylist th:first-child {
     text-align: left;
}

#netdbversions, #netdbtransports, #netdbcountrylist {
     border: none;
     margin: -1px 0;
}

#netdbversions {
     border-right: 1px solid #89f;
     border-bottom: 1px solid #89f;
}

#netdbtransports {
     border-bottom: 1px solid #89f;
}

#netdbcountrylist {
     border-left: 1px solid #89f;
     border-bottom: 1px solid #89f;
}

#netdbversions td, #netdbtransports td, #netdbcountrylist td {
     padding: 5px;
}

#netdbcountrylist img {
     margin-right: 5px;
     text-align: right;
}

.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;
}

/* /help */

#volunteer, #sidebarhelp, #configurationhelp, #reachabilityhelp, #legal, #changelog, #faq {
     border: 1px solid #89f;
     padding: 10px 15px 5px;
     margin-bottom: 20px;
     margin-top: 15px !important;
     background: #eff1ff;
     background: rgba(230,230,255,0.5);
     box-shadow: inset 0 0 0 1px #fff;
}

#advancedsettings {
     margin-top: -5px;
     margin-bottom: 20px;
}

#volunteer {
     margin-top: 20px !important;
     padding-bottom: 0 !important;
     background: linear-gradient(to bottom, rgba(230,230,255,0.5), rgba(230,230,255,0.5)), url(/themes/snark/ubergine/images/hat.png) no-repeat scroll right bottom !important;
     background-size: 100% 100%, auto 75% !important;
}

#volunteer ul li, #volunteer ul li:first-child {
     padding: 2px 0 !important;
}

#volunteer .links:not(old) {
     margin: -10px 10px 0 !important;
}

#sidebarhelp h2 {
     margin-bottom: 5px !important;
}

#help h2 {
     margin: -16px -16px 0;
}

#help h3 {
     margin: -5px -16px 3px;
}

#help p {
     padding: 5px 0 0;
     margin-top: 0;
}

#help ul {
     margin-bottom: 8px;
     margin-top: -2px;
     padding-left: 15px;
}

#help ul li:first-child {
     padding-top: 0;
     margin-top: 10px !important;
}

#help ul.links {
     margin-left: 20px;
     padding-top: 0;
}

#help code, #help tt {
     font-size: 8pt;
}

ul#reachability {
     padding-left: 15px;
}

#help li {
     text-align: justify;
     margin-left: 20px;
     margin-right: 0;
}

#help li, #help p, #help td {
     line-height: 140%;
}

#portfaq tr {
     box-shadow: none;
}

#configinfo th {
     box-shadow: inset 0 0 0 1px #fff;
}

#changelog {
     padding: 0;
     margin-top: -5px !important;
     margin-bottom: 10px !important;
}

#changelog h2 {
     margin: -1px -1px 5px !important;
}

#help pre {
     padding-left: 0;
     padding-bottom: 20px;
     margin: -5px 0 5px 10px;
     width: 98%;
     width: calc(100% - 10px);
     height: 600px;
     overflow: auto;
     white-space: pre-wrap;
     font-size: 9pt;
}

p#fullhistory {
     text-align: right;
     margin-bottom: -5px;
     margin: -5px -1px -6px !important;
     background: #fff;
     background: linear-gradient(to right, #eff2ff 50%, #fff);
     border: 1px solid #89f;
     padding: 7px 10px 4px 5px !important;
}

#fullhistory::before {
     content: "";
     display: inline-block;
     vertical-align: middle;
     width: 18px;
     height: 20px;
     background: url(/themes/console/images/buttons/fullview.png) left 45% no-repeat;
     background-size: 14px auto;
}

#help td.infohelp, #help td.infowarn, #help td.infohelp, #help p.infohelp {
     background-size: 24px 24px !important;
     padding-left: 46px !important;
}

/* mini faq */

#faq h3 {
     padding-left: 35px;
     background: url(/themes/console/images/info/question.png) 10px center no-repeat, linear-gradient(to bottom, #fff 50%, #eff2ff 50%) !important;
     background-size: 18px 18px, 100% 100% !important;
     background-blend-mode: luminosity, normal;
     text-transform: none;
     letter-spacing: 0;
     word-spacing: 0;
     font-size: 10.5pt;
}

#faq p.infohelp {
     margin: -11px -16px 4px;
}

#faq ul {
     margin: -5px 15px 0 !important;
}

#portfaq {
     margin: -4px -16px -6px;
     width: auto;
}

#portfaq th:first-child, #portfaq td:first-child {
     font-weight: bold;
     text-align: right;
     padding-top: 6px;
     padding-bottom: 6px;
     padding-left: 10px;
}

#portfaq th:nth-child(n+2) {
     text-align: left;
}

#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 */

/* end /help */

.eventspanel br {
     display: none;
}

.eventspanel h3 {
     margin-top: 0;
}

.eventspanel form {
     margin-top: -11px;
     padding: 10px 10px 10px 50px;
     border: 1px solid #89f;
     background: #fff url(/themes/console/images/info/logs.png) 12px center no-repeat;
     background-size: 28px 28px;
}

.eventspanel select {
     margin-right: 15px;
}

.eventspanel th {
     text-align: left;
}

.main#proof {
     padding: 10px;
     min-width: 570px;
}

#proof p {
     margin: 0;
     padding: 20px 10px 10px;
     border: 1px solid #89f;
     box-shadow: inset 0 0 0 1px #fff, 0 0 1px #ccc;
     background: url(/themes/console/images/info/rosette.png) right 8px top 8px no-repeat #eeeffb;
     background: url(/themes/console/images/info/rosette.png) right 8px top 8px no-repeat rgba(220,225,252,0.3);
     background-blend-mode: luminosity;
}

#proof textarea, #proof textarea:focus {
     line-height: 180%;
     margin: 0;
     border: none;
     padding: 15px 20px;
     width: 100%;
     box-shadow: none;
     color: #333;
     background: none;
     height: 200px;
     overflow: hidden;
     white-space: pre-wrap;
     word-break: break-all;
}

#oldconsole p {
     margin: 0 0 5px;
     padding: 10px 20px;
     line-height: 200%;
     border: 1px solid #89f;
     box-shadow: inset 0 0 0 1px #fff, 0 0 1px #ccc;
     background: #eeeffb;
     background: rgba(220,225,252,0.3);
}

#oldconsole b {
     display: inline-block;
     min-width: 120px;
     margin-right: 8px;
     text-align: right;
}

#certs p {
     margin: 3px 0;
     padding: 10px 5px;
     border: 1px solid #89f;
     background: #fff;
}

#certs h4 + p {
     margin-top: -6px;
     margin-bottom: 10px;
}

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

#advancedsettings h2 {
     margin: 10px 0 0 !important;
}

#advancedsettings p.infohelp {
     margin: -1px 0;
}

#configinfo th {
     text-align: left;
     font-family: "Droid Sans Mono", "Andale Mono", "DejaVu Sans Mono", "Lucida Console", monospace;
     padding: 7px 10px;
     color: #050;
}

#configinfo td {
     text-align: justify;
     padding: 5px 15px;
     background: #eff1ff;
     background: rgba(230,230,255,0.5);
}

#help #configinfo td.infowarn {
     padding: 10px 10px 10px 38px !important;
     border: 1px solid #89f;
     background: #fffff5 url(/themes/console/images/info/infowarn.png) 10px center no-repeat !important;
     background-size: 20px 20px !important;
}

/* informational images */

#bugreports td.infohelp {
     background: #fff url(/themes/console/images/info/bugreport.png) no-repeat 12px center;
     padding: 15px 15px 15px 50px;
     background-size: 28px 28px;
}

p#debugmode {
     padding: 15px 15px 15px 50px;
     background: #fff url(/themes/console/images/info/debug.png) 12px center no-repeat;
     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-size: 28px 28px;
}

p.infowarn {
     border: 1px solid #89f;
     padding: 15px 15px 15px 50px;
     background: #fff url(/themes/console/images/info/infowarn.png) 10px center no-repeat;
     line-height: 130%;
}

.infowarn#tunnelconfig {
     margin-top: 15px;
}

#tunnelconfig td:nth-child(n+2) {
     text-align: left;
     padding-left: 0;
}

#bandwidthconfig tr:first-child .infohelp {
     background: #fff url(/themes/console/images/info/bandwidth.png) 12px center no-repeat;
     padding: 15px 15px 15px 50px;
     background-size: 28px 28px;
}

#addkeyring td.infohelp {
     background: #fff url(/themes/console/images/info/keys.png) 12px center no-repeat;
     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;
     padding: 15px 15px 15px 50px;
     background-size: 28px 28px;
}

#newfamily tr:last-child td:first-child {
     background: #fff url(/themes/console/images/info/label.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;
     padding: 15px 15px 15px 50px;
     background-size: 28px 28px;
}

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

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

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

#floodfillconfig input[type="radio"] {
     margin-right: 3px;
}

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

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

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

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

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

#manualreseed tr:nth-last-child(2) td.infohelp {
     padding: 15px 15px 15px 50px;
     background: #fff url(/themes/console/images/info/box.png) 12px center no-repeat;
     background-size: 28px 28px;
}

#config_peers tr:nth-child(3) td.infohelp {
     padding: 15px 15px 15px 50px;
     border-right: none;
     background: #fff url(/themes/console/images/info/blocked.png) 12px center no-repeat;
     background-size: 28px 28px;
}

h3#shutdownrouter + p.infohelp {
     padding: 15px 15px 15px 50px;
     background: #fff url(/themes/console/images/info/power.png) 12px center no-repeat;
     background-size: 28px 28px;
}

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

h3#systray + p.infohelp {
     padding: 15px 15px 15px 50px;
     background: #fff url(/themes/console/images/info/systray.png) 12px center no-repeat;
     background-size: 28px 28px;
}

h3#servicedebug + p.infohelp {
     padding: 15px 15px 15px 50px;
     background: #fff url(/themes/console/images/info/debug.png) 12px center no-repeat;
     background-size: 28px 28px;
}

h3#browseronstart + p.infohelp {
     padding: 15px 15px 15px 50px;
     background: #fff url(/themes/console/images/info/launch_browser.png) 12px center no-repeat;
     background-size: 28px 28px;
}

.main#config_reseed p.infohelp {
     padding: 15px 15px 15px 50px;
     background: #fff url(/themes/console/images/info/connect.png) 12px center no-repeat;
     background-size: 28px 28px;
}

p#enablefullstats, p#gatherstats {
     padding: 15px 15px 15px 50px;
     background: #fff url(/themes/console/images/info/statistics.png) 12px center no-repeat;
     background-size: 28px 28px;
}

#config_family .infohelp {
      margin-bottom: -1px !important;
      padding: 15px 15px 15px 50px;
      background: #fff url(/themes/console/images/info/family.png) 12px center no-repeat;
      background-size: 28px 28px;
}

/* end informational images */

/* login inputs */

#consolepass input[name="name"], #externali2cp input[name="user"] {
     background: #fff url(/themes/console/images/buttons/user.png) 5px center no-repeat;
     padding: 4px 5px 4px 26px !important;
     background-size: 16px 16px !important;
}

#consolepass input[name="nofilter_pw"], #externali2cp input[name="nofilter_pw"] {
     background: #fff url(/themes/console/images/buttons/password.png) 5px center no-repeat;
     padding: 4px 5px 4px 26px !important;
     background-size: 16px 16px !important;
}

/* logs */

#logs ul {
     margin-left: -22px;
     margin-right: -28px;
     margin: -4px 0 0 -20px;
     display: inline-block;
     word-break: break-all;
}

#logs li {
     list-style: none;
     font: 8.5pt "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", monospace;
     line-height: 130%;
     text-align: left;
     display: inline-block;
     width: 100%;
}

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

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

#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: #cc0000;
}

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

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

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

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

/* end logs */

/* peers, profiles, tunnels */

.cells tt, #profilelist tt {
     font-size: 8.5pt !important;
}

/* end peers, profiles, tunnels dests */

/* /tunnels */

tt a, .cells tt {
     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_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;
}

.tunnel_peer {
     display: inline-block;
     min-width: 56px;
     text-align: right;
}

.tunnel_local {
     font-size: 8pt;
     text-transform: lowercase;
     background: rgba(187, 187, 255, 0.3);
     background: #d5d5ff;
     border-radius: 2px;
     text-align: center;
     padding: 2px 0;
     margin-left: -4px;
     margin-right: 4px;
}

.tunnel_peer:empty {
     vertical-align: top;
}

.tunneldisplay td {
     padding-top: 4px;
     padding-bottom: 4px;
}

#tunnel_defs td:nth-child(even), #tunnel_defs td:first-child {
     width: 1%;
}

@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 (min-width: 1500px) {
.tunnel_cap {
     margin-left: 10px;
     padding: 0 1px;
     min-width: 14px;
}

.tunnel_id:empty {
     margin-right: -10px;
}
}

/* end tunnels */

/* /peers */

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

#ntcpconnections .tablefooter td:nth-child(3), #ntcpconnections .tablefooter td:nth-child(4), #ntcpconnections .tablefooter td:nth-child(5), #ntcpconnections .tablefooter td:nth-child(6),
#udpconnections .tablefooter td:nth-child(3), #udpconnections .tablefooter td:nth-child(4), #udpconnections .tablefooter td:nth-child(7), #udpconnections .tablefooter td:nth-child(8),
#udpconnections .tablefooter td:nth-child(10), #udpconnections .tablefooter td:nth-child(11), #udpconnections .tablefooter td:nth-child(12), #udpconnections .tablefooter td:nth-child(13) {
     text-align: right;
}

#udpconnections .tablefooter td:nth-child(9) {
     text-align: center !important;
}

#ntcpconnections td:nth-child(4), #ntcpconnections td:nth-child(5), #udpconnections td:nth-child(4),
#udpconnections td:nth-child(5), #udpconnections td:nth-child(8), #udpconnections td:nth-child(12) {
     white-space: nowrap;
}

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


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

#udpconnections th:nth-child(6), #udpconnections th:nth-child(7), #udpconnections th:nth-child(n+9) {
     text-align: right;
}

#udpconnections th:nth-child(12) {
     text-align: center;
}

.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+13), #udpconnections .tablefooter td:nth-child(n+10) {
     padding-right: 1% !important;
}

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

.peer_arrow {
     display: inline-block;
     width: 18px;
     text-align: center;
     margin-right: 3px;
}

/* end peers */

/* 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;
}

th code {
     -moz-user-select: all;
     -webkit-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;
}

.netdb_addresses {
     line-height: 150%;
}

.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) > * {
     display: inline-block;
     vertical-align: middle !important;
}

.netdbentry th a img, .sybil_routerinfo th a img {
     display: inline-block;
     vertical-align: middle;
     margin-right: 5px;
}

.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: -50px;
     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;
}

.sybil_routerinfo b.netdb_transport {
     margin-left: -13px;
     margin-right: 0;
}

.sybil_routerinfo td:first-child, .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 */

.leaseset th:last-child, .leaseset td:last-child, .sybil_routerinfo th:last-child, .sybil_routerinfo td:last-child {
     border-right: 1px solid #89f !important;
}

.sybil_routerinfo table td:last-child {
     border-right: none !important;
}

.sybilinfo_params {
     padding: 0;
     border-bottom: 1px solid #89f;
}

.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: rgba(255, 255, 255, 0.5);
     padding: 4px 5px;
}

.sybilinfo_container b {
     color: #335;
}

.sybil_routerinfo tr:last-child {
     border-top: none;
}

.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_addresses td:first-child {
     max-width: 155px;
     font-weight: bold;
     padding-right: 9px;
}

.sybil_addresses table {
     width: 100%;
     margin: 0;
}

.sybil_addresses {
     padding: 0;
     border-bottom: 1px solid #89f;
}

.sybil_addresses table, .sybil_addresses td {
     border: none;
}

.threatpoints + ul {
     -moz-columns: auto 500px;
     -webkit-columns: auto 500px;
     columns: auto 500px;
     -moz-column-gap: 55px;
     -webkit-column-gap: 55px;
     column-gap: 55px;
     -moz-column-rule: 1px solid #89f;
     -webkit-column-rule: 1px solid #89f;
     column-rule: 1px solid #89f;
     padding-top: 3px;
     padding-bottom: 3px;
}

.threatpoints + ul li:first-child {
     margin-top: 0 !important;
     padding-top: 0 !important;
}

.threatpoints + ul li:last-child {
     margin-bottom: 0 !important;
     padding-bottom: 0 !important;
}

.threatpoints + ul li {
     list-style: none;
     margin-left: -15px;
     line-height: 120%;
     break-inside: avoid;
     page-break-inside: avoid;
     -webkit-column-break-inside: avoid;
}

.threatpoints + ul li a {
     white-space: nowrap;
}

/* end sybils */

/* debug */

.main#debug h2 {
     padding: 8px 10px;
     font-size: 12pt;
}

.main#debug h3 {
     padding: 5px 10px;
}

.main#debug td[colspan="2"] {
     text-align: left;
}

.main#debug h2 + hr {
     display: none;
}

#debug h2 + table {
     margin-top: -11px;
}

#debug th {
     text-align: left;
}

#debug tr {
     border-bottom: 1px solid #89f;
}

#debug td {
     padding: 2px 5px;
}

#debug .expiry ul {
     margin: 3px 0 10px -35px !important;
}

#debug li:first-child {
     padding: 10px 0 0;
}

#debug li:last-child {
     padding-bottom: 0;
     margin-bottom: -9px;
}

#debug li {
     list-style: none;
     line-height: 150%;
     padding-bottom: 0;
     margin-left: -5px;
     margin-bottom: -2px;
}

.debug_container {
     background: #eef;
     border: 1px solid #89f;
     padding: 10px 15px;
     margin-top: -16px;
}

.debug_container:empty, #debug ul:empty {
     display: none;
}

.debug_container, #debug td {
     line-height: 140%;
}

.main#debug h3 + table {
     margin-top: -11px;
}

#debug td {
    padding-top: 5px;
    padding-bottom: 5px;
}

#debug td ul {
     margin: 0;
}

#debug td li {
     padding: 0 0 -10px;
}

#debug h2 {
     margin: 12px 0 0;
     background: url(/themes/console/images/info/debug.png) right 6px center no-repeat, linear-gradient(to bottom, #fff 50%, #eff2ff 50%) !important;
     background-size: 20px 20px, 100% 100% !important;
     background-blend-mode: luminosity, normal, normal;
}

h2#debug_portmapper {
     margin-top: 14px !important;
}

#debug h3 {
     padding-left: 10px;
}

.debug_container + h3 {
     margin-top: -1px;
}

.debug_section h2 + h3, .debug_container:empty + h3, h3 + .debug_container, .debug_section table + h3, .debug_container.buckets {
     margin-top: -11px !important;
}

.expiry td {
     padding-left: 3% !important;
}

.debug_container.buckets {
     word-break: break-all;
     margin-bottom: 5px;
     padding-bottom: 0;
     max-height: 600px;
     overflow: auto;
}

.buckets hr {
     display: none;
}

#debug th:first-child, #debug td:first-child {
     padding-left: 10px;
}

#debug td:last-child {
     text-align: right;
     vertical-align: top;
     padding-right: 10px;
}

.debug_outboundtarget td:first-child {
     padding-left: 3% !important;
}

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

#portmapper th:last-child, #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;
}

#debug h3.debug_outboundsessions {
     margin-top: -6px !important;
     background: url(/themes/console/images/outbound.png) 6px center no-repeat, linear-gradient(to bottom, #fff 50%, #eff2ff 50%) !important;
}

#debug h3.debug_inboundsessions {
     background: url(/themes/console/images/inbound.png) 6px center no-repeat, linear-gradient(to bottom, #fff 50%, #eff2ff 50%) !important;
}

.debug_version {
     color: #070;
}

/* end debug */

/* jar dump */

#jardump {
     padding: 0;
     overflow-x: auto;
     overflow-y: hidden;
     min-width: 570px;
}

#jardump table {
     border-left: none;
     border-right: none;
     margin-top: -1px;
     margin-bottom: -1px;
     font-size: 8pt;
}

#jardump th {
     padding: 5.5px 5px;
     font-size: 9pt;
     text-align: center;
     border-left: none !important;
     border-right: none !important;
}

#jardump th:first-child {
     text-align: left;
}

#jardump tr td {
     border-top: 1px solid #cfd6ff !important;
}

#jardump td {
     vertical-align: top;
}

#jardump td:nth-child(2) {
     font-style: italic;
}

#jardump tt {
     letter-spacing: -0.05em;
}

#jardump a tt {
     color: #006 !important;
}

#jardump a:hover tt {
     color: #f60 !important;
}

.sha256 tt, .revision tt {
     font-weight: normal !important;
}

.revision, .sha256, .unsignedmod {
     -moz-user-select: all;
     -webkit-user-select: all;
     user-select: all;
}

.subheading.routerfiles {
     background: url(/themes/console/images/eepsite.png) right 5px center no-repeat, linear-gradient(to right, #fff, #eef) !important;
     background-size: 16px auto, 100% 100% !important;
     background-blend-mode: luminosity, normal;
}

.subheading.pluginfiles {
     background: url(/themes/console/images/plugin.png) right 5px center no-repeat, linear-gradient(to right, #fff, #eef) !important;
     background-size: 16px auto, 100% 100% !important;
     background-blend-mode: luminosity, normal;
}

.subheading.pluginfiles {
     border-top: 1px solid #89f !important;
}

#jardump td {
     border-left: 1px inset #cfd6ff !important;
     vertical-align: middle;
     text-align: center;
}

#jardump td:first-child, #jardump td:last-child {
     text-align: left;
}

#jardump td:nth-child(2) {
     text-align: right;
}

#jardump td:first-child {
     border-left: none;
     transition: ease padding 0.05s;
}

#jardump td:last-child {
     padding: 1px 0;
}

.unsignedmod {
     display: inline-block;
     padding: 1px 2px;
     word-break: break-all;
     -moz-user-select: all;
     -webkit-user-select: all;
     user-select: all;
}

#jardump hr {
     margin: 2px 0 !important;
     background: #cfd6ff;
}

.unsignedmod:empty {
     display: none;
}

#jardump td:first-child {
     padding-left: 26px;
     background-image: url(/themes/console/images/info/box.png);
     background-position: 5px center;
     background-repeat: no-repeat;
     background-size: 16px 16px;
}

#jardump tr:hover td:first-child {
     background: url(/themes/console/images/info/box.png) 5px center no-repeat, linear-gradient(to bottom, #fff, #ffe);
     background: url(/themes/console/images/info/box.png) 5px center no-repeat #ffe;
     background-size: 16px 16px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
#jardump td:last-child {
     word-break: break-all;
}
}

/* end jardump */

/* responsive layout */

@media screen and (max-width: 900px) {
.welcome h2 {
     font-size: 10pt !important;
}

.homelinkedit input[name="nofilter_url"] {
     width: 240px !important;
}

#newfamily input[type="text"] {
     width: 160px !important;
}

#joinfamily input[type="file"] {
     width: 220px;
}

h3.ptitle, h3.tabletitle, th.th_title, h3#udpcon, h3#ntcpcon {
     font-size: 10pt;
}

#ntcpconnections th:last-child:not(old) {
     font-size: 0;
}

#ntcpconnections th:last-child::before {
     content: url(/themes/console/images/info/backlogged.png) !important;
}

#consolepass input[name="name"], #externali2cp input[name="user"],
#consolepass input[name="nofilter_pw"], #externali2cp input[name="nofilter_pw"] {
     width: 130px !important;
     min-width: 130px !important;
}

input[name="pluginURL"] {
     width: 190px !important;
     margin-left: 0 !important;
}

#plugininstall tr:nth-child(3) td:nth-last-child(2), #plugininstall tr:nth-child(5) td:nth-last-child(2) {
     background-size: 0 0 !important;
     padding-left: 5px !important;
}

#plugininstall .optionsave, #plugininstall2 .optionsave {
     padding-right: 0 !important;
}

input[name="pluginFile"] {
     transform: scale(0.9);
     margin-left: 0 !important;
}

.main#profiles table, .main#peers table, .main#tunnels table, .main#jobs table {
     font-size: 8pt;
}

#netdbversions th:last-child, #netdbtransports th:last-child, #netdbcountrylist th:last-child {
     max-width: 60px;
     overflow: hidden;
     text-overflow: ellipsis;
}

#netdbversions td, #netdbtransports td, #netdbcountrylist td {
     font-size: 8.5pt !important;
}
}

@media screen and (max-width: 1000px) {
.welcome h2 {
     font-size: 11pt;
}

div.confignav {
     font-size: 8.5pt !important;
}

.tab2 {
     padding: 3px 8px;
}

.tab a {
     padding: 2px 10px;
}

input.search[type="text"] {
     width: 200px;
}

input[name="pluginURL"] {
     width: 260px;
}

#plugininstall tr:nth-child(3) td:nth-last-child(2), #plugininstall2 tr:nth-child(2) td:nth-last-child(2) {
     background-size: 20px 20px;
     padding: 15px 0 15px 36px;
     background-position: 10px center;
}

.logo {
     float: none;
     position: absolute;
     top: 10px !important;
     margin: 0 5px !important;
     display: block;
     background-size: 200px auto !important;
     min-width: 530px;
     width: calc(100% - 36px);
}

.warning {
     margin: 140px 5px 0 !important;
}

.warning h3:first-child {
     font-size: 11pt;
}

.logo a:nth-child(n+2) {
     width: 25%;
     white-space: nowrap;
     font-size: 10pt;
}

.proxyfooter {
     display: none;
}

img[src$="bound.png"] {
     transform: scale(0.9);
}

.main#tunnels th, .main#profiles th {
     font-size: 8pt;
}

#config_update .messages {
     background-size: 22px 22px;
     background-position: 8px center;
     padding-left: 40px;
}

.main#view_profile {
     padding: 0 !important;
     min-width: 540px;
}

#view_profile pre {
     margin: -5px 5px;
     width: calc(100% - 5px);
}

#view_profile h2 {
     margin: -1px;
     font-size: 13pt;
}

#viewprofile {
     border: none;
     min-width: 500px;
}

input[name="speed"], input[name="capacity"] {
     min-width: 80px;
     width: 80px;
}

#netdbversions th, #netdbtransports th, #netdbcountrylist th {
     font-size: 9pt !important;
}

.main#events {
     min-width: 510px;
}

#events select {
     min-width: 100px;
}

#events table {
     table-layout: fixed;
     width: 100%;
}

#events td:last-child {
     word-break: break-all;
}
}

@media screen and (max-width: 1200px) {
.tab, .tab2 {
     padding: 1px 0;
     min-width: 50px !important;
}

.tab2 {
     padding: 3px 10px;
}

.tab a {
     padding: 2px 12px;
}

.main#peers th {
     font-size: 8pt;
}

#peers img[src^="/flags.jsp"], #profiles img[src^="/flags.jsp"], #tunnels img[src^="/flags.jsp"] {
     transform: scale(0.9);
}

p#enablefullstats input[type="checkbox"] {
     float: left;
     margin-top: 0;
}

/* profiles, peers, tunnels, job queue, netdb - whitespace reduction */

.main#profiles, .main#peers, .main#tunnels, .main#jobs, .main#netdb {
     padding: 5px;
     min-width: 560px;
}

.main#profiles .confignav, .main#netdb .confignav {
     margin: -6px;
}

.main#profiles table, .main#peers table, .main#tunnels table {
     margin: 5px 0;
}

#ntcpconnections {
     margin-bottom: 0 !important;
}

.main#profiles .infohelp {
     margin: 11px 0 5px !important;
}

.widescroll + .infohelp {
     margin: 0 !important;
}

.main#peers #upnpstatus {
     margin-bottom: 5px 0 !important;
}

.main#peers .infohelp {
     margin: 5px 0 0;
}

.main#profiles h3, .main#peers h3, .main#tunnels h3 {
     margin: 5px 0 -6px !important;
     font-size: 10.5pt;
}

.main#tunnels h3 {
     margin-top: -2px !important;
}

.main#jobs h3 {
     margin-top: 0;
}

.main#tunnels h3#exploratorytunnels {
     margin-top: 0 !important;
}

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

h2 {
     font-size: 12pt !important;
}

.main#jobs h2 {
     margin-bottom: 5px !important;
}

.main#jobs h3 + ol:empty + h3 {
     margin-top: -16px !important;
}

#jobstats {
     margin-bottom: 0;
}

h3#totaljobstats {
     margin-top: 11px !important;
}

.statusnotes:last-child {
     margin-bottom: 0;
}

#profile_defs, #floodfills, #profiles ul, .main#peers h3#transports {
     margin-bottom: 0 !important;
}

.main#peers pre {
     margin-top: -1px;
}

.main#peers pre + h3 {
     margin-bottom: 5px !important;
}

#floodfills, #profiles ul {
     margin-top: 11px !important;
}

table[id*="connections"] td, #floodfills td,  #profilelist td, #jobstats td, .main#tunnels td {
    padding: 3px;
    border-right: 1px inset #cfd6ff;
}

.main#netdb #netdboverview, #netdblookup {
     margin: 11px 0 0;
}

#netdb h3.tabletitle, h3.sybils {
     font-size: 10pt;
}

#netdblookup {
     margin-bottom: -11px;
}

.netdbentry, #leasesetdebug, #leasesetsummary, table.leaseset {
     margin: 11px 0 -6px !important;
}

.netdbentry:last-child, table.leaseset:last-child {
     margin-bottom: 0 !important;
}

.netdbentry th code, .sybil_routerinfo th code, .leaseset th code {
     font-size: 8pt;
}

#debugmode {
     margin-bottom: -6px !important;
}

table.sybil_routerinfo:last-child {
     margin-bottom: 0 !important;
}

#banlist li {
     width: calc(100% - 5px);
}

#schedjobs {
     margin: -11px 0 -6px !important;
}

#upnpstatus + #ntcpcon {
     margin-top: 5px !important;
}

/* end whitespace reduction */

#help h3, #faq h3 {
     font-size: 10pt !important;
}

#portfaq td:nth-child(2) {
     white-space: normal;
}

.eventspanel form {
     padding: 10px !important;
     background: #fff !important;
}

.eventspanel select {
     margin-right: 8px !important;
}
}

@media screen and (max-width: 1500px) {
#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;
}

.langbox {
     margin-top: 3px !important;
}

#sb_localtunnels td:first-child {
     padding-right: 3px !important;
}

.tunnels_client th:first-child:not(old) {
     font-size: 0 !important;
}

.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.3em;
}

#help h3, #faq h3 {
     font-size: 10.5pt !important;
}
}

@media screen and (min-width: 900px) {
#consolepass input[name="name"], #externali2cp input[name="user"],
#consolepass input[name="nofilter_pw"], #externali2cp input[name="nofilter_pw"] {
     width: 160px;
}
}

@media screen and (min-width: 1200px) {
.cells tt, #profilelist tt {
     margin-left: 2px !important;
}
}

@media screen and (min-width: 1400px) {
#help #changelog pre:not(old) {
     columns: 560px auto;
     column-gap: 40px;
     column-rule: 1px dotted #abf;
     margin-left: 0;
     padding-left: 10px;
}
}

@media screen and (min-width: 1500px) {
body, .main, .main td, .news p, #news p, .tab, .tab2, .main li b, .joblog li, .themelabel, .ui_lang, .applabel a,
.statusnotes, .routersummary button.download, #peerdefs, #profile_defs, #thresholds, #configinfo, .infohelp, .infowarn,
button, input, select, textarea, code, tt, pre, .netdbentry th, .configtable th, .statlist a[name],
.statlist b, .statlist li b, .statlist a[name]:hover, div.messages, th {
     font-size: 10pt !important;
}

.routersummary td, .routersummary a, .routersummary button, .routersummary h4, .routersummary h4 a, div.news, #banlist li,
.news #newsStatus, .news #newsDisplay, .topness, .footnote, .cells tt, #profilelist tt, .sb_notice, #help code, #help tt {
     font-size: 9pt !important;
}

.routersummary .reload, .routersummary .stop {
     min-width: 102px !important;
}

.cells tt, #profilelist tt {
     margin-left: 3px !important;
}

tt a, .cells tt, #profilelist tt {
     font-size: 9pt !important;
}

.main, .news, h1 {
     margin-left: 232px !important;
}

.routersummary {
     width: 225px !important;
}

.routersummary img[src$="i2plogo.png"] {
     margin-left: -2px;
     transform: none;
     width: 210px;
     margin-top: -1px;
}

.routersummary table[id^="sb_"] {
     width: 226px !important;
}

.routersummary h3 a, #netdboverview th {
     font-size: 11pt !important;
}

.routersummary h3 {
     padding: 4.5px 0 !important;
}

#sb_internals a, #sb_services a, #sb_advanced a, #sb_help a {
     max-width: 212px;
}

.routersummary button[type="submit"] {
     min-width: 100px;
     margin: 2px 4px 1px;
}

.percentBarOuter {
     width: 217px;
}

div.app {
     width: 160px !important;
}

.app img {
     padding: 10px 60px 9px;
}

.applabel {
     width: 156px !important;
     padding: 4px 2px 2px !important;
}

.applabel a {
     height: 16px !important;
     padding-top: 3px;
}

.footnote {
     font-size: 8pt !important;
}

h3, h3.ptitle, h3.tabletitle, th.th_title {
     font-size: 11pt;
}

.sb_newsheadings ul {
     width: 193px;
}

.newsentry h3, .newsentry h3 a, #news.main h3, .newsDate {
     font-size: 10.5pt !important;
}

.newsAuthor {
     font-size: 9pt;
     background-size: 12px 12px;
     padding-left: 14px;
     background-position: left center;
}

#news #newsDisplay, #news #newsStatus {
     margin-bottom: 0 !important;
}

#console h3 {
     font-size: 12pt;
}

#netdb h3.tabletitle, h3.sybils {
     font-size: 10.5pt;
}

h3#i2pclientconfig, h3.ptitle {
     margin-bottom: -15px !important;
}

h3#systray, h3#servicedebug, h3#browseronstart {
     margin-bottom: -15px !important;
}

h3#pluginmanage {
     margin-bottom: -20px !important;
}

h4#updateplugins {
     margin-top: -16px !important;
     font-size: 10pt;
     padding: 5px 10px;
}

h3#webappconfig {
     margin-bottom: -33px;
}

#shutdown.formaction, #restart.formaction, #systray.formaction, #runonstart.formaction, #dumpthreads.formaction, #browserstart.formaction,  #updateplugins.formaction {
     margin-top: -15px;
}

button.control {
     font-size: 0 !important;
     padding: 14px !important;
}

#jardump td {
     font-size: 9pt !important;
}

#jardump tt, #wrapperlogs pre {
     font-size: 8pt !important;
}

#leasesetdebug th, #leasesetsummary th {
     font-size: 11pt !important;
}

div.news {
     padding-bottom: 5px !important;
}

.sorry {
     margin-left: 232px !important;
}

.joblog h3 {
     margin-top: 8px;
}

.subheading b {
     font-size: 10.5pt !important;
}

#stats.main form {
     margin-top: -14px;
}

.confignav {
     padding: 0 5px !important;
}

.tab, .tab2 {
     margin-top: -1px !important;
}

#help .confignav {
     padding: 0 !important;
     position: sticky;
     top: -1px;
     z-index: 999;
}

#help .tab {
     margin-top: -1px !important;
     margin-bottom: -1px !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;
}

.themechoice, .langselect {
     width: 140px !important;
}

.themechoice .optbox, .langselect .optbox {
     width: 144px !important;
}

.themechoice .optbox {
     margin-left: -48px !important;
}

.langselect .optbox {
     margin-left: -64px !important;
}

.langselect img[src^="/flags"] {
     margin-left: -81px !important;
}

.sb_newsheadings table {
     width: 224px !important;
}

.sb_newsheadings td:last-child, .sb_newsheadings tr:hover td:last-child {
     background-position: 4px 5px !important;
}
}

/* end responsive layout */

/* Edge/IE tweaks */

_:-ms-lang(x), #sidebarconf tr, .homelinkedit tr, #clientconfig tr, #webappconfig tr,  #configstats tr, #tunnelconfig tr, #profiles tr,
#floodfills tr, #netdboverview tr, .netdbentry tr, #leasesetdebug tr, #leasesetsummary tr, .leaseset tr,
.sybil_routerinfo tr, #enviro tr, #schedjobs tr, #jobstats tr, #eventlog tr, .tunneldisplay tr, #udpconnections tr, #ntcpconnections tr {
     border-top: 1px solid #cfd6ff;
}

_:-ms-lang(x), #peerdefs td:first-child {
     border-right: 1px solid #cfd6ff;
}

_:-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 {
     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, table#externali2cp th {
     padding: 7px 10px !important;
}

.options input[type="checkbox"], #i2pupdates .options .optbox {
     margin: 0 3px 0 0;
}

#reseedconfig textarea {
      min-height: 76px !important;
      height: 76px !important;
      margin: 6px 10px 6px 0 !important;
      padding: 3px 5px;
}

#reseedconfig .nowrap b {
     display: inline-block;
     min-width: 100px;
     text-align: right;
     margin-right: 5px;
}

#manualreseed {
     margin-bottom: -3px !important;
}

#resetreseed {
     padding: 5px 5px 0 0;
}

/* /configui */

#passwordheading {
     margin-top: 0 !important;
}

#langsettings {
     margin-bottom: -6px !important;
}

/* end /configui */

#pluginconfigtext + form {
     float: right;
     margin: -42px 6px 0 0;
}

#externaltcp .nowrap:first-child {
     margin: 5px 0 -18px !important;
     display: inline-block;
}

#cputype {
     display: inline-block;
     margin: -2px 2px -2px 0;
     padding: 2px 5px;
     font-weight: bold;
     text-transform: uppercase;
     border-radius: 2px;
     background: #ddf;
}

#wrapperlogs pre {
     height: 400px;
     resize: vertical;
}

/* 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 */

.buckets br + br {
     line-height: 5px;
}

#debug td div, #debug td ul {
     columns: 400px auto;
}

