diff --git a/public/static/css/dark.css b/public/static/css/dark.css
new file mode 100644
index 0000000..77e455e
--- /dev/null
+++ b/public/static/css/dark.css
@@ -0,0 +1,378 @@
+@charset "utf-8";
+
+/* ids */
+
+#root-frame {
+ position: fixed;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: 0;
+}
+
+.theme-dark #breadcrumb {
+ width: 100%;
+}
+
+.theme-dark #breadcrumb .location-item {
+ margin: 0 0.5rem 0 0;
+ display: inline-block;
+ line-height: 3rem;
+}
+
+.theme-dark #breadcrumb .item {
+ margin: 0 0.5rem 0 0;
+ max-width: 6rem;
+ display: inline-block;
+ line-height: 3rem;
+}
+
+.theme-dark #breadcrumb .content {
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ overflow-wrap: break-word;
+ display: block;
+}
+
+.theme-dark #space-used {
+ text-align: right;
+ line-height: 3rem;
+ font-size: 1.4rem;
+}
+
+.theme-dark #sharing-list .desc {
+ /* background-color: #ecf0f1; */
+ font-size: 1.2rem;
+ margin: 1rem 0;
+ /* color: #697384; */
+ padding: 1rem;
+ border: dashed 1px #95a5a6;
+ overflow-wrap: break-word;
+}
+
+.theme-dark #bg {
+ /* background: url("/static/img/textured_paper.png") repeat fixed center; */
+ background-color: rgb(22 22 24);
+ color: #ccc;
+ position: fixed;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: 0;
+ overflow: scroll;
+}
+
+.theme-dark #top-bar {
+ padding: 1rem 2rem 1rem 2rem;
+ position: relative;
+ z-index: 2;
+ backdrop-filter: blur(9.5px);
+ -webkit-backdrop-filter: blur(9.5px);
+}
+
+.theme-dark #top-menu {
+ background: #242424;
+ opacity: 0.8;
+ box-shadow: 0 5px 30px 0 rgba(31, 38, 135, 0.1);
+ backdrop-filter: blur(9.5px);
+ color: #16a085;
+ padding: 0.5rem 1rem;
+ -webkit-backdrop-filter: blur(9.5px);
+ position: relative;
+ z-index: 1;
+}
+
+.theme-dark #top-menu button {
+ background: transparent;
+}
+
+.theme-dark .qrcode {
+ padding: 1rem;
+ background-color: #ecf0f1;
+ display: inline-block;
+ background: rgba(255, 255, 255, 0.8);
+ box-shadow: 0 5px 30px 0 rgb(31 38 135 / 10%);
+ backdrop-filter: blur(9.5px);
+}
+
+.theme-dark .qrcode-container {
+ height: 3rem;
+}
+
+.theme-dark .qrcode-icon {
+ height: 3rem;
+}
+
+.theme-dark .qrcode-child-container {
+ position: relative;
+ z-index: 50;
+}
+
+.theme-dark .qrcode-child {
+ position: absolute;
+}
+
+.theme-dark .container-center {
+ margin: 2rem auto auto auto;
+ width: 96%;
+ max-width: 80rem;
+ z-index: 9;
+}
+
+.theme-dark .layer {
+ position: fixed;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: 0;
+ background: url("/static/img/textured_paper.png") repeat fixed center;
+ overflow: scroll;
+ z-index: 100;
+}
+
+.theme-dark #login-layer {
+ z-index: 200;
+}
+
+.theme-dark #loading-layer {
+ z-index: 201;
+}
+
+.theme-dark #loading-container {
+ background-color: rgba(255, 255, 255, 1);
+ border-radius: 3rem;
+ padding: 0.5rem;
+ position: fixed;
+ right: 2rem;
+ bottom: 2rem;
+ z-index: 201;
+ height: 5rem;
+ width: 5rem;
+}
+
+.theme-dark #settings-layer {
+ z-index: 100;
+}
+
+.theme-dark #tail {
+ font-size: 1.2rem;
+ text-align: center;
+ margin: 4rem auto;
+}
+
+.theme-dark input {
+ font-size: 1.2rem;
+ color: #999;
+ background-color: rgb(64 64 64);
+ border: solid 1px #95a5a6;
+}
+
+.container-padding {
+ padding: 1.5rem;
+}
+
+.theme-dark #panes #title {
+ text-transform: capitalize;
+}
+
+.theme-dark #pane-login {
+ max-width: 48rem;
+ padding: 2rem;
+}
+
+.theme-dark #pane-login #title {
+ font-size: 2rem;
+ text-align: center;
+}
+
+.theme-dark #pane-login .login-container {
+ margin: 2rem;
+}
+
+.theme-dark #pane-login .input-wrap {
+ width: 100%;
+ background-color: #eaebf6;
+ margin: 2rem 0 0 0;
+ border-radius: 0.6rem;
+ line-height: 4rem;
+}
+
+.theme-dark #pane-login #captcha-input {
+ width: calc(100% - 1rem);
+}
+
+.theme-dark #pane-login #captcha {
+ width: calc(100% - 1rem);
+ background-color: #eaebf6;
+ border: solid 1px #eaebf6;
+ margin: 2rem 0 0 0;
+ border-radius: 0.6rem;
+ height: 3.8rem;
+}
+
+.theme-dark #pane-login input,
+.theme-dark #pane-login input:hover,
+.theme-dark #pane-login input:focus,
+.theme-dark #pane-login input:active {
+ width: 100%;
+ padding: 0;
+ border: none;
+ margin: 0 1rem;
+ background-color: transparent;
+ outline: none;
+ box-shadow: none;
+}
+
+.theme-dark #btn-login {
+ background-color: #1abc9c;
+ color: #fff;
+ width: 100%;
+ margin-top: 2rem;
+ height: 4rem;
+}
+
+.theme-dark #layers {
+ height: 0;
+ z-index: 3;
+}
+
+.theme-dark #root-container {
+ max-width: 80rem;
+ width: 96%;
+ text-align: left;
+ margin: 3rem auto 8rem auto;
+}
+
+/* +composition */
+
+.theme-dark .container {
+ width: 100%;
+ background-color: #242424;
+ border-radius: 0.8rem;
+ box-shadow: 0 5px 30px 0 rgb(31 38 135 / 10%);
+ margin: auto auto 2rem auto;
+}
+
+.theme-dark .info {
+ border: dashed 1px #95a5a6;
+ font-size: 1.4rem;
+ padding: 1rem;
+ margin: 1rem 0 0 0;
+ background-color: black;
+ white-space: nowrap;
+ overflow: auto;
+}
+
+.theme-dark .badge {
+ border: none;
+ border-radius: 0.5rem;
+ font-weight: bold;
+ font-size: 1.2rem;
+ padding: 1rem 1rem;
+ line-height: 1.2rem;
+ display: inline-block;
+}
+
+.theme-dark .progress-grey {
+ background-color: #ecf0f6;
+ width: 100%;
+ height: 0.3rem;
+}
+
+.theme-dark .progress-green {
+ background-color: #1abc9c;
+ height: 100%;
+ transition: width 300ms;
+}
+
+.theme-dark .col-l {
+ float: left;
+ width: 70%;
+ overflow-wrap: break-word;
+}
+
+.theme-dark .col-r {
+ float: right;
+ width: 30%;
+ text-align: right;
+}
+
+.theme-dark .error-inline {
+ font-size: 1.4rem;
+ padding: 1rem;
+ color: #f1c40f;
+ margin: 1rem 0 0 0;
+ background-color: #2c3e50;
+ white-space: nowrap;
+ overflow: auto;
+}
+
+.theme-dark .label {
+ font-size: 1.2rem;
+ line-height: 1.8rem;
+ color: #7f8c8d;
+ padding-left: 0.5rem;
+}
+
+.theme-dark .error {
+ font-size: 1.4rem;
+ padding: 1rem;
+ color: #f1c40f;
+ margin: 1rem 0 0 0;
+ background-color: #2c3e50;
+ overflow-wrap: break-word;
+}
+
+.theme-dark .hr {
+ height: 1px;
+ margin: 1rem 0;
+ background-color: #333;
+}
+
+/* +colors */
+
+.theme-dark .major-font {
+ color: #ccc;
+}
+.theme-dark .minor-font {
+ color: white;
+}
+.theme-dark .normal-font {
+ color: #999;
+}
+.theme-dark .focus-font {
+ color: #16a085;
+}
+.theme-dark .error-font {
+ color: #f1c40f;
+}
+.theme-dark .major-bg {
+ background-color: #242424;
+}
+.theme-dark .normal-bg {
+ background-color: #697384;
+}
+.theme-dark .focus-bg {
+ background-color: #16a085;
+}
+.theme-dark .minor-bg {
+ background-color: #333;
+}
+.theme-dark ::placeholder {
+ color: #95a5a6;
+}
+.theme-dark a {
+ color: #16a085;
+}
+.theme-dark a:hover {
+ color: cc#2ecc71;
+}
+.theme-dark input:focus {
+ opacity: 0.8;
+ box-shadow: 0 0.1rem 1rem rgba(22, 160, 133, 0.1);
+}
+.theme-dark .button-default {
+ color: #999;
+ background-color: rgb(64 64 64);
+}
diff --git a/public/static/css/white.css b/public/static/css/white.css
index cfecd7e..81fff8c 100644
--- a/public/static/css/white.css
+++ b/public/static/css/white.css
@@ -153,7 +153,6 @@
}
.theme-default #tail {
- color: #34495e;
font-size: 1.2rem;
text-align: center;
margin: 4rem auto;
@@ -332,16 +331,16 @@
/* +colors */
-.theme-default .dark-font {
+.theme-default .minor-font {
color: #34495e;
}
-.theme-default .light-font {
+.theme-default .major-font {
color: #95a5a6;
}
.theme-default .normal-font {
color: #697384;
}
-.theme-default .highlight-font {
+.theme-default .focus-font {
color: #16a085;
}
.theme-default .error-font {
@@ -351,16 +350,16 @@
.theme-default .lightest-bg {
background-color: white;
}
-.theme-default .light-bg {
+.theme-default .major-bg {
background-color: #f6f6f6;
}
.theme-default .normal-bg {
background-color: #ecf0f6;
}
-.theme-default .highlight-bg {
+.theme-default .focus-bg {
background-color: #16a085;
}
-.theme-default .dark-bg {
+.theme-default .minor-bg {
background-color: #2c3e50;
}
.theme-default button {
diff --git a/src/client/web/build/template/index.template.dev.html b/src/client/web/build/template/index.template.dev.html
index f28b87d..66185c8 100644
--- a/src/client/web/build/template/index.template.dev.html
+++ b/src/client/web/build/template/index.template.dev.html
@@ -19,7 +19,7 @@
-
+