luci-theme-material: Decrease font and spacing
[project/luci.git] / themes / luci-theme-material / htdocs / luci-static / material / css / style.css
index d59060f..545c5fb 100755 (executable)
 
 .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
     font-family: inherit;
-    font-weight: 500;
+    font-weight: 400;
     line-height: 1.1;
     color: inherit;
 }
 
+html {
+    -webkit-text-size-adjust: 100%;
+    -ms-text-size-adjust: 100%;
+}
+
+body {
+    font-size: 0.8rem;
+    background-color: #EEE;
+}
+
 html, body {
     margin: 0px;
     padding: 0px;
     height: 100%;
-    font-family: "Helvetica Neue", Helvetica, Microsoft Yahei, Hiragino Sans GB, WenQuanYi Micro Hei, sans-serif;
+    font-family: Microsoft Yahei, WenQuanYi Micro Hei, sans-serif, "Helvetica Neue", Helvetica, Hiragino Sans GB;
 }
 
 select {
@@ -80,26 +90,25 @@ select {
 select,
 input {
     background-color: transparent;
-    color: rgba(0,0,0,.87);
+    color: rgba(0, 0, 0, .87);
     border: none;
-    border-bottom: 1px solid rgba(0,0,0,.26);
+    border-bottom: 2px solid rgba(0, 0, 0, .26);
     outline: 0;
     padding: 0;
     box-shadow: none;
     border-radius: 0;
     background-image: none;
-    height: 2rem;
-    font-size: 1.1rem;
-    transition: all 0.2s ease-in-out;
+    height: 1.8rem;
+    font-size: 0.8rem;
 }
 
-select:focus,
+select:not([multiple="multiple"]):focus,
 input:focus {
-    height: 2rem;
-    height: calc(2rem + 1px);
-    margin-bottom: -1px;
     border-color: #0099CC;
-    border-width: 2px;
+}
+
+select[multiple="multiple"] {
+    height: auto;
 }
 
 code {
@@ -107,11 +116,17 @@ code {
 }
 
 abbr {
-    color: #0099CC;
+    color: #005470;
     text-decoration: underline;
     cursor: help;
 }
 
+hr {
+    margin: 1rem 0;
+    border-color: #EEE;
+    opacity: 0.1;
+}
+
 header, .main {
     width: 100%;
     position: absolute;
@@ -126,7 +141,7 @@ header {
     z-index: 101;
 }
 
-footer{
+footer {
     text-align: right;
     padding: 1rem;
     color: #aaa;
@@ -134,7 +149,7 @@ footer{
     text-shadow: 0px 0px 2px #BBB;
 }
 
-footer > a{
+footer > a {
     color: #aaa;
     text-decoration: none;
 }
@@ -142,9 +157,12 @@ footer > a{
 .main {
     top: 4rem;
     bottom: 0rem;
+    position: relative;
+    height: 100%;
+    height: calc(100% - 4rem);
 }
 
-.main > .loading{
+.main > .loading {
     position: fixed;
     width: 100%;
     height: 100%;
@@ -154,19 +172,19 @@ footer > a{
     top: 0;
 }
 
-.main > .loading > span{
+.main > .loading > span {
     display: block;
     text-align: center;
     margin-top: 2rem;
     color: #888;
-    font-size: 1.3rem;
+    font-size: 1.2rem;
 }
 
-.main > .loading > span > .loading-img:before{
+.main > .loading > span > .loading-img:before {
     content: "\e603";
 }
 
-.main > .loading > span > .loading-img{
+.main > .loading > span > .loading-img {
     animation: anim-rotate 2s infinite linear;
     margin-right: 0.2rem;
     display: inline-block;
@@ -174,35 +192,41 @@ footer > a{
 
 @keyframes anim-rotate {
     0% {
-        -webkit-transform:rotate(0);
-        -ms-transform:rotate(0);
-        transform:rotate(0);
+        -webkit-transform: rotate(0);
+        -ms-transform: rotate(0);
+        transform: rotate(0);
     }
     100% {
-        -webkit-transform:rotate(360deg);
-        -ms-transform:rotate(360deg);
-        transform:rotate(360deg)
+        -webkit-transform: rotate(360deg);
+        -ms-transform: rotate(360deg);
+        transform: rotate(360deg)
     }
 }
 
 .main-left {
     float: left;
+    top: 4rem;
     width: 15%;
-    width: calc(0% + 17rem);
+    width: calc(0% + 15rem);
     height: 100%;
-    overflow-y: auto;
+    height: calc(100% - 4rem);
     background-color: white;
+    overflow-x: auto;
+    position: fixed;
 }
 
 .main-right {
     width: 85%;
-    width: calc(100% - 17rem);
+    width: calc(100% - 15rem);
     float: right;
-    overflow-y: auto;
     height: 100%;
     background-color: #EEE;
 }
 
+.main-right > #maincontent {
+    background-color: #EEE;
+}
+
 .pull-right {
     float: right;
 }
@@ -222,7 +246,7 @@ header > .container {
 }
 
 header > .container > .brand {
-    font-size: 1.5rem;
+    font-size: 1.4rem;
     color: white;
     text-decoration: none;
     cursor: default;
@@ -256,6 +280,10 @@ header > .container > .brand {
     border-color: #eea236;
 }
 
+.error {
+    color: red;
+}
+
 #maincontent > .container > div:nth-child(1).alert-message.warning > a {
     font: inherit;
     overflow: visible;
@@ -275,7 +303,7 @@ header > .container > .brand {
     background-image: none;
     min-width: 6rem;
     padding: 0.5rem 1rem;
-    font-size: 1.1rem;
+    font-size: 0.9rem;
     line-height: 1.42857143;
     color: #fff;
     background-color: #5bc0de;
@@ -316,7 +344,7 @@ header > .container > .brand {
     padding: 0.5rem 1rem;
     text-decoration: none;
     cursor: default;
-    font-size: 1.2rem;
+    font-size: 1.15rem;
 }
 
 .main > .main-left > .nav > li:hover,
@@ -363,21 +391,21 @@ li {
 }
 
 h1 {
-    font-size: 4rem;
+    font-size: 2rem;
     padding-bottom: 10px;
     border-bottom: 1px solid #eee;
 }
 
 h2 {
     margin: 2rem 0 0 0;
-    font-size: 2.5rem;
+    font-size: 1.8rem;
     padding-bottom: 10px;
     border-bottom: 1px solid #eee;
 }
 
 h3 {
     margin: 2rem 0 0 0;
-    font-size: 2rem;
+    font-size: 1.4rem;
     padding-bottom: 10px;
 }
 
@@ -395,11 +423,18 @@ fieldset {
     font-family: inherit;
 
     min-width: inherit;
-    overflow: auto;
+    overflow-x: auto;
+    overflow-y: hidden;
 
     border-radius: 0;
     background-color: #FFF;
     box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .16), 0 0 2px 0 rgba(0, 0, 0, .12);
+
+    -webkit-overflow-scrolling: touch;
+}
+
+.cbi-map-descr + fieldset {
+    margin-top: 1rem;
 }
 
 fieldset > legend {
@@ -418,8 +453,8 @@ fieldset > fieldset {
     display: block;
     line-height: 1;
     color: #404040;
-    font-size: 1.9rem;
-    padding-bottom: 2rem;
+    font-size: 1.4rem;
+    padding-bottom: 1rem;
     border-bottom: 1px solid #eee;
 }
 
@@ -431,10 +466,8 @@ table {
 }
 
 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: 8px;
-    line-height: 1.42857143;
+    padding: .5rem;
     border-top: 1px solid #ddd;
-
     white-space: nowrap;
 }
 
@@ -446,24 +479,28 @@ table > tbody > tr > td, table > tbody > tr > th, table > tfoot > tr > td, table
     text-align: center;
 }
 
-fieldset > table > tbody > tr:nth-of-type(odd) {
+fieldset > table > tbody > tr:nth-of-type(2n) {
     background-color: #f9f9f9;
 }
 
 /* fix progress bar */
+#swaptotal > div,
+#swapfree > div,
 #memfree > div,
 #membuff > div,
 #conns > div,
 #memtotal > div {
     width: 100% !important;
-    height: 1.4rem !important;
+    height: 1.2rem !important;
 }
 
+#swaptotal > div > div,
+#swapfree > div > div,
 #memfree > div > div,
 #membuff > div > div,
 #conns > div > div,
 #memtotal > div > div {
-    height: 1.4rem !important;
+    height: 100% !important;
     background-color: #0099CC !important;
 }
 
@@ -488,12 +525,13 @@ td > table > tbody > tr > td {
 /* button style */
 
 .cbi-button {
+    -webkit-appearance: none;
     text-transform: uppercase;
     color: rgba(0, 0, 0, 0.87);
-    background-color: #FFF;
+    background-color: #F0F0F0;
     transition: all 0.2s ease-in-out;
     display: inline-block;
-    padding: 0.5rem 1rem;
+    padding: 0 0.8rem;
     border: none;
     border-radius: 0.2rem;
     cursor: pointer;
@@ -507,7 +545,7 @@ td > table > tbody > tr > td {
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
-    font-size: 1rem;
+    font-size: 0.8rem;
     width: auto !important;
 }
 
@@ -515,7 +553,6 @@ td > table > tbody > tr > td {
 .cbi-button:focus,
 .cbi-button:active {
     color: rgba(0, 0, 0, 0.87);
-    background-color: white;
     outline: 0;
     text-decoration: none;
     color: rgba(0, 0, 0, 0.87);
@@ -537,6 +574,7 @@ td > table > tbody > tr > td {
     box-shadow: none;
 }
 
+form.inline + form.inline,
 .cbi-button + .cbi-button {
     margin-left: 0.6rem;
 }
@@ -569,13 +607,14 @@ td > table > tbody > tr > td {
 }
 
 .cbi-input-reset,
+.cbi-section-remove > .cbi-button,
 .cbi-button-remove {
     color: #fff !important;
     background-color: #d9534f !important;
     border-color: #d43f3a !important;
 }
 
-.a-to-btn{
+.a-to-btn {
     text-decoration: none;
 }
 
@@ -590,22 +629,22 @@ td > table > tbody > tr > td {
 .cbi-tabmenu > li,
 .tabs > li {
     display: inline-block;
-    padding: 0.9rem 0rem;
+    padding: 0.6rem 0rem;
 }
 
 .cbi-tabmenu > li > a,
 .tabs > li > a {
     text-decoration: none;
     color: #404040;
-    padding: 0.9rem 1.5rem;
+    padding: 0.5rem 0.8rem;
 }
 
 .tabs > li[class~="active"],
 .tabs > li:hover {
     cursor: pointer;
-    background-color: white;
     border-bottom: 0.2rem solid #0099CC;
     color: #0099CC;
+    margin-bottom: -0.18751rem;
 }
 
 .tabs > li[class~="active"] > a {
@@ -613,7 +652,7 @@ td > table > tbody > tr > td {
 }
 
 .tabs > li:hover {
-    border-bottom: 0.2rem solid #C9C9C9;
+    border-bottom: 0.18751rem solid #C9C9C9;
 }
 
 .cbi-tabmenu {
@@ -634,6 +673,11 @@ td > table > tbody > tr > td {
     background-color: #D4D4D4;
 }
 
+.cbi-section-remove:nth-of-type(2n),
+.cbi-section-node:nth-of-type(2n){
+    background-color: #f9f9f9;
+}
+
 .cbi-section-node-tabbed {
     padding: 0;
     margin-top: 0;
@@ -649,6 +693,7 @@ td > table > tbody > tr > td {
 .cbi-value-field,
 .cbi-value-description {
     display: table-cell;
+    line-height: 1.25;
 }
 
 .cbi-value-helpicon > img {
@@ -676,7 +721,9 @@ td > table > tbody > tr > td {
 }
 
 .cbi-value {
-    padding: 1rem;
+    padding: 0.3rem 1rem;
+    display: inline-block;
+    width: 100%;
 }
 
 .cbi-section-table-descr > .cbi-section-table-cell,
@@ -688,6 +735,11 @@ td > table > tbody > tr > td {
     background-color: #eee;
 }
 
+.cbi-rowstyle-2 .cbi-button-up,
+.cbi-rowstyle-2 .cbi-button-down {
+    background-color: #FFF !important;
+}
+
 .cbi-section-table .cbi-section-table-titles .cbi-section-table-cell {
     width: auto !important;
 }
@@ -697,6 +749,7 @@ td > table > tbody > tr > td {
 .cbi-map-descr {
     padding: 0.5rem;
     color: #999;
+    font-size: small;
 }
 
 /* luci */
@@ -714,12 +767,12 @@ td > table > tbody > tr > td {
 }
 
 .inline {
-    display: inline-block;
+    display: inline;
 }
 
 .cbi-page-actions {
     border-top: 1px solid #eee;
-    padding-top: 2rem;
+    padding-top: 1rem;
     text-align: right;
 }
 
@@ -735,8 +788,7 @@ td > table > tbody > tr > td {
 }
 
 .ifacebadge {
-    display: inline-block;
-    min-width: 8rem;
+    display: inline-flex;
     border-bottom: 1px solid #CCCCCC;
     padding: 0.5rem 1rem;
     -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
@@ -744,18 +796,23 @@ td > table > tbody > tr > td {
     box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
 }
 
+td > .ifacebadge {
+    background-color: #F0F0F0;
+    font-size: 0.9rem;
+}
+
 .ifacebadge > img {
     float: right;
-    margin-left: 0.3rem;
+    margin: 0 0.3rem;
 }
 
 /*textarea*/
 
 .cbi-input-textarea {
     width: 100%;
-    min-height: 16rem;
-    padding: 1rem;
-    font-size: 0.9rem;
+    min-height: 14rem;
+    padding: 0.8rem;
+    font-size: 0.8rem;
     font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
     color: black;
 }
@@ -764,7 +821,7 @@ td > table > tbody > tr > td {
     width: 100%;
     min-height: 15rem;
     padding: 1rem;
-    font-size: smaller;
+    font-size: small;
     color: #5F5F5F;
 
     margin-bottom: 20px;
@@ -885,7 +942,26 @@ td > table > tbody > tr > td {
 
 .cbi-value-field .cbi-input-checkbox,
 .cbi-value-field .cbi-input-radio {
-    margin-top: 0.3rem;
+    margin-top: 0.5rem;
+    height: 1rem;
+}
+
+.cbi-value-field > input + .cbi-value-description {
+    padding: 0;
+}
+
+.cbi-value-field > ul > li {
+    display: flex;
+}
+
+.cbi-value-field > ul > li > label {
+    margin-top: 0.5rem;
+}
+
+.cbi-value-field > ul > li .ifacebadge {
+    background-color: #eee;
+    margin-left: 0.4rem;
+    margin-top: -0.5rem;
 }
 
 .cbi-section-table-row > .cbi-value-field .cbi-input-select {
@@ -896,14 +972,19 @@ td > table > tbody > tr > td {
     margin: 0.5rem;
 }
 
+.cbi-section-remove {
+    padding: 0.5rem;
+}
+
 div.cbi-value var, td.cbi-value-field var {
     font-style: italic;
     color: #0069D6;
 }
 
 small {
-    font-size: smaller;
+    font-size: 90%;
     white-space: normal;
+    line-height: 1.42857143;
 }
 
 .cbi-button-up,
@@ -911,7 +992,12 @@ small {
     display: inline-block;
     min-width: 0;
     padding: 0.2rem 0.3rem;
-    font-size: 1.3rem;
+    font-size: 1.2rem;
+}
+
+.cbi-optionals {
+    padding: 1rem 1rem 0 1rem;
+    border-top: 1px solid #CCC;
 }
 
 #diag-rc-output > pre {
@@ -923,7 +1009,7 @@ small {
     -moz-border-radius: 3px;
     white-space: pre-wrap;
     word-wrap: break-word;
-    font-size: 1.5rem;
+    font-size: 1.4rem;
     color: #404040;
 }
 
@@ -945,7 +1031,7 @@ header > .container > .pull-right > * {
 
 .label {
     padding: 0.3rem 0.8rem;
-    font-size: 1rem;
+    font-size: 0.8rem;
     font-weight: bold;
     color: #ffffff !important;
     text-transform: uppercase;
@@ -992,6 +1078,7 @@ header > .container > .pull-right > * {
     background: none;
     border: none;
     box-shadow: none;
+    overflow: hidden;
 }
 
 .node-main-login > .main .cbi-value-title {
@@ -1016,7 +1103,20 @@ header > .container > .pull-right > * {
     float: right;
 }
 
-.node-main-login footer{
+.node-main-login > .main .cbi-value {
+    display: block;
+}
+
+.node-main-login > .main .cbi-value > * {
+    display: inline-block !important;
+}
+
+.node-main-login > .main .cbi-input-user,
+.node-main-login > .main .cbi-input-password {
+    min-width: 15rem;
+}
+
+.node-main-login footer {
     bottom: 0;
     position: absolute;
     width: 100%;
@@ -1024,22 +1124,20 @@ header > .container > .pull-right > * {
 
 /* fix status overview */
 
-.node-status-overview > .main fieldset:nth-child(4) td:nth-child(2){
+.node-status-overview > .main fieldset:nth-child(4) td:nth-child(2) {
     white-space: normal;
 }
 
-
 /* fix status processes */
 
 .node-status-processes > .main table tr td:nth-child(3) {
     white-space: normal;
 }
 
-.node-status-firewall > .main fieldset li {
-    display: inline-block;
+.node-status-iptables > .main div > .cbi-map > form {
+    margin: 2rem 2rem 0 0;
 }
 
-
 /* fix system reboot */
 
 .node-system-reboot > .main > .main-right p,
@@ -1048,30 +1146,35 @@ header > .container > .pull-right > * {
 }
 
 /* fix Services  Network Shares*/
-.node-services-network_shares > .main .cbi-tabcontainer:nth-child(3) .cbi-value-title {
+.node-services-samba > .main .cbi-tabcontainer:nth-child(3) .cbi-value-title {
     margin-bottom: 1rem;
+    width: auto;
 }
 
-.node-services-network_shares > .main .cbi-tabcontainer:nth-child(3) .cbi-value-field {
+.node-services-samba > .main .cbi-tabcontainer:nth-child(3) .cbi-value-field {
     display: list-item;
 }
 
-.node-services-network_shares > .main .cbi-tabcontainer:nth-child(3) .cbi-value-description {
+.node-services-samba > .main .cbi-tabcontainer:nth-child(3) .cbi-value-description {
     padding-top: 1rem;
 }
 
 /* fix System Software*/
-.node-system-software > .main table tr td:nth-child(4) {
+.node-system-packages > .main table tr td:nth-child(1) {
+    width: auto !important;
+}
+
+.node-system-packages > .main table tr td:nth-last-child(1) {
     white-space: normal;
     font-size: small;
     color: #404040;
 }
 
-.node-system-software > .main .cbi-tabmenu > li > a, .tabs > li > a {
-    padding: 0.5rem 1rem;
+.node-system-packages > .main .cbi-tabmenu > li > a, .tabs > li > a {
+    padding: 0.5rem 0.8rem;
 }
 
-.node-system-software > .main .cbi-value > pre {
+.node-system-packages > .main .cbi-value > pre {
     background-color: #eee;
     padding: 0.5rem;
     overflow: auto;
@@ -1081,19 +1184,46 @@ header > .container > .pull-right > * {
     margin-top: 0;
 }
 
-.node-status-firewall fieldset,
-.node-system-software fieldset,
-.node-system-backup_flash_firmware fieldset {
+/* fix network firewall*/
+.node-network-firewall > .main .cbi-section-table-row > .cbi-value-field .cbi-input-select {
+    min-width: 4rem;
+}
+
+.node-status-iptables fieldset,
+.node-system-packages fieldset,
+.node-system-flashops fieldset {
     margin-top: 0;
 }
 
-.node-status-firewall .cbi-tabmenu,
-.node-system-software .cbi-tabmenu,
-.node-system-backup_flash_firmware .cbi-tabmenu {
+.node-status-iptables .cbi-tabmenu,
+.node-system-packages .cbi-tabmenu,
+.node-system-flashops .cbi-tabmenu {
     border: none;
     box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .16), 0 0 2px 0 rgba(0, 0, 0, .12);
 }
 
+.node-system-flashops form.inline + form.inline {
+    margin-left: 0;
+}
+
+#cbi-firewall-redirect table *,
+#cbi-network-switch_vlan table *,
+#cbi-firewall-zone 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-redirect table select,
+#cbi-network-switch_vlan table select,
+#cbi-firewall-zone table select {
+    min-width: 3.5rem;
+}
+
 /* language fix */
 body.lang_pl.node-main-login .cbi-value-title {
     width: 12rem;
@@ -1101,17 +1231,16 @@ body.lang_pl.node-main-login .cbi-value-title {
 
 @media screen and (max-width: 1600px) {
     .main-left {
-        width: calc(0% + 15rem);
+        width: calc(0% + 13rem);
     }
 
     .main-right {
-        width: calc(100% - 15rem);
+        width: calc(100% - 13rem);
     }
 
     .cbi-button {
         padding: 0.3rem 0.6rem;
-        font-size: 1rem;
-        line-height: 1.5;
+        font-size: 0.8rem;
     }
 
     header > .container > .pull-right > * {
@@ -1124,6 +1253,7 @@ body.lang_pl.node-main-login .cbi-value-title {
 
     .cbi-value-title {
         width: 15rem;
+        padding-right: 0.6rem;
     }
 
     fieldset {
@@ -1131,10 +1261,10 @@ body.lang_pl.node-main-login .cbi-value-title {
     }
 
     .cbi-input-textarea {
-        font-size: smaller;
+        font-size: small;
     }
 
-    .node-status-firewall > .main fieldset li > a {
+    .node-status-iptables > .main fieldset li > a {
         padding: 0.3rem 0.6rem;
     }
 }
@@ -1150,10 +1280,13 @@ body.lang_pl.node-main-login .cbi-value-title {
 
     .main {
         top: 3.5rem;
+        height: calc(100% - 3.5rem);
     }
 
     .main-left {
         width: calc(0% + 13rem);
+        top: 3.5rem;
+        height: calc(100% - 3.5rem);
     }
 
     .main-right {
@@ -1165,22 +1298,23 @@ body.lang_pl.node-main-login .cbi-value-title {
     }
 
     .panel-title {
-        font-size: 1.3rem;
+        font-size: 1.1rem;
         padding-bottom: 1rem;
     }
 
     table {
-        font-size: 0.8rem !important;
+        font-size: 0.7rem !important;
+        width: 100% !important;
     }
 
     .main > .main-left > .nav > li,
     .main > .main-left > .nav > li a,
     .main > .main-left > .nav > .slide > .menu {
-        font-size: 1.1rem;
+        font-size: 0.9rem;
     }
 
     .main > .main-left > .nav > .slide > .slide-menu > li > a {
-        font-size: 0.9rem;
+        font-size: 0.7rem;
     }
 }
 
@@ -1237,7 +1371,7 @@ body.lang_pl.node-main-login .cbi-value-title {
     }
 
     #diag-rc-output > pre {
-        font-size: 1.2rem;
+        font-size: 1rem;
     }
 
     .node-main-login > .main .cbi-value-title {
@@ -1246,6 +1380,10 @@ body.lang_pl.node-main-login .cbi-value-title {
 }
 
 @media screen and (max-width: 480px) {
+    body {
+        font-size: 1rem;
+    }
+
     fieldset {
         padding: 1rem;
         margin: 1rem 0 0 0;
@@ -1341,11 +1479,71 @@ body.lang_pl.node-main-login .cbi-value-title {
         padding-bottom: 1rem;
     }
 
-    .node-system-software > .main .cbi-value.cbi-value-last > div {
+    .node-system-packages > .main .cbi-value.cbi-value-last > div {
         width: 100% !important;
     }
 
-    .node-system-software > .main .cbi-value .cbi-value-field input {
+    .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;
+        overflow-x: auto;
+        overflow-y: hidden;
+        border-radius: 0;
+        background-color: #FFF;
+        box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .16), 0 0 2px 0 rgba(0, 0, 0, .12);
+        -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;
+    }
+}
+
+@media screen and (min-width: 992px) {
+    .cbi-value input[type="password"],
+    .cbi-value input[type="text"] {
+        min-width: 20rem;
+    }
+
+    .cbi-value-field .cbi-input-select {
+        min-width: 20rem;
+    }
 }
+
+@media screen and (min-width: 1280px) {
+    .cbi-value input[type="password"],
+    .cbi-value input[type="text"] {
+        min-width: 22rem;
+    }
+
+    .cbi-value-field .cbi-input-select {
+        min-width: 22rem;
+    }
+}
+
+@media screen and (min-width: 1600px) {
+    .cbi-value input[type="password"],
+    .cbi-value input[type="text"] {
+        min-width: 25rem;
+    }
+
+    .cbi-value-field .cbi-input-select {
+        min-width: 25rem;
+    }
+}
\ No newline at end of file