diff --git a/build.xml b/build.xml
index bf7fe5676..d6af47fdd 100644
--- a/build.xml
+++ b/build.xml
@@ -347,6 +347,10 @@
+
+
+
+
diff --git a/history.txt b/history.txt
index b76f3f063..0af8609e9 100644
--- a/history.txt
+++ b/history.txt
@@ -1,3 +1,7 @@
+2009-11-09 dr|z3d
+ * New midnight blue lightweight theme; supports IE and provisions its own console_big.css
+ * Streamlining and honing of console_big.css
+
2009-11-08 zzz
* Console:
- countries.txt: Convert to mixed case, include in update
diff --git a/installer/resources/themes/console/classic/console_big.css b/installer/resources/themes/console/classic/console_big.css
index 79c5ea826..e1f56c69e 100644
--- a/installer/resources/themes/console/classic/console_big.css
+++ b/installer/resources/themes/console/classic/console_big.css
@@ -1,5 +1,7 @@
-/* Classic & Midnight Themes */
-/* Larger fontsize override for sidepanel to accomodate foreign charactersets */
+/* I2P Theme: I2P Classic Theme Override */
+/* Description: Larger fontsize override for console to accomodate foreign charactersets */
+/* Author: Dr|Z3d */
+
/* sidepanel */
@@ -13,26 +15,64 @@ div.routersummary h3 {
div.routersummary h4 {
font-size: 11.5pt;
+ letter-spacing: 0;
}
div.routersummary table {
- font-size: 8.5pt;
+ font-size: 9pt;
+ margin: -5px 0px -5px -1px;
+ width: 188px !important;
}
div.routersummary table a:link, div.routersummary table a:visited {
font-size: 10.5pt;
-}
-
-div.tunnels a{
- font-size: 8pt !important;
}
+div.tunnels a {
+ font-size: 9pt !important;
+}
+
+div.tunnels table {
+ width: 186px !important;
+ text-align: center;
+ margin: -4px 1px !important;
+}
+
+div.tunnels td:first-child, div.tunnels td:last-child {
+ width: 16px;
+}
+
+div.tunnels td:last-child {
+ text-align: left;
+}
+
+div.tunnels td {
+ padding: 0 2px;
+}
/* global overrides */
-a, b {
+a, b, div.routersummary h3 a, div.routersummary h4 {
font-weight: normal !important;
+ font-size: 100%;
}
body {
- font: 10pt/140% "Bitstream Vera Sans", Verdana, Helvetica, Sans, sans-serif;
+ font: 10pt Verdana, "Bitstream Vera Sans", Helvetica, Sans, sans-serif;
+}
+
+div.main, div.main p, div.news p {
+ line-height: 140%;
+}
+
+div.joblog li i {
+ font-weight: normaL;
+}
+
+b, div.joblog b {
+ color: #003;
+ font-size: 110%;
+}
+
+table code {
+ font-size: 120%;
}
\ No newline at end of file
diff --git a/installer/resources/themes/console/midnight/console.css b/installer/resources/themes/console/midnight/console.css
new file mode 100644
index 000000000..38f83a7d7
--- /dev/null
+++ b/installer/resources/themes/console/midnight/console.css
@@ -0,0 +1,817 @@
+/* I2P Theme: Midnight */
+/* I2P Description: Minimalist Midnight Blue, based on Classic theme.*/
+/* Author: Dr|Z3d */
+
+
+body {
+ margin: 2px 0 0 2px;
+ padding: 0;
+ text-align: left;
+ background: #000;
+ color: #eef;
+ font: 9pt/140% "Lucida Sans Unicode", "Bitstream Vera Sans", Verdana, Tahoma, Helvetica, sans-serif;
+}
+
+.hide {
+ display: none;
+}
+
+img {
+ border: none;
+}
+
+pre {
+ overflow: auto;
+ font-size: 8pt !important;
+ width: 95%;
+ padding-top: 10px;
+}
+
+/* http proxy error sidepanel */
+
+div.logo {
+ float: left;
+ position-relative: top 15px ;
+ width: 200px;
+ margin: 0 0 0 20px;
+ padding: 10px 5px;
+ text-align: center;
+ border: 1px solid #99f;
+ background-color: #00000A;
+ -moz-box-shadow: inset 0px 0px 0px 2px #00000A;
+ -khtml-box-shadow: inset 0px 0px 0px 2px #00000A;
+}
+
+div.logo hr {
+ color: #99f;
+ background: #99f;
+ height: 1px;
+ border: 0px solid #99f;
+ margin: 8px -3px;
+}
+
+div.logo a:link, div.logo a:visited {
+ text-shadow: 0px 0px 1px rgba(0, 0, 32, 0.3);
+}
+
+div.logo a:active {
+ text-shadow: 0px 0px 1px rgba(255, 96, 0, 0.5);
+ color: #f60;
+}
+
+div.logo a:hover {
+ text-shadow: 0px 0px 1px rgba(128, 0, 0, 0.5);
+ color: #f90;
+}
+
+/* http proxy error warning */
+
+div.warning {
+ margin: 20px 20px 10px 260px;
+ padding: 0px 20px 20px 75px;
+ background: #001;
+ border: 1px solid #99f;
+ text-align: left;
+ color: inherit;
+ background-image:url("../images/itoopie_sm.png");
+ background-position: 12px center;
+ background-repeat:no-repeat;
+ -moz-box-shadow: inset 0px 0px 0px 1px #f60;
+ -khtml-box-shadow: inset 0px 0px 0px 1px #f60;
+}
+
+div.warning a:link {
+ color: #f60;
+ text-shadow: 0px 0px 1px rgba(255, 96, 0, 0.3);
+}
+
+div.warning a:visited{
+ color: #f90;
+}
+
+div.warning a:hover{
+ color: #f90;
+ text-shadow: 0px 0px 1px rgba(255, 128, 0, 0.5);
+}
+
+div.warning a:active{
+ color: #900;
+}
+
+div.warning hr {
+ color: #fb7;
+ background: #fb7;
+ height: 1px;
+ border: 0px solid #fb7;
+ margin: 10px 0 5px 0;
+}
+
+div.warning h3 {
+ border-bottom: 1px solid #fb7;
+ padding-bottom: 10px;
+}
+
+/* console error messages */
+
+div.sorry {
+ padding: 20px;
+ background: #003;
+ margin: -2px 1px 0 200px;
+ border: 1px solid #99f;
+ text-align: justify;
+ -moz-box-shadow: inset 0px 0px 0px 1px #d00;
+ word-wrap: break-word;
+ font-weight: bold;
+ color: #eef;
+}
+
+div.sorry hr {
+ color: #eef;
+ background: #eef;
+ height: 1px;
+ border: 1px solid #99f;
+ margin: 10px 0;
+}
+
+div.toolbar {
+ margin: 0em 0em 2em 0em;
+ font-weight: bold;
+ display: none !important;
+}
+
+div.routersummaryouter {
+ float: left;
+ width: 200px;
+ margin: 0 0 5px 0px;
+ padding: 0;
+ border: 0;
+ clear: left; /* fixes a bug in Opera */
+}
+
+div.routersummary { background: #00000A; width: 190px; color: inherit; margin: 0;
+padding: 10px 1px 7px 1px; text-align: center !important; border: 1px solid
+#99f; font-size: 9pt; word-wrap: break-word; font: 9pt/125%; -moz-box-shadow:
+inset 0px 0px 0px 1px #00000A; }
+
+div.routersummary input[type=text] {
+ text-align: right !important;
+}
+
+div.routersummary hr {
+ color: #99f;
+ background: #99f;
+ height: 1px;
+ border-bottom: 0px solid #99f;
+ margin: 8px -1px 7px -1px;
+/* -moz-box-shadow: inset 0px 1px 1px 1px #99f;*/
+}
+
+div.routersummary h3 {
+ border: 0px solid #f00;
+ font-size: 9.5pt;
+ letter-spacing: 0.05em;
+ margin: -6px 1px -6px 1px;
+ padding: 1px 0;
+ background: #002;
+ text-transform: uppercase;
+}
+
+div.routersummary h3 a {
+ text-decoration: none;
+ line-height: 105%;
+}
+
+div.routersummary h4 {
+ border: 0px solid #f00;
+ border-bottom: 0 !important;
+ font-size: 8.5pt;
+ letter-spacing: 0.05em;
+ margin: -6px 1px -5px 1px !important;
+ padding: 1px 3px;
+ background: #001;
+ text-transform: capitalize;
+ text-decoration: none !important;
+ color: #2b2;
+ line-height: 100% !important;
+}
+
+div.routersummary table {
+ border: 0;
+ text-align: center !important;
+ margin: -5px 0px -5px 2px;
+ width: 185px !important;
+ overflow: hidden;
+ font-size: 8pt;
+ padding: 0 -12px;
+ background-image: none !important;
+ background-color: transparent !important;
+}
+
+div.routersummary a {
+ line-height: 105%;
+}
+
+div.routersummary tr {
+ background-image: none !important;
+ background-color: transparent !important;
+ border: 0 !important;
+}
+
+div.tunnels table{
+ margin: -2px 0 -4px -4px !important;
+ text-align: right !important;
+}
+
+.tunnels tr {
+ padding: 4px 0 !important;
+}
+
+.tunnels td:first-child {
+ padding-right: 2px;
+}
+
+.tunnels td:last-child {
+ width: 16px;
+}
+
+div.routersummary form {
+ margin-top: -8px !important;
+ margin-bottom: -8px !important;
+}
+
+div.refresh {
+ margin-top: 10px !important;
+ margin-bottom: 10px !important;
+ padding: 2px 0 !important;
+}
+
+div.routersummary p {
+ padding: 0;
+}
+
+div.routersummary a {
+}
+
+div.routersummary a:link, div.routersummary a:visited {
+ text-shadow: 0px 0px 1px rgba(0, 0, 32, 0.3);
+}
+
+div.routersummary a:hover {
+ text-shadow: 0px 0px 1px rgba(255, 96, 0, 0.7);
+ color: #f60;
+}
+
+div.routersummary td {
+ padding: 0 1px;
+ background-image: none !important;
+ border: 0 !important;
+}
+
+div.main {
+ margin: 0px 5px 5px 200px;
+ padding: 15px 15px 10px 15px;
+ background: #00000A;
+ border: 1px solid #99f;
+ border-top: 0;
+ text-align: left;
+ color: #eef;
+ min-width: 570px;
+ -moz-box-shadow: inset 0px 0px 2px 0px #005;
+}
+
+div.main ul {
+ margin: -10px 0 -10px -10px;
+}
+
+div.main li {
+ padding: 0 0 5px 0;
+ list-style: square;
+ word-wrap: break-word;
+ margin-right: 20px;
+}
+
+div.main li:first-child {
+ padding-top: 15px;
+}
+
+div.main hr:last-child {
+ margin: 15px 0 10px 0;
+}
+
+div.main textarea {
+ width: 98% !important;
+ margin: 2px 0 2px 5px;
+ min-height: 96px;
+ background: #001;
+ color: #eef;
+}
+
+div.main h2 {
+ margin-top: 20px;
+ margin-bottom: -5px;
+}
+
+div.welcome {
+ margin-top: 5px;
+}
+
+div.main h2:first-child, div.main h3:first-child {
+ margin-top: 0px;
+ margin-bottom: -5px;
+}
+
+div.wideload h2 {
+ margin-bottom: 0px !important;
+}
+
+div.wideload h3:first-child {
+ margin-top: 0 !important;
+}
+
+div.wideload h3 {
+ margin-top: 15px !important;
+ margin-bottom: 0px !important;
+}
+
+div.wideload p !important {
+ margin-top: 5px;
+}
+
+div.news {
+ margin: -1px 5px 0 200px;
+ padding: -10px 0px 8px 0px;
+ background: #001;
+ border: 1px solid #99f;
+ text-align: right;
+ color: #99f;
+ min-width: 600px;
+ padding-bottom: 8px;
+ padding-left: 10px;
+ padding-right: 10px;
+ -moz-box-shadow: inset 0px 0px 4px 2px #00000A;
+ font-size: 7pt;
+}
+
+/* convert the list entry to our title */
+
+div.news li {
+ text-align: justify;
+ list-style: none;
+ margin: 15px 15px -10px -20px;
+ padding: 0px 0 15px 0;
+ border-bottom: 1px dotted #99f;
+ border-top: 0px solid #99f;
+ padding: 3px 5px 5px 0;
+ font-size: 10pt;
+ color: #eef;
+ text-transform: capitalize;
+}
+
+div.news p {
+ color: #eef;
+ font-size: 9pt;
+ margin-bottom: -10px;
+}
+/*
+div.news p:first-child {
+ padding-top: 15px !important;
+}
+
+
+div.news p:nth-child(2n) {
+ padding-top: 15px !important;
+}
+*/
+div.news p:last-child {
+ margin-bottom: 10px;
+}
+
+div.news a:link {
+ color: #aaf;
+ text-shadow: 0px 0px 1px rgba(128, 128, 48, 0.3);
+}
+
+div.news a:visited {
+ color: #99f !important;
+ text-shadow: 0px 0px 1px rgba(128, 128, 48, 0.3);
+}
+
+div.news hr {
+ color: #99f;
+ background: #99f;
+ height: 1px;
+ border: 0px solid #99f;
+ margin: 2px 0 2px 0;
+}
+
+div.confignav {
+ padding: 12px 0 15px 0;
+ background: #000018;
+ margin: -10px -16px 0 -16px;
+ border: 1px solid #99f;
+ -moz-box-shadow: inset 0px 0px 4px 2px #00000A;
+}
+
+div.configure {
+ margin: 1px -20px 0 -20px;
+ padding: 0px 20px 0px 20px;
+}
+
+div.configure hr {
+ margin: 15px 0;
+}
+
+div.configure table {
+ font-size: 9pt;
+ font-weight: bold;
+ border: 1px solid #99f;
+}
+
+div.configure tr, div.configure td {
+ padding: 10px 2px;
+}
+
+div.configure tr {
+ -moz-box-shadow: inset 0px 0px 1px 0px #000;
+}
+
+div.configure li:first-child, div.main li:first-child {
+ margin-top: -10px;
+}
+
+div.configure li:last-child {
+ margin-bottom: -5px;
+}
+
+div.configure h2:first-child {
+ margin-top: 15px;
+}
+
+.topshimten {
+ margin-top: 15px;
+ margin-bottom: 15px;
+}
+
+div.messages {
+ padding: 0px 10px;
+ background: #001;
+ border: 1px solid #99f;
+ border-right: 0;
+ margin: -1px -15px 10px -16px;
+ text-align: center;
+ font-size: 9pt;
+ font-weight: bold;
+ color: #474;
+ -moz-box-shadow: inset 0px 0px 4px 2px #00000A;
+}
+
+div.messages li, div.messages ul {
+ padding: 10px 0 0 5px;
+ margin: -10px 0 0 0;
+}
+
+div.messages span.error {
+ color: #d00000;
+}
+
+div.messages span.notice {
+ font-style: italic;
+}
+
+h1 {
+ font-size: 18pt;
+ text-shadow: 0px 0px 2px rgba(255, 255, 255, 0.4);
+ text-align: center;
+ border: 1px solid #99f;
+ padding: 13px 10px 12px 10px;
+ margin: 5px 5px 0 200px;
+ line-height: 93%;
+ text-transform: uppercase;
+ letter-spacing: 0.3em;
+ background: #001;
+ min-width: 600px;
+ -moz-box-shadow: inset 0px 0px 4px 2px #00000A;
+ line-height: 100%;
+ color: #fff;
+}
+
+h2 {
+ font-size: 14pt;
+ padding: 5px 10px 10px 10px;
+ border: 1px solid #99f;
+ border-top: 1px solid #99f;
+ letter-spacing: 0.04em;
+ background: #000008;
+}
+
+h3 {
+ font-size: 12pt;
+ padding: 0 10px 10px 10px;
+ border-bottom: 1px solid #99f;
+ border-top: 0px solid #99f;
+ letter-spacing: 0.04em;
+ margin-bottom: 10px;
+ font-weight: bold !important;
+ text-transform: capitalize;
+}
+
+h3 a {
+ font-weight: bold !important;
+}
+
+.proxyfooter{
+ font-size: 7pt;
+ display: none !important;
+}
+
+table {
+ border-collapse: collapse;
+ border: 1px solid #99f;
+ margin: 0 0 5px 0;
+ cell-padding: 1px;
+ font-size: 7.5pt;
+ background: #000;
+ width: 100%;
+}
+
+table hr {
+ padding: 0px 0;
+ color: #000;
+ background: #000;
+ border: 0px solid #99f;
+ margin: 0px -5px;
+ height: 1px;
+}
+
+table tt {
+ font-size: 7.5pt;
+}
+
+th {
+ background-color: #000;
+ padding: 8px 2px;
+ text-align: center;
+ border-bottom: 1px solid #99f;
+}
+
+tt {
+ font-size: 8pt;
+}
+
+tt, pre {
+ font: 8pt "Lucida Console", "DejaVu Sans Mono", Courier, mono;
+}
+
+td {
+ padding: 4px;
+}
+
+tr:nth-child(even) {
+ background-color: #001;
+}
+
+tr:nth-child(odd) {
+ background-color: #000009;
+}
+
+hr {
+ color: #99f;
+ background: #99f;
+ height: 1px;
+ border: 0px solid #99f;
+ margin: 3px 0;
+}
+
+.statusnotes {
+ font-style: italic;
+ font-size: 8pt;
+ color: #eef;
+ text-align: center;
+ margin: -7px 0 7px 0;
+ background: #000;
+ border: 1px solid #99f;
+ border-top: 0;
+ padding: 4px 0 2px 0;
+}
+
+div.joblog {
+ margin: 10px 0;
+ line-height: 130% !important;
+ font-size: 90%;
+}
+
+div.joblog li {
+ word-wrap: break-word !important;
+ text-align: left !important;
+ line-height: 130% !important;
+ margin-right: 10px;
+}
+
+div.joblog li i {
+ color: #bbb;
+ text-transform: capitalize;
+ font-style: normal;
+ font-weight: bold;
+}
+
+div.joblog ul {
+ word-wrap: break-word !important;
+ text-align: justify;
+}
+
+div.joblog li:first-child {
+ margin-top: -10px;
+}
+
+div.joblog li:last-child {
+ margin-bottom: -10px;
+}
+
+div.joblog form:first-child {
+ margin-top: 10px;
+}
+
+div.joblog table {
+ margin-top: 15px;
+}
+
+div.joblog p {
+ line-height: 130%;
+}
+
+div.joblog h3 {
+ margin: 10px 0 20px 0;
+}
+
+div.joblog h3:first-child {
+ margin: 5px 0 15px 0;
+}
+
+div.joblog hr {
+ margin: 15px 0 15px;
+}
+
+div.joblog ol {
+ margin-bottom: 0px;
+}
+
+input {
+ margin: 3px 5px 3px 0;
+ vertical-align: middle;
+}
+
+input[type=text] {
+ margin: 3px 5px 3px 5px;
+ vertical-align: middle;
+}
+
+select {
+ margin: 3px 5px 3px 5px;
+ vertical-align: middle;
+}
+
+input[type=text], select {
+ background: #001;
+ color: #eef;
+ border: 1px solid #99f;
+}
+submit {
+ margin: 3px 5px 3px 5px;
+ padding 2px 0;
+ font: 8pt/140% "Lucida Sans Unicode", "Bitstream Vera Sans", Verdana, Tahoma, Helvetica, sans-serif;
+}
+
+p {
+ padding: 5px 20px 0px 20px;
+ text-align: justify;
+}
+
+.formaction {
+ text-align: right;
+ margin: -10px -5px;
+}
+
+.langbox {
+ margin: 15px -20px 0px 5px;
+ color: #eef;
+ font-size: 7pt;
+ width: 220px;
+ text-align: center;
+ float: right;
+ valign: middle;
+}
+
+.langbox img {
+ padding: 0 2px; /* Ignored by IE8 */
+}
+
+.links {
+ padding-bottom: -2px;
+ text-align: justify;
+ margin-top: 5px !important;
+}
+
+.links li {
+ list-style-image: url("../images/link_dark.png") !important;
+}
+
+a:link{
+ color: #bbf;
+ text-decoration: none;
+ font-weight: bold;
+ word-wrap: break-word;
+}
+
+a:visited{
+ color: #99f;
+ text-decoration: none;
+ font-weight: bold;
+}
+
+a:hover{
+ color: #f60;
+ text-decoration: underline;
+ font-weight: bold;
+}
+
+a:active{
+ color: #f93;
+ text-decoration: underline;
+ font-weight: bold;
+}
+
+pre {
+ font-size: 9pt;
+ margin: 0px 20px;
+}
+
+tt {
+ font-size: 9pt;
+ font-weight: bold;
+ color: darkgreen;
+}
+
+.tablefooter {
+ border: 1px solid #99f;
+}
+
+.tablefooter tr, .tablefooter td {
+ background: #000;
+ font-size: 8pt;
+ font-weight: bold;
+ line-height: 150%;
+ word-wrap: nowrap;
+ padding: 8px 1px;
+ border-top: 2px solid #99f;
+}
+
+.tidylist {
+ text-align: justify;
+ padding-right: 30px;
+ margin-right: 20px;
+}
+
+div.graphspanel {
+ padding: 5px 0px 20px 0px;
+ margin: -16px -16px -11px -16px;
+ background: #000012;
+ -moz-border-radius: 4px;
+ -khtml-border-radius: 4px;
+ border-radius: 4px;
+ border: 1px solid #99f;
+ -moz-box-shadow: inset 0px 0px 1px 0px #002;
+ text-align: center !important;
+}
+
+div.graphspanel img {
+ border: 1px solid #77f;
+ padding: 2px;
+ margin: 6px;
+ background: #ccf;
+ -moz-box-shadow: inset 0px 0px 0px 0px #002;
+ opacity: 0.9;
+}
+
+div.graphspanel img:hover {
+ border: 1px solid #003;
+ padding: 2px;
+ margin: 6px;
+ text-align: center !important;
+ background: #eef;
+ -moz-box-shadow: inset 0px 0px 2px 1px #f60;
+ opacity: 1;
+}
+
+div.graphspanel hr {
+ margin: 10px 0;
+}
+
+div.graphspanel form:last-child {
+ text-align: left;
+ margin: 0 20px;
+}
+
+div.graphspanel h3 {
+ text-align: left;
+ margin: 10px 20px 10px 20px;
+}
\ No newline at end of file
diff --git a/installer/resources/themes/console/midnight/console_big.css b/installer/resources/themes/console/midnight/console_big.css
new file mode 100644
index 000000000..00e07f10f
--- /dev/null
+++ b/installer/resources/themes/console/midnight/console_big.css
@@ -0,0 +1,62 @@
+/* I2P Theme: I2P Classic & Midnight Theme Override */
+/* I2P Description: Larger fontsize override for sidepanel to accomodate foreign charactersets */
+/* Author: Dr|Z3d */
+
+
+/* sidepanel */
+
+div.routersummary {
+ font: 9.5pt/125%;
+}
+
+div.routersummary h3 {
+ font-size: 12.5pt;
+}
+
+div.routersummary h4 {
+ font-size: 11.5pt;
+ letter-spacing: 0;
+}
+
+div.routersummary table {
+ font-size: 9pt;
+ margin: -5px 0px -5px 1px;
+ width: 188px !important;
+}
+
+div.routersummary table a:link, div.routersummary table a:visited {
+ font-size: 10.5pt;
+}
+
+div.tunnels a{
+ font-size: 9pt !important;
+}
+
+div.tunnels table{
+ margin: -2px -0px -4px 2px !important;
+ width: 185px;
+}
+
+/* global overrides */
+
+a, b, div.routersummary h3 a, div.routersummary h4 {
+ font-weight: normal !important;
+ font-size: 100%;
+}
+
+body {
+ font: 10pt Verdana, "Bitstream Vera Sans", Helvetica, Sans, sans-serif;
+}
+
+div.main, div.main p, div.news p {
+ line-height: 140%;
+}
+
+div.joblog li i {
+ font-weight: normaL;
+}
+
+b, div.joblog b {
+ color: #ee8;
+ font-size: 110%;
+}
\ No newline at end of file
diff --git a/installer/resources/themes/console/midnight/default.css b/installer/resources/themes/console/midnight/default.css
new file mode 100644
index 000000000..61c8dc03f
--- /dev/null
+++ b/installer/resources/themes/console/midnight/default.css
@@ -0,0 +1,239 @@
+/* I2P Theme: Midnight - I2P Tunnel Manager */
+/* I2P Description: Minimalist Midnight Blue, based on Classic theme.*/
+/* Author: Dr|Z3d */
+
+body {
+ margin: 0px;
+ padding: 0px;
+ text-align: center;
+ font: 10pt/140% "Lucida Sans Unicode", "Bitstream Vera Sans", Verdana, Tahoma, Helvetica, sans-serif;
+ background: #000;
+ color: #eef;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+}
+
+div {
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+}
+
+h4, label {
+ margin: 0px;
+ padding: 2px;
+ float: left;
+ width: 150px;
+ height: 24px;
+ font-weight: normal;
+ text-align: right;
+ font-size: 8.5pt;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+}
+
+h4 {
+ font-size: 10.5pt;
+ text-align: center !important;
+ font-weight: bold;
+ border: 1px solid #99f;
+ border-top: 2px solid #99f;
+ margin: -6px 0 5px -10px !important;
+ padding: 5px 10px 25px 10px;
+ background: #001;
+ text-shadow: 0px 0px 1px rgba(32, 32, 192, 0.3);
+ text-transform: uppercase;
+ white-space: nowrap;
+ width: 782px;
+ letter-spacing: 0.09em;
+}
+
+label {
+ font-style: italic;
+ margin: 0 3px 0 -3px;
+}
+
+a {
+ text-decoration: none;
+}
+
+form {
+ margin: 0px;
+}
+
+textarea, input, select, button, a {
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+ font: 8pt "Lucida Sans Unicode", "Bitstream Vera Sans", Verdana, Tahoma, Helvetica, sans-serif;
+ float: left;
+ margin: 2px 0 5px 0;
+ background: #001;
+ color: #eef;
+}
+
+button {
+ float: none;
+ height: 20px !important;
+}
+
+textarea {
+ border: 1px solid #99f;
+ background: #000;
+ color: #eef;
+}
+
+br {
+ clear: left;
+}
+
+div.statusNotRunning {
+ float: left;
+ width: 82px;
+ height: 24px;
+ color: #d00;
+}
+
+div.statusRunning {
+ float: left;
+ width: 82px;
+ height: 24px;
+ color: #0d0;
+}
+
+div.statusStarting {
+ float: left;
+ width: 82px;
+ height: 24px;
+ color: #393;
+}
+
+hr {
+ display: none;
+}
+
+.separator, .subdivider {
+ clear: both;
+ height: 1px;
+ margin: 5px -8px 5px -8px;
+ border-bottom: 1px solid #99f;
+}
+
+.subdivider {
+ border-bottom: 1px dotted #99f;
+ margin: 0 0 10px 0;
+}
+
+.freetext {
+ width: 150px;
+ height: 22px;
+ border: 1px solid #99f;
+}
+
+.control {
+ margin: 2px;
+ padding: 2px;
+ overflow: hidden;
+ height: 20px;
+ width: 60px;
+ font-weight: bold;
+ background: #ddd;
+ color: #001 !important;
+ border: 1px outset #ddddc0;
+ text-align: center;
+ vertical-align: middle;
+ white-space: nowrap;
+ text-decoration: none;
+}
+
+.control:hover {
+ background: #229;
+ color: #fff;
+ text-decoration: none;
+}
+
+.control:active {
+ border: 2px inset;
+}
+
+.panel {
+ width: 790px;
+ margin: 16px auto 16px auto;
+ padding: 5px 10px;
+ overflow: hidden;
+ text-align: left;
+ font-size: 8pt;
+ background: #001;
+ border: 4px solid #99f;
+ -moz-box-shadow: inset 0px 0px 0px 1px #99f;
+}
+
+.panel .footer {
+
+ padding: 4px;
+}
+
+.toolbox {
+ width: 100%;
+}
+
+.rowItem {
+ width: 750px;
+ float: left;
+ margin: 0px;
+}
+
+.comment {
+ font-style: italic;
+ white-space: nowrap;
+}
+
+.text {
+ height: 24px;
+ width: 150px;
+ padding: 2px 0 0 2px;
+ float: left;
+ margin: 0;
+ font-weight: bold;
+}
+
+.accessKey {
+ text-decoration: underline;
+}
+
+#globalOperationsPanel {
+ background: #001;
+ border: 4px solid #99f;
+ -moz-box-shadow: inset 0px 0px 0px 1px #900;
+ padding: 5px 5px 10px 5px;
+ text-align: right;
+}
+
+#globalOperationsPanel .control {
+ width: 100px !important;
+ margin-top: 3px;
+ float: right;
+}
+
+a:link{
+ color: #bbf;
+ text-decoration: none;
+ font-weight: bold;
+ word-wrap: break-word;
+}
+
+a:visited{
+ color: #aaf;
+ text-decoration: none;
+ font-weight: bold;
+}
+
+a:hover{
+ color: #f60;
+ text-decoration: underline;
+ font-weight: bold;
+}
+
+a:active{
+ color: #f93;
+ text-decoration: underline;
+ font-weight: bold;
+}
\ No newline at end of file
diff --git a/installer/resources/themes/console/midnight/i2ptunnel.css b/installer/resources/themes/console/midnight/i2ptunnel.css
new file mode 100644
index 000000000..2128c7e73
--- /dev/null
+++ b/installer/resources/themes/console/midnight/i2ptunnel.css
@@ -0,0 +1,180 @@
+/* I2P Tunnel Edit Page
+*/
+
+#tunnelEditPage input {
+ width : 458px;
+}
+
+#tunnelEditPage select {
+ width : 308px;
+}
+
+#tunnelEditPage option[selected] {
+ color: green;
+}
+
+#tunnelEditPage #targetField,
+#tunnelEditPage #accessField,
+#tunnelEditPage #optionsField {
+ height : 48px;
+ width : 150px;
+}
+#tunnelEditPage #tunnelOptionsField {
+ height : 96px;
+ width : 150px;
+}
+
+#tunnelEditPage #targetField label,
+#tunnelEditPage #accessField label,
+#tunnelEditPage #tunnelOptionsField label,
+#tunnelEditPage #optionsField label{
+ height : 48px;
+ width : 150px;
+}
+
+#tunnelEditPage #reachField,
+#tunnelEditPage #hostField,
+#tunnelEditPage #depthField,
+#tunnelEditPage #countField,
+#tunnelEditPage #optionsHostField {
+ width : 304px;
+ margin-right: 4px;
+}
+
+#tunnelEditPage #portField,
+#tunnelEditPage #optionsPortField,
+#tunnelEditPage #backupField,
+#tunnelEditPage #varianceField {
+ width : 150px;
+
+}
+
+#tunnelEditPage #reachField label,
+#tunnelEditPage #hostField label,
+#tunnelEditPage #portField label,
+#tunnelEditPage #optionsHostField label,
+#tunnelEditPage #optionsPortField label,
+#tunnelEditPage #depthField label,
+#tunnelEditPage #countField label,
+#tunnelEditPage #backupField label,
+#tunnelEditPage #varianceField label {
+ text-align : left;
+
+}
+
+#tunnelEditPage #otherField label {
+ width : 300px;
+}
+
+#tunnelEditPage #reachableByOther,
+#tunnelEditPage #tunnelDepth,
+#tunnelEditPage #tunnelQuantity,
+#tunnelEditPage #targetHost,
+#tunnelEditPage #clientHost {
+ width : 306px;
+}
+
+#tunnelEditPage #port {
+ width : 80px;
+}
+
+#tunnelEditPage #targetPort,
+#tunnelEditPage #clientPort,
+#tunnelEditPage #tunnelBackupQuantity,
+#tunnelEditPage #tunnelVariance {
+ width : 150px;
+}
+
+#tunnelEditPage #shared,
+#tunnelEditPage #connectDelay,
+#tunnelEditPage #startOnLoad {
+ width : 16px;
+}
+
+#tunnelEditPage label {
+ width : 150px;
+ font-weight : bold;
+ text-align : right;
+ float : left;
+}
+
+/* I2P Tunnel List Page
+*/
+
+#tunnelListPage .rowItem {
+ width : 150px;
+}
+
+#tunnelListPage select {
+ width : 150px;
+}
+
+#tunnelListPage textarea {
+ width : 100%;
+ height : 88px;
+ padding : 0 0 0 4px;
+ color: green;
+ margin-bottom: 7px;
+}
+
+#tunnelListPage .footer .control {
+ margin-left: 2px;
+}
+
+#tunnelListPage .footer label {
+ text-align : right;
+ height : 24px;
+ width : 360px;
+ float : left;
+
+}
+
+/* Use Leary and Langridge content replacement methods (LIR)
+** to embed accessibility information into the document.
+** Should allow the lists to be rendered nicely by
+** screen readers. (and lynx!)
+*/
+
+#tunnelListPage label {
+ height : 0;
+ width : 0;
+ overflow : hidden;
+}
+
+#tunnelListPage .nameHeaderField label,
+#tunnelListPage .portHeaderField label,
+#tunnelListPage .typeHeaderField label,
+#tunnelListPage .interfaceHeaderField label,
+#tunnelListPage .targetHeaderField label,
+#tunnelListPage .previewHeaderField label,
+#tunnelListPage .statusHeaderField label {
+ text-align : left;
+ width : 150px;
+ height : 24px;
+ float : left;
+}
+
+#tunnelListPage .targetField,
+#tunnelListPage .targetField .text,
+#tunnelListPage .targetHeaderField,
+#tunnelListPage .targetHeaderField label {
+ width : 300px;
+}
+
+#tunnelListPage .descriptionField,
+#tunnelListPage .destinationField {
+ width : 750px;
+}
+
+#tunnelListPage .descriptionField .text,
+#tunnelListPage .destinationField input {
+ width : 450px;
+}
+
+#tunnelListPage .descriptionField label,
+#tunnelListPage .destinationField label {
+ text-align : right;
+ width : 150px;
+ height : 24px;
+ float : left;
+}
diff --git a/installer/resources/themes/console/midnight/ieshim.css b/installer/resources/themes/console/midnight/ieshim.css
new file mode 100644
index 000000000..4feeadb80
--- /dev/null
+++ b/installer/resources/themes/console/midnight/ieshim.css
@@ -0,0 +1,258 @@
+/* I2P Theme: Midnight - IE Override */
+/* I2P Description: Minimalist Midnight Blue, based on Classic theme.*/
+/* Author: Dr|Z3d */
+
+/* Welcome to the wonderful world of kludgey IE fixes */
+/* Note not fully tested with Midnight theme */
+
+.wideload {
+ overflow: auto;
+ width: 100%;
+}
+
+.formaction {
+ text-align: left !important;
+ margin: -10px 0 10px 0;
+}
+
+div.configure {
+ text-align: center;
+}
+
+div.configure p, div.configure table {
+ text-align: justify;
+}
+
+div.main ul {
+ margin-right: 20px;
+}
+
+div.configure textarea {
+ width: 450px !important;
+}
+
+div.configure input {
+ margin-left: 5px;
+}
+
+div.configure table {
+ width: 550px !important;
+ text-align: center;
+}
+
+h1 {
+ padding: 15px 10px 16px 10px !important;
+ margin: 0 0px 0 17 5px !important;
+ background-color: #000 !important; /* background page color to fix overflow issue */
+ color: #eef;
+}
+
+h2 {
+ padding-top: 0;
+ text-align: left !important;
+}
+
+h3 {
+ margin-top: 10px;
+ text-align: left !important
+}
+
+div.confignav {
+ padding: 15px 0 15px 0;
+ border-left: 0px;
+ margin-left: -15px;
+ border-top: 5px solid #000;
+ margin-bottom: 10px !important;
+}
+
+div.messages {
+ border-left: 0;
+ border-right: 0;
+ margin: -10px -15px 0px -15px;
+}
+
+div.main, div.news {
+ margin: -5px 0px 10px 185px;
+ border: 5px solid #000;
+}
+
+div.main hr, div.news hr {
+ margin: 0;
+}
+
+div.main {
+ border-top: 5px solid #000;
+}
+
+div.news {
+ border-left: 5px solid #000;
+ margin: -5px 0px 0 185px;
+ padding-bottom: 8px;
+}
+
+div.news hr {
+ color: #bbf;
+ background: #bbf;
+ height: 3px;
+ border: 0px;
+ margin: 0 -10px 0 -13px !important;
+}
+
+div.routersummary {
+ color: #001;
+ padding-left: 0px;
+ border-left: 5px solid #bbf;
+ text-align: center !important;
+ overflow: hidden; /* prevents IE from borking the sidepanel */
+}
+
+div.routersummary submit {
+ padding: 0;
+ margin-bottom: 5px;
+}
+
+div.routersummary input[type=text] {
+ text-align: right !important;
+}
+
+div.routersummary hr {
+ color: #eef;
+ background: #eef;
+ height: 2px;
+ border-bottom: 1px solid #eef;
+ margin: 8px 1px 7px 1px;
+ -moz-box-shadow: inset 0px 1px 1px 1px #99f;
+}
+
+div.routersummary h3 {
+ border: 0px solid #f00;
+ text-align: center !important;
+ font-size: 9pt;
+ letter-spacing: 0.05em;
+ margin: -14px 0px -15px 1px;
+ padding: 5px 0px 5px 0px;
+ background: #c5d5fb;
+ text-transform: uppercase;
+}
+
+div.routersummary h4 {
+ border: 0px solid #f00;
+ border-bottom: 0 !important;
+ font-size: 8.5pt;
+ letter-spacing: 0.05em;
+ margin: -14px 0px -15px 1px !important;
+ padding: 2px 3px 3px 3px;
+ background: #c1d1f7;
+ text-transform: capitalize;
+ text-decoration: none !important;
+ color: #2b2;
+ text-align: center !important;
+}
+
+div.routersummary table {
+ border: 0;
+ text-align: center !important;
+ margin: -5px 5px;
+ width: 175px !important;
+ overflow: hidden;
+ font-size: 8pt;
+ padding: 0px -10px;
+ background-image: none !important;
+ background-color: transparent !important;
+ text-align: center !important;
+}
+
+div.routersummary tr {
+ background-image: none !important;
+ background-color: transparent !important;
+ border: 0 !important;
+}
+
+div.routersummary form {
+ margin-top: -25px !important;
+ margin-bottom: -25px !important;
+ text-align: center !important;
+}
+
+div.routersummary p {
+ padding: 0;
+}
+
+/*
+div.routersummary img {
+ margin: 5px -10px -5px -10px;
+ overflow: hidden;
+}
+*/
+
+div.routersummary a:link, div.routersummary a:visited {
+ text-shadow: 0px 0px 1px rgba(0, 0, 32, 0.3);
+}
+
+div.routersummary a:hover {
+ text-shadow: 0px 0px 1px rgba(255, 96, 0, 0.7);
+ color: #f60;
+}
+
+div.routersummary td {
+ padding: 2px 4px;
+ background-image: none !important;
+ border: 0 !important;
+}
+
+div.routersummary tr:nth-child(even) {
+ background-color: #f60;
+ background-image: none !important;
+}
+
+div.routersummarytr:nth-child(odd) {
+ background-color: #f00;
+ background-image: none !important;
+}
+
+div.news li {
+ padding-top: 0px 0px !important;
+ margin-bottom: -23px !important;
+}
+
+div.logo {
+}
+
+div.warning {
+ padding: 0px 20px 20px 80px;
+ margin-top: -20px;
+ margin-left: -10px !important;
+}
+
+.langbox {
+ margin: 22px -20px 0px 5px;
+}
+
+td {
+ text-align: left;
+}
+
+th {
+ text-align: left;
+ padding-left: 3px;
+ padding-right: 1px;
+}
+
+div.configure hr{
+ margin: 10px 0 15px 0;
+}
+
+input {
+ padding: 0;
+}
+
+div.graphspanel img {
+ border: 1px solid #99f;
+ margin: 6px 0 !important;
+ background: #ddf;
+ -moz-box-shadow: inset 0px 0px 1px 1px #99f;
+}
+
+div.graphspanel hr {
+ margin: 20px 0;
+}
\ No newline at end of file
diff --git a/installer/resources/themes/console/midnight/images/i2plogo.png b/installer/resources/themes/console/midnight/images/i2plogo.png
new file mode 100644
index 000000000..1567c8814
Binary files /dev/null and b/installer/resources/themes/console/midnight/images/i2plogo.png differ
diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java
index 983dd2f06..8c1e82035 100644
--- a/router/java/src/net/i2p/router/RouterVersion.java
+++ b/router/java/src/net/i2p/router/RouterVersion.java
@@ -18,7 +18,7 @@ public class RouterVersion {
/** deprecated */
public final static String ID = "Monotone";
public final static String VERSION = CoreVersion.VERSION;
- public final static long BUILD = 13;
+ public final static long BUILD = 14;
/** for example "-test" */
public final static String EXTRA = "";
public final static String FULL_VERSION = VERSION + "-" + BUILD + EXTRA;