From 96cec21895330a1b5f7dc6b035f66c428e437291 Mon Sep 17 00:00:00 2001 From: coolsnowwolf Date: Thu, 27 Sep 2018 01:43:24 +0800 Subject: [PATCH] fix theme rosy to fit small screen --- package/lean/luci-theme-rosy/Makefile | 2 +- .../htdocs/luci-static/rosy/cascade.css | 3511 ++++++++--------- .../htdocs/luci-static/rosy/js/script.js | 73 +- .../htdocs/luci-static/rosy/line-draft.png | Bin 0 -> 25292 bytes .../htdocs/luci-static/rosy/logout-black.png | Bin 0 -> 742 bytes .../htdocs/luci-static/rosy/logout-white.png | Bin 0 -> 587 bytes .../luasrc/view/themes/rosy/header.htm | 164 +- .../root/etc/uci-defaults/30_luci-theme-rosy | 2 +- 8 files changed, 1825 insertions(+), 1927 deletions(-) create mode 100644 package/lean/luci-theme-rosy/htdocs/luci-static/rosy/line-draft.png create mode 100644 package/lean/luci-theme-rosy/htdocs/luci-static/rosy/logout-black.png create mode 100644 package/lean/luci-theme-rosy/htdocs/luci-static/rosy/logout-white.png diff --git a/package/lean/luci-theme-rosy/Makefile b/package/lean/luci-theme-rosy/Makefile index 11e8c9658..29a23345f 100755 --- a/package/lean/luci-theme-rosy/Makefile +++ b/package/lean/luci-theme-rosy/Makefile @@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk -LUCI_TITLE:=rosy Theme +LUCI_TITLE:=Rosy Theme LUCI_DEPENDS:= include $(TOPDIR)/feeds/luci/luci.mk diff --git a/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/cascade.css b/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/cascade.css index 7ede8bdf1..e874fe35f 100644 --- a/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/cascade.css +++ b/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/cascade.css @@ -1,2359 +1,2224 @@ -/** - * Rosy is a theme for LuCI. It is based on luci-theme-bootstrap - * - * luci-theme-rosy - * Copyright 2018 Rosy Song - * Copyright 2018 Yan Lan Shen - * - * Have a bug? Please create an issue here on GitHub! - * https://github.com/rosywrt/luci-theme-rosy/issues - * - * luci-theme-bootstrap: - * Copyright 2008 Steven Barth - * Copyright 2008 Jo-Philipp Wich - * Copyright 2012 David Menting - * - * Licensed to the public under the Apache License 2.0 - */ - @font-face { - font-family: 'icomoon'; - src: url('fonts/font.eot'); - src: url('fonts/font.eot') format('embedded-opentype'), - url('fonts/font.ttf') format('truetype'), - url('fonts/font.woff') format('woff'), - url('fonts/font.svg') format('svg'); - font-weight: normal; - font-style: normal; + font-family: icomoon; + src: url(fonts/font.eot); + src: url(fonts/font.eot) format("embedded-opentype"), + url(fonts/font.ttf) format("truetype"), url(fonts/font.woff) format("woff"), + url(fonts/font.svg) format("svg"); + font-weight: 400; + font-style: normal; } - -.table { display: table; position: relative; } -.tr { display: table-row; } -.thead { display: table-header-group; } -.tbody { display: table-row-group; } -.tfoot { display: table-footer-group; } -.td, .th { - vertical-align: middle; - text-align: center; - display: table-cell; - padding: .5em; +.table { + display: table; + position: relative; } - +.tr { + display: table-row; +} +.thead { + display: table-header-group; +} +.tbody { + display: table-row-group; +} +.tfoot { + display: table-footer-group; +} +.td, .th { - font-weight: bold; + vertical-align: middle; + text-align: center; + display: table-cell; + padding: 1em; +} +.th { + font-weight: 700; } - .tr.placeholder { - height: 4em; + height: 4em; } - .tr.placeholder > .td { - position: absolute; - left: 0; - right: 0; - bottom: 0; - text-align: center; - line-height: 3em; - background: inherit; + padding: 0 1em 1em 1em; + position: absolute; + left: 0; + right: 0; + bottom: 0; + text-align: center; + line-height: 3em; + background: inherit; +} +.table[width="33%"], +.td[width="33%"], +.th[width="33%"] { + width: 33%; +} +.table[width="100%"], +.td[width="100%"], +.th[width="100%"] { + width: 100%; +} +.col-1 { + flex: 1 1 30px !important; + -webkit-flex: 1 1 30px !important; +} +.col-2 { + flex: 2 2 60px !important; + -webkit-flex: 2 2 60px !important; +} +.col-3 { + flex: 3 3 90px !important; + -webkit-flex: 3 3 90px !important; +} +.col-4 { + flex: 4 4 120px !important; + -webkit-flex: 4 4 120px !important; +} +.col-5 { + flex: 5 5 150px !important; + -webkit-flex: 5 5 150px !important; +} +.col-6 { + flex: 6 6 180px !important; + -webkit-flex: 6 6 180px !important; +} +.col-7 { + flex: 7 7 210px !important; + -webkit-flex: 7 7 210px !important; +} +.col-8 { + flex: 8 8 240px !important; + -webkit-flex: 8 8 240px !important; +} +.col-9 { + flex: 9 9 270px !important; + -webkit-flex: 9 9 270px !important; +} +.col-10 { + flex: 10 10 300px !important; + -webkit-flex: 10 10 300px !important; } - -.table[width="33%"], .th[width="33%"], .td[width="33%"] { width: 33%; } -.table[width="100%"], .th[width="100%"], .td[width="100%"] { width: 100%; } - -.col-1 { flex: 1 1 30px !important; -webkit-flex: 1 1 30px !important; } -.col-2 { flex: 2 2 60px !important; -webkit-flex: 2 2 60px !important; } -.col-3 { flex: 3 3 90px !important; -webkit-flex: 3 3 90px !important; } -.col-4 { flex: 4 4 120px !important; -webkit-flex: 4 4 120px !important; } -.col-5 { flex: 5 5 150px !important; -webkit-flex: 5 5 150px !important; } -.col-6 { flex: 6 6 180px !important; -webkit-flex: 6 6 180px !important; } -.col-7 { flex: 7 7 210px !important; -webkit-flex: 7 7 210px !important; } -.col-8 { flex: 8 8 240px !important; -webkit-flex: 8 8 240px !important; } -.col-9 { flex: 9 9 270px !important; -webkit-flex: 9 9 270px !important; } -.col-10 { flex: 10 10 300px !important; -webkit-flex: 10 10 300px !important; } - -.cbi-button-up, .cbi-button-down, +.cbi-button-up, .cbi-value-helpicon, -.showSide, -.main > .loading > span { - font-family: 'icomoon' !important; - speak: none; - font-style: normal !important; - font-weight: normal !important; - font-variant: normal !important; - text-transform: none !important; - line-height: 1; - - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; +.main > .loading > span, +.showSide { + font-family: icomoon !important; + speak: none; + font-style: normal !important; + font-weight: 400 !important; + font-variant: normal !important; + text-transform: none !important; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.ifacebox-body strong { + display: inline-block; + padding: 0.5rem 0; } - * { - margin: 0; - padding: 0; - box-sizing: border-box; + margin: 0; + padding: 0; + box-sizing: border-box; } - -.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { - font-family: inherit; - font-weight: 400; - line-height: 1.1; - color: inherit; +.h1, +.h2, +.h3, +.h4, +.h5, +.h6, +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: inherit; + font-weight: 400; + line-height: 1.1; + color: inherit; } - html { - -webkit-text-size-adjust: 100%; - -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; } - body { - font-size: 0.8rem; - background-color: #EEE; + font-size: 0.8rem; + background-color: #eee; } - -html, body { - margin: 0px; - padding: 0px; - height: 100%; - background-color: #BFC9D2; - font-family: Microsoft Yahei, WenQuanYi Micro Hei, sans-serif, "Helvetica Neue", Helvetica, Hiragino Sans GB; +body, +html { + margin: 0; + padding: 0; + height: 100%; + background-color: #b9c9c7; + font-family: Microsoft Yahei, WenQuanYi Micro Hei, sans-serif, + "Helvetica Neue", Helvetica, Hiragino Sans GB; } body.logged-in { - height: auto; + height: auto; } - select { - padding: 0.36rem 0.8rem; - color: #555; - background-color: #fff; - background-image: none; - border: 1px solid #ccc; + padding: 0.36rem 0.8rem; + color: #555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; } - -select, +.cbi-dropdown, input, -.cbi-dropdown { - background-color: transparent; - color: rgba(0, 0, 0, .87); - border: none; - border-bottom: 2px solid rgba(0, 0, 0, .26); - outline: 0; - padding: 0; - border-radius: 0; - background-image: none; - height: 1.8rem; - font-size: 0.8rem; +select { + background-color: transparent; + color: rgba(0, 0, 0, 0.87); + border: none; + border-bottom: 2px solid rgba(0, 0, 0, 0.26); + outline: 0; + padding: 0; + border-radius: 0; + background-image: none; + height: 1.8rem; + font-size: 0.8rem; } - -select:not([multiple="multiple"]):focus, -input:focus { - border-color: #0099CC; +input:focus, +select:not([multiple="multiple"]):focus { + border-color: #354057; } - select[multiple="multiple"] { - height: auto; + height: auto; } - code { - color: #0099CC; + color: #09c; } - abbr { - color: #005470; - text-decoration: underline; - cursor: help; + color: #005470; + text-decoration: underline; + cursor: help; } - hr { - margin: 1rem 0; - border-color: #EEE; - opacity: 0.1; + margin: 1rem 0; + border-color: #eee; + opacity: 0.1; } - footer { - text-align: right; - padding: 1rem; - color: #aaa; - font-size: 0.8rem; - text-shadow: 0px 0px 2px #BBB; + text-align: right; + padding: 1rem; + color: #aaa; + font-size: 0.8rem; + text-shadow: 0 0 2px #bbb; } - footer > a { - color: #aaa; - text-decoration: none; + color: #aaa; + text-decoration: none; } - .main { - height: 100%; - overflow: hidden; + height: 100%; + overflow: hidden; } .logged-in .main { - height: auto; + height: auto; } - .main > .loading { - position: fixed; - width: 100%; - height: 100%; - z-index: 1000; - display: block; - background-color: #34414A; - top: 0; + position: fixed; + width: 100%; + height: 100%; + z-index: 1000; + display: block; + background-color: #354057; + top: 0; } - .main > .loading > span { - display: block; - text-align: center; - margin-top: 2rem; + display: block; + text-align: center; + margin-top: 2rem; } - .main > .loading > span::before { - content: ''; - display: inline-block; - vertical-align: middle; - height: 100%; + content: ""; + display: inline-block; + vertical-align: middle; + height: 100%; } - .main > .loading > span > .loading-img { - margin-right: 0.2rem; - display: inline-block; - vertical-align: middle; + margin-right: 0.2rem; + display: inline-block; + vertical-align: middle; } - .main > .loading > span p { - display: inline-block; - color: #fff; - font-size: 1.2rem; - vertical-align: middle; + display: inline-block; + color: #fff; + font-size: 1.2rem; + vertical-align: middle; } - .main-left { - float: left; - width: 15%; - height: 100%; - background-color: white; - position: fixed; + float: left; + width: 15%; + height: 100%; + background-color: #fff; + position: fixed; } - .main-right { - padding: 0 1% 0 4%; - float: right; - width: 85%; - height: 100%; - background-color: #EBF1F6; + padding: 0 1% 0 2.5%; + float: right; + width: 85%; + height: 100%; + background-color: #b9c9c7; } - .logged-in .main-right { - background-color: #BFC9D2; + background-color: #b9c9c7; } - .pull-right { - float: right; + float: right; } - .pull-left { - float: left; + float: left; } - header { - padding: 7% 0; - height: 100%; - background: #556270; - color: white; - text-align: center; + padding: 7% 0; + height: 100%; + background: #354057; + color: #fff; + text-align: center; } - header .brand { - font-size: 1.4rem; - color: white; - text-decoration: none; - cursor: default; + font-size: 1.4rem; + color: #fff; + text-decoration: none; + cursor: default; } - .danger { - background-color: #FA8072 !important; - color: black; + background-color: salmon !important; + color: #000; } - .warning { - background-color: #F0E68C; - color: black; + background-color: khaki; + color: #000; } - .success { - background-color: #90EE90 !important; - color: black; + background-color: #ff6670 !important; + color: #000; } - .alert-message { - margin: 2rem 0 0 0; - padding: 1rem; - border: 0; - font-weight: normal; - font-style: normal; - line-height: 1; - font-family: inherit; - min-width: inherit; - border-radius: 0; - background-color: #FFF; + margin: 2rem 0 0 0; + padding: 1rem; + border: 0; + font-weight: 400; + font-style: normal; + line-height: 1; + font-family: inherit; + min-width: inherit; + border-radius: 0; + background-color: #fff; } - - .error { - color: red; + color: red; } - .alert-message > h4 { - font-size: 110%; + font-size: 110%; } - .alert-message > * { - margin: .5rem 0; + margin: 0.5rem 0; } - #maincontent > .container > div:nth-child(1).alert-message.warning > a { - font: inherit; - overflow: visible; - text-transform: none; - display: inline-block; - margin-bottom: 0; - font-weight: 400; - text-align: center; - white-space: nowrap; - vertical-align: middle; - touch-action: manipulation; - cursor: pointer; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - background-image: none; - min-width: 6rem; - padding: 0.5rem 1rem; - font-size: 0.9rem; - line-height: 1.42857143; - color: #fff; - background-color: #5bc0de; - border-color: #46b8da; - margin-top: 2rem; - text-decoration: inherit; + font: inherit; + overflow: visible; + text-transform: none; + display: inline-block; + margin-bottom: 0; + font-weight: 400; + text-align: center; + white-space: nowrap; + vertical-align: middle; + touch-action: manipulation; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-image: none; + min-width: 6rem; + padding: 0.5rem 1rem; + font-size: 0.9rem; + line-height: 1.42857143; + color: #fff; + background-color: #5bc0de; + border-color: #46b8da; + margin-top: 2rem; + text-decoration: inherit; } - -.main > .main-left > .nav { - padding-top: 14%; - width: 85%; - height: 64%; - position: absolute; - right: -10%; - top: 18%; - background-color: #fff; - border-radius: 5px; +.main > .main-left .nav-container { + padding: 14% 0; + width: 85%; + height: 64%; + position: absolute; + right: -10%; + top: 18%; + background-color: #fff; + border-radius: 10px; + overflow: hidden; } - -.main > .main-left > .nav > li a { - color: #556270; - display: block; +.main > .main-left .nav { + width: 110%; + height: 100%; + overflow-y: scroll; } - -.main > .main-left > .nav > li { - padding: 0.5rem 1rem; - cursor: pointer; +.main > .main-left .nav > li a { + color: #354057; + display: block; + text-decoration: none; } - -.main > .main-left > .nav > .slide { - padding: 0; +.main > .main-left .nav > li { + padding: 0.5rem 1rem; + cursor: pointer; } - -.main > .main-left > .nav > .slide > ul { - display: none; +.main > .main-left .nav > .slide { + padding: 0; } - -.main > .main-left > .nav > .slide > .menu { - display: block; - padding: 0.5rem 1rem; - text-decoration: none; - cursor: default; - font-size: 1.15rem; +.main > .main-left .nav > .slide > ul { + display: none; } - -.main > .main-left > .nav > .slide > .menu:hover { - background: #D4D4D4; +.main > .main-left .nav > .slide > .menu { + display: block; + padding: 0.5rem 1rem; + text-decoration: none; + cursor: default; + font-size: 1.15rem; } - -.main > .main-left > .nav > .slide:hover { - background: none; +.main > .main-left .nav > .slide > .menu:hover { + background: #b9c9c7; } - -.main > .main-left > .nav > .slide > .slide-menu > li { - padding: 0.4rem 2rem; +.main > .main-left .nav > .slide:hover { + background: 0 0; } - -.main > .main-left > .nav > .slide > .slide-menu > .active { - background-color: #556270; +.main > .main-left .nav > .slide > .slide-menu > li { + padding: 0.4rem 2rem; } - -.main > .main-left > .nav > .slide > .slide-menu > li > a { - text-decoration: none; - white-space: nowrap; +.main > .main-left .nav > .slide > .slide-menu > .active { + background-color: #354057; } - -.main > .main-left > .nav > .slide > .slide-menu > .active > a { - color: white; +.main > .main-left .nav > .slide > .slide-menu > li > a { + text-decoration: none; + white-space: nowrap; } - -.main > .main-left > .nav > .slide > .slide-menu > li:hover { - background: #D4D4D4; +.main > .main-left .nav > .slide > .slide-menu > .active > a { + color: #fff; } - -.main > .main-left > .nav > .slide > .slide-menu > .active:hover { - background-color: #556270; - cursor: hand; +.main > .main-left .nav > .slide > .slide-menu > li:hover { + background: #b9c9c7; } - -.main > .main-left > .nav > .logout { - position: absolute; - bottom: 2%; - left: 0; - right: 0; - text-align: center; - font-size: 16px; +.main > .main-left .nav > .slide > .slide-menu > .active:hover { + background-color: #556270; + cursor: hand; +} +.main > .main-left .logout { + position: absolute; + bottom: 2%; + left: 0; + right: 0; + text-align: center; +} +.main > .main-left .nav > .logout a { + padding-left: 22px; + font-size: 18px; + display: inline-block; + background: url(./logout-black.png) no-repeat center left; } - li { - list-style-type: none; + list-style-type: none; } - h1 { - font-size: 2rem; - padding-bottom: 10px; - border-bottom: 1px solid #eee; + font-size: 2rem; + padding-bottom: 10px; + border-bottom: 1px solid #eee; +} +.node-main-login h2 { + margin: 14% 0 0 0; } - h2 { - margin: 1rem 0 0 0; - padding: .5rem; - font-size: 30px; - padding-bottom: 10px; - background: #fff; - border-radius: 5px; + margin: 1rem 0 0 0; + padding: 0.5rem; + font-size: 30px; + padding-bottom: 10px; + background: #fff; + border-radius: 10px; } - h3 { - margin: 2rem 0 0 0; - font-size: 1.4rem; - padding-bottom: 10px; + margin: 2rem 0 0 0; + font-size: 1.4rem; + padding-bottom: 10px; } - h4 { - margin: 2rem 0 0 0; - font-size: 1.2rem; - padding-bottom: 10px; + margin: 2rem 0 0 0; + font-size: 1.2rem; + padding-bottom: 10px; } - .cbi-section { - margin: 1rem 0 0 0; - padding: 2rem; - border: 0; - font-weight: normal; - font-style: normal; - line-height: 1; - font-family: inherit; - min-width: inherit; - background-color: #FFF; - -webkit-overflow-scrolling: touch; + margin: 1rem 0 0 0; + padding: 2rem; + border: 0; + font-weight: 400; + font-style: normal; + line-height: 1; + font-family: inherit; + min-width: inherit; + background-color: #fff; + -webkit-overflow-scrolling: touch; } - .logged-in .cbi-section { - border-radius: 5px; + border-radius: 10px; } - .cbi-map-descr + fieldset { - margin-top: 1rem; + margin-top: 1rem; } - .cbi-section > legend { - display: none !important; + display: none !important; } - fieldset > fieldset { - margin: 0; - padding: 0; - border: none; + margin: 0; + padding: 0; + border: none; } - .cbi-section > h3:first-child, .panel-title { - width: 100%; - display: block; - line-height: 1; - color: #404040; - font-size: 1.4rem; - padding-bottom: 1rem; - border-bottom: 1px solid #eee; - margin: 0; + width: 100%; + display: block; + line-height: 1; + color: #404040; + font-size: 1.4rem; + padding-bottom: 1rem; + border-bottom: 1px solid #eee; + margin: 0; +} +.cbi-section > h3:first-child { + margin: 0 0 0.5rem 0; } - .cbi-page-actions { - margin-top: 1rem; + margin-top: 1rem; } - table { - border-spacing: 0; - border-collapse: collapse; + border-spacing: 0; + border-collapse: collapse; } - -table, .table { - margin-top: 1rem; - width: 100%; - background: #fff; - border-radius: 5px; +.table, +table { + margin-top: 1rem; + width: 100%; + background: #fff; + border-radius: 10px; + overflow: hidden; } - -table > tbody > tr > td, table > tbody > tr > th, table > tfoot > tr > td, table > tfoot > tr > th, table > thead > tr > td, table > thead > tr > th, -.table > .tbody > .tr > .td, .table > .tbody > .tr > .th, .table > .tfoot > .tr > .td, .table > .tfoot > .tr > .th, .table > .thead > .tr > .td, .table > .thead > .tr > .th { - padding: .5rem; - border-top: 1px solid #ddd; - white-space: nowrap; +.table > .tbody > .tr > .td, +.table > .tbody > .tr > .th, +.table > .tfoot > .tr > .td, +.table > .tfoot > .tr > .th, +.table > .thead > .tr > .td, +.table > .thead > .tr > .th, +table > tbody > tr > td, +table > tbody > tr > th, +table > tfoot > tr > td, +table > tfoot > tr > th, +table > thead > tr > td, +table > thead > tr > th { + padding: 0.5rem; + border-top: 1px solid #ddd; + white-space: nowrap; } - .cbi-section-table-cell { - white-space: nowrap; - align-self: flex-end; - flex: 1 1 auto; + white-space: nowrap; + align-self: flex-end; + flex: 1 1 auto; } - .cbi-section-table { - border: none; + border: none; } - .cbi-section-table-row { - text-align: center; - margin-bottom: 1rem; - background: #f4f4f4; + text-align: center; + margin-bottom: 1rem; + background: #f4f4f4; } - -.cbi-section-table-row:last-child { - margin-bottom: 0; +.node-system-admin .cbi-section-table-row:last-child { + margin-bottom: 0; + background-color: #fff; } - -.cbi-section-table-row > .cbi-value-field .cbi-input-select, -.cbi-section-table-row > .cbi-value-field .cbi-input-text, +.cbi-section-table-row > .cbi-value-field .cbi-dropdown, .cbi-section-table-row > .cbi-value-field .cbi-input-password, -.cbi-section-table-row > .cbi-value-field .cbi-dropdown { - width: 100%; +.cbi-section-table-row > .cbi-value-field .cbi-input-select, +.cbi-section-table-row > .cbi-value-field .cbi-input-text { + width: 100%; } - .cbi-section-table-row > .cbi-value-field [data-dynlist] > input, .cbi-section-table-row > .cbi-value-field input.cbi-input-password { - width: calc(100% - 1.5rem); + width: calc(100% - 1.5rem); } - -div > table > tbody > tr:nth-of-type(2n), -div > .table > .tbody > .tr:nth-of-type(2n) { - background-color: #f9f9f9; +div > .table > .tbody > .tr:nth-of-type(2n), +div > table > tbody > tr:nth-of-type(2n) { + background-color: #f9f9f9; } - -div > table > tbody > tr:nth-of-type(2n), -div > .table > .tbody > .tr:nth-of-type(2n) { - background-color: #f9f9f9; +div > .table > .tbody > .tr:nth-of-type(2n), +div > table > tbody > tr:nth-of-type(2n) { + background-color: #f9f9f9; } - input:-webkit-autofill { - -webkit-box-shadow: 0 0 0 1000px #fff inset !important; + -webkit-box-shadow: 0 0 0 1000px #fff inset !important; } - -/* fix progress bar */ -#swaptotal > div, -#swapfree > div, -#memfree > div, -#membuff > div, #conns > div, -#memtotal > div { - width: 100% !important; - height: 1.2rem !important; +#membuff > div, +#memfree > div, +#memtotal > div, +#swapfree > div, +#swaptotal > div { + width: 100% !important; + height: 1.2rem !important; + border-radius: 10px; + overflow: hidden; } - -#swaptotal > div > div, -#swapfree > div > div, -#memfree > div > div, -#membuff > div > div, #conns > div > div, -#memtotal > div > div { - height: 100% !important; - background-color: #0099CC !important; +#membuff > div > div, +#memfree > div > div, +#memtotal > div > div, +#swapfree > div > div, +#swaptotal > div > div { + height: 100% !important; + background-color: #5bc0de !important; } - -/* fix multiple table */ - -table table, -.table .table { - border: none; +.table .table, +table table { + border: none; } - -.cbi-value-field table, -.cbi-value-field .table { - border: none; +.cbi-value-field .table, +.cbi-value-field table { + border: none; } - -td > table > tbody > tr > td, -.td > .table > .tbody > .tr > .td { - border: none; +.td > .table > .tbody > .tr > .td, +td > table > tbody > tr > td { + border: none; } - -.cbi-value-field > table > tbody > tr > td, -.cbi-value-field > .table > .tbody > .tr > .td { - border: none; +.cbi-value-field > .table > .tbody > .tr > .td, +.cbi-value-field > table > tbody > tr > td { + border: none; } - -/* button style */ - -.btn, .cbi-button { - -webkit-appearance: none; - text-transform: uppercase; - color: #333; - background-color: #46b8da; - transition: all 0.2s ease-in-out; - display: inline-block; - padding: 0 0.8rem; - border: none; - border-radius: 0.2rem; - cursor: pointer; - -ms-touch-action: manipulation; - touch-action: manipulation; - background-image: none; - text-align: center; - vertical-align: middle; - white-space: nowrap; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - font-size: 0.8rem; - width: auto; - display: inline-block; - text-decoration: none; +.btn, +.cbi-button { + -webkit-appearance: none; + text-transform: uppercase; + color: #fff; + background-color: #619fcc; + transition: all 0.2s ease-in-out; + display: inline-block; + padding: 0 0.8rem; + border: none; + border-radius: 50px; + cursor: pointer; + -ms-touch-action: manipulation; + touch-action: manipulation; + background-image: none; + text-align: center; + vertical-align: middle; + white-space: nowrap; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + font-size: 0.8rem; + width: auto; + display: inline-block; + text-decoration: none; } - .logged-in .alert-message.warning { - font-size: 14px; - margin: 2rem 0 0 0; - background: #F0E68C; - border-radius: 5px; + font-size: 14px; + margin: 2rem 0 0 0; + background: khaki; + border-radius: 10px; } - .logged-in .alert-message.warning a { - padding: .5rem 0 0; - background-color: transparent; - color: #5BC0DE; - font-size: 16px; + padding: 0.5rem 0 0; + background-color: transparent; + color: #5bc0de; + font-size: 16px; } - -.btn:hover, -.btn:focus, .btn:active, -.cbi-button:hover, -.cbi-button:focus, -.cbi-button:active, -.cbi-page-actions .cbi-button-apply + .cbi-button-save:hover, -.cbi-page-actions .cbi-button-apply + .cbi-button-save:focus, -.cbi-page-actions .cbi-button-apply + .cbi-button-save:active { - outline: 0; - text-decoration: none; -} - -.btn:hover, .btn:focus, +.btn:hover, +.cbi-button:active, +.cbi-button:focus, .cbi-button:hover, -.cbi-button:focus { +.cbi-page-actions .cbi-button-apply + .cbi-button-save:active, +.cbi-page-actions .cbi-button-apply + .cbi-button-save:focus, +.cbi-page-actions .cbi-button-apply + .cbi-button-save:hover { + outline: 0; + text-decoration: none; } - .btn:disabled, .cbi-button:disabled { - cursor: not-allowed; - pointer-events: none; - opacity: 0.60; + cursor: not-allowed; + pointer-events: none; + opacity: 0.6; } - -.cbi-page-actions .cbi-button-apply, -.cbi-section-actions .cbi-button-edit, -.cbi-button-edit.important, +.cbi-button-action.important, .cbi-button-apply.important, +.cbi-button-edit.important, .cbi-button-reload.important, -.cbi-button-action.important { - color: #fff; - background-color: #C73727; +.cbi-page-actions .cbi-button-apply, +.cbi-section-actions .cbi-button-edit { + color: #fff; + background-color: #669492; +} +.node-main-login .cbi-page-actions .cbi-button-apply { + background-color: #c73727; } - -.cbi-page-actions .cbi-button-save, .cbi-button-add.important, +.cbi-button-positive.important, .cbi-button-save.important, -.cbi-button-positive.important { - color: #fff; - background-color: #5bc0de; +.cbi-page-actions .cbi-button-save { + color: #fff; + background-color: #5bc0de; } - +.cbi-button-negative.important, .cbi-button-remove.important, -.cbi-button-reset.important, -.cbi-button-negative.important { - color: #fff; - background-color: #d9534f; +.cbi-button-reset.important { + color: #fff; + background-color: #d9534f; } - +.cbi-button-down, .cbi-button-find, .cbi-button-link, -.cbi-button-up, -.cbi-button-down, -.cbi-button-neutral { - background-color: #46b8da; - color: #fff; +.cbi-button-neutral, +.cbi-button-up { + background-color: #46b8da; + color: #fff; } - -.cbi-page-actions .cbi-button-apply + .cbi-button-save, .cbi-button-add, -.cbi-button-save, +.cbi-button-apply, .cbi-button-positive, -.cbi-button-apply { - color: #fff; - background-color: #46b8da; +.cbi-button-save, +.cbi-page-actions .cbi-button-apply + .cbi-button-save { + color: #fff; + background-color: #46b8da; } - -.cbi-section-remove > .cbi-button, +.cbi-button-negative, .cbi-button-remove, .cbi-button-reset, -.cbi-button-negative { - color: #fff; - background-color: #EB6B5D; +.cbi-section-remove > .cbi-button { + color: #fff; + background-color: #ff6670; } - -.cbi-page-actions .cbi-button-link:first-child { - float: left; +.node-main-login .cbi-button-reset { + background-color: #eb6b5d; } - .a-to-btn { - text-decoration: none; + text-decoration: none; } - -/* table */ - .tabs { - width: 100%; - margin: 1rem 0 0; - padding-left: 0.5rem; - border-radius: 5px; - background-color: #FFFFFF; + width: 100%; + margin: 1rem 0 0; + padding-left: 0.5rem; + border-radius: 10px; + background-color: #fff; } - .cbi-tabmenu > li, .tabs > li { - display: inline-block; - padding: 0.6rem 0rem; + display: inline-block; + padding: 0.6rem 0; } - .cbi-tabmenu > li > a, .tabs > li > a { - text-decoration: none; - color: #404040; - padding: 0.5rem 0.8rem; + text-decoration: none; + color: #404040; + padding: 0.5rem 0.8rem; } - -.tabs > li[class~="active"], -.tabs > li:hover { - cursor: pointer; - border-bottom: 0.2rem solid #0099CC; - color: #0099CC; - margin-bottom: -0.18751rem; +.tabs > li:hover, +.tabs > li[class~="active"] { + cursor: pointer; + border-bottom: 0.2rem solid #09c; + color: #09c; + margin-bottom: -0.18751rem; } - .tabs > li[class~="active"] > a { - color: #0099cc; + color: #09c; } - .tabs > li:hover { - border-bottom: 0.18751rem solid #C9C9C9; + border-bottom: 0.18751rem solid #c9c9c9; } - .cbi-tabmenu { - border-top: 1px solid #D4D4D4; - border-left: 1px solid #D4D4D4; - border-right: 1px solid #D4D4D4; + border-top: 1px solid #d4d4d4; + border-left: 1px solid #d4d4d4; + border-right: 1px solid #d4d4d4; } - .cbi-tabmenu > li:hover { - background-color: #F1F1F1; - border-radius: 5px; + background-color: #f1f1f1; + border-radius: 10px; } - .cbi-tabmenu > li[class~="cbi-tab"] { - background-color: #fff; - border-radius: 5px; + background-color: #fff; + border-radius: 10px; } - .cbi-tabmenu { - background-color: #D4D4D4; - border-radius: 5px; - margin-top: 1rem; + background-color: #d4d4d4; + border-radius: 10px; + margin-top: 1rem; } - .cbi-section-node { - margin-top: 1rem; + margin-top: 1rem; } - -.cbi-section-remove:nth-of-type(2n), -.cbi-section-node:nth-of-type(2n){ - background-color: #f9f9f9; +.cbi-section-remove:nth-of-type(2n) { + background-color: #f9f9f9; } - .cbi-section-node-tabbed { - padding: 0; - margin-top: 0; - border-bottom: 1px solid #D4D4D4; - border-left: 1px solid #D4D4D4; - border-right: 1px solid #D4D4D4; + padding: 0; + margin-top: 0; + border: 1px solid #d4d4d4; + border-top: none; + border-bottom-left-radius: 10px; + border-bottom-right-radius: 10px; } - .cbi-tabcontainer > .cbi-value:nth-of-type(2n) { - background-color: #f9f9f9; + background-color: #f9f9f9; } - -.cbi-value-field, -.cbi-value-description { - display: table-cell; - line-height: 1.25; +.cbi-value-description, +.cbi-value-field { + display: table-cell; + line-height: 1.25; } - .cbi-value-helpicon > img { - display: none; + display: none; } - .cbi-value-helpicon:before { - content: "\f059"; + content: "\f059"; } - .cbi-value-description { - font-size: small; - opacity: 0.5; - padding: 0.5rem 0 0 0; + font-size: small; + opacity: 0.5; + padding: 0.5rem 0 0 0; } - .cbi-value-title { - word-wrap: break-word; - padding-top: 0.6rem; - width: 23rem; - float: left; - text-align: right; - padding-right: 2rem; - display: table-cell; + word-wrap: break-word; + padding-top: 0.6rem; + width: 23rem; + float: left; + text-align: right; + padding-right: 2rem; + display: table-cell; } - .cbi-value { - padding: 0.3rem 1rem; - display: inline-block; - width: 100%; + padding: 0.3rem 1rem; + display: inline-block; + width: 100%; +} +.cbi-section-table-titles { + background-color: #ececec; } - .cbi-section-table-descr > .cbi-section-table-cell, .cbi-section-table-titles > .cbi-section-table-cell { - border: none; + border: none; +} +.node-network-routes .cbi-section-table-descr { + background-color: #efefef; +} +.node-network-firewall .cbi-section-table-row .td, +.node-network-routes .cbi-section-table-row .td { + padding-top: 1px; +} +.node-network-firewall .table > .tr { + background-color: #f4f4f4; +} +.node-network-firewall .table > .cbi-section-table-titles, +.node-network-firewall .table > .table-titles { + background-color: #ececec; +} +#cbi-firewall-redirect { + overflow: scroll; } - .td[data-title]::before { - content: attr(data-title) ":\20"; - font-weight: bold; - text-align: left; - display: none; - padding: .25rem 0; - white-space: nowrap; + content: attr(data-title) ":\20"; + font-weight: 700; + text-align: left; + display: none; + padding: 0.25rem 0; + white-space: nowrap; } - .tr.placeholder .td[data-title]::before { - display: none; + display: none; } - -.tr[data-title]::before, -.tr.cbi-section-table-titles.named::before { - content: attr(data-title) "\20"; - font-weight: bold; - text-align: center; - display: table-cell; - align-self: center; - flex: 1 1 5%; - padding: .25rem; - white-space: normal; - word-wrap: break-word; - vertical-align: middle; +.tr.cbi-section-table-titles.named::before, +.tr[data-title]::before { + content: attr(data-title) "\20"; + font-weight: 700; + text-align: center; + display: table-cell; + align-self: center; + flex: 1 1 5%; + padding: 0.25rem; + white-space: normal; + word-wrap: break-word; + vertical-align: middle; +} +.table-titles { + background-color: #f5f5f5; } - .cbi-rowstyle-1 { - background-color: #f9f9f9; + background-color: #f0f0f0; } - .cbi-rowstyle-2 { - background-color: #eee; + background-color: #eee; } - -.cbi-rowstyle-2 .cbi-button-up, -.cbi-rowstyle-2 .cbi-button-down { - background-color: #FFF !important; +.cbi-rowstyle-2 .cbi-button-down, +.cbi-rowstyle-2 .cbi-button-up { + background-color: #b5b5b5 !important; } - .cbi-section-table .cbi-section-table-titles .cbi-section-table-cell { - width: auto !important; + width: auto !important; } - .td.cbi-section-actions { - text-align: right; - vertical-align: middle; + text-align: right; + vertical-align: middle; } - .td.cbi-section-actions > * { - display: flex; + display: flex; } - .td.cbi-section-actions > * > *, .td.cbi-section-actions > * > form > * { - flex: 1 1 4em; - margin: 0 1px; + flex: 1 1 4em; + margin: 0 1px; } - .td.cbi-section-actions > * > form { - display: inline-flex; - margin: 0; + display: inline-flex; + margin: 0; } - -/* desc */ -.cbi-section-descr, -.cbi-map-descr { - padding: 0.5rem; - color: #999; - font-size: small; +.cbi-map-descr, +.cbi-section-descr { + padding: 0.5rem; + color: #999; + font-size: small; } - - .cbi-dropdown { - display: inline-flex; - cursor: pointer; - position: relative; - padding: 0; - height: auto; + display: inline-flex; + cursor: pointer; + position: relative; + padding: 0; + height: auto; } - .cbi-dropdown:focus { - outline: 2px solid #4b6e9b; + outline: 2px solid #4b6e9b; } - .cbi-dropdown > ul { - margin: 0 !important; - padding: 0; - list-style: none; - overflow-x: hidden; - overflow-y: auto; - display: flex; - width: 100%; + margin: 0 !important; + padding: 0; + list-style: none; + overflow-x: hidden; + overflow-y: auto; + display: flex; + width: 100%; } - .cbi-dropdown > ul.preview { - display: none; + display: none; } - .cbi-dropdown > .open { - border: 2px outset #eee; - flex-basis: 15px; - background: #eee; + border: 2px outset #eee; + flex-basis: 15px; + background: #eee; } - -.cbi-dropdown > .open, -.cbi-dropdown > .more { - flex-grow: 0; - flex-shrink: 0; - display: flex; - flex-direction: column; - justify-content: center; - text-align: center; - line-height: 2em; - padding: 0 .25em; +.cbi-dropdown > .more, +.cbi-dropdown > .open { + flex-grow: 0; + flex-shrink: 0; + display: flex; + flex-direction: column; + justify-content: center; + text-align: center; + line-height: 2em; + padding: 0 0.25em; } - .cbi-dropdown > .more, .cbi-dropdown > ul > li[placeholder] { - color: #777; - font-weight: bold; - text-shadow: 1px 1px 0px #fff; - display: none; + color: #777; + font-weight: 700; + text-shadow: 1px 1px 0 #fff; + display: none; } - .cbi-dropdown > ul > li { - display: none; - padding: .25em; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - flex-shrink: 1; - flex-grow: 1; - align-items: center; - align-self: center; - min-height: 20px; + display: none; + padding: 0.25em; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + flex-shrink: 1; + flex-grow: 1; + align-items: center; + align-self: center; + min-height: 20px; +} +.cbi-dropdown > ul > li .hide-open { + display: initial; +} +.cbi-dropdown > ul > li .hide-close { + display: none; } - -.cbi-dropdown > ul > li .hide-open { display: initial; } -.cbi-dropdown > ul > li .hide-close { display: none; } - .cbi-dropdown > ul > li[display]:not([display="0"]) { - border-left: 1px solid #ccc; + border-left: 1px solid #ccc; } - .cbi-dropdown[empty] > ul { - max-width: 1px; + max-width: 1px; } - .cbi-dropdown > ul > li > form { - display: none; - margin: 0; - padding: 0; - pointer-events: none; + display: none; + margin: 0; + padding: 0; + pointer-events: none; } - .cbi-dropdown > ul > li img { - vertical-align: middle; - margin-right: .25em; + vertical-align: middle; + margin-right: 0.25em; } - .cbi-dropdown > ul > li > form > input[type="checkbox"] { - margin: 0; - height: auto; + margin: 0; + height: auto; } - .cbi-dropdown > ul > li input[type="text"] { - height: 20px; + height: 20px; } - .cbi-dropdown[open] { - position: relative; + position: relative; } - .cbi-dropdown[open] > ul.dropdown { - display: block; - background: #f6f6f5; - border: 1px solid #918e8c; - position: absolute; - z-index: 1000; - max-width: none; - min-width: 100%; - width: auto; + display: block; + background: #f6f6f5; + border: 1px solid #918e8c; + position: absolute; + z-index: 1000; + max-width: none; + min-width: 100%; + width: auto; } - .cbi-dropdown > ul > li[display], -.cbi-dropdown[open] > ul.preview, -.cbi-dropdown[open] > ul.dropdown > li, .cbi-dropdown[multiple] > ul > li > label, -.cbi-dropdown[multiple][open] > ul.dropdown > li, +.cbi-dropdown[multiple][empty] > .more, .cbi-dropdown[multiple][more] > .more, -.cbi-dropdown[multiple][empty] > .more { - flex-grow: 1; - display: flex; - align-items: center; +.cbi-dropdown[multiple][open] > ul.dropdown > li, +.cbi-dropdown[open] > ul.dropdown > li, +.cbi-dropdown[open] > ul.preview { + flex-grow: 1; + display: flex; + align-items: center; } - .cbi-dropdown[empty] > ul > li, -.cbi-dropdown[optional][open] > ul.dropdown > li[placeholder], -.cbi-dropdown[multiple][open] > ul.dropdown > li > form { - display: block; +.cbi-dropdown[multiple][open] > ul.dropdown > li > form, +.cbi-dropdown[optional][open] > ul.dropdown > li[placeholder] { + display: block; +} +.cbi-dropdown[open] > ul.dropdown > li .hide-open { + display: none; +} +.cbi-dropdown[open] > ul.dropdown > li .hide-close { + display: initial; } - -.cbi-dropdown[open] > ul.dropdown > li .hide-open { display: none; } -.cbi-dropdown[open] > ul.dropdown > li .hide-close { display: initial; } - .cbi-dropdown[open] > ul.dropdown > li { - border-bottom: 1px solid #ccc; + border-bottom: 1px solid #ccc; } - .cbi-dropdown[open] > ul.dropdown > li[selected] { - background: #b0d0f0; + background: #b0d0f0; } - .cbi-dropdown[open] > ul.dropdown > li.focus { - background: linear-gradient(90deg, #a3c2e8 0%, #84aad9 100%); + background: linear-gradient(90deg, #a3c2e8 0, #84aad9 100%); } - .cbi-dropdown[open] > ul.dropdown > li:last-child { - margin-bottom: 0; - border-bottom: none; + margin-bottom: 0; + border-bottom: none; } - .cbi-dropdown[disabled] { - pointer-events: none; - opacity: .6; + pointer-events: none; + opacity: 0.6; } - .cbi-dropdown .zonebadge { - width: 100%; + width: 100%; } - .cbi-dropdown[open] .zonebadge { - width: auto; + width: auto; } - - -/* luci */ - .hidden { - display: none + display: none; } - -.left, .left::before { - text-align: left !important; +.left, +.left::before { + text-align: left !important; } - -.right, .right::before { - text-align: right !important; +.right, +.right::before { + text-align: right !important; } - -.center, .center::before { - text-align: center !important; +.center, +.center::before { + text-align: center !important; } - .top { - align-self: flex-start !important; - vertical-align: top !important; + align-self: flex-start !important; + vertical-align: top !important; } - .bottom { - align-self: flex-end !important; - vertical-align: bottom !important; + align-self: flex-end !important; + vertical-align: bottom !important; } - .inline { - display: inline; + display: inline; } - -/* select */ .cbi-value-field .cbi-dropdown { - min-width: 15rem; + min-width: 15rem; } - .cbi-value-field .cbi-input-select { - width: 15rem; + width: 15rem; } - -.th[data-type="button"], .td[data-type="button"], -.th[data-type="fvalue"], .td[data-type="fvalue"] { - flex: 1 1 2em; - text-align: center; +.td[data-type="button"], +.td[data-type="fvalue"], +.th[data-type="button"], +.th[data-type="fvalue"] { + flex: 1 1 2em; + text-align: center; } - .ifacebadge { - display: inline-flex; - border-bottom: 1px solid #CCCCCC; - padding: 0.5rem 1rem; - background: #fff; + display: inline-flex; + border-bottom: 1px solid #ccc; + padding: 0.5rem 1rem; + background: #fff; } - -td > .ifacebadge, -.td > .ifacebadge { - background-color: #F0F0F0; - font-size: 0.9rem; +.td > .ifacebadge, +td > .ifacebadge { + background-color: #f0f0f0; + font-size: 0.9rem; } - .ifacebadge > em, .ifacebadge > img { - display: inline-block; - margin: 0 .2rem; - align-self: flex-start; + display: inline-block; + margin: 0 0.2rem; + align-self: flex-start; } - .ifacebadge > img + img { - margin: 0 .2rem 0 0; + margin: 0 0.2rem 0 0; } - .network-status-table { - display: flex; - flex-wrap: wrap; + display: flex; + flex-wrap: wrap; + border-radius: 10px; + overflow: hidden; } - .network-status-table .ifacebox { - margin: .5em; - flex-grow: 1; + flex-grow: 1; } - .network-status-table .ifacebox-body { - display: flex; - flex-direction: column; - height: 100%; + display: flex; + flex-direction: column; + height: 100%; } - .network-status-table .ifacebox-body > span { - flex: 10 10 auto; + flex: 10 10 auto; } - .network-status-table .ifacebox-body > div { - display: flex; - flex-wrap: wrap; + display: flex; + flex-wrap: wrap; } - .network-status-table .ifacebox-body .ifacebadge { - flex: 1 1 auto; - margin: .5em .25em 0 .25em; - padding: .5em; - min-width: 220px; - background-color: #fff; - align-items: center; + flex: 1 1 auto; + margin: 0.5em 0.25em 0 0.25em; + padding: 0.5em; + min-width: 220px; + background-color: #fff; + align-items: center; + border-radius: 10px; } - -/*textarea*/ - .cbi-input-textarea { - width: 100%; - min-height: 14rem; - padding: 0.8rem; - font-size: 0.8rem; - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - color: black; + width: 100%; + min-height: 14rem; + padding: 0.8rem; + font-size: 0.8rem; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + color: #000; + resize: none; + border-radius: 10px; } - #content_syslog { - margin: 1rem 0 + margin: 1rem 0; } - #syslog { - width: 100%; - min-height: 15rem; - padding: 1rem; - font-size: small; - color: #5F5F5F; - border-radius: 5px; - resize: none; - margin-bottom: 20px; - background-color: #FFF; - border: none; + width: 100%; + min-height: 15rem; + padding: 1rem; + font-size: small; + color: #5f5f5f; + border-radius: 10px; + resize: none; + margin-bottom: 20px; + background-color: #fff; + border: none; } - -/* change */ - .uci-change-list { - font-family: monospace; + font-family: monospace; } - -.uci-change-list ins, -.uci-change-legend-label ins { - text-decoration: none; - border: 1px solid #00FF00; - background-color: #CCFFCC; - display: block; - padding: 2px; -} - -.uci-change-list del, -.uci-change-legend-label del { - text-decoration: none; - border: 1px solid #FF0000; - background-color: #FFCCCC; - display: block; - font-style: normal; - padding: 2px; -} - -.uci-change-list var, -.uci-change-legend-label var { - text-decoration: none; - border: 1px solid #CCCCCC; - background-color: #EEEEEE; - display: block; - font-style: normal; - padding: 2px; -} - -.uci-change-list var ins, -.uci-change-list var del { - border: none; - white-space: pre; - font-style: normal; - padding: 0px; -} - -.uci-change-legend { - padding: 5px; -} - -.uci-change-legend-label { - width: 150px; - float: left; -} - -.uci-change-legend-label > ins, -.uci-change-legend-label > del, -.uci-change-legend-label > var { - float: left; - margin-right: 4px; - width: 10px; - height: 10px; - display: block; -} - -.uci-change-legend-label var ins, -.uci-change-legend-label var del { - line-height: 6px; - border: none; -} - -.uci-change-list var, -.uci-change-list del, +.uci-change-legend-label ins, .uci-change-list ins { - padding: 0.5rem; + text-decoration: none; + border: 1px solid #0f0; + background-color: #cfc; + display: block; + padding: 2px; } - -/* other fix */ +.uci-change-legend-label del, +.uci-change-list del { + text-decoration: none; + border: 1px solid red; + background-color: #fcc; + display: block; + font-style: normal; + padding: 2px; +} +.uci-change-legend-label var, +.uci-change-list var { + text-decoration: none; + border: 1px solid #ccc; + background-color: #eee; + display: block; + font-style: normal; + padding: 2px; +} +.uci-change-list var del, +.uci-change-list var ins { + border: none; + white-space: pre; + font-style: normal; + padding: 0; +} +.uci-change-legend { + padding: 5px; +} +.uci-change-legend-label { + width: 150px; + float: left; +} +.uci-change-legend-label > del, +.uci-change-legend-label > ins, +.uci-change-legend-label > var { + float: left; + margin-right: 4px; + width: 10px; + height: 10px; + display: block; +} +.uci-change-legend-label var del, +.uci-change-legend-label var ins { + line-height: 6px; + border: none; +} +.uci-change-list del, +.uci-change-list ins, +.uci-change-list var { + padding: 0.5rem; +} +#bwsvg, #iwsvg, -#iwsvg2, -#bwsvg { - border: 1px solid #D4D4D4 !important; - border-top: none !important; - margin-top: 1rem; - border-radius: 5px; +#iwsvg2 { + border: 1px solid #d4d4d4 !important; + margin-top: 1rem; + border-radius: 10px; } - .ifacebox { - border-bottom: 1px solid #ccc; - background-color: #f9f9f9; - display: inline-flex; - flex-direction: column; - line-height: 1.2em; - min-width: 100px; + background-color: #f6f6f6; + display: inline-flex; + flex-direction: column; + line-height: 1.2em; + min-width: 100px; + padding-bottom: 0.5rem; + border-radius: 10px; + overflow: hidden; } - .ifacebox-head { - padding: .25em; - background: #eee; + padding: 0.25em; + background: #eee; } - .ifacebox-head.active { - background: #90c0e0; + background: #90c0e0; } - .ifacebox-body { - padding: .25em; + padding: 0.25em 0.8em; } - .cbi-image-button { - margin-left: 0.5rem; + margin-left: 0.5rem; } - .zonebadge { - padding: 0.2rem 0.5rem; - display: inline-block; + padding: 0.2rem 0.5rem; + display: inline-block; } - .zonebadge .ifacebadge { - padding: .2rem .3rem; - margin: 0.1rem 0.2rem; - border: 1px solid #6C6C6C; + padding: 0.2rem 0.3rem; + margin: 0.1rem 0.2rem; + border: 1px solid #6c6c6c; } - .zonebadge > input[type="text"] { - padding: 0.16rem 1rem; - min-width: 10rem; - margin-top: 0.3rem; + padding: 0.16rem 1rem; + min-width: 10rem; + margin-top: 0.3rem; } - .zonebadge > em, .zonebadge > strong { - margin: 0 0.2rem; - display: inline-block; + margin: 0 0.2rem; + display: inline-block; } - .cbi-value-field .cbi-input-checkbox, .cbi-value-field .cbi-input-radio { - margin-top: 0.5rem; - height: 1rem; + margin-top: 0.5rem; + height: 1rem; } - .td .cbi-input-checkbox, .td .cbi-input-radio { - margin-top: 0; + margin-top: 0; } - .cbi-value-field > input + .cbi-value-description { - padding: 0; + padding: 0; } - .cbi-value-field > ul > li { - display: flex; + display: flex; } - .cbi-value-field > ul > li > label { - margin-top: 0.5rem; + margin-top: 0.5rem; } - .cbi-value-field > ul > li .ifacebadge { - background-color: #eee; - margin-left: 0.4rem; - margin-top: -0.5rem; + background-color: #eee; + margin-left: 0.4rem; + margin-top: -0.5rem; } - .cbi-section-table-row > .cbi-value-field .cbi-dropdown { - min-width: 7rem; + min-width: 7rem; } - .cbi-section-create { - margin: .5rem -3px; - display: inline-flex; - align-items: center; + margin: 0.5rem -3px; + display: inline-flex; + align-items: center; } - .cbi-section-create > * { - margin: 0.5rem; + margin: 0.5rem; } - .cbi-section-remove { - padding: 0.5rem; + padding: 0.5rem; } - -div.cbi-value var, td.cbi-value-field var, .td.cbi-value-field var { - font-style: italic; - color: #0069D6; +.td.cbi-value-field var, +div.cbi-value var, +td.cbi-value-field var { + font-style: italic; + color: #0069d6; } - small { - font-size: 90%; - white-space: normal; - line-height: 1.42857143; + font-size: 90%; + white-space: normal; + line-height: 1.42857143; } - -.cbi-button-up, -.cbi-button-down { - display: inline-block; - min-width: 0; - padding: 0.2rem 0.3rem; - font-size: 1.2rem; +.cbi-button-down, +.cbi-button-up { + display: inline-block; + min-width: 0; + padding: 0.2rem 0.3rem; + font-size: 1.2rem; } - .cbi-optionals { - padding: 1rem 1rem 0 1rem; - border-top: 1px solid #CCC; + padding: 1rem 1rem 0 1rem; + border-top: 1px solid #ccc; } - .cbi-dropdown-container { - position: relative; + position: relative; } - .cbi-tooltip-container { - cursor: help; + cursor: help; } - .cbi-tooltip { - position: absolute; - z-index: 1000; - left: -1000px; - opacity: 0; - transition: opacity .25s ease-out; - pointer-events: none; + position: absolute; + z-index: 1000; + left: -1000px; + opacity: 0; + transition: opacity 0.25s ease-out; + pointer-events: none; } - .cbi-tooltip-container:hover .cbi-tooltip { - left: auto; - opacity: 1; - transition: opacity .25s ease-in; + left: auto; + opacity: 1; + transition: opacity 0.25s ease-in; } - .zonebadge .cbi-tooltip { - padding: .25rem; - background: inherit; - margin: -1.5rem 0 0 -.5rem; + padding: 0.25rem; + background: inherit; + margin: -1.5rem 0 0 -0.5rem; } - .zonebadge-empty { - background: repeating-linear-gradient(45deg,rgba(204,204,204,0.5),rgba(204,204,204,0.5) 5px,rgba(255,255,255,0.5) 5px,rgba(255,255,255,0.5) 10px); - color: #404040; + background: repeating-linear-gradient( + 45deg, + rgba(204, 204, 204, 0.5), + rgba(204, 204, 204, 0.5) 5px, + rgba(255, 255, 255, 0.5) 5px, + rgba(255, 255, 255, 0.5) 10px + ); + color: #404040; } - .zone-forwards { - display: flex; - min-width: 10rem; + display: flex; + min-width: 10rem; } - .zone-forwards > * { - flex: 1 1 45%; + flex: 1 1 45%; } - .zone-forwards > span { - flex-basis: 10%; - text-align: center; - padding: 0 .25rem; + flex-basis: 10%; + text-align: center; + padding: 0 0.25rem; } - -.zone-forwards .zone-src, -.zone-forwards .zone-dest { - display: flex; - flex-direction: column; +.zone-forwards .zone-dest, +.zone-forwards .zone-src { + display: flex; + flex-direction: column; } - #diag-rc-output > pre { - background-color: #f5f5f5; - display: block; - padding: 8.5px; - margin: 0 0 18px; - line-height: 1.5rem; - -moz-border-radius: 3px; - white-space: pre-wrap; - word-wrap: break-word; - font-size: 1.4rem; - color: #404040; + background-color: #f5f5f5; + display: block; + padding: 8.5px; + margin: 0 0 18px; + line-height: 1.5rem; + -moz-border-radius: 10px; + white-space: pre-wrap; + word-wrap: break-word; + font-size: 1.4rem; + color: #404040; } - +input[name="nslookup"], input[name="ping"], -input[name="traceroute"], -input[name="nslookup"] { - width: 80%; +input[name="traceroute"] { + width: 80%; } - header .pull-right > * { - position: relative; - top: 0.45rem; - cursor: pointer; + position: relative; + top: 0.45rem; + cursor: pointer; } - .refresh { - position: absolute; - top: 8%; - left: 0; - text-align: left;; + position: absolute; + top: 8%; + left: 0; + text-align: left; } - #xhr_poll_status > .label.success { - background-color: #14CE14; + background-color: #14ce14; } - .label { - padding: 0.3rem 0.8rem; - font-size: 0.8rem; - font-weight: bold; - color: #ffffff !important; - text-transform: uppercase; - white-space: nowrap; - background-color: #bfbfbf; - -webkit-border-top-right-radius: 5px; - -webkit-border-bottom-right-radius: 5px; - -moz-border-top-right-radius: 5px; - -moz-border-bottom-right-radius: 5px; - text-shadow: none; - text-decoration: none; - border-top-right-radius: 5px; - border-bottom-right-radius: 5px; + padding: 0.3rem 0.8rem; + font-size: 0.8rem; + font-weight: 700; + color: #fff !important; + text-transform: uppercase; + white-space: nowrap; + background-color: #bfbfbf; + -webkit-border-top-right-radius: 50px; + -webkit-border-bottom-right-radius: 50px; + -moz-border-top-right-radius: 50px; + -moz-border-bottom-right-radius: 50px; + text-shadow: none; + text-decoration: none; + border-top-right-radius: 50px; + border-bottom-right-radius: 50px; } - .notice { - background-color: #5BC0DE; - margin-bottom: 16px; - display: block; + background-color: #669492; + margin-bottom: 16px; + display: block; } - #cbi_apply_overlay .alert-message.notice { - background-color: #556270; - color: #fff; - border-radius: 5px; + background-color: #556270; + color: #fff; + border-radius: 10px; } - .showSide { - display: none; + display: none; } - .darkMask { - width: 100%; - height: 100%; - position: fixed; - background-color: rgba(0, 0, 0, 0.56); - content: ""; - z-index: 99; - display: none; + width: 100%; + height: 100%; + position: fixed; + background-color: rgba(0, 0, 0, 0.56); + content: ""; + z-index: 99; + display: none; } - -/* fix Main Login*/ -.node-main-login form{ - width: 35%; - height: 130%; - background-color: #fff; - position: absolute; - top: 50%; - left: 7.5%; - transform: translateY(-50%); - border-radius: 5px; +.node-main-login form { + width: 35%; + height: 130%; + background-color: #fff; + position: absolute; + top: 50%; + left: 7.5%; + transform: translateY(-50%); + border-radius: 10px; } .node-main-login form .cbi-section { - padding: 0; - line-height: normal; - width: 100%; + padding: 0; + line-height: normal; + width: 100%; } - .node-main-login > .main .cbi-value-title { - padding: 0; - position: absolute; - top: -4px; - background: #fff; - font-size: 14px; - left: 12%; - width: auto; + padding: 0; + position: absolute; + top: -4px; + background: #fff; + font-size: 14px; + left: 12%; + width: auto; } - .node-main-login > .main .cbi-value-field { - width: 100%; - max-width: 330px; + width: 100%; + max-width: 330px; } - .node-main-login > .main .cbi-value-field input { - padding-left: 8px; - width: 100%; - height: 40px; - border: 1px solid #9D9D9D; - border-radius: 5px; + padding-left: 8px; + width: 100%; + height: 40px; + border: 1px solid #34414a; + border-radius: 50px; } - .node-main-login > .main #maincontent { - height: 100%; - text-align: center; - position: relative; + height: 100%; + text-align: center; + position: relative; } - .node-main-login > .main .container { - width: 80%; - height: 50%; - display: inline-block; - background-color: #34414A; - position: absolute; - right: 50%; - top: 18%; - transform: translateX(50%); - border-radius: 5px; + width: 80%; + height: 50%; + display: inline-block; + background-color: #354057; + position: absolute; + right: 50%; + top: 18%; + transform: translateX(50%); + border-radius: 10px; } - .node-main-login > .main .alert-message.warning { - padding: 0px 10%; - margin: 0; - width: 50%; - position: absolute; - right: 0; - top: 50%; - transform: translateY(-50%); - text-align: left; - font-size: 18px; - background-color: transparent; - color: #fff; + padding: 0 10%; + margin: 0; + width: 50%; + position: absolute; + right: 0; + top: 50%; + transform: translateY(-50%); + text-align: left; + font-size: 18px; + background-color: transparent; + color: #fff; } - .node-main-login > .main form .alert-message.warning { - right: -120%; - padding: 0 0%; - width: 100%; + right: -130%; + padding: 0 0; + width: 100%; } - .node-main-login > .main .alert-message > h4 { - margin-bottom: 0; - padding-bottom: 0; + margin-bottom: 0; + padding-bottom: 0; } - .node-main-login > .main .alert-message > p { - line-height: 1.5rem; + line-height: 1.5rem; } - .node-main-login > .main .alert-message a { - font-size: 16px; - padding: 8px; - background: transparent; - border: 1px solid #fff; - color: #fff; - text-transform: none; + font-size: 16px; + padding: 8px; + background: 0 0; + border: 1px solid #fff; + color: #fff; + text-transform: none; } - .node-main-login > .main .cbi-value { - display: block; - position: relative; - max-width: 330px; - margin: 6% auto; + display: block; + position: relative; + max-width: 330px; + margin: 6% auto; } - .node-main-login > .main .cbi-value > * { - display: inline-block !important; + display: inline-block !important; } .node-main-login > .main .cbi-page-actions input { - margin: 0 auto 6%; - display: block; - width: 90%; - max-width: 300px; - height: 40px; + margin: 0 auto 7%; + display: block; + width: 90%; + max-width: 300px; + height: 40px; } .node-main-login footer { - bottom: 0; - position: absolute; - width: 100%; - right: 0; + bottom: 0; + position: absolute; + width: 100%; + right: 0; } - -/* fix status overview */ - .node-status-overview > .main fieldset:nth-child(4) .td:nth-child(2) { - white-space: normal; + white-space: normal; } - -/* fix status firewall */ .lang_enFirewall .cbi-tabmenu { - border: none; - margin-top: 1rem; - border-top-left-radius: 5px; - border-top-right-radius: 5px; + border: none; + margin-top: 1rem; + border-radius: 0; + border-top-left-radius: 10px; + border-top-right-radius: 10px; } .lang_enFirewall .cbi-tabmenu .cbi-tab, .lang_enFirewall .cbi-tabmenu > li:hover, .node-network-network .cbi-section .cbi-tabmenu, .node-network-network .cbi-section .cbi-tabmenu .cbi-tab, .node-network-network .cbi-section .cbi-tabmenu .cbi-tab-disabled:hover { - border-radius: 0; - border-top-left-radius: 5px; - border-top-right-radius: 5px; + border-radius: 0; + border-top-left-radius: 10px; + border-top-right-radius: 10px; } .lang_enFirewall.logged-in .cbi-section { - margin: 0; - border-radius: 0; - border-bottom-left-radius: 5px; - border-bottom-right-radius: 5px; + margin: 0; + border-radius: 0; + border-bottom-left-radius: 10px; + border-bottom-right-radius: 10px; } - -/* fix status processes */ - .node-status-processes > .main .table .tr .td:nth-child(3) { - white-space: normal; + white-space: normal; } - .node-status-iptables > .main div > .cbi-map > form { - margin: 2rem 2rem 0 0; + margin: 2rem 2rem 0 0; +} +.node-network-network .cbi-section-node-tabbed, +.node-system-system .cbi-section-node-tabbed { + padding-left: 1px; } - -/* fix system system and fix Network DHCP*/ -.node-system-system .cbi-tabmenu, -.node-system-system .cbi-tabmenu > li[class~="cbi-tab"], -.node-system-system .cbi-tabmenu > li:hover, .node-network-dhcp .cbi-tabmenu, +.node-network-dhcp .cbi-tabmenu > li:hover, .node-network-dhcp .cbi-tabmenu > li[class~="cbi-tab"], -.node-network-dhcp .cbi-tabmenu > li:hover { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; +.node-system-system .cbi-tabmenu, +.node-system-system .cbi-tabmenu > li:hover, +.node-system-system .cbi-tabmenu > li[class~="cbi-tab"] { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; } - -/* fix system reboot */ -.node-system-reboot > .main > .main-right p, -.node-system-reboot > .main > .main-right h3 { - padding-left: 2rem; +.node-system-reboot > .main > .main-right h3, +.node-system-reboot > .main > .main-right p { + padding-left: 2rem; } - -/* fix Services Network Shares*/ .node-services-samba > .main .cbi-tabcontainer:nth-child(3) .cbi-value-title { - margin-bottom: 1rem; - width: auto; + margin-bottom: 1rem; + width: auto; } - .node-services-samba > .main .cbi-tabcontainer:nth-child(3) .cbi-value-field { - display: list-item; + display: list-item; } - -.node-services-samba > .main .cbi-tabcontainer:nth-child(3) .cbi-value-description { - padding-top: 1rem; +.node-services-samba + > .main + .cbi-tabcontainer:nth-child(3) + .cbi-value-description { + padding-top: 1rem; } - -/* fix System Software*/ .node-system-packages > .main table tr td:nth-child(1) { - width: auto !important; + width: auto !important; } - .node-system-packages > .main table tr td:nth-last-child(1) { - white-space: normal; - font-size: small; - color: #404040; + white-space: normal; + font-size: small; + color: #404040; } - -.node-system-packages > .main .cbi-tabmenu > li > a, .tabs > li > a { - padding: 0.5rem 0.8rem; +.node-system-packages > .main .cbi-tabmenu > li > a, +.tabs > li > a { + padding: 0.5rem 0.8rem; } - .node-system-packages > .main .cbi-value > pre { - background-color: #eee; - padding: 0.5rem; - overflow: auto; + background-color: #eee; + padding: 0.5rem; + overflow: auto; } - .node-status-iptables fieldset, -.node-system-packages fieldset, -.node-system-flashops fieldset { - margin-top: 0; +.node-system-flashops fieldset, +.node-system-packages fieldset { + margin-top: 0; } - .node-status-iptables .cbi-tabmenu, -.node-system-packages .cbi-tabmenu, .node-system-flashops .cbi-tabmenu { - border: none; + border: none; +} +.node-system-packages .cbi-tabmenu { + border: 1px solid #d4d4d4; +} +.node-system-packages .cbi-section .cbi-tabmenu { + overflow: hidden; + padding: .5rem 1rem; +} +.node-system-packages .cbi-section .cbi-tabmenu, +.node-system-packages .cbi-section .cbi-tabmenu > li:hover, +.node-system-packages .cbi-section .cbi-tabmenu > li[class~="cbi-tab"] { + border-radius: 50px; +} +.node-system-packages .cbi-section .cbi-section-node-tabbed { + border: none; + border-bottom: 1px solid #d4d4d4; } - .node-system-flashops form.inline + form.inline { - margin-left: 0; + margin-left: 0; } - #cbi-firewall-redirect table *, -#cbi-network-switch_vlan table *, -#cbi-firewall-zone table * { - font-size: small; +#cbi-firewall-zone table *, +#cbi-network-switch_vlan table * { + font-size: small; } - #cbi-firewall-redirect table input[type="text"], -#cbi-network-switch_vlan table input[type="text"], -#cbi-firewall-zone table input[type="text"] { - width: 5rem; +#cbi-firewall-zone table input[type="text"], +#cbi-network-switch_vlan table input[type="text"] { + width: 5rem; } - #cbi-firewall-redirect table select, -#cbi-network-switch_vlan table select, -#cbi-firewall-zone table select { - min-width: 3.5rem; +#cbi-firewall-zone table select, +#cbi-network-switch_vlan table select { + min-width: 3.5rem; } - -#cbi-network-switch_vlan .th, -#cbi-network-switch_vlan .td { - flex-basis: 12%; +#cbi-network-switch_vlan .td, +#cbi-network-switch_vlan .th { + flex-basis: 12%; } - -/* language fix */ body.lang_pl.node-main-login .cbi-value-title { - width: 12rem; + width: 12rem; } - -/* applyreboot fix */ - #applyreboot-container { - margin: 2rem; + margin: 2rem; } header .fill .container p.brand { - font-size: 40px; + font-size: 40px; } #applyreboot-section { - margin: 2rem; - line-height: 300%; + margin: 2rem; + line-height: 300%; } #maincontent.container { - position: absolute; - z-index: 99999; - left: 50%; - top: 20%; - transform: translateX(-50%); - color: #fff; + position: absolute; + z-index: 99999; + left: 50%; + top: 20%; + transform: translateX(-50%); + color: #fff; } #maincontent.container h2 { - color: #fff; - background: transparent; + color: #fff; + background: 0 0; } #maincontent.container #applyreboot-section { - background: transparent; - border: 1px solid #ffffff78; + background: 0 0; + border: 1px solid #ffffff78; + border-radius: 10px; } - -@media screen and (max-width: 1420px){ - .main > .main-left > .nav > .slide > .menu { - padding-left: .5rem; - font-size: 14px; - } - .main > .main-left > .nav > .slide > .slide-menu > li { - padding-left: 1rem; - font-size: 10px; - } +.node-main-login .main-left .nav-container { + display: none; +} +.node-main-login .line-draft { + width: 50%; + position: absolute; + right: 3%; + top: 50%; + transform: translateY(-50%); + max-height: 100%; + display: none; +} +.node-main-login .line-draft img { + width: 50%; +} +.logged-in .line-draft { + display: none; +} +@media screen and (max-width: 1420px) { + .main > .main-left .nav > .slide > .menu { + padding-left: 0.5rem; + font-size: 14px; + } + .main > .main-left .nav > .slide > .slide-menu > li { + padding-left: 1rem; + font-size: 10px; + } + .node-main-login h2 { + font-size: 20px; + } + .node-main-login > .main .cbi-value-field input { + height: 36px; + width: 90%; + } + .node-main-login > .main .cbi-page-actions input { + height: 36px; + width: 82%; + } } - @media screen and (max-width: 1024px) { - .node-main-login > .main #maincontent { - position: static; - } - .node-main-login .main { - max-width: 384px; - margin: 0 auto; - } - .node-main-login .main-left { - float: none; - position: static; - height: 14%; - width: 100%; - } - .node-main-login .main-left header, - .node-main-login { - background-color: #fff; - } - .node-main-login .main-left header .brand { - font-size: 36px; - } - .main-left header::before, - .logged-in header .refresh::before { - content: ''; - display: inline-block; - vertical-align: middle; - height: 100%; - } - .main-left header .brand { - display: inline-block; - vertical-align: middle; - position: relative; - } - .node-main-login .main-right { - padding: 0; - width: 100%; - float: none; - background-color: #fff; - height: auto; - } - .node-main-login > .main .container { - background-color: #fff; - width: 100%; - height: 100%; - position: static; - transform: none; - display: block; - } - .node-main-login > .main .alert-message.warning { - position: static; - color: #34414a; - width: 100%; - padding: 0; - transform: none; - text-align: center; - font-size: 14px; - } - .node-main-login > .main .alert-message a { - background-color: #6E99C9; - display: block; - } - .node-main-login form { - width: 100%; - height: auto; - position: static; - transform: none; - } - .node-main-login > .main .cbi-value { - width: 100%; - margin: 8% 0; - padding: 0; - max-width: 100%; - } - .node-main-login > .main .cbi-value-field { - max-width: 100%; - } - .node-main-login > .main .cbi-value-title { - top: -8px; - left: 4%; - } - .node-main-login > .main .cbi-page-actions input { - width: 100%; - max-width: none; - } - - .logged-in .main-left { - height: 64px; - top: 0; - width: 100%; - z-index: 999; - } - .logged-in header { - padding: 0 0 0 1rem; - text-align: left; - background: #fff; - } - .logged-in header .showSide { - display: inline-block; - height: 50px; - width: 50px; - background: url(./menu-logo.png) no-repeat center center / cover; - } - header .brand { - color: #34414A; - } - .logged-in header .refresh { - text-align: right; - top: 50%; - right: 2%; - transform: translateY(-50%); - left: auto; - } - .logged-in header .refresh > span, - .logged-in header .refresh > a { - margin: 0; - display: inline-block; - vertical-align: middle; - border-radius: 5px; - } - #xhr_poll_status > .label.success { - border-radius: 5px; - } - .logged-in .main-left .nav { - padding: 0; - right: 0; - top: 100%; - width: 100%; - height: 0; - border-radius: 0; - overflow: hidden; - background-color: #556270; - } - .main > .main-left > .nav > li a { - color: #fff; - font-size: 18px; - } - .main > .main-left > .nav > .slide > ul { - display: block; - } - .main > .main-left > .nav > .slide { - position: absolute; - text-align: center; - top: 30%; - } - .main > .main-left > .nav > .slide > .menu { - padding: 0; - pointer-events: none; - color: #ffffff7d; - } - .main > .main-left > .nav > .slide > .slide-menu > li { - padding: .5rem 0; - } - .main > .main-left > .nav > .slide > .menu:hover { - background: transparent; - } - - .logged-in .main-right { - padding: 0 1% 0 1%; - height: 100%; - width: 100%; - float: none; - margin-top: 88px; - } + .main > .main-left .nav > .slide > .slide-menu > li { + font-size: 20px; + } + .node-main-login > .main #maincontent { + position: static; + } + .node-main-login .main { + max-width: 384px; + margin: 0 auto; + } + .node-main-login .main-left { + float: none; + position: static; + height: 14%; + width: 100%; + } + .node-main-login, + .node-main-login .main-left header { + background-color: #fff; + } + .node-main-login .main-left header .brand { + font-size: 36px; + } + .logged-in header .refresh::before, + .main-left header::before { + content: ""; + display: inline-block; + vertical-align: middle; + height: 100%; + } + .main-left header .brand { + display: inline-block; + vertical-align: middle; + position: relative; + } + .node-main-login .main-right { + padding: 0; + width: 100%; + float: none; + background-color: #fff; + height: auto; + } + .node-main-login > .main .container { + background-color: #fff; + width: 100%; + height: 100%; + position: static; + transform: none; + display: block; + } + .node-main-login > .main .alert-message.warning { + position: static; + color: #34414a; + width: 100%; + padding: 0; + transform: none; + text-align: center; + font-size: 14px; + } + .node-main-login > .main .alert-message a { + background-color: #6e99c9; + display: block; + } + .node-main-login form { + width: 100%; + height: auto; + position: static; + transform: none; + } + .node-main-login > .main .cbi-value { + width: 100%; + margin: 8% 0; + padding: 0; + max-width: 100%; + } + .node-main-login > .main .cbi-value-field { + max-width: 100%; + } + .node-main-login > .main .cbi-value-title { + top: -8px; + left: 8%; + } + .node-main-login > .main .cbi-page-actions input { + width: 100%; + max-width: none; + } + .node-main-login .line-draft { + display: none; + } + .node-main-login > .main .cbi-page-actions input { + width: 90%; + } + .logged-in .main-left { + height: 64px; + top: 0; + width: 100%; + z-index: 999; + overflow: hidden; + } + .logged-in header { + padding: 0 0 0 1rem; + text-align: left; + background: #fff; + border-bottom: 1px solid #f5f5f5; + } + .logged-in header .showSide { + display: inline-block; + height: 50px; + width: 50px; + background: url(./menu-logo.png) no-repeat center center/cover; + } + header .brand { + color: #34414a; + } + .logged-in header .refresh { + text-align: right; + top: 50%; + right: 2%; + transform: translateY(-50%); + left: auto; + } + .logged-in header .refresh > a, + .logged-in header .refresh > span { + margin: 0; + display: inline-block; + vertical-align: middle; + border-radius: 10px; + } + #xhr_poll_status > .label.success { + border-radius: 10px; + } + .logged-in .main-left .nav-container { + padding: 0; + right: 0; + top: 100%; + width: 100%; + height: 0; + border-radius: 0; + background-color: #354057; + } + .main > .main-left .nav > .slide { + margin-bottom: 1.5rem; + display: block; + position: static; + text-align: left; + } + .main > .main-left .nav > .slide > .menu { + font-size: 26px; + padding-left: 1rem; + color: #fff; + } + .main > .main-left .nav > li a { + color: #fff; + } + .main > .main-left .nav > .slide > ul { + display: none; + } + .main > .main-left .nav > .slide > .slide-menu > li > a { + padding-left: 2rem; + } + .main > .main-left .nav > .slide > .active { + background-color: transparent !important; + } + .main > .main-left .nav > .slide > .slide-menu > .active { + background-color: #617080; + } + .logged-in .main-right { + padding: 0 1% 0 1%; + height: 100%; + width: 100%; + float: none; + margin-top: 88px; + } + .logged-in .main > .main-left .logout { + bottom: 1%; + } + .logged-in .main > .main-left .logout a { + font-size: 20px; + background-image: url(./logout-white.png); + } + .node-status-processes .cbi-section { + padding: 0; + } + .node-system-admin .cbi-value-field { + background-color: #fff; + } } - @media screen and (max-width: 992px) { - .main-left { - width: 0; - position: fixed; - z-index: 100; - } - - .main-right { - width: 100%; - } - - .cbi-value-title { - width: 9rem; - padding-right: 1rem; - } - - .node-network-diagnostics > .main .cbi-map fieldset > div * { - width: 100% !important; - } - - .node-network-diagnostics > .main .cbi-map fieldset > div input[type="text"] { - margin: 3rem 0 0 0 !important; - } - - .node-network-diagnostics > .main .cbi-map fieldset > div:nth-child(4) input[type="text"] { - margin: 0 !important; - } - - .node-network-diagnostics > .main .cbi-map fieldset > div select, - .node-network-diagnostics > .main .cbi-map fieldset > div input[type="button"] { - margin: 1rem 0 0 0; - } - - .node-network-diagnostics > .main .cbi-map fieldset > div { - width: 100% !important; - } - #diag-rc-output > pre { - font-size: 1rem; - } - .tr { - display: flex; - flex-direction: row; - flex-wrap: wrap; - } - - .th, .td { - flex: 2 2 25%; - align-self: flex-start; - overflow: hidden; - text-overflow: ellipsis; - word-wrap: break-word; - display: inline-block; - } - - .td select, - .td input[type="text"] { - word-wrap: normal; - width: 100%; - } - - .td [data-dynlist] > input, - .td input.cbi-input-password { - width: calc(100% - 1.5rem); - } - - .td[data-type="button"], - .td[data-type="fvalue"] { - flex: 1 1 12.5%; - text-align: left; - } - .th.cbi-value-field, - .td.cbi-value-field, - .th.cbi-section-table-cell, - .td.cbi-section-table-cell { - flex-basis: auto; - } - - .cbi-section-table-row { - display: flex; - flex-wrap: wrap; - flex-direction: row; - justify-content: space-between; - } - - .td.cbi-value-field, - .cbi-section-table-cell { - text-align: center; - display: inline-block; - flex: 10 10 auto; - } - - .td.cbi-section-actions { - text-align: right; - align-self: flex-end; - vertical-align: bottom; - } - - .tr.table-titles, - .tr.cbi-section-table-titles, - .tr.cbi-section-table-descr { - display: none; - } - - .tr[data-title]::before, - .tr.cbi-section-table-titles.named::before { - display: block; - flex: 1 1 100%; - background: #eef; - font-size: .9rem; - border-bottom: 1px solid rgba(0, 0, 0, .26); - } - - .td[data-title] { - text-align: left; - } - - .td[data-title]::before { - display: block; - } - - .hide-sm, - .hide-xs { - display: none; - } + .main-left { + width: 0; + position: fixed; + z-index: 100; + } + .main-right { + width: 100%; + } + .cbi-value-title { + width: 9rem; + padding-right: 1rem; + } + .node-network-diagnostics > .main .cbi-map fieldset > div * { + width: 100% !important; + } + .node-network-diagnostics > .main .cbi-map fieldset > div input[type="text"] { + margin: 3rem 0 0 0 !important; + } + .node-network-diagnostics + > .main + .cbi-map + fieldset + > div:nth-child(4) + input[type="text"] { + margin: 0 !important; + } + .node-network-diagnostics + > .main + .cbi-map + fieldset + > div + input[type="button"], + .node-network-diagnostics > .main .cbi-map fieldset > div select { + margin: 1rem 0 0 0; + } + .node-network-diagnostics > .main .cbi-map fieldset > div { + width: 100% !important; + } + #diag-rc-output > pre { + font-size: 1rem; + } + .tr { + display: flex; + flex-direction: row; + flex-wrap: wrap; + } + .td, + .th { + flex: 2 2 25%; + align-self: flex-start; + overflow: hidden; + text-overflow: ellipsis; + word-wrap: break-word; + display: inline-block; + } + .td input[type="text"], + .td select { + word-wrap: normal; + width: 100%; + } + .td [data-dynlist] > input, + .td input.cbi-input-password { + width: calc(100% - 1.5rem); + } + .td[data-type="button"], + .td[data-type="fvalue"] { + flex: 1 1 12.5%; + text-align: left; + } + .td.cbi-section-table-cell, + .td.cbi-value-field, + .th.cbi-section-table-cell, + .th.cbi-value-field { + flex-basis: auto; + } + .cbi-section-table-row { + display: flex; + flex-wrap: wrap; + flex-direction: row; + justify-content: space-between; + } + .cbi-section-table-cell, + .td.cbi-value-field { + text-align: center; + display: inline-block; + flex: 10 10 auto; + } + .td.cbi-section-actions { + text-align: right; + align-self: flex-end; + vertical-align: bottom; + } + .tr.cbi-section-table-descr, + .tr.cbi-section-table-titles, + .tr.table-titles { + display: none; + } + .tr.cbi-section-table-titles.named::before, + .tr[data-title]::before { + display: block; + flex: 1 1 100%; + background: #eef; + font-size: 0.9rem; + border-bottom: 1px solid rgba(0, 0, 0, 0.26); + } + .td[data-title] { + text-align: left; + } + .td[data-title]::before { + display: block; + } + .hide-sm, + .hide-xs { + display: none; + } } - @media screen and (max-width: 880px) { - .main { - overflow: visible; - } - .main > .main-left > .nav > .slide { - margin-bottom: 1.5rem; - display: block; - position: static; - text-align: left; - } - .main > .main-left > .nav > .slide > .menu { - font-size: 26px; - padding-left: 1rem; - pointer-events: auto; - } - .main > .main-left > .nav > .slide > ul { - display: none; - } - .main > .main-left > .nav > .slide > .slide-menu > li > a { - padding-left: 2rem; - } - .main > .main-left > .nav > .slide > .active{ - background-color: transparent !important; - } - .main > .main-left > .nav > .slide > .slide-menu > .active { - background-color: #617080; - } + .main { + overflow: visible; + } } - @media screen and (max-width: 480px) { - body { - font-size: 1rem; - } - - .main > .main-left > .nav > .slide > .menu { - font-size: 1.3rem; - } - - .main > .main-left > .nav > .slide > .slide-menu > li > a { - font-size: 1.1rem; - } - - .cbi-value > .cbi-value-field { - display: inline-block; - } - - .cbi-tabmenu > li, .tabs > li { - padding: 0.6rem 0rem; - } - - .cbi-tabmenu > li > a, .tabs > li > a { - padding: 0.2rem 0.3rem; - font-size: 0.9rem; - } - - .cbi-page-actions > div > input { - display: none; - } - - .node-main-login > .main .container { - padding: 0.5rem 1rem 2rem 1rem; - } - - .node-main-login > .main .cbi-value { - padding: 0; - } - - .node-main-login > .main form > div:nth-last-child(1) { - margin-top: 2rem; - } - - .node-main-login > .main .cbi-value-title { - font-size: 1.2rem; - } - - h2 { - font-size: 1.5rem; - } - .node-main-login form h2, - .node-main-login form .cbi-map-descr { - display: none; - } - - .tabs > li > a { - font-size: 0.9rem; - } - - select, - input { - font-size: 0.9rem; - } - - .mobile-hide { - display: none; - } - - .panel-title { - font-size: 1rem; - padding-bottom: .5rem; - } - - .node-system-packages > .main .cbi-value.cbi-value-last > div { - width: 100% !important; - } - - .node-system-packages > .main .cbi-value .cbi-value-field input { - width: 100%; - } - - .node-status-iptables > .main div > .cbi-map > form { - position: static !important; - margin: 0 0 2rem 0; - padding: 2rem; - border: 0; - font-weight: normal; - font-style: normal; - line-height: 1; - font-family: inherit; - min-width: inherit; - border-radius: 0; - background-color: #FFF; - -webkit-overflow-scrolling: touch; - } - - .node-status-iptables > .main div > .cbi-map > form input[type="submit"] { - width: 100% !important; - margin: 0; - } - - .node-status-iptables > .main div > .cbi-map > form input[type="submit"] + input[type="submit"] { - margin-top: 1rem; - } - - .th, .td { - flex-basis: 50%; - } - - .td.cbi-value-field { - flex-basis: 100%; - } - - .td.cbi-value-field[data-type="dvalue"] { - flex-basis: 50%; - } - - .td.cbi-value-field[data-type="button"], - .td.cbi-value-field[data-type="fvalue"] { - flex-basis: 25%; - text-align: left; - } - - .tr[data-title]::before, - .tr.cbi-section-table-titles.named::before { - font-size: 1rem; - } - - .hide-xs { - display: none; - } - - .logged-in .main-left { - height: 33px; - } - .logged-in header { - padding: 0 0 0 3px; - } - .main-left header .brand { - font-size: 18px; - } - .logged-in header .showSide { - height: 25px; - width: 25px; - } - .logged-in .main-right { - margin-top: 44px; - padding-bottom: 1rem; - } - .cbi-value { - padding: 0.3rem 1rem 0.3rem 0; - } - .logged-in .cbi-value-title { - font-size: 10px; - } - .cbi-section > h3:first-child, .panel-title { - font-size: 1rem; - } - .td[data-title]::before { - font-size: 6px; - } - .logged-in .cbi-section-error li { - font-size: 10px; - } - .node-main-login > .main .cbi-value-title { - top: -13px; - } + body { + font-size: 1rem; + } + .main > .main-left .nav > .slide > .menu { + font-size: 1.3rem; + } + .main > .main-left .nav > .slide > .slide-menu > li > a { + font-size: 1.1rem; + } + .cbi-value > .cbi-value-field { + display: inline-block; + } + .cbi-tabmenu > li, + .tabs > li { + padding: 0.6rem 0; + } + .cbi-tabmenu > li > a, + .tabs > li > a { + padding: 0.2rem 0.3rem; + font-size: 0.8rem; + } + .cbi-page-actions > div > input { + display: none; + } + .node-main-login > .main .container { + padding: 0.5rem 1rem 2rem 1rem; + } + .node-main-login > .main .cbi-value { + padding: 0; + } + .node-main-login > .main form > div:nth-last-child(1) { + margin-top: 2rem; + } + .node-main-login > .main .cbi-value-title { + font-size: 1.2rem; + } + h2 { + font-size: 1.5rem; + } + .node-main-login form .cbi-map-descr, + .node-main-login form h2 { + display: none; + } + .tabs > li > a { + font-size: 0.9rem; + } + input, + select { + font-size: 0.9rem; + } + .mobile-hide { + display: none; + } + .panel-title { + font-size: 1rem; + padding-bottom: 0.5rem; + } + .node-system-packages > .main .cbi-value.cbi-value-last > div { + width: 100% !important; + } + .node-system-packages > .main .cbi-value .cbi-value-field input { + width: 100%; + } + .node-status-iptables > .main div > .cbi-map > form { + position: static !important; + margin: 0 0 2rem 0; + padding: 2rem; + border: 0; + font-weight: 400; + font-style: normal; + line-height: 1; + font-family: inherit; + min-width: inherit; + border-radius: 0; + background-color: #fff; + -webkit-overflow-scrolling: touch; + text-align: center; + } + .node-status-iptables > .main div > .cbi-map > form input[type="submit"] { + width: 70% !important; + margin: 0; + } + .node-status-iptables + > .main + div + > .cbi-map + > form + input[type="submit"] + + input[type="submit"] { + margin-top: 1rem; + } + .td, + .th { + flex-basis: 50%; + } + .td.cbi-value-field { + flex-basis: 100%; + } + .td.cbi-value-field[data-type="dvalue"] { + flex-basis: 50%; + } + .td.cbi-value-field[data-type="button"], + .td.cbi-value-field[data-type="fvalue"] { + flex-basis: 25%; + text-align: left; + } + .tr.cbi-section-table-titles.named::before, + .tr[data-title]::before { + font-size: 1rem; + } + .hide-xs { + display: none; + } + .logged-in .main-left { + height: 33px; + } + .logged-in header { + padding: 0 0 0 3px; + } + .main-left header .brand { + font-size: 18px; + } + .logged-in header .showSide { + height: 25px; + width: 25px; + } + .logged-in .main-right { + margin-top: 44px; + padding-bottom: 1rem; + } + .cbi-value { + padding: 0.3rem 1rem 0.3rem 0; + } + .logged-in .cbi-value-title { + font-size: 10px; + } + .cbi-section > h3:first-child, + .panel-title { + font-size: 1rem; + } + .td[data-title]::before { + font-size: 6px; + } + .logged-in .cbi-section-error li { + font-size: 10px; + } + .node-main-login > .main .cbi-value-title { + top: 0; + } + .cbi-section { + padding: 0.5rem; + } + .cbi-section .cbi-section-node .cbi-value { + padding: 0.5rem; + } + .node-system-packages .cbi-tabmenu { + border: 1px solid #d4d4d4; + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + } + .node-system-packages .cbi-map > .cbi-section > .cbi-section-node > .table { + margin-top: 0; + } + .node-system-packages > .main .cbi-value .cbi-value-field span input { + margin-bottom: 1rem; + } } - @media screen and (min-width: 992px) { - .cbi-value-field .cbi-dropdown { - min-width: 20rem; - } + .cbi-value-field .cbi-dropdown { + min-width: 20rem; + } } - -*:focus { - outline: 0; +:focus { + outline: 0; } diff --git a/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/js/script.js b/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/js/script.js index 11807d906..c13c5192c 100755 --- a/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/js/script.js +++ b/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/js/script.js @@ -59,7 +59,7 @@ return true; } - $(".main > .main-left > .nav > .slide > .menu").each(function () { + $(".main > .main-left .nav > .slide > .menu").each(function () { var ulNode = $(this); ulNode.next().find("a").each(function () { var that = $(this); @@ -81,30 +81,28 @@ /** * menu click */ - if($(window).width() > 1024 || $(window).width() <= 880){ - $(".main > .main-left .nav > .slide > .menu").click(function () { - var ul = $(this).next(".slide-menu"); - var menu = $(this); - if (!ul.is(":visible")) { - $(".main > .main-left .nav > .slide > .menu").next(".slide-menu").slideUp("fast"); - menu.addClass("active"); - ul.addClass("active"); - ul.stop(true).slideDown("fast"); - } else { - ul.stop(true).slideUp("fast", function () { - menu.removeClass("active"); - ul.removeClass("active"); - }); - } - return false; - }); - } + $(".main > .main-left .nav > .slide > .menu").click(function () { + var ul = $(this).next(".slide-menu"); + var menu = $(this); + if (!ul.is(":visible")) { + $(".main > .main-left .nav > .slide > .menu").next(".slide-menu").slideUp("fast"); + menu.addClass("active"); + ul.addClass("active"); + ul.stop(true).slideDown("fast"); + } else { + ul.stop(true).slideUp("fast", function () { + menu.removeClass("active"); + ul.removeClass("active"); + }); + } + return false; + }); /** * hook menu click and add the hash */ - $(".main > .main-left > .nav > .slide > .slide-menu > li > a").click(function () { + $(".main > .main-left .nav > .slide > .slide-menu > li > a").click(function () { if (lastNode != undefined) lastNode.removeClass("active"); $(this).parent().addClass("active"); $(".main > .loading").fadeIn("fast"); @@ -114,7 +112,7 @@ /** * fix menu click */ - $(".main > .main-left > .nav > .slide > .slide-menu > li").click(function () { + $(".main > .main-left .nav > .slide > .slide-menu > li").click(function () { if (lastNode != undefined) lastNode.removeClass("active"); $(this).addClass("active"); $(".main > .loading").fadeIn("fast"); @@ -158,16 +156,18 @@ $(".showSide").click(function () { if($(window).width() <= 1024){ if (showSide) { - $(".nav").stop(true).animate({ + $(".nav-container").stop(true).animate({ height: "0", padding: "0" }, "fast"); + $(".logged-in .main-left").css('overflow', "hidden"); showSide = false; } else { - $(".nav").stop(true).animate({ - height: $(window).height() - 64 + 'px', - padding: "2rem 1rem" + $(".nav-container").stop(true).animate({ + height: $(window).height() - $('.logged-in .main-left > header').height() + 'px', + padding: "3rem 1rem" }, "fast"); + $(".logged-in .main-left").css('overflow', "visible"); showSide = true; } } @@ -223,12 +223,25 @@ } } - if($(window).width() <= 1024 && $(window).width() >= 768){ - $('.main > .main-left .nav > .slide').each(function(index, elem){ - elem.style.width = $($('.main > .main-left .nav > .slide')[1]).width() + 'px'; - elem.style.left = 20 * (index+1) + '%'; - }); + function disnone() { + var mes = $('.node-main-login .alert-message.warning'); + var lineDraft = $('.node-main-login .line-draft'); + + if(mes.is(":visible")){ + lineDraft.css('display', 'none'); + mes.css('display', 'block'); + }else { + lineDraft.css('display', 'block'); + mes.css('display', 'none'); + } + } + + if($(window).width() > 1024){ + disnone(); + $('.node-main-login .cbi-button-apply').click(function(){disnone();}); } + + })(jQuery); diff --git a/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/line-draft.png b/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/line-draft.png new file mode 100644 index 0000000000000000000000000000000000000000..57b2ea8693d431a7eb41fd93191dcae58c1973ab GIT binary patch literal 25292 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 Y2gKbbChgp9U;qFB07*qoM6N<$f-|IHDF6Tf literal 0 HcmV?d00001 diff --git a/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/logout-white.png b/package/lean/luci-theme-rosy/htdocs/luci-static/rosy/logout-white.png new file mode 100644 index 0000000000000000000000000000000000000000..861b1ea37a4fdb3611952b59bc285ab172c26e78 GIT binary patch literal 587 zcmV-R0<`^!P)RJ-R|ETjoxmDk6<}Zr7zgeH zwv&w*dST3{=%2>1qE0eU6HS|gf(Z7&7-Q$+s01G$Rm?(KB>2w}ADm(}DNV;1Gv?^D&JAjF3kfhFbKyB}kG}P2Q+lPUh zz&=R>b%AYn0fWGGNhcc3v;7d*6VIpE{ZURz*cLZjLNV*8#oz44@^#z&1|Rb#YtPkj-DoJ!iLJ8 zSlCt2wgGrmDfBt;yfw`QJ^=54x4;}=UHZZUzlT1A}UW literal 0 HcmV?d00001 diff --git a/package/lean/luci-theme-rosy/luasrc/view/themes/rosy/header.htm b/package/lean/luci-theme-rosy/luasrc/view/themes/rosy/header.htm index 2469639df..8e9d5ad62 100644 --- a/package/lean/luci-theme-rosy/luasrc/view/themes/rosy/header.htm +++ b/package/lean/luci-theme-rosy/luasrc/view/themes/rosy/header.htm @@ -120,38 +120,37 @@ end end - local function render_topmenu() + local function render_topmenu() local childs = disp.node_childs(cattree) + if #childs > 0 then - write('') + end end local function render_changes() @@ -176,11 +175,14 @@ -%> + - <%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %> - LuCI - - + + <%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %> - + LuCI + + @@ -191,63 +193,81 @@ - - LuCI"> - - LuCI"> - + - LuCI"> + - LuCI"> + <% if node and node.css then %> - + <% end -%> <% if css then %> - + <% end -%> + -
-
- -
-

Loading...

-
-
-
-
- <%=boardinfo.hostname or "?"%> -
- <% render_changes() %> - - +
+
+ +
+

Loading...

+
+
+
+
+ + <%=boardinfo.hostname or "?"%> +
+ <% render_changes() %> + + +
+
+ -
- <% render_topmenu() %> -
-
-
-
-
- <%- if luci.sys.process.info("uid") == 0 and luci.sys.user.getuser("root") and not luci.sys.user.getpasswd("root") then -%> +
+
+
+
+
+ <%- if luci.sys.process.info("uid") == 0 and luci.sys.user.getuser("root") and not luci.sys.user.getpasswd("root") then -%>
-

<%:No password set!%>

-

<%:There is no password set on this router. Please configure a root password to protect the web interface and enable SSH.%>

- +

+ <%:No password set!%> +

+

+ <%:There is no password set on this router. Please configure a root password to protect the web interface and enable SSH.%> +

+
- <%- end -%> + <%- end -%> - + - <% if category then render_tabmenu(category, cattree) end %> + <% if category then render_tabmenu(category, cattree) end %> \ No newline at end of file diff --git a/package/lean/luci-theme-rosy/root/etc/uci-defaults/30_luci-theme-rosy b/package/lean/luci-theme-rosy/root/etc/uci-defaults/30_luci-theme-rosy index 9f976fd52..2657a2977 100755 --- a/package/lean/luci-theme-rosy/root/etc/uci-defaults/30_luci-theme-rosy +++ b/package/lean/luci-theme-rosy/root/etc/uci-defaults/30_luci-theme-rosy @@ -1,6 +1,6 @@ #!/bin/sh uci batch <<-EOF - set luci.themes.rosy=/luci-static/rosy + set luci.themes.Rosy=/luci-static/rosy set luci.main.mediaurlbase=/luci-static/rosy commit luci EOF