/**
 *  Design is a clean HTML5 theme for LuCI. It is based on luci-theme-material and luci-theme-neobird
 *
 *  luci-theme-material
 *      Copyright 2015 Lutty Yang <lutty@wcan.in>
 * 
 *  luci-theme-Neobird
 *      Copyright 2021 2smile <thinktip@gmail.com>
 *
 *  Licensed to the public under the Apache License 2.0
 */
 :root {
    --commonRadius0: 8px;
    --commonRadius1: 5px
 }

 [data-theme='light'] {
    --bg: #f1f4f5;
    --mainbg: #fff;
    --bgwhite: #fff;
    --activeColor: #5ea69b;
    --activeBottom: #5ea69b 2px solid;
    --textColor: rgb(132,119,116);
    --borderColor: rgba(0,0,0,.15);
    --navbgColor: rgba(255, 255, 255, .7);
    --navBorder: 1px solid #f2f2f2;
    --sectionbgColor: #fff;
    --sectionbgColor2: #fff;
    --sectionShaddow: 3px 3px 3px rgba(0,0,0,.05);
    --sectionBorder: none;
    --sectiontabBorder: none;
    --tabmenuBorderLR: none;
    --tabmenubgColor: none;
    --tabmenuBottom: #e4eaec 1px solid;
    --tabmenuRadius: 6px 6px 0 0;
    --sectionnodeBorder: #f7f7f7 1px solid;
    --cbilineColor: #f7f7f7 1px solid;
    --tabbgColor: #fff;
    --inputbgColor: #f8f8f8;
    --inputtextColor: #76838f;
    --inputBorder: 1px solid #e4eaec;
    --mainleftbgColor: rgb(255,255,255);
    --bttextColor: #fff;
    --badgebgColor: #f7f7f7;
    --badgeBorder: #e4eaec 1px solid;
    --progressbarColor: #c8c8c8;
    --progressbar: #5ea69b;
    --progressbartxtColor: #fff;
    /* --logo: url('/luci-static/design/images/logo.png');
    --mlogo: url('/luci-static/design/images/mlogo.png'); */
    --logo_color: #222b36;
    --alertColor: #000000;
    --alertBackground: rgb(230 230 230);
    --scrollbarColor:#c5c5c5;
    --ifaceboxBorderColor: #b8b8b8bd;
    --ifaceboxFontColor: #404040;
    --liSelectedColor: #c5c5c5;
    --vssrStatusColor: #525f7f;
    --vssrBoxShadow: 0 0 2rem 0 rgb(136 152 170 / 30%);
}

[data-theme='dark'] {
    --bg: #000;
    --bgwhite: #000;
    --textColor: #fefefe;
    --activeColor: #5ea69b;
    --activeBottom: #5ea69b 2px solid;
    --borderColor: #2C2C3A;
    --navbgColor: hsla(0, 0%, 7%, .8);
    --navBorder: 1px solid #1c1c1e;
    --sectionbgColor: #1c1c1e;
    --sectionbgColor2: #1c1c1e;
    --sectionShaddow: 3px 3px 3px rgba(0,0,0,.05);
    --sectionBorder: none;
    --sectiontabBorder: none;
    --sectionnodeBorder: #3d3d41 1px solid;
    --cbilineColor: #2d2d2d 1px solid;
    --tabbgColor: #1c1c1e;
    --tabmenuBorderLR: none;
    --tabmenubgColor: none;
    --tabmenuBottom: #2d2d2d 1px solid;
    --tabmenuRadius: 6px 6px 0 0;
    --inputbgColor: #2f2f2f;
    --inputtextColor: #fefefe;
    --inputBorder: 1px solid #4d4d4d;
    --mainleftbgColor: #000;
    --bttextColor: #fefefe;
    --badgebgColor: #fefefe;
    --badgeBorder: #3d3d40 1px solid;
    --progressbarColor: #6d6d6d;
    --progressbar: #5ea69b;
    --progressbartxtColor: #fefefe;
    /* --logo: url('/luci-static/design/images/logod.png');
    --mlogo: url('/luci-static/design/images/mlogod.png'); */
    --logo_color: #fefefe;
    --alertColor: #ffffff;
    --alertBackground: rgb(30 30 30);
    --scrollbarColor:#2f2f2f;
    --ifaceboxBorderColor: #636363bd;
    --ifaceboxFontColor: #404040;
    --liSelectedColor: #2f2f2f;
    --vssrStatusColor: rgb(204, 204, 204);
    --vssrBoxShadow: 0 0 1rem 0 rgb(0 0 0 / 30%);
}

@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-face {
  font-family: 'design';
  src: url('');
  src: url('?#iefix') format('embedded-opentype'),
  url('../fonts/iconfont-Regular.woff2') format('woff2'),
  url('../fonts/iconfont-Regular.woff') format('woff'),
  url('../fonts/iconfont-Regular.ttf') format('truetype'),
  url('#iconfont') format('svg');
}

@font-face{
    font-family: 'GenJyuuGothic-Medium';
    src : url('../fonts/GenJyuuGothic-Medium.otf') format('opentype');
}

*::-webkit-scrollbar {
    width: 5px;
    height: 5px;
 }
 *::-webkit-scrollbar-thumb {
     background: var(--scrollbarColor) ;
     border-radius: 2px;
 }

div{
    font-family: 'HYk2gj';
}

html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

html, body {
    margin: 0px;
    padding: 0px;
    height: 100%;
    font-family: -apple-system, 'Microsoft Yahei' !important;
    font-size: 0.92rem;
    line-height: 150%;
    background-color: var(--bg);
    color:var(--textColor);
}

body div {
    line-height:150%;
}

a {
    color: var(--textColor);
    text-decoration: none;
}

em {
    font-style:normal !important;
    line-height: 1.5;
    padding-left: 10px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
}

select {
    overflow: hidden !important;
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 0 25px 0 10px !important;
    background-size: 24px 16px;
    background-repeat: no-repeat;
    background-position: right center;
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABGCAYAAAA6hjFpAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMS1jMDAwIDc5LmRhYmFjYmIsIDIwMjEvMDQvMTQtMDA6Mzk6NDQgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjhDNzA0QUE0NjE2QTExRUNCMjJFQkQyRkIyNURDNjE3IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjhDNzA0QUEzNjE2QTExRUNCMjJFQkQyRkIyNURDNjE3IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCAyMi41IChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzNBNTYzNTY2MTUxMTFFQ0IyMkVCRDJGQjI1REM2MTciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QzNBNTYzNTc2MTUxMTFFQ0IyMkVCRDJGQjI1REM2MTciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6YjzxlAAACsklEQVR42uyaXUsVURSG51T0U/obfUvhhYF0U0HQhZQVIWVJCAkiSUXfRRcaBFbXQVBBRCASFCJBpQQipw+RREkpCa9aG95gs0DMOp6Z7TwvvAxnzczaa6/nzDnzVTndfSVDxdE6WgAQBBCAIIAABAEEIAggAEEAQQABCAIIQBBAAIIAAhAEEAQQgCCAAAStGSAbzA/N+wvSiwPmB6or16bkoY2afLN5r+q4l2MfDpr7zetV2z7zYpmOkAHByNSE0IxDOdUSxr2rOjLVNVC2n6z77hsYmtFnbqlzHS0aN+7DouorFZBH+ibGUCrmO+YjdaqhVeNVHIxm1Ve6P/XH5ibzLwfllvn4Ko8d8t90MEIde1RXaU97n6oJCw7KNXPbKo3ZpvwxjAXV8YTrkCx7piPFQ7lsbq/xWO3K62E0qQ4uDKXn5kbzTxe/YO6o0Rgdypc5GI0anyt1p5fm3eYfLn7e3PmfuTuVJ1YYZ5fG5Up9CQ2qSfMu3m3u+secXdo/1rzGGeTWyfIaUrPmXPycuWeFuXq0X6w55R8q4NwLe3PxlXmn+buLnzX3/mWOXm0fK+RrUP4MICvTG/MO86yLnzFfWmbfi9ou1qzyvS7wnAt/+31YTZxx8ZPmq+709c/pcoifcvEZ5Rku+HyTeB4yYt5unnbxE+YbEZSwvK54rGntP5LAXJN5QPXWvNX8zcWPmm9rHmF5zK0P22/T/hlAaqv35i3mKRc/bB7VMtaUIL5LaI7JPcIdVZMnXXyT+zyp7T4kNr8kn6mPqdlfllj/VevHEpxbsi85fNTP1ycX/2zerPUZQOqrcUGp6nNVMMYTnlPyrwFNCMILLScSn0++r7zUSFVdZ6wJ8aIcQBBAAIIAAhAEEIAggAAEAQQBBCAIIABBAAEIAghAEEAQQJLQbwEGAK/reX2gh5gQAAAAAElFTkSuQmCC');
}

select,
input {
    color: var(--inputtextColor);
    padding: 5px 10px;
    font-size: 0.92rem;
    font-family: -apple-system, 'Microsoft Yahei', sans-serif, Helvetica, Arial, sans-serif;
    border: var(--inputBorder);
    background-color: var(--inputbgColor);
    transition: color 100ms ease, border-color 100ms ease, opacity 100ms ease;
    -webkit-transition: color 100ms ease, border-color 100ms ease, opacity 100ms ease;
    outline-style: none;
    vertical-align: middle;
    border-radius: var(--commonRadius0);
    margin: 3px 3px 3px 0;
    height: 2.8rem;
    line-height: 2.8rem;
    max-width: 550px; 
}

select:not([multiple="multiple"]):focus,
input:focus {
    border-color: #948FE1;
    box-shadow:0 0 6px #948FE1;
    -webkit-box-shadow:0 0 6px #948FE1;
    -moz-box-shadow:0 0 6px #948FE1;
}

input[type='file'] {
    border: none; 
    background: none; 
    height: auto;
    line-height: 1rem;
}

input[type='checkbox'] {
    height: 1.2rem;
    width: 1.2rem;
}
input[type='radio'] {
    height: 1.2rem;
    width: 1.2rem;
    box-shadow: var(--bg);
}

select[multiple="multiple"] {
    height: auto;
}

.node-docker-images input[type='text'] {
    width: auto !important;
}

input[type='text'],input[type='password'] {
    width: 100%;
}

code {
    color: #0099CC;
}

/* img[src*="/images/logo.png"]
    {
    height: 60px;
    background-image: var(--logo);
    background-size: 220px;
    background-repeat: no-repeat;
    padding: 0 0 0 250px;
    width: 0;
    background-position-x: 10px;
    background-position-y: 10px;
    background-color: var(--mainleftbgColor);
} */

abbr {
    text-decoration: underline;
    cursor: help;
}

br {
    display: block;
    margin-bottom: 0.2px;
    content: '';
}

hr{
    margin: 1rem 0;
    border-color: #EEE;
    opacity: 0.1;
}

/* .cbi-section-table-cell br, #cbi-system br, #cbi-dropbear br, .node-status-routes br {
    display: none;
} */

header, .main {
    width: 100%;
    position: absolute;
}

header {
    background-color: var(--bgwhite);
    box-shadow: 18rem 2px 4px rgba(0, 0, 0, 0.08);
    transition: box-shadow 0.1s;
    height: 55px;
    float: left;
    position: fixed;
    z-index: 101;
}

footer {
    text-align: right;
    padding: 1rem;
    color: #aaa;
    font-size: 11px;
    height: 80px;
    visibility:hidden;
    /*text-shadow: 0px 0px 2px #BBB;*/
}

footer > a {
    color: rgb(154,37,143);
    text-decoration: none;
}

text, line {
    font-family: Verdana !important;
}
 
.cbi-button-up,
.cbi-button-down,
.cbi-value-helpicon,
.showSide,
.main > .loading > span {
    font-family: 'icomoon' !important;
    font-size:10px;
    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;
}

/* fix luci-app-passwall2 button style */
.node-services-passwall2 #cbi-passwall2 {
    text-align: center;
}
.node-services-passwall2 input.cbi-button.cbi-button {
    max-width: unset;
}
/* fix luci-app-passwall/luci-app-passwall2 node_div style */
.node-services-passwall #set_node_div,
.node-services-passwall2 #set_node_div,
.node-services-passwall #add_link_div,
.node-services-passwall2 #add_link_div {
    background: var(--sectionbgColor);
    border-radius: var(--commonRadius0);
}
.node-services-passwall #add_link_div #nodes_link,
.node-services-passwall2 #add_link_div #nodes_link {
    width: 100% !important;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-family: -apple-system, 'Microsoft Yahei';
    font-weight: 600;
    line-height: 1.1;
    color: inherit;
    clear:both;
    text-transform: capitalize;
}

label.zonebadge.zonebadge-empty {
    background-color: #03abe8 !important;
}

label.zonebadge{
    border-radius: var(--commonRadius1);
    padding: 2px 5px 2px 5px !important;
    /* background-color: #5bdeae !important; */
    display: inline-block;
    cursor: pointer;
    color: #666666;
}
.zonebadge {
    /* background-color: var(--tabmenubgColor) !important; */
    border-radius: 6px;
    padding: 5px;
}

.zonebadge em {
    padding:3px;
}

svg {
    background-color: var(--sectionbgColor);
}

/* fix .cbi-section .cbi-section */
.cbi-section .cbi-section {
    margin: 10px;
}

/* fix node-services-vssr */
.node-services-vssr .status-bar {
    bottom:calc(var(--vssrBottom) + constant(safe-area-inset-bottom));
    bottom:calc(var(--vssrBottom) + env(safe-area-inset-bottom));
    background-color: var(--navbgColor);
    box-shadow: var(--vssrBoxShadow) !important;
    color: var(--vssrStatusColor) !important;
}
.node-services-vssr .container {
    padding-bottom:calc(var(--vssrBottom) + constant(safe-area-inset-bottom));
    padding-bottom:calc(var(--vssrBottom) + env(safe-area-inset-bottom));
}

.node-services-vssr .ssr-button {
	min-width: 30px;
}
.node-services-vssr #cbi-vssr .panel-title {
    padding: 10px 0 10px 10px !important;
    letter-spacing: 0 !important;
}

.node-services-vssr .status .block {
	border-radius: 10px !important;
	box-shadow: none !important;
	background-color: var(--sectionbgColor) !important;
}

.node-services-vssr button {
	border-radius: 10px !important;
	}

#cbi-vssr-servers .cbi-section-table-row {
    position: relative;
    margin: 10px !important;
    padding: 8px 15px 8px 70px;
    box-shadow: none !important;
    border-radius: 10px !important;
    border: 0;
    color: var(--textColor) !important;
    text-align: left;
    line-height: 1.7em;
    overflow: hidden;
    letter-spacing: normal;
	background-color: var(--inputbgColor) !important;
}
.cbi-section-table-row.fast {
    background-color: #add8e6 !important;
}
.incon .tp {
    text-transform: uppercase;
    color: var(--bg) !important;
}

/* file selector upload button */
::file-selector-button {
    transition: all .1s ease-in-out;
    border-radius: var(--commonRadius1);
    border: 3px solid #337ab7!important;
    color: #fff!important;
    background-color: #337ab7!important;
    box-sizing: border-box;
    cursor: pointer;
}
::file-selector-button:hover,
::file-selector-button:focus,
::file-selector-button:active {
    color: #fff!important;
    background-color: #6a65d6!important;
    border-color: #6a65d6!important
}

/** img retina **/
img[src*="/luci-static/resources/icons/port_up.png"] {
    background-image: url(../images/port_up.png);
    background-size: 32px 32px;
    height: 32px;
    padding: 0 0 0 32px;
    width: 0;
}

img[src*="/luci-static/resources/icons/port_down.png"] {
    background-image: url(../images/port_down.png);
    background-size: 32px 32px;
    height: 32px;
    padding: 0 0 0 32px;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/ethernet.png"],
#wan6_i img[src*="/luci-static/resources/icons/ethernet.png"],
img[src*="/luci-static/resources/icons/ethernet.png"] {
    background-image: url(../images/ethernet.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
#cbi-network-lan-ifname_multi img[src*="/luci-static/resources/icons/ethernet.png"],
#cbi-network-1-_ifname img[src*="/luci-static/resources/icons/ethernet.png"],
.ifacebadge img[src*="/luci-static/resources/icons/ethernet.png"],
li img[src*="/luci-static/resources/icons/ethernet.png"]
 {
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/ethernet.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/ethernet_disabled.png"],
#wan6_i img[src*="/luci-static/resources/icons/ethernet_disabled.png"],
img[src*="/luci-static/resources/icons/ethernet_disabled.png"] {
    background-image: url(../images/ethernet_disabled.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
#cbi-network-lan-ifname_multi img[src*="/luci-static/resources/icons/ethernet_disabled.png"],
#cbi-network-1-_ifname img[src*="/luci-static/resources/icons/ethernet_disabled.png"],
.ifacebadge img[src*="/luci-static/resources/icons/ethernet_disabled.png"],
li img[src*="/luci-static/resources/icons/ethernet_disabled.png"]
{
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/ethernet_disabled.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/switch.png"],
#wan6_i img[src*="/luci-static/resources/icons/switch.png"],
img[src*="/luci-static/resources/icons/switch.png"] {
    background-image: url(../images/switch.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
#cbi-network-lan-ifname_multi img[src*="/luci-static/resources/icons/switch.png"],
#cbi-network-1-_ifname img[src*="/luci-static/resources/icons/switch.png"],
.ifacebadge img[src*="/luci-static/resources/icons/switch.png"],
li img[src*="/luci-static/resources/icons/switch.png"]
 {
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/switch.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/switch_disabled.png"],
#wan6_i img[src*="/luci-static/resources/icons/switch_disabled.png"],
img[src*="/luci-static/resources/icons/switch_disabled.png"] {
    background-image: url(../images/switch_disabled.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
#cbi-network-lan-ifname_multi img[src*="/luci-static/resources/icons/switch_disabled.png"],
#cbi-network-1-_ifname img[src*="/luci-static/resources/icons/switch_disabled.png"],
.ifacebadge img[src*="/luci-static/resources/icons/switch_disabled.png"],
li img[src*="/luci-static/resources/icons/switch_disabled.png"]
 {
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/switch_disabled.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/wifi.png"],
#wan6_i img[src*="/luci-static/resources/icons/wifi.png"],
img[src*="/luci-static/resources/icons/wifi.png"] {
    background-image: url(../images/wifi.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
#cbi-network-lan-ifname_multi img[src*="/luci-static/resources/icons/wifi.png"],
#cbi-network-1-_ifname img[src*="/luci-static/resources/icons/wifi.png"],
.ifacebadge img[src*="/luci-static/resources/icons/wifi.png"],
li img[src*="/luci-static/resources/icons/wifi.png"]
{
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/wifi.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/wifi_disabled.png"],
#wan6_i img[src*="/luci-static/resources/icons/wifi_disabled.png"],
img[src*="/luci-static/resources/icons/wifi_disabled.png"] {
    background-image: url(../images/wifi_disabled.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
#cbi-network-lan-ifname_multi img[src*="/luci-static/resources/icons/wifi_disabled.png"],
#cbi-network-1-_ifname img[src*="/luci-static/resources/icons/wifi_disabled.png"],
.ifacebadge img[src*="/luci-static/resources/icons/wifi_disabled.png"],
li img[src*="/luci-static/resources/icons/wifi_disabled.png"]
{
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/wifi_disabled.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/vlan.png"],
#wan6_i img[src*="/luci-static/resources/icons/vlan.png"],
img[src*="/luci-static/resources/icons/vlan.png"] {
    background-image: url(../images/vlan.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
.ifacebadge img[src*="/luci-static/resources/icons/vlan.png"],
li img[src*="/luci-static/resources/icons/vlan.png"]
{
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/vlan.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/vlan_disabled.png"],
#wan6_i img[src*="/luci-static/resources/icons/vlan_disabled.png"],
img[src*="/luci-static/resources/icons/vlan_disabled.png"] {
    background-image: url(../images/vlan_disabled.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
.ifacebadge img[src*="/luci-static/resources/icons/vlan_disabled.png"],
li img[src*="/luci-static/resources/icons/vlan_disabled.png"]
{
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/vlan_disabled.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/bridge.png"],
#wan6_i img[src*="/luci-static/resources/icons/bridge.png"],
img[src*="/luci-static/resources/icons/bridge.png"] {
    background-image: url(../images/bridge.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
.ifacebadge img[src*="/luci-static/resources/icons/bridge.png"],
li img[src*="/luci-static/resources/icons/bridge.png"] {
    background-image: url(../images/bridge.png);
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
    width: 0;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/bridge.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/bridge_disabled.png"],
#wan6_i img[src*="/luci-static/resources/icons/bridge_disabled.png"],
img[src*="/luci-static/resources/icons/bridge_disabled.png"] {
    background-image: url(../images/bridge_disabled.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
.ifacebadge img[src*="/luci-static/resources/icons/bridge_disabled.png"],
li img[src*="/luci-static/resources/icons/bridge_disabled.png"] {
    background-image: url(../images/bridge_disabled.png);
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
    width: 0;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/bridge_disabled.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/tunnel.png"],
#wan6_i img[src*="/luci-static/resources/icons/tunnel.png"],
img[src*="/luci-static/resources/icons/tunnel.png"] {
    background-image: url(../images/tunnel.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
.ifacebadge img[src*="/luci-static/resources/icons/tunnel.png"],
li img[src*="/luci-static/resources/icons/tunnel.png"]
{
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/tunnel.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

#wan4_i img[src*="/luci-static/resources/icons/tunnel_disabled.png"],
#wan6_i img[src*="/luci-static/resources/icons/tunnel_disabled.png"],
img[src*="/luci-static/resources/icons/tunnel_disabled.png"] {
    background-image: url(../images/tunnel_disabled.png);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}
.ifacebadge img[src*="/luci-static/resources/icons/tunnel_disabled.png"],
li img[src*="/luci-static/resources/icons/tunnel_disabled.png"]
{
    background-size: 16px 16px;
    height: 16px;
    width: 16px;
    padding: 0 0 0 16px;
}
#__status-ifc-signal img[src*="/luci-static/resources/icons/tunnel_disabled.png"]
{
    background-size: 32px 32px!important;
    height: 32px !important;
    width: 32px!important;
    padding: 0 0 0 32px!important;
    width: 0;
}

img[src*="/luci-static/resources/icons/wifi_big.png"] {
    background-image: url(../images/wifi_big.png);
    background-size: 64px 64px;
    height: 64px;
    padding: 0 0 0 64px;
    width: 0;
}

img[src*="/luci-static/resources/icons/wifi_big_disabled.png"] {
    background-image: url(../images/wifi_big_disabled.png);
    background-size: 64px 64px;
    height: 64px;
    padding: 0 0 0 64px;
    width: 0;
}

img[src*="/luci-static/resources/icons/loading.gif"] {
    background-image: url(../images/loading.gif);
    background-size: 32px 32px;
    height: 32px;
    width: 32px;
    padding: 0 0 0 32px;
    width: 0;
}

.ifacebox-body img {
    background-size: 20px 20px;
    width:20px !important;
    height:20px !important;
    padding: 0 0 0 20px !important;
}
.ifacebox-head {
    /* background-color: #337ab7 !important; */
    border-radius: 4px 4px 0 0;
}


img[src*="/luci-static/resources/cbi/add.gif"] {
    background-image: url(../images/add.png);
    background-size: 20px 20px;
    height: 20px;
    padding: 0 0 0 20px;
    width: 0;
    z-index: 2;

}
img[src*="/luci-static/resources/cbi/remove.gif"] {
    background-image: url(../images/remove.png);
    background-size: 20px 20px;
    height: 20px;
    padding: 0 0 0 20px;
    width: 0;
    z-index: 2;
}

img[src*="/luci-static/resources/cbi/reload.gif"] {
    background-image: url(../images/reload.png);
    background-size: 20px 20px;
    height: 20px;
    padding: 0 0 0 20px;
    width: 0;
    z-index: 2;
}

img[src*="/luci-static/resources/icons/signal-75-100.png"]
{
    background-image: url(../images/signal-75-100.png);
    image-rendering: pixelated;
    background-size: 24px 24px;
    height: 24px;
    width: 24px;
    padding: 0 0 0 24px;
    z-index: 2;
}

img[src*="/luci-static/resources/icons/signal-50-75.png"]
{
    background-image: url(../images/signal-50-75.png);
    image-rendering: pixelated;
    background-size: 24px 24px;
    height: 24px;
    width: 24px;
    padding: 0 0 0 24px;
    z-index: 2;
}

img[src*="/luci-static/resources/icons/signal-25-50.png"]
{
    background-image: url(../images/signal-25-50.png);
    image-rendering: pixelated;
    background-size: 24px 24px;
    height: 24px;
    width: 24px;
    padding: 0 0 0 24px;
    z-index: 2;
}

img[src*="/luci-static/resources/icons/signal-0-25.png"]
{
    background-image: url(../images/signal-0-25.png);
    image-rendering: pixelated;
    background-size: 24px 24px;
    height: 24px;
    width: 24px;
    padding: 0 0 0 24px;
    z-index: 2;
}

img[src*="/luci-static/resources/icons/signal-0.png"]
{
    background-image: url(../images/signal-0.png);
    image-rendering: pixelated;
    background-size: 24px 24px;
    height: 24px;
    width: 24px;
    padding: 0 0 0 24px;
    z-index: 2;
}

img[src*="/luci-static/resources/icons/signal-none.png"]
{
    background-image: url(../images/signal-none.png);
    image-rendering: pixelated;
    background-size: 24px 24px;
    height: 24px;
    width: 24px;
    padding: 0 0 0 24px;
    z-index: 2;
}


.myIcon{
    font-family: "design" !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
}

.myIcon-logout:after{
    content: "\e005";
}

.myIcon-reboot:after{
    content: "\e02a";
}

.myIcon-wifi:after{
    content: "\e00c";
}

.main {
    top: 50px;
    bottom: 0rem;
    position: relative;
    height: 100%;
    height: calc(100% - 4rem);
}

.main > .loading {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1000;
    display: block;
    background-color: rgb(240, 240, 240);
    top: 0;
}

.main > .loading > span {
    display: block;
    text-align: center;
    margin-top: 2rem;
    color: #888;
    font-size: 1rem;
}

.main > .loading > span > .loading-img:before {
    content: "\e603";
}

.main > .loading > span > .loading-img {
    animation: anim-rotate 2s infinite linear;
    margin-right: 0.2rem;
    display: inline-block;
}

/* fix Main Login*/

.node-main-login {
    text-align: center;
    background-color: var(--bgwhite) !important;
}
.node-main-login .cbi-section-node > .cbi-value:nth-of-type(2n) {
    background: none;
}
.node-main-login h2 {
    font-size: 1.5rem;
}

.node-main-login header {
    display: none;
}
.node-main-login > .main > .main-left {
    display: none;
}

.node-main-login > .main > .main-right {
    width: 100%;
}

.node-main-login > .main fieldset {
    padding: 0px !important;
    margin-bottom: 1rem;
    display: inline;
    background: none;
    border: none;
    box-shadow: none;
    overflow: hidden;
}

.node-main-login > .main fieldset .cbi-value-title {
    display: none !important;
}

.node-main-login > .main .cbi-section {
    margin-top: 10px !important;
}

.node-main-login > .main .cbi-map {
}

.node-main-login > .main fieldset .cbi-value {
}

.node-main-login > .main fieldset .cbi-value-title {
    padding: 10px 0 10px 5px !important;
}

.node-main-login > .main .cbi-value {
    border: none;
}

.node-main-login > .main .cbi-value-title {
    width: 7rem;
}

.node-main-login > .main #maincontent {
    display: flex;
    height: 100%;
    text-align: center;
    align-items: center;
    align-content: center;
    justify-content: center;
}

/* .node-main-login > .main .container {
    background-image: var(--logo);
    background-repeat: no-repeat;
    background-size: 300px auto;
    width: 300px;
    padding: 80px 0 0 0;
} */

.node-main-login > .main form > div:nth-last-child(1) {
}

.node-main-login > .main .cbi-value > * {
    display: inline-block !important;
}

.node-main-login > .main .cbi-input-user,
.node-main-login > .main .cbi-input-password {
    appearance: none;
    outline: 0;
    padding: 0 0 0 35px;
    background-repeat: no-repeat;
    background-position: 10px 10px;
    background-size: 18px 18px;
    min-width: 15rem;
}

.node-main-login > .main .cbi-input-user {
    background-image: url('data:image/svg+xml,%3Csvg xmlns="http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg" width="24" height="24" viewBox="0 0 24 24"%3E%3Cpath fill="%23627386" d="M12 4a4 4 0 0 1 4 4a4 4 0 0 1-4 4a4 4 0 0 1-4-4a4 4 0 0 1 4-4m0 10c4.42 0 8 1.79 8 4v2H4v-2c0-2.21 3.58-4 8-4Z"%2F%3E%3C%2Fsvg%3E');
}
.node-main-login > .main .cbi-input-password {
    background-image: url('data:image/svg+xml,%3Csvg xmlns="http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg" width="24" height="24" viewBox="0 0 24 24"%3E%3Cpath fill="%23627386" d="M12 17a2 2 0 0 0 2-2a2 2 0 0 0-2-2a2 2 0 0 0-2 2a2 2 0 0 0 2 2m6-9a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V10a2 2 0 0 1 2-2h1V6a5 5 0 0 1 5-5a5 5 0 0 1 5 5v2h1m-6-5a3 3 0 0 0-3 3v2h6V6a3 3 0 0 0-3-3Z"%2F%3E%3C%2Fsvg%3E');
}
.node-main-login footer {
    bottom: 0;
    position: absolute;
    width: 100%;
}

.navbar {
  overflow: hidden;
  position: fixed;
  bottom: 0;
  width: 100%;
  border-top: var(--navBorder);
  text-align: center;
  height:calc(50px + constant(safe-area-inset-bottom));
  height:calc(50px + env(safe-area-inset-bottom));
  background-color: var(--navbgColor);
    -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.navbar a {
    float: left;
    text-align: center;
    padding: 8px 0;
    width: 20%;
    text-decoration: none;
    max-width: 100px;
}

.cbi-map {
    margin-top: 10px;
}

#cbi-shadowsocksr .cbi-map-descr {
    display: none;
}

.navbar a img {
  width: 28px;
}

@keyframes anim-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)
    }
}


.main-left {
    float: left;
    width: 18rem;
    background-color: var(--mainleftbgColor);
    overflow-x: auto;
    height: calc(100% - 3.5rem);
    position: fixed;
    padding-top: 15px;
    box-shadow: 0 0px 4px rgb(0 0 0 / 8%);
    transition: visibility 100ms, width 100ms;
}

.main-right {
    width: 85%;
    width: calc(100% - 18rem);
    float: right;
    height: 100%;
    border-left: var(--sectionBorder);
}

.main-right > #maincontent {
}

.pull-right {
    position: absolute;
    top: -2px;
    right: 30px;
    cursor: pointer;
}

.pull-left {
    float: left;
}


header > .container {
margin:0;
padding:0;
}

header > .container > .brand {
    font-size: 25px;
    font-family: "GenJyuuGothic-Medium";
    /*font-weight:bold;*/
    line-height:60px;
    /*color: white;*/
    color: var(--logo_color);
    cursor: default;
    /*background: #51c291;*/
    display:block;
    width:18rem;
    /* padding-left: 30px; */
    height:60px;
    text-align:center;
    float:left;
    font-weight:900;
    letter-spacing:1px;
    padding: 0 4.5rem;
    transition: 0.1s ease-in-out;
    position: absolute;
}
header > .container > a[class="brand"]:after {
    content:"";
    font-size:14px;
    font-family:Tahoma;
    position: absolute;
    top:-10px;
    font-weight:normal !important;
}

header > .container > .brand-hostname {
    font-size: 14px;
    line-height:60px;
    color: #555555;
    cursor: default;
    display:block;
    width:18rem;
    padding-right: 10px;
    height:60px;
    text-align:left;
    float:left;
    margin-top: 7px;
    font-weight:300;
    margin-left: -15px;
}

.warning {
    background-color: #FF7D60 !important;
    color: #FFF;
}

.errorbox,
.alert-message {
    margin: 0 0 10px 0;
    padding: 20px;
    line-height: 1.5;
    font-family: inherit;
    min-width: inherit;
    overflow: auto;
    border-radius: 10px;
    color: var(--alertColor);
    background-color: var(--alertBackground);
}

.errorbox {
    color: #fff;
    background-color: #ff6767;
    border-radius: 10px;
}

.error {
    color: red;
}
p#shadowsocksr_status {
    padding: 3px;
}


#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: 14px;
    line-height: 1.42857143;
    color: #fff;
    background-color: #5bc0de;
    border-color: #46b8da;
    margin-top: 2rem;
    text-decoration: inherit;
}

.main > .main-left > .nav {
    overflow-y: visible !important;
    font-size: 1rem;
    width: 90%;
    margin: auto;
    margin-bottom: 90px;
}

.main > .main-left > .nav > li a {
    color: var(--activeColor);
    display: block;
    border-radius: 6px;
    cursor: pointer;
    font-weight: bold;
    font-size: 1.1rem;
    transition: all 0.1s;
}

/*
.main > .main-left > .nav > li:nth-last-child(1) {
    font-size: 11pt;
    height:40px;
    padding-top:6px;
}
*/

.main > .main-left > .nav > li {
    cursor: pointer;
    padding-top:6px;
}

.main > .main-left > .nav > .slide {
    padding: 0;
    padding-top:8px;
}

.main > .main-left > .nav > .slide > a:before {
    display: inline-block;
    left:-10px;
    top: 1px;
    position: relative;
    font-family: "design" !important;
    font-weight: bold !important;
    text-transform: none !important;
    speak: none;
    font-size: 1.2rem !important;
    -webkit-font-smoothing: antialiased;
}

.main > .main-left > .nav > .slide > .menu::after {
    right: 0.5rem;
    top: 0.8rem;
    font-family: "design" !important;
    font-style: normal !important;
    font-variant: normal !important;
    content: "\eb03";
    float: right;
    padding-right: 5px;
    line-height: 1.6;
    /* Better Font Rendering =========== */
    -moz-osx-font-smoothing: grayscale;
    transition: all 0.1s ease;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}

.main .main-left .nav li.slide .menu.active::after {
  transform: rotate(90deg);
}

.main > .main-left > .nav > .slide > a[data-title="Status"]:before {
    content: "\e6b8";
}

.main > .main-left > .nav > .slide > a[data-title="System"]:before {
    content: "\e645";
}

.main>.main-left>.nav>.slide>a[data-title=Modem]:before {
    content: "\e67e"
}

.main > .main-left > .nav > .slide > a[data-title="Services"]:before {
    content: "\e6cb";
}

.main > .main-left > .nav > .slide > a[data-title="Docker"]:before {
    content: "\44";
}

.main > .main-left > .nav > .slide > a[data-title="NAS"]:before {
    content: "\eb04";
}

.main > .main-left > .nav > .slide > a[data-title="VPN"]:before {
    content: "\56";
}

.main > .main-left > .nav > .slide > a[data-title="Network"]:before {
    content: "\72";
}

.main > .main-left > .nav > .slide > a[data-title="Bandwidth Monitor"]:before {
    content: "\e764";
}
.main .main-left .nav li.slide .menu[data-title="Statistics"]:before {
  content: "\e604";
}

.main .main-left .nav li.slide .menu[data-title="Control"]:before {
  content: "\e67a";
}

.main .main-left .nav li.slide .menu[data-title="Asterisk"]:before {
  content: "\e7dd";
}

.main > .main-left > .nav > .slide > a[data-title="QuickStart"]:before,
.main > .main-left > .nav > li > a[data-title="Inital Setup"]:before,
.main > .main-left > .nav > li > a[data-title="NetworkGuide"]:before,
.main > .main-left > .nav > li > a[href="/cgi-bin/luci//admin/wizard"]:before {
    content: "\e719";
}

.main > .main-left > .nav > li > a[data-title="iStore"]:before {
    content: "\e676";
}


.main > .main-left > .nav > li > a[data-title="Logout"] {
    padding: 0.675rem 0 0.675rem 2.5rem;
}

.main > .main-left > .nav > li > a[data-title="Logout"]:before {
    content: "\e641";
}

.main > .main-left > .nav > li > a[data-title="Reboot"] {
    padding: 6px 25px;
}
.main > .main-left > .nav > li > a[data-title="Reboot"]:before {
    content: "\e004";
}

.main > .main-left > .nav > .slide > ul {
    display: none;
    list-style:dotted;
}

.main > .main-left > .nav > .slide > .menu {
    display: block;
    padding: 0.675rem 0 0.675rem 2.5rem;
    text-decoration: none;
    cursor: pointer;;
}

.main > .main-left > .nav > .slide > .menu2 {
    display: block;
    padding: 0.675rem 0 0.675rem 2.5rem;
    text-decoration: none;
    cursor: pointer;;
}
.main > .main-left > .nav > li:hover,
.main > .main-left > .nav > .slide > .menu:hover {
    background: var(--activeColor);
    color:white;
}
.main > .main-left > .nav > .slide > .menu2:hover {
    background: var(--activeColor);
    color:white;
}

.main > .main-left > .nav > .slide:hover {
    background: none;
}
.slide-menu {
    overflow:hidden;
    }
.main > .main-left > .nav > .slide > .slide-menu > li {
    margin-top: 8px;
    border-radius: 6px;
}

.main > .main-left > .nav > .slide > .slide-menu > .active {
    background-color: var(--activeColor);
}

.main > .main-left > .nav > .slide > .slide-menu > li > a {
    position: relative;
    display: block;
    color: var(--textColor);
    vertical-align: middle;
    background:none !important;
    border: none !important;
    text-transform: capitalize;
    font-size: 1rem;
    margin: 0.1rem 0.5rem 0.1rem 0.5rem;
    padding: 0.675rem 0 0.675rem 3.2rem;
}
.main .main-left .nav li.slide .slide-menu .active a {
    color: #000;
  }

.main > .main-left > .nav > .slide > .slide-menu > li > a:hover {
    color:white;
}

.main > .main-left > .nav > .slide > .slide-menu > .active > a {
    color: white;
}

.main > .main-left > .nav > .slide > .slide-menu > li:hover {
    background: var(--activeColor);
    color:white !important;
    transition: all 0.1s;
}

.main > .main-left > .nav > .slide > .slide-menu > .active:hover {
    background-color: var(--activeColor);
    cursor: pointer;
}

.cbi-tab-descr {
    padding:10px;
}

li {
    list-style-type: none;
}

#maincontent > .container {
    margin:30px 30px 50px 30px;
}

h1 {
    color: var(--activeColor);
    font-size: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
}

h2 {
    color: var(--activeColor);
    padding: 0 12px 6px 12px;
    text-transform: capitalize;
}

h3 {
    font-size: 1.2rem;
    color: var(--activeColor);
    font-weight:bold;
    padding: 0 12px 10px 12px;
}

h4 {

}

label {
    display: inline-block;
    vertical-align: middle;
}
fieldset {
   /* margin: 10px 0 0 0; */
    padding: 10px;
    border: 1px;
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    font-family: inherit;
    text-align: left;
    min-width: inherit;
    overflow-x: auto;
    overflow-y: hidden;
    background-color: var(--sectionbgColor);
    /* box-shadow: var(--sectionShaddow); */
    -webkit-overflow-scrolling: touch;
}

fieldset > legend {
    display: none !important;
}

fieldset > fieldset {
    /* margin: 0; */
    padding: 0;
    /* border: none; */
    /* box-shadow: none; */
}

.panel-title {
    width: 100%;
    display: block;
    padding: 10px;
    font-weight: bold;
    font-size: 1rem;
}

table {
    border-spacing: 0;
    border-collapse: collapse;
    width: 100%;
    border: 0px solid #eee !important;
    margin: 0 !important;
}

strong {
    font-weight: bold;
    padding: 2px;
}

#lb_load01_cur,
#lb_load01_peak,
#lb_load05_cur,
#lb_load15_cur{
    text-align:right !important;
}

#lb_load01_peak {
 text-align:left !important;
 }
#lb_load01_cur {

}

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: 12px;
    white-space: nowrap;
    line-height:1.5;
    vertical-align: middle !important;
}

.node-services-appfilter table > tbody > tr > th,
.node-services-appfilter table > tbody > tr > td,
.node-nlbw-usage table > tbody > tr > th, 
.node-nlbw-usage table > tbody > tr > td {
    text-align: center;
}


table > tbody > tr {
    border-bottom: var(--cbilineColor) !important;
}

table > tbody > tr:last-child {
    border-bottom: none !important;
}

.cbi-section-table-cell {
    text-align: center;
}

.cbi-section-table-row {
    text-align: center;
}

.cbi-section-remove{
    margin-bottom: 2px;
}
.cbi-section-remove > input {
    background-color: #cc0066;
}
fieldset > table > tbody > tr:nth-of-type(odd) {
    background-color: var(--sectionbgColor2);
}

/* fixed DHCPv6 lease table host names incorrectly displayed */
#lease6_status_table > tbody > .cbi-section-table-row.cbi-rowstyle-1 div,
#lease6_status_table > tbody > .cbi-section-table-row.cbi-rowstyle-2 div{
  min-width:100%;
}

/* fix status overview */
.node-status-overview > .main fieldset:nth-child(6) td:nth-child(2),
.node-status-overview table[id="wifi_status_table"] > tbody > tr > td {
    white-space: normal;
}

/* fix progress bar */
#swaptotal > div,
#swapfree > div,
#swapcache > div,
#memfree > div,
#membuff > div,
#conns > div,
#memcache > div,
#memtotal > div {
    width: 100% !important;
    border-color: var(--progressbarColor) !important;
    background-color:var(--progressbarColor) !important;
    border-radius: 3px;
}

#swaptotal > div > div,
#swapfree > div > div,
#swapcache > div > div,
#memfree > div > div,
#membuff > div > div,
#conns > div > div,
#memcache > div > div,
#memtotal > div > div {
    background-color: var(--progressbar) !important;
    color: var(--progressbartxtColor) !important;
    border-radius: 3px;
}

#swaptotal div div,
#swapfree div  div,
#swapcache div div,
#memfree div div,
#membuff div div,
#conns div div,
#memcache div div,
#memtotal div div {
    align-items: center;
    align-content: center;
    justify-content: center;
    display: flex;
}

#swaptotal div div small,
#swapfree div  div small,
#swapcache  div div small,
#memfree div div small,
#membuff div div small,
#conns div div small,
#memcache div div small,
#memtotal div div small{
    font-size: 0.75rem !important;
    line-height: 130%;
    color: var(--progressbartxtColor) !important;
}

.cbi-value-field {
    width: 65%;
}
/* fix node-system-admin */
.node-system-admin .cbi-value-field li div {
    padding: 0 !important;
}

.node-system-admin em {
    padding: 0 !important;
}

/* fix node-nlbw-display */
.node-nlbw-display hr {
    display: none;
}

.node-nlbw-display p {
    line-height: 1.5;
    padding: 0 10px 5px 10px;
}


/* fix node-network-network */

/* #cbi-network-lan-__status table {
    width: auto;
}

#cbi-network-lan-__status table td {
    width: 0;
    padding: 0;

}
#cbi-network-lan-__status table td small {
    font-size: 11px;
    white-space: nowrap;
} */

/* node-network-network ul list overflow */
#cbi-network .cbi-value-field ul,
#cbi-wireless .cbi-value-field ul,
#cbi-firewall .cbi-value-field ul {
    overflow-x: auto;
    white-space: nowrap;
}

#cbi-network .cbi-value-field ul input[type="text"],
#cbi-wireless .cbi-value-field ul input[type="text"],
#cbi-firewall .cbi-value-field ul input[type="text"] {
    max-width: 10rem;
    width: 100% !important;
}

div [id*="cbi-network-"] [id*="-__status"] table,
div [id*="cbi-wireless"] [id*="-__status"] table {
    width: auto;
}

div [id*="cbi-network-"] [id*="-__status"] table td,
div [id*="cbi-wireless"] [id*="-__status"] table td {
    width: auto;
    padding: 0 !important;
}
div [id*="cbi-network-"] [id*="-__status"] table td small,
div [id*="cbi-wireless"] [id*="-__status"] table td small {
    width: auto;
}

/* adapt to mt798x series closed source wireless driver page */
/* open source wireless style */
.node-network-wifi .cbi-section-table tr .cbi-value-field,
.node-network-wireless .cbi-section-table tr .cbi-value-field {
    width: unset !important;
    text-align: right;
}
.node-network-wireless #iw-assoclist .cbi-section-table-row td[colspan="6"],
.node-network-wireless .cbi-section-table .cbi-section-table-row td[colspan="6"],
.node-network-wifi .cbi-section-table .cbi-section-table-row td[colspan="8"] {
    text-align: center !important;
}
.node-network-wireless #iw-assoclist .cbi-section-table-row td div {
    max-width: unset !important;
}
.node-network-wifi table, td, th {
    border-top: unset !important;
}
.node-network-wifi .cbi-section-table td[colspan="2"]  {
    padding-left: unset !important
}

/* fix node-status-routes */
.node-status-routes .cbi-section-node{
    max-height: 500px;
    overflow-y: auto;
    overflow-x: auto;
}

/* fix multiple table */
table table {
    border: none;
}

.cbi-value-field table {
    border: none;
}
.cbi-value-field label {
    padding: 0 ;
}
td > table > tbody > tr > td {
    border: none;
}

.cbi-value-field > table > tbody > tr > td {
    border: none;
}

#container\.nlbw\.traffic th, 
#container\.nlbw\.traffic td, 
#container\.nlbw\.layer7 th, 
#container\.nlbw\.layer7 td,  
#container\.nlbw\.ipv6 th,
#container\.nlbw\.ipv6 td, 
#container\.nlbw\.export th, 
#container\.nlbw\.export td {
    padding: 12px !important;
    border-top: none;
    border: unset;
    text-align: center;
    /* border-left: #ccc 1px solid;
    border-right: #ccc 1px solid;
    border-bottom: #ccc 1px solid; */
 }

 #container\.nlbw\.traffic tr td:nth-child(4), 
 #container\.nlbw\.layer7 tr td:nth-child(3), 
 #container\.nlbw\.ipv6 tr td:nth-child(4), 
 #container\.nlbw\.export tr td:nth-child(4),
 #container\.nlbw\.traffic tr td:nth-child(6), 
 #container\.nlbw\.layer7 tr td:nth-child(5), 
 #container\.nlbw\.ipv6 tr td:nth-child(6), 
 #container\.nlbw\.export tr td:nth-child(6) {
     text-align: right !important;
}
 
 #container\.nlbw\.traffic tr td:nth-child(5), 
 #container\.nlbw\.layer7 tr td:nth-child(4), 
 #container\.nlbw\.ipv6 tr td:nth-child(5), 
 #container\.nlbw\.export tr td:nth-child(5),
 #container\.nlbw\.traffic tr td:nth-child(7), 
 #container\.nlbw\.layer7 tr td:nth-child(6), 
 #container\.nlbw\.ipv6 tr td:nth-child(7), 
 #container\.nlbw\.export tr td:nth-child(7){
     text-align: left !important;
}

td#__status-ifc-signal {
    width: 60px !important;
}

/* button style */

.cbi-button {
    -webkit-appearance: none;
    text-transform: uppercase;
    color: #fff;
    background-color: #337ab7;
    transition: all 0.1s ease-in-out;
    display: inline-block;
    border: none;
    cursor: pointer;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    background-image: none;
    text-align: center;
    white-space: nowrap;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: auto !important;
    min-width: 80px;
    padding: 0px 8px 0px 8px;
    /* max-width: 160px; */
    border-radius: var(--commonRadius0);
    height: 35px;
    line-height: 35px;
}

.cbi-button:hover,
.cbi-button:focus,
.cbi-button:active {
    color: #fff;
    outline: 0;
    text-decoration: none;
    background-color: rgb(106,101,214);
}

.cbi-button:hover,
.cbi-button:focus {
    box-shadow: 0 1px 1px rgba(0,0,0,.05);
}

.cbi-button:active {
    box-shadow: 0 1px 1px rgba(0,0,0,.05);
}

.cbi-button:disabled {
    cursor: not-allowed;
    pointer-events: none;
    opacity: 0.60;
    box-shadow: none;
}

form.inline + form.inline,
.cbi-button + .cbi-button {
}

.cbi-button-reset,
.cbi-input-remove {
    color: #fff !important;
    background-color: #617486 !important;
}

.cbi-button-reset:hover,
.cbi-input-remove:hover,
.cbi-button-remove:hover{
    color: #fff !important;
    background-color: rgb(83,100,115) !important;
}

.cbi-button-link,
.cbi-input-find,
.cbi-input-save,
.cbi-button-add,
.cbi-button-save,
.cbi-button-find,
.cbi-input-reload,
.cbi-button-reload {
    color: var(--bttextColor);
    background-color: #337ab7 !important;
    border-color: #337ab7 !important;
}

.cbi-button-link:hover,
.cbi-input-find:hover,
.cbi-input-save:hover,
.cbi-button-add:hover,
.cbi-button-save:hover,
.cbi-button-find:hover,
.cbi-input-reload:hover,
.cbi-button-reload:hover{
    color: #fff !important;
    background-color: #6A82AE!important;
    border-color: #6A82AE !important;
}


.cbi-input-apply,
.cbi-button-apply,
.cbi-button-edit {
    color: #fff !important;
    background-color: var(--activeColor);
}

.cbi-input-reset,
.cbi-button-remove {
    color: #fff !important;
    background: #617486;
}


.a-to-btn {
    text-decoration: none;
}

/* table */
.tabs {
    margin: 15px 0;
    overflow-x: auto;
}

.cbi-tabmenu > li,
.tabs > li {
    display: table-cell;
}

.cbi-tabmenu > li {
    border-radius: var(--tabmenuRadius);
}

.tabs > li > a {
    text-decoration: none;
    padding: 0 6px 0 6px;
    float: left;
    display: block;
    white-space: nowrap;
    height: 2.5rem;
    line-height: 2.5rem;
    font-size: 0.92rem;
}

.cbi-tabmenu > li > a {
    text-decoration: none;
    float: left;
    display: block;
    white-space: nowrap;
    height: 2.5rem;
    line-height: 2.5rem;
    font-size: 0.92rem;
    margin: 0 10px;
}

.tabs > li[class~="active"],
.tabs > li:hover{
    cursor: pointer;

}

.tabs > li[class~="active"] > a {
    color: var(--activeColor) !important;
    padding-bottom: 8px;
    border-bottom: var(--activeColor) 2px solid;
}

.tabs > li:hover {
    /*border-bottom: 0.18751rem solid rgb(133,129,216);*/
}

.cbi-tabmenu {
    border-top: var(--sectiontabBorder);
    border-left: var(--tabmenuBorderLR);
    border-right: var(--tabmenuBorderLR);
    border-bottom: var(--tabmenuBottom);
    background-color: var(--tabmenubgColor);
    width: 100%;
    overflow-x: auto;
    margin-top: 5px;
    margin-bottom: 10px;
}

.cbi-tabmenu > li:hover {
    background-color: none;
}

.cbi-tabmenu > li[class~="cbi-tab"] {
    background-color: none;
}

.cbi-tabmenu > li[class~="cbi-tab"] a {
    color: var(--activeColor) !important;
    border-bottom: 2px solid var(--activeColor) !important;
}

.cbi-section-node-tabbed {
    margin-top: 0;
    border-bottom: var(--sectiontabBorder);
    border-left: var(--sectiontabBorder);
    border-right: var(--sectiontabBorder);
    border-radius: 0 0;
}


.cbi-tabcontainer {
    clear:both;
}
.cbi-tabcontainer > .cbi-value:nth-of-type(2n) {
    background-color: var(--sectionbgColor2);
}

.cbi-section-node > .cbi-value:nth-of-type(2n) {
    background-color: var(--sectionbgColor2);
}
div > .cbi-value:nth-of-type(2n) {
    background-color: var(--sectionbgColor2);
}

.cbi-value-field,
.cbi-value-description {
    display: table-cell;
}

.cbi-value-field {
    /* padding: 10px 10px 10px 0; */
}

.cbi-value-helpicon > img {
    display: none;
}

.cbi-value-helpicon:before {
    content: "\f059";
}

.cbi-value-description {
    opacity: 0.6;
    padding-left: 4px;
}

.cbi-value-title {
    word-wrap: break-word;
    display: table-cell;
    width: 35%;
    float: left; 
    padding: 13px 10px 5px 3px;
}

.cbi-value {
    display: flex;
    width: 100%;
    align-items: center;
    align-content: center;
    justify-content: flex-start;
    min-height: 40px;
    padding: 8px 10px;
    flex-flow:row wrap;
    border-bottom: var(--cbilineColor);
}

.cbi-value:last-child {
    border-bottom: none;
}

.cbi-value strong {
    font-weight: normal;
}

.cbi-section-table-descr > .cbi-section-table-cell,
.cbi-section-table-titles > .cbi-section-table-cell {
    border: none;
}

.cbi-rowstyle-2 {
    background-color: var(--sectionbgColor2);
}

.cbi-rowstyle-2 .cbi-button-up,
.cbi-rowstyle-2 .cbi-button-down{
}

.cbi-section-table .cbi-section-table-titles .cbi-section-table-cell {
    width: auto !important;
}
.cbi-section-table tr .cbi-value-field {
    text-align: center ;
    width: 20% !important;
    padding: 10px !important;
}
.cbi-section-table tr .cbi-value-field input {
    width: auto;
}
.cbi-section-table tr .cbi-value-field .ifacebox {
    margin: auto;
    width: fit-content;
    min-width: 60px;
}

/* desc */
.cbi-section-descr {
    padding: 3px 10px;
}

.cbi-map-descr {
    padding: 5px 5px 5px 12px;
}

.cbi-map-descr h3 {
    font-size: 0.92rem;
    font-weight: normal;
    color: #666;
}

#cbi-vsftpd .cbi-map-descr {
    color: var(--activeColor);
    padding: 0 12px 0px 12px;
    font-size: 1.2rem;
    font-weight: bold;
}


/* luci */

.hidden {
    display: none
}

.left {
    text-align: left !important;
}

.right {
    text-align: right !important;
}

.right .cbi-button {
    height: 20px;
    line-height: 20px;
    min-width: 60px;
    /* padding: 0; */
    margin: 0;
}

.inline {
    display: inline;
}

.cbi-page-actions {
    text-align: center;
}

/* input */
.cbi-value input[type="password"],
.cbi-value input[type="text"] {

}

/* select */


.ifacebadge {
    display: inline-flex;
    padding: 5px;
    background-color: var(--badgebgColor);
    align-content: center;
    align-items: center;
    border-radius: var(--commonRadius1);
    border: var(--badgeBorder);
    color: #666666
}

#content_syslog {
    padding: 5px;
    margin-top:10px;
    border-radius: 10px;
    background-color: var(--sectionbgColor);
    box-shadow: 3px 3px 3px rgb(0 0 0 / 5%);
}

.ifacebadge > img {
    float: right;
    margin-left: 0.3rem;
}

img.cbi-image-button {
        vertical-align: middle;

}

fieldset.cbi-section{
    border: var(--sectionBorder);
    margin-bottom: 20px;
    border-radius: 10px;
    margin-top: 5px;
}

/*textarea*/

.cbi-input-textarea, textarea {
    color: var(--inputtextColor);
    padding: 10px;
    line-height: normal;
    border: var(--sectionBorder);
    background-color: var(--inputbgColor);
    transition: color 150ms ease, border-color 150ms ease, opacity 150ms ease;
    -webkit-transition: color 150ms ease, border-color 150ms ease, opacity 150ms ease;
    outline-style: none;
    vertical-align: baseline;
    border-radius: 10px;
    font-family: Menlo, Mono;
    font-size: 0.9rem;
    white-space: pre;
    margin-bottom: 5px;
}

#syslog {
    width: 100%;
    min-height: 15rem;
    padding: 10px;
    margin-bottom: 20px;
    border-radius: 0;
    background-color: var(--sectionbgColor);
    border: none;
}

/* change */
#wan4_i, #wan6_i {
width:50px !important;
}

.uci-change-list {
    font-family: monospace;
}

.uci-change-list *:first-child {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
  
.uci-change-list *:nth-last-child(2) {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

.uci-change-list ins,
.uci-change-legend-label ins {
    text-decoration: none;
    border: 1px solid #00FF00;
    background-color: #CCFFCC;
    display: block;
    padding: 2px;
    color: black;
    overflow-x: auto;
}
.uci-change-legend .uci-change-legend-label ins {
    overflow-x: unset;
    border-radius: var(--commonRadius1);
}
    
.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;
    color:black;
    overflow-x: auto;
}
.uci-change-legend .uci-change-legend-label del {
    overflow-x: unset;
    border-radius: var(--commonRadius1);
}

.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;
    color:black;

    overflow-x: auto;
}
.uci-change-legend .uci-change-legend-label var {
    overflow-x: unset;
    border-radius: var(--commonRadius1);
}    

.uci-change-list var ins,
.uci-change-list var del {
    border: none;
    white-space: pre;
    font-style: normal;
    padding: 0px;
    color:black;
    /* border-radius: var(--commonRadius1); */
    overflow-x: auto;
}

.uci-change-legend {
    padding: 5px;
}

.uci-change-legend-label {
    width: 150px;
    float: left;
    display: flex;
    /* align-content: center; */
    align-items: center;
}

.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 {
    border: none;
    height: 10px;
    width: 10px;
}

.uci-change-list var,
.uci-change-list del,
.uci-change-list ins {
    padding: 0.5rem;
}

/* other fix */
#iwsvg,
#iwsvg2,
#bwsvg {
    border: var(--sectionBorder) !important;
    font-family: -apple-system;
    background: none !important;
}

.ifacebox {
    border: var(--ifaceboxBorderColor) 1px solid;
    border-radius: var(--commonRadius1);
    font-size:0.92rem;
    font-weight:normal;
}
.ifacebox-head {
    color:#fff;
}
.ifacebox-body small {
    font-size:0.8rem !important;
    padding: 5px
}

.ifacebox-body strong {
    color:#f7f7f7;
    font-size: 0px !important;
}

.cbi-image-button {

}


.zonebadge > .ifacebadge {
    padding: 3px 5px;
    margin: 5px;
}

.zonebadge > input[type="text"] {
    padding: 0.16rem 1rem;
    min-width: 10rem;
    margin-top: 0.3rem;
}

.cbi-value-field .cbi-input-checkbox,
.cbi-value-field .cbi-input-radio {
    vertical-align: middle;
}

.cbi-section-table-row > .cbi-value-field .cbi-input-select {
    min-width: 7rem;
}

.cbi-section-create {
    padding: 0 10px;
}
.cbi-section-create > .cbi-button-add {
    margin: 10px 0 10px 0
}

div.cbi-value var, td.cbi-value-field var {
    font-style: italic;
    color: #0069D6;
}

small {
    font-size: small;
    font-weight: normal !important;
    white-space: normal;
}

.cbi-button-up,
.cbi-button-down {
    display: inline-block;
    min-width: 0;
    font-size: 0.9rem;
}

.cbi-optionals {
    padding: 1rem 1rem 0 1rem;
    border-top: 1px solid #CCC;
}

#diag-rc-output > pre {
    display: block;
    padding: 10px;
    line-height: 1.5rem;
    -moz-border-radius: 3px;
    white-space: pre-wrap;
    word-wrap: break-word;
    color: #76838f;
}

input[name="ping"],
input[name="traceroute"],
input[name="nslookup"] {
    width: 80%;
}

table.cbi-section-table select {
    width: auto !important;
}

header > .container > .pull-right > * {

}

#xhr_poll_status > .label.success {
    padding: 0.7rem 0;
    border-radius: 20px;
}

#xhr_poll_status_off {
    padding: 0.7rem 0;
    border-radius: 20px;
}

.label {
    padding: 0 3px 0 3px;
    white-space: nowrap;
    border-radius: 3px;
    position: absolute;
    right: 5px;
    top: 15px;
    line-height: 150%;
}

.notice {
    color: var(--activeColor);
    font-size: .8rem;
    /* padding: 0.15rem; */
    padding-right: 0.5rem;
    border-radius: 10px;
    z-index: 10;
    /* top: 1.45rem; */
    font-size: 1.8rem;
    font-family: design;
}

#refresh_on, #refresh_off {
    font-size: 1.5rem;
    font-family: design;
}

#refresh_on {
    color: var(--activeColor);
}
#refresh_off {
    color: var(--progressbarColor);
}

.darkMask {
    width: 100%;
    height: 100%;
    position: fixed;
    background-color: rgba(0, 0, 0, 0.56);
    content: "";
    z-index: 99;
    display: none;
}

/* fix node-services-shadowsocksr */

.node-services-shadowsocksr .cbi-input-textarea,
.node-nlbw-config .cbi-input-textarea {
    /* margin: 10px; */
}

.node-services-shadowsocksr #cbi-logview .cbi-section {
    padding: 0;
}

/* fix node-network-diagnostics */
.node-network-diagnostics .cbi-section {
    border-radius: 10px;
}

/* fix status processes */
.node-status-processes > .main table tr td:nth-child(3) {
    white-space: normal;
}

.cbi-map fieldset h3 {
 }

.cbi-map fieldset ul li {
    margin-right:0 !important;
}
/* fix system reboot */

.node-system-reboot > .main > .main-right p,
.node-system-reboot > .main > .main-right h3 {
    margin-left: 12px;
}

.node-system-reboot #maincontent {
}

/* fix Services  Network Shares*/
.node-services-samba > .main .cbi-tabcontainer:nth-child(3) .cbi-value-title {
    margin-bottom: 1rem;
}

.node-services-samba > .main .cbi-tabcontainer:nth-child(3) .cbi-value-field {
    display: list-item;
}

.node-services-samba > .main .cbi-tabcontainer:nth-child(3) .cbi-value-description {
    padding-top: 1rem;
    line-height:150%;
}

/* fix System Software*/
.node-system-packages > .main table tr td:nth-child(1) {
    width: auto !important;
}

.node-system-packages .cbi-section-node .cbi-value-last {
    /* padding: 8px 12px; */
}

.node-system-packages .cbi-section-node .cbi-value-last > div  {
    border: none !important;
    border-radius: 3px;
}

.node-system-packages .cbi-section-node .cbi-value-last > div > div  {
    border: none !important;
    border-radius: 3px;
}

.node-system-packages .cbi-section-node .cbi-value-last:nth-last-child(1)  {
    padding: auto;
}

.node-system-packages > .main table tr td:nth-last-child(1) {
    white-space: normal;
    font-size: small;
    color: #76838f;
}

.node-system-packages > .main .cbi-value > pre {
    /* background-color: var(--inputbgColor); */
    padding: 10px;
    overflow: auto;
    /* border: var(--inputBorder); */
    border-radius: 10px;
}

.node-system-packages #cbi-distfeedconf .cbi-section,
.node-system-packages #cbi-customfeedconf .cbi-section {
    border-radius: 10px;
}

.node-system-packages .cbi-value-field {
    width: 58%;
}

#container\.nlbw\.traffic, #container\.nlbw\.layer7, #container\.nlbw\.ipv6, #container\.nlbw\.export {
    margin-top: 0;
    margin-top: 0;
    padding: 10px;
    text-align: center;
    border-bottom: var(--sectionBorder);
    border-left: var(--sectionBorder);
    border-right: var(--sectionBorder);
    background-color: var(--sectionbgColor);
    border-radius: 10px;
}

#container\.nlbw\.export ul li {

    padding: 5px;
    width: 150px;
    margin: 10px;
    border-radius: var(--commonRadius1);
    border: #ccc 1px solid;

}

.cbi-tabmenu + .cbi-section ul {
    text-align: left;
}

/* fix network firewall*/
.node-network-firewall > .main .cbi-section-table-row > .cbi-value-field .cbi-input-select {
    min-width: 4rem;
}

.node-status-iptables > .main div > .cbi-map > form {
    position: static !important;
    margin: 10px 0 20px 0;
    padding: 12px;
    border: 0;
    font-weight: normal;
    font-style: normal;
    line-height: 1;
    font-family: inherit;
    min-width: inherit;
    overflow-x: auto;
    overflow-y: hidden;
    box-shadow: 3px 3px 3px rgb(0 0 0 / 5%);
    border-radius: 10px;
    background-color: var(--bgwhite);
    -webkit-overflow-scrolling: touch;
}



/** fix system packages 
.node-system-packages .cbi-section {
    border-radius: 0 0 10px 10px;
}


#cbi-ipkgconf .cbi-section {
    border-radius: 0 0 10px 10px;
}

**/


.node-system-flashops fieldset fieldset {
    border: none;
}
.node-system-flashops br {
    display: none;
}

.node-system-flashops .cbi-section {
    /* padding: 0; */
}
.node-system-flashops .cbi-section-descr {
    padding: 12px;
    line-height: 1.5;
    border-radius: 6px;
    /* border: var(--sectiontabBorder);
    background-color: var(--sectionbgColor2); */
}


.node-status-iptables .cbi-tabmenu,
.node-system-packages .cbi-tabmenu,
.node-system-flashops .cbi-tabmenu {
   /* border: none; **/
}

#cbi-firewall-redirect .cbi-section-table-titles .cbi-section-table-cell {
    text-align: left;
}

#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;
}

/** fix node-status-realtime **/
.node-status-realtime table > tbody > tr > td {
    text-align: left !important;
    padding: 10px 3px 10px 3px;
}
.node-status-realtime table[id=connections] > tbody > tr > td {
    padding: 10px 3px 10px 3px;
    text-align: center !important;
}

.node-status-realtime table  {
    table-layout: auto !important;
}
/* fix node-status-realtime connections */
.node-status-realtime fieldset[id="cbi-table-table"] {
    background-color: unset !important;
}
.node-status-realtime fieldset[id="cbi-table-table"] > table > tbody > tr:nth-of-type(odd),
.node-status-realtime fieldset[id="cbi-table-table"] table[id="connections"] tr.cbi-section-table-row.cbi-rowstyle-2 {
    background-color: unset;
}
/* fix luci-app-appfilter table overflow style */
/* fix node-nas-fileassistant table overflow style */
/* fix node-status-realtime table style */
.node-services-appfilter .cbi-section.cbi-tblsection,
.node-nas-fileassistant #list-content,
.node-status-realtime fieldset[id="cbi-table-table"] .cbi-section-node {
    overflow: auto;
}

select#cbi\.combobox\.cbid\.shadowsocksr\.cfg013fd6\.tunnel_forward {
    overflow: hidden;

}

/* language fix */
body.lang_pl.node-main-login .cbi-value-title {
    width: 12rem;
}

/* fix nlbw component */
#detail-bubble {
    /* left: unset !important; */
    width: unset!important;
}
#detail-bubble.in {
    color: #000;
    padding-bottom: calc(60px +  env(safe-area-inset-bottom));
    left: 19rem !important;
    width: calc(100vw - 21.25rem)!important;
}
#detail-bubble .head {
    display: block;
    overflow: auto;
}
#detail-bubble #bubble-table {
    display: inline-table;
    overflow: auto;
}

@media screen and (max-width: 1280px) {
    header {
        /*height: 3.5rem;*/
    }

    header > .container {
        /*margin-top: 0.25rem;*/
    }

    .main {
        height: calc(100% - 3.5rem);
    }

    .main-left {
        width: calc(0% + 18rem);
        top: 50px;
    }

    .main-right {
        width: calc(100% - 18rem);
    }


    table {
        font-size: 0.9rem !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;
    }

    .main > .main-left > .nav > .slide > .slide-menu > li > a {
        font-size: 1rem;
        text-transform: capitalize;
    }

    img[src*="/luci-static/resources/cbi/add.gif"] {
        right: 55px;
        display: block;
        position: absolute;
        margin-top: -34px;
    }
    img[src*="/luci-static/resources/cbi/remove.gif"] {
        right: 55px;
        display: block;
        position: absolute;
        margin-top: -34px;
    }

    img[src*="/luci-static/resources/cbi/reload.gif"] {
        right: 55px;
        display: block;
        position: absolute;
        margin-top: -34px;
    }
    /* fix nlbw component */
    #detail-bubble {
        /* left: unset !important; */
        width: unset!important;
    }
    #detail-bubble.in {
        color: #000;
        padding-bottom: calc(60px +  env(safe-area-inset-bottom));
        left: 19rem !important;
        width: calc(100vw - 21.25rem)!important;
    }
    #detail-bubble .head {
        display: block;
        overflow: auto;
    }
    #detail-bubble #bubble-table {
        display: inline-table;
        overflow: auto;
    }
    .node-nlbw-usage table {
        display: block;
        overflow: auto;
    }
    #container\.nlbw\.traffic table, 
    #container\.nlbw\.layer7 table, 
    #container\.nlbw\.ipv6 table, 
    #container\.nlbw\.export table {
        display: block;
        overflow: auto;
    }
}

@media screen and (max-width: 992px) {

    /* img[src*="/images/logo.png"] {
    background-color: var(--mainleftbgColor);
    height: 50px;
    background-image: var(--mlogo);
    background-size: 310px;
    background-repeat: no-repeat;
    padding: 0 0 0 310px;
    width: 0;
    margin: 0;
    background-position: 0;
    } */

    .main-left {
        width: 0;
        position: fixed;
        z-index: 100;
    }

    .main-right {
        width: 100%;
    }

    .showSide {
        margin: 0;
        padding: 0;
        display: inline-block;
        position: absolute;
        width: 18.75rem;
        height: 2.8125rem;
        padding: 1.15rem 2rem;
        z-index: 100;
    }

    .showSide:before {
        content: "\e20e";
        font-size: 1.7rem;
    }

    #maincontent > .container {
        margin: 20px 20px;
    }

    .node-main-login .showSide {
        display: none !important;
    }

    .cbi-value-title {
        width:35%;
    }

    .node-network-diagnostics > .main .cbi-map fieldset > div * {
        width: 100% !important;
    }

    .node-network-diagnostics > .main .cbi-map fieldset > div input[type="text"] {
    }

    .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;
    }

    .node-main-login > .main .cbi-value-title {
        text-align: left;
    }

    img[src*="/luci-static/resources/cbi/add.gif"] {
        right: 45px;
        display: block;
        position: absolute;
        margin-top: -34px;
    }
    img[src*="/luci-static/resources/cbi/remove.gif"] {
        right: 45px;
        display: block;
        position: absolute;
        margin-top: -34px;
    }

    img[src*="/luci-static/resources/cbi/reload.gif"] {
        right: 45px;
        display: block;
        position: absolute;
        margin-top: -34px;
    }
    /*  fix nlbw component */
    #detail-bubble {
        left: unset !important;
        width: unset!important;
    }
    #detail-bubble.in {
        color: #000;
        padding-bottom: calc(60px +  env(safe-area-inset-bottom));
        left: unset !important;
        width: calc(100vw)!important;
    }
    #detail-bubble .head {
        display: block;
        overflow: auto;
        /* text-align: unset !important; */
    }
    #detail-bubble #bubble-table {
        display: inline-table;
        overflow: auto;
    }
    header {
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
    }
}

@media screen and (max-width: 700px) {

    #cbi-vssr-servers .cbi-button-add {
        position: static !important; 
        width: auto !important; 
        height: 2rem !important;
        line-height: 2rem !important;
        color: #fff; 
        display: block; 
        padding: 0 !important;
        font-size: 0.92rem;
        border-radius: 10px !important;
        box-shadow: none ;
        background-image: none;
    }
	#cbi-vssr-servers .cbi-section-table-row {
		margin:10px 0 !important;
	}
    #cbi-vssr-servers .p-in5 {
        padding-bottom: 10px !important;
        margin: 0 !important;
    }

    #cbi-vssr-servers .cbi-page-actions {
        padding-bottom: 10px !important;
    }

    #maincontent > .container {
        margin: 20px 20px;
    }
    /*  fix nlbw component */
    #detail-bubble {
        left: unset !important;
        width: unset!important;
    }
    #detail-bubble.in {
        color: #000;
        padding-bottom: calc(60px +  env(safe-area-inset-bottom));
        left: unset !important;
        width: calc(100vw)!important;
    }
    #detail-bubble .head {
        display: block;
        overflow: auto;
        /* text-align: unset !important; */
    }
    #detail-bubble #bubble-table {
        display: inline-table;
        overflow: auto;
    }
}

@media screen and (max-width: 470px) {
    /*  fix nlbw component */
    #detail-bubble {
        left: unset !important;
        width: unset!important;
    }
    #detail-bubble.in {
        color: #000;
        padding-bottom: calc(60px +  env(safe-area-inset-bottom));
        left: unset !important;
        width: calc(100vw)!important;
    }
    #detail-bubble .head {
        display: block;
        overflow: auto;
        /* text-align: unset !important; */
    }
    #detail-bubble #bubble-table {
        display: block;
        overflow: auto;
    }
    /* fix node-status-realtime table */
    .main-right > #maincontent {
        overflow: auto;
    }
    /* network and wireless table status icon */
    div [id*="cbi-network-"] [id*="-__status"] table td,
    div [id*="cbi-wireless"] [id*="-__status"] table td {
        white-space: normal;
    }
    
    .node-system-leds .cbi-section em,
    .node-network-network #cbi-network .cbi-map .cbi-section-table cbi-section-table-row,
    .node-network-network #cbi-network .cbi-map .cbi-section-table td {
        display: block;
    }
    .node-network-network #cbi-network .cbi-map .cbi-section-table td {
        width: 100%!important;
        text-align: center!important;
        white-space: normal;
    }
    .node-network-network #cbi-network .cbi-map .cbi-button {
        min-width: 60px !important;
    }
    .node-network-network .cbi-section-table .cbi-section-table-titles .cbi-section-table-cell {
        flex: 1!important
    }
    .node-network-network .cbi-section-table .cbi-section-table-titles th:nth-child(2) {
        text-align: center !important;
    }
    .node-network-network .cbi-section-table .cbi-section-table-titles {
        display: flex
    }
    .node-network-wireless fieldset:nth-child(1) table > tbody > tr > td,
    .node-network-wireless fieldset:nth-child(2) table > tbody > tr > td {
        white-space: normal;
    }
}

@media screen and (max-width: 370px) {

    fieldset {
    /* overflow-x: auto; */
    }

    select {
        width: 100%;
    }

    header {
        height: 55px;
    }

    h3 {
        padding: 0 10px 10px 10px;
    }

    /* img[src*="/images/logo.png"]
    {    
    height: 45px;
    background-image: var(--mlogo);
    background-size: 310px;
    background-repeat: no-repeat;
    padding: 0 0 0 310px;
    width: 0;
    margin: 0;
    background-position: 0;
    } */

    .showSide {
        height: 45px;
    }

    #maincontent > .container {
        margin: 20px 20px;
    }

    .main {
        top: 45px;
    }

    .main-left{
        top: 45px;
    }
    .main > .main-left > .nav > .slide > .menu {
    }

    .main > .main-left > .nav > .slide > .slide-menu > li > a {
    }

    .cbi-value {
    margin-bottom: 20px;
    display: table;
    padding: 0px;
    border-bottom: none;
    }

    .cbi-value-title {
        width: 100%;
        font-weight: 700;
        float: left;
        padding: 0;
        margin: 0;
        margin-bottom: .25rem;
    }
    
    .cbi-section-node {
        padding: 10px !important;
    }
	
    .cbi-value-description {
        width: 100%;
        display: block;
    }

    .cbi-value > .cbi-value-field {
        display: block;
        float: left;
        width: 100%;
    }
    img[src*="/luci-static/resources/cbi/add.gif"] {
        right: 45px;
        display: block;
        position: absolute;
        margin-top: -34px;
    }
    img[src*="/luci-static/resources/cbi/remove.gif"] {
        right: 45px;
        display: block;
        position: absolute;
        margin-top: -34px;
    }

    img[src*="/luci-static/resources/cbi/reload.gif"] {
        right: 45px;
        display: block;
        position: absolute;
        margin-top: -34px;
    }
    .cbi-section-node > .cbi-value:nth-of-type(2n) {
        background-color: var(--sectionbgColor);
    }

    .cbi-tabcontainer > .cbi-value:nth-of-type(2n) {
        background-color: var(--sectionbgColor);
    }

    div > .cbi-value:nth-of-type(2n) {
        background-color: var(--sectionbgColor);
    }

    .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 fieldset {
        margin: 0;
        padding: 0.5rem;
    }

    #container\.network\.lan\.physical .cbi-value-title,
    #cbi-network-1-_ifname .cbi-value-title
    {
        width: 35%;
    }
    #cbi-network-1-_ifname .cbi-value-field
    {
        width: 65%;
    }

    h2 {
        font-size: 1.2rem;
        text-transform: capitalize;
    }

    select,
    input {
        /* max-width: 200px; */
    }

    input[type='checkbox'] {
    height: 1.2rem !important;
    width: 1.2rem !important;
    }

    #swaptotal div div small,
    #swapfree div  div small,
    #swapcache  div div small,
    #memfree div div small,
    #membuff div div small,
    #conns div div small,
    #memcache div div small,
    #memtotal div div small{
    }
    #swaptotal div div,
    #swapfree div  div,
    #swapcache  div div,
    #memfree div div,
    #membuff div div,
    #conns div div,
    #memcache div div,
    #memtotal div div{
    }

    .node-status-iptables > .main div > .cbi-map > form input[type="submit"]{
        margin: 0;
    }

    #cbi-samba-cfg010f89-_tmpl .cbi-value-title{
        width: 15%;

    }
     #cbi-samba-cfg010f89-_tmpl .cbi-value-field{
        width: 95%;        
    }
    /*  fix nlbw component */
    #detail-bubble {
        left: unset !important;
        width: unset!important;
    }
    #detail-bubble.in {
        color: #000;
        padding-bottom: calc(60px +  env(safe-area-inset-bottom));
        left: unset !important;
        width: calc(100vw)!important;
    }
    #detail-bubble .head {
        display: block;
        overflow: auto;
        /* text-align: unset !important; */
    }
    #detail-bubble #bubble-table {
        display: block;
        overflow: auto;
    }
}

@media screen and (max-width: 315px) {
    .label {
        position: absolute;
        right: 5px;
        top: -70px;
    }
}

/* fix http://192.168.2.1/cgi-bin/luci/admin/nlbw/usage */
#intervalSelect {
    height: 40px !important;
}

/* fix luci-app-commands */
.commandbox div {
    position: unset !important;
}    

/* fix luci-app-netspeedtest */
#cbi-netspeedtest-homebox- {
    display: unset !important;
}

/* fix node-status-realtime */
.node-status-realtime .container {
    overflow:auto
}

/* fix node-network-network */
.node-network-network div[onclick*="document.getElementById('cbid.network."],
#cbi-network div[onclick*="document.getElementById('cbid.network."] {
    background-color: unset !important;
}

/* fix wireless_join list button */
form[action="/cgi-bin/luci/admin/network/wireless"] input[class="cbi-button cbi-button-reset"],
form[action="/cgi-bin/luci/admin/network/wireless_join"] input[class="cbi-button cbi-input-find"] {
    height: 25px;
    min-width: 80px;
}
/* fix node-services-aliyundrive-webdav mask-box background style */
.node-services-aliyundrive-webdav #mask-box {
    background: rgb(64 64 64 / 0%);
}
/* fix node-servces-ddns input style */
.node-services-ddns #cbi-ddns-service input {
    width: unset;
}
.node-services-ddns .cbi-value input[type="password"],
.node-services-ddns .cbi-value input[type="text"] {
    width: 100% !important;
}
/* fix luci-app-fileassistant botton style */
.fb-container .cbi-button {
    border-radius: var(--commonRadius0);
    margin: 3px 3px 3px 0;
    height: unset !important;
}
/* update node-system-commands style */
.node-system-commands h3 {
    text-transform: unset;
}
.node-system-commands .commandbox {
    width: auto;
    display: inline-block;
    float: none;
}
.node-system-commands .commandbox p {
    word-break:keep-all;
    white-space:nowrap;
}
.node-system-commands div.cbi-map fieldset.cbi-section {
    align-items: center;
    text-align: center;
}
.node-system-commands #cbi-luci.cbi-map fieldset.cbi-section {
    align-items: unset;
    text-align: unset;
}
/* network */
.node-network-network .ifacebox strong{
    color: var(--ifaceboxFontColor);
    padding: 5px;
}
.node-network-firewall .zonebadge strong,
.node-network-firewall label strong {
    color: var(--ifaceboxFontColor);
}

/* fix new version luci-app-openclash style */
.node-services-openclash  ul li.selected {
    background-color: var(--liSelectedColor) !important;
}
.node-services-openclash .cbi-button-reset, 
.node-services-openclash .cbi-input-remove {
    max-width: unset !important;
}
.node-services-openclash #tab-header ul li.selected,
.node-services-openclash #tab-header ul li {
    color: black !important;
    background-color: unset !important
}
/* fix qBittorrent status style*/
.node-nas-qbittorrent p#qBittorrent_status input {
    line-height: unset;
}

/* fix node-system-diskman dialog-format-active */
.node-system-diskman.dialog-format-active #dialog_format .dialog_box {
    background: var(--alertBackground);
    border-radius: var(--commonRadius1);
}
/* adaption plug-in luci-app-watchcat-plus */
.node-services-watchcat-plus select[id*="cbi.opt.watchcat"] {
    width: auto;
}
/* fix node-nas-fileassistant table cell style */
.node-nas-fileassistant .fb-container .cbi-value-owner,
.node-nas-fileassistant .fb-container .cbi-value-perm {
    display: table-cell;
}
/* fix luci-app-adguardhome style */
.node-services-adguardhome input[onclick*="window.open('http://'+window.location.hostname+':"] {
    line-height: 0;
}
