2 * Material is a clean HTML5 theme for LuCI. It is based on luci-theme-bootstrap and MUI
5 * Copyright 2015 Lutty Yang <lutty@wcan.in>
7 * Have a bug? Please create an issue here on GitHub!
8 * https://github.com/LuttyYang/luci-theme-material/issues
10 * luci-theme-bootstrap:
11 * Copyright 2008 Steven Barth <steven@midlink.org>
12 * Copyright 2008 Jo-Philipp Wich <jow@openwrt.org>
13 * Copyright 2012 David Menting <david@nut-bolt.nl>
16 * https://github.com/muicss/mui
18 * Licensed to the public under the Apache License 2.0
22 * Font generate by Icomoon<icomoon.io>
25 font-family: 'icomoon';
26 src: url
('../fonts/font.eot');
27 src: url
('../fonts/font.eot') format
('embedded-opentype'),
28 url
('../fonts/font.ttf') format
('truetype'),
29 url
('../fonts/font.woff') format
('woff'),
30 url
('../fonts/font.svg') format
('svg');
39 [class^
="icon-"], [class
*=" icon-"] {
40 font-family: 'icomoon' !important
;
42 font-style: normal
!important
;
43 font-weight: normal
!important
;
44 font-variant: normal
!important
;
45 text-transform: none
!important
;
48 -webkit-font-smoothing: antialiased
;
49 -moz-osx-font-smoothing: grayscale
;
57 box-sizing: border-box
;
60 .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
71 font-family: "Helvetica Neue", Helvetica
, Microsoft Yahei
, Hiragino Sans GB
, WenQuanYi Micro Hei
, sans-serif
;
75 padding: 0.36rem 0.8rem;
77 background-color: #fff;
78 background-image: none
;
79 border: 1px solid
#ccc;
83 padding: 0.36rem 0.5rem;
92 text-decoration: underline
;
96 header
, footer
, .main
{
103 box-shadow: 0 2px 5px rgba
(0, 0, 0, .26);
104 transition: box-shadow
.2s;
118 width: calc
(0% + 17rem);
121 background-color: white
;
126 width: calc
(100% - 17rem);
130 background-color: #EEE;
146 header
> .container
{
148 padding: 0.5rem 1rem 0 1rem;
151 header
> .container
> .brand
{
154 text-decoration: none
;
156 vertical-align: text-bottom
;
160 background-color: #FF7D60 !important
;
173 font-family: inherit
;
177 background-color: #FFF;
178 box-shadow: 0 2px 2px 0 rgba
(0, 0, 0, .16), 0 0 2px 0 rgba
(0, 0, 0, .12);
183 background-color: #f0ad4e;
184 border-color: #eea236;
187 #maincontent > .container
> div:nth-child
(1).alert-message
.warning
> a
{
188 box-sizing: border-box
;
191 text-transform: none
;
192 display: inline-block
;
197 vertical-align: middle
;
198 touch-action: manipulation
;
200 -webkit-user-select: none
;
201 -moz-user-select: none
;
202 -ms-user-select: none
;
204 background-image: none
;
206 padding: 0.5rem 1rem;
208 line-height: 1.42857143;
210 background-color: #5bc0de;
211 border-color: #46b8da;
213 text-decoration: inherit
;
216 .main > .main-left > .nav {
220 .main > .main-left > .nav > li a {
225 .main > .main-left > .nav > li:nth-last-child(1) {
230 .main > .main-left > .nav > li {
231 padding: 0.5rem 1rem;
235 .main > .main-left > .nav > .slide {
239 .main > .main-left > .nav > .slide > ul {
243 .main > .main-left > .nav > .slide > .menu {
245 padding: 0.5rem 1rem;
246 text-decoration: none
;
251 .main
> .main-left
> .nav
> li:hover
,
252 .main > .main-left > .nav > .slide > .menu:hover {
256 .main > .main-left > .nav > .slide:hover {
260 .main > .main-left > .nav > .slide > .slide-menu > li {
261 padding: 0.4rem 2rem;
264 .main > .main-left > .nav > .slide > .slide-menu > .active {
265 background-color: #0099CC;
268 .main > .main-left > .nav > .slide > .slide-menu > li > a {
269 text-decoration: none
;
273 .main > .main-left > .nav > .slide > .slide-menu > .active > a {
277 .main > .main-left > .nav > .slide > .slide-menu > li:hover {
281 .main > .main-left > .nav > .slide > .slide-menu > .active:hover {
282 background-color: #0099CC;
287 list-style-type: none
;
290 #maincontent > .container
{
291 margin: 0 2rem 3rem 2rem;
296 padding-bottom: 10px;
297 border-bottom: 1px solid
#eee;
303 padding-bottom: 10px;
304 border-bottom: 1px solid
#eee;
310 padding-bottom: 10px;
325 font-family: inherit
;
331 background-color: #FFF;
332 box-shadow: 0 2px 2px 0 rgba
(0, 0, 0, .16), 0 0 2px 0 rgba
(0, 0, 0, .12);
336 display: none
!important
;
339 fieldset
> fieldset
{
352 padding-bottom: 2rem;
353 border-bottom: 1px solid
#eee;
358 border-collapse: collapse
;
360 border: 1px solid
#eee;
363 table
> tbody
> tr
> td
, table
> tbody
> tr
> th
, table
> tfoot
> tr
> td
, table
> tfoot
> tr
> th
, table
> thead
> tr
> td
, table
> thead
> tr
> th
{
365 line-height: 1.42857143;
366 border-top: 1px solid
#ddd;
371 .cbi-section-table-cell {
375 .cbi-section-table-row {
379 fieldset
> table
> tbody
> tr:nth-of-type
(odd
) {
380 background-color: #f9f9f9;
390 /* fix progress bar */
395 width: 100% !important
;
396 height: 1.4rem !important
;
399 #memfree > div
> div
,
400 #membuff > div
> div
,
402 #memtotal > div
> div
{
403 height: 1.4rem !important
;
404 background-color: #0099CC !important
;
407 /* fix multiple table */
413 .cbi-value-field table {
417 td
> table
> tbody
> tr
> td
{
421 .cbi-value-field > table > tbody > tr > td {
428 box-sizing: border-box
;
431 text-transform: none
;
432 display: inline-block
;
437 vertical-align: middle
;
438 touch-action: manipulation
;
440 -webkit-user-select: none
;
441 -moz-user-select: none
;
442 -ms-user-select: none
;
444 background-image: none
;
445 border: 1px solid transparent
;
447 background-color: #fff;
450 padding: 0.5rem 1rem;
452 line-height: 1.42857143;
458 background-color: #f0ad4e;
459 border-color: #eea236;
468 color: #fff !important
;
469 background-color: #337ab7 !important
;
470 border-color: #2e6da4 !important
;
476 color: #fff !important
;
477 background-color: #5bc0de !important
;
478 border-color: #46b8da !important
;
483 color: #fff !important
;
484 background-color: #d9534f !important
;
485 border-color: #d43f3a !important
;
492 padding-left: 0.5rem;
493 background-color: #FFFFFF;
498 display: inline-block
;
499 padding: 0.9rem 0rem;
502 .cbi-tabmenu
> li
> a
,
504 text-decoration: none
;
506 padding: 0.9rem 1.5rem;
509 .tabs
> li
[class
~="active"],
512 background-color: white
;
513 border-bottom: 0.2rem solid
#0099CC;
517 .tabs > li[class~="active"] > a {
522 border-bottom: 0.2rem solid
#C9C9C9;
526 border-top: 1px solid
#D4D4D4;
527 border-left: 1px solid
#D4D4D4;
528 border-right: 1px solid
#D4D4D4;
531 .cbi-tabmenu > li:hover {
532 background-color: #F1F1F1;
535 .cbi-tabmenu > li[class~="cbi-tab"] {
536 background-color: white
;
540 background-color: #D4D4D4;
543 .cbi-section-node-tabbed {
546 border-bottom: 1px solid
#D4D4D4;
547 border-left: 1px solid
#D4D4D4;
548 border-right: 1px solid
#D4D4D4;
551 .cbi-tabcontainer > .cbi-value:nth-of-type(2n) {
552 background-color: #f9f9f9;
556 .cbi-value-description {
560 .cbi-value-helpicon > img {
564 .cbi-value-helpicon:before {
568 .cbi-value-description {
571 padding: 0.5rem 0 0 0;
575 word-wrap: break-word
;
588 .cbi-section-table-descr
> .cbi-section-table-cell
,
589 .cbi-section-table-titles > .cbi-section-table-cell {
594 background-color: #eee;
597 .cbi-section-table .cbi-section-table-titles .cbi-section-table-cell {
598 width: auto
!important
;
615 text-align: left
!important
;
619 text-align: right
!important
;
623 display: inline-block
;
627 border-top: 1px solid
#eee;
633 .cbi-value input
[type
="password"],
634 .cbi-value input[type="text"] {
635 box-sizing: border-box
;
636 padding: 0.36rem 1rem;
639 background-color: #fff;
640 background-image: none
;
641 border: 1px solid
#ccc;
642 margin-bottom: 0.3rem;
645 .cbi-value-field input
[type
="password"],
646 .cbi-value-field input[type="text"] {
647 box-sizing: border-box
;
648 padding: 0.36rem 1rem;
650 background-color: #fff;
651 background-image: none
;
652 border: 1px solid
#ccc;
656 .cbi-value-field .cbi-input-select {
659 padding: 0.36rem 0.8rem;
661 background-color: #fff;
662 background-image: none
;
663 border: 1px solid
#ccc;
667 display: inline-block
;
669 border: 1px solid
#CCCCCC;
670 padding: 0.5rem 1rem;
671 -webkit-box-shadow: inset
0 1px 0 rgba
(255, 255, 255, 0.2), 0 1px 2px rgba
(0, 0, 0, 0.05);
672 -moz-box-shadow: inset
0 1px 0 rgba
(255, 255, 255, 0.2), 0 1px 2px rgba
(0, 0, 0, 0.05);
673 box-shadow: inset
0 1px 0 rgba
(255, 255, 255, 0.2), 0 1px 2px rgba
(0, 0, 0, 0.05);
683 .cbi-input-textarea {
684 box-sizing: border-box
;
689 font-family: "Helvetica Neue", Helvetica
, Arial
, sans-serif
;
702 background-color: #FFF;
703 box-shadow: 0 2px 2px 0 rgba
(0, 0, 0, .16), 0 0 2px 0 rgba
(0, 0, 0, .12);
710 font-family: monospace
;
713 .uci-change-list ins
,
714 .uci-change-legend-label ins {
715 text-decoration: none
;
716 border: 1px solid
#00FF00;
717 background-color: #CCFFCC;
722 .uci-change-list del
,
723 .uci-change-legend-label del {
724 text-decoration: none
;
725 border: 1px solid
#FF0000;
726 background-color: #FFCCCC;
732 .uci-change-list var
,
733 .uci-change-legend-label var {
734 text-decoration: none
;
735 border: 1px solid
#CCCCCC;
736 background-color: #EEEEEE;
742 .uci-change-list var ins
,
743 .uci-change-list var del {
754 .uci-change-legend-label {
759 .uci-change-legend-label
> ins
,
760 .uci-change-legend-label
> del
,
761 .uci-change-legend-label > var {
769 .uci-change-legend-label var ins
,
770 .uci-change-legend-label var del {
775 .uci-change-list var
,
776 .uci-change-list del
,
777 .uci-change-list ins {
785 border: 1px solid
#D4D4D4 !important
;
786 border-top: none
!important
;
790 border: 1px solid
#999;
791 background-color: #f9f9f9;
799 padding: 0.2rem 0.5rem;
800 display: inline-block
;
804 .zonebadge > .ifacebadge {
805 padding: 0.2rem 1rem;
807 border: 1px solid
#6C6C6C;
810 .zonebadge > input[type="text"] {
811 padding: 0.16rem 1rem;
816 .cbi-value-field
.cbi-input-checkbox
,
817 .cbi-value-field .cbi-input-radio {
821 .cbi-section-table-row > .cbi-value-field .cbi-input-select {
825 .cbi-section-create > .cbi-button-add {
829 div
.cbi-value var
, td
.cbi-value-field var
{
841 display: inline-block
;
843 padding: 0.2rem 0.3rem;
847 #diag-rc-output > pre
{
848 background-color: #f5f5f5;
853 -moz-border-radius: 3px;
854 white-space: pre-wrap
;
855 word-wrap: break-word
;
861 input
[name
="traceroute"],
862 input
[name
="nslookup"] {
866 header
> .container
> .pull-right
> *{
872 #xhr_poll_status > .label
.success
{
873 background-color: #14CE14;
877 padding: 0.3rem 0.8rem;
879 box-sizing: border-box
;
881 color: #ffffff !important
;
882 text-transform: uppercase
;
884 background-color: #bfbfbf;
885 -webkit-border-radius: 3px;
886 -moz-border-radius: 3px;
889 text-decoration: none
;
893 background-color: #5BC0DE;
904 background-color: rgba
(0, 0, 0, 0.56);
911 .node-main-login > .main > .main-left {
915 .node-main-login > .main > .main-right {
919 .node-main-login > .main fieldset {
928 .node-main-login > .main .cbi-value-title {
932 .node-main-login > .main #maincontent {
937 .node-main-login > .main .container {
938 display: inline-block
;
940 margin-top: 2rem !important
;
941 background-color: #FFF;
942 box-shadow: 0 2px 2px 0 rgba
(0, 0, 0, .16), 0 0 2px 0 rgba
(0, 0, 0, .12);
946 .node-main-login > .main form > div:nth-last-child(1) {
950 /* fix status processes */
952 .node-status-processes > .main table tr td:nth-child(3) {
956 .node-status-firewall > .main fieldset li {
957 display: inline-block
;
960 .node-status-firewall > .main fieldset li > a {
961 box-sizing: border-box
;
964 text-transform: none
;
969 vertical-align: middle
;
970 touch-action: manipulation
;
972 -webkit-user-select: none
;
973 -moz-user-select: none
;
974 -ms-user-select: none
;
976 background-image: none
;
977 border: 1px solid transparent
;
980 padding: 0.5rem 1rem;
982 line-height: 1.42857143;
983 background-color: #f0ad4e;
984 border-color: #eea236;
987 text-decoration: none
;
990 /* fix system reboot */
992 .node-system-reboot
> .main
> .main-right p
,
993 .node-system-reboot > .main > .main-right h3 {
997 .node-system-reboot > .main > .main-right p > a {
999 text-decoration: none
;
1000 box-sizing: border-box
;
1003 text-transform: none
;
1004 display: inline-block
;
1008 white-space: nowrap
;
1009 vertical-align: middle
;
1010 touch-action: manipulation
;
1012 -webkit-user-select: none
;
1013 -moz-user-select: none
;
1014 -ms-user-select: none
;
1016 background-image: none
;
1017 border: 1px solid transparent
;
1019 padding: 0.5rem 1rem;
1021 line-height: 1.42857143;
1022 text-decoration: none
;
1024 background-color: #d9534f !important
;
1025 border-color: #d43f3a !important
;
1028 /* fix Services Network Shares*/
1029 .node-services-network_shares > .main .cbi-tabcontainer:nth-child(3) .cbi-value-title {
1030 margin-bottom: 1rem;
1033 .node-services-network_shares > .main .cbi-tabcontainer:nth-child(3) .cbi-value-field {
1037 .node-services-network_shares > .main .cbi-tabcontainer:nth-child(3) .cbi-value-description {
1041 /* fix System Software*/
1042 .node-system-software > .main table tr td:nth-child(4) {
1043 white-space: normal
;
1048 .node-system-software > .main .cbi-tabmenu > li > a, .tabs > li > a {
1049 padding: 0.5rem 1rem;
1052 .node-system-software > .main .cbi-value > pre{
1053 background-color: #eee;
1058 .node-status-firewall fieldset
,
1059 .node-system-software fieldset
,
1060 .node-system-backup_flash_firmware fieldset {
1064 .node-status-firewall
.cbi-tabmenu
,
1065 .node-system-software
.cbi-tabmenu
,
1066 .node-system-backup_flash_firmware .cbi-tabmenu {
1068 box-shadow: 0 2px 2px 0 rgba
(0, 0, 0, .16), 0 0 2px 0 rgba
(0, 0, 0, .12);
1072 body
.lang_pl
.node-main-login
.cbi-value-title
{
1076 @media screen and
(max-width: 1600px) {
1078 width: calc
(0% + 15rem);
1082 width: calc
(100% - 15rem);
1086 padding: 0.3rem 0.6rem;
1091 header
> .container
> .pull-right
> * {
1096 padding: 0.2rem 0.6rem;
1107 .cbi-input-textarea{
1112 @media screen and
(max-width: 1280px) {
1113 .cbi-tabmenu > li > a, .tabs > li > a {
1114 padding: 0.2rem 0.5rem;
1118 @media screen and
(max-width: 992px) {
1135 margin-right: 0.5rem;
1136 display: inline-block
;
1144 .node-main-login .showSide {
1145 display: none
!important
;
1150 padding-right: 1rem;
1154 .node-network-diagnostics > .main .cbi-map fieldset > div *{
1155 width: 100% !important
;
1158 .node-network-diagnostics > .main .cbi-map fieldset > div input[type="text"]{
1159 margin: 3rem 0 0 0 !important
;
1162 .node-network-diagnostics > .main .cbi-map fieldset > div:nth-child(4) input[type="text"]{
1163 margin: 0 !important
;
1166 .node-network-diagnostics
> .main
.cbi-map fieldset
> div select
,
1167 .node-network-diagnostics > .main .cbi-map fieldset > div input[type="button"]{
1171 .node-network-diagnostics > .main .cbi-map fieldset > div{
1172 width: 100% !important
;
1176 #diag-rc-output > pre
{
1180 .node-main-login > .main .cbi-value-title{
1185 @media screen and
(max-width: 480px) {
1199 #maincontent > .container
{
1200 margin: 0 1rem 1.5rem 1rem;
1203 .main > .main-left > .nav > .slide > .menu {
1207 .main > .main-left > .nav > .slide > .slide-menu > li > a {
1213 min-width: 0rem !important
;
1216 margin-bottom: 0.5rem;
1220 .cbi-value-field, .cbi-value-description {
1222 box-sizing: border-box
;
1225 .cbi-value > .cbi-value-field {
1226 display: inline-block
;
1229 .cbi-tabmenu > li, .tabs > li {
1230 padding: 0.6rem 0rem;
1233 .cbi-tabmenu > li > a, .tabs > li > a {
1234 padding: 0.2rem 0.7rem;
1237 .cbi-page-actions > div > input {
1241 .node-main-login > .main .container {
1242 padding: 0.5rem 1rem 2rem 1rem;
1245 .node-main-login > .main .cbi-value {
1249 .node-main-login > .main form > div:nth-last-child(1) {
1253 .node-main-login > .main .cbi-value-title {
1254 width: 100% !important
;
1258 .node-main-login > .main fieldset {
1275 header
> .container
{
1276 margin-top: 0.25rem;
1294 padding-bottom: 1rem;
1297 .node-system-software > .main .cbi-value.cbi-value-last > div{
1298 width: 100% !important
;
1301 .node-system-software > .main .cbi-value .cbi-value-field input{