From bda07a6bfa9c5ad1ce46233db35ba84189fdaed2 Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
<41898282+github-actions[bot]@users.noreply.github.com>
Date: Tue, 18 Apr 2023 23:36:54 +0800
Subject: [PATCH] update 2023-04-18 23:36:54
---
gn/Makefile | 6 +-
gn/src/out/last_commit_position.h | 4 +-
luci-app-advanced/README.md | 31 +-
.../luasrc/model/cbi/advanced.lua | 98 ++--
luci-app-autotimeset/README.md | 33 +-
luci-app-netspeedtest/README.md | 30 +-
luci-app-partexp/README.md | 31 +-
luci-app-passwall/Makefile | 2 +-
luci-app-passwall/luasrc/passwall/api.lua | 55 +-
.../luasrc/passwall/util_xray.lua | 2 +-
.../root/usr/share/passwall/rules/chnlist | 545 +++++-------------
.../root/usr/share/passwall/rules/chnroute | 3 +
.../root/usr/share/passwall/rules/chnroute6 | 2 +
luci-app-poweroffdevice/README.md | 29 +-
luci-app-xray/README.md | 2 +-
luci-theme-design/Makefile | 2 +-
luci-theme-design/dev/style.css | 2 +-
.../htdocs/luci-static/design/css/style.css | 2 +-
luci-theme-opentopd/README.md | 31 +-
19 files changed, 360 insertions(+), 550 deletions(-)
diff --git a/gn/Makefile b/gn/Makefile
index c2c5e7b8a..fccd226fd 100644
--- a/gn/Makefile
+++ b/gn/Makefile
@@ -5,12 +5,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=gn
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://gn.googlesource.com/gn.git
-PKG_SOURCE_DATE:=2023-02-17
-PKG_SOURCE_VERSION:=b25a2f8c2d33f02082f0f258350f5e22c0973108
+PKG_SOURCE_DATE:=2023-04-05
+PKG_SOURCE_VERSION:=28b7b6c507eb808567e3aea446cd259f7691fddc
PKG_MIRROR_HASH:=skip
PKG_LICENSE:=BSD 3-Clause
diff --git a/gn/src/out/last_commit_position.h b/gn/src/out/last_commit_position.h
index 81cdd6283..28b7516ee 100644
--- a/gn/src/out/last_commit_position.h
+++ b/gn/src/out/last_commit_position.h
@@ -3,7 +3,7 @@
#ifndef OUT_LAST_COMMIT_POSITION_H_
#define OUT_LAST_COMMIT_POSITION_H_
-#define LAST_COMMIT_POSITION_NUM 2081
-#define LAST_COMMIT_POSITION "2081 (b25a2f8c2d33)"
+#define LAST_COMMIT_POSITION_NUM 2085
+#define LAST_COMMIT_POSITION "2085 (28b7b6c507eb)"
#endif // OUT_LAST_COMMIT_POSITION_H_
diff --git a/luci-app-advanced/README.md b/luci-app-advanced/README.md
index 991b31b0c..7f0931a06 100644
--- a/luci-app-advanced/README.md
+++ b/luci-app-advanced/README.md
@@ -7,24 +7,38 @@ luci-app-advanced 高级设置,包括smartdns,openclash,防火墙,DHCP
![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/说明2.jpg)
+
+
+## 使用与授权相关说明
+
+- 本人开源的所有源码,任何引用需注明本处出处,如需修改二次发布必告之本人,未经许可不得做于任何商用用途。
+
+
# My other project
-网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
+- 网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
-定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
+- 定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
-关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
+- 关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
-opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
+- opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
-opentoks 主题: https://github.com/sirpdboy/luci-theme-opentoks [仿KOOLSAHRE主题]
+- kucat 主题: https://github.com/sirpdboy/luci-theme-kucat
-btmob 主题: https://github.com/sirpdboy/luci-theme-btmob
+- 家长控制: https://github.com/sirpdboy/luci-theme-parentcontrol
-系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
+- 系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
-ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
+- ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
+- 进阶设置(系统高级设置+主题设置kucat/agron/opentopd): https://github.com/sirpdboy/luci-app-advancedplus
+
+- 设置向导: https://github.com/sirpdboy/luci-app-wizard
+
+- 分区扩容: https://github.com/sirpdboy/luci-app-partexp
+
+- lukcy大吉: https://github.com/sirpdboy/luci-app-lukcy
## 捐助
@@ -37,4 +51,3 @@ ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
-
diff --git a/luci-app-advanced/luasrc/model/cbi/advanced.lua b/luci-app-advanced/luasrc/model/cbi/advanced.lua
index 3007ad7fc..0cc14c676 100644
--- a/luci-app-advanced/luasrc/model/cbi/advanced.lua
+++ b/luci-app-advanced/luasrc/model/cbi/advanced.lua
@@ -6,38 +6,6 @@ m.apply_on_parse=true
s=m:section(TypedSection,"advanced")
s.anonymous=true
-if nixio.fs.access("/bin/nuc")then
- s:tab("mode",translate("模式设置"),translate("
可以在这里切换旁路由和正常模式,重置你的网络设置。
点击后会立即重启设备,没有确认过程,请谨慎操作!
"))
- o=s:taboption("mode",Button,"nucmode",translate("切换为旁路由模式"),translate("本模式适合于单口和多网口主机,自动将网口全桥接好!
默认gateway是:192.168.1.1,ipaddr是192.168.1.2。用本机接口LAN接上级LAN当旁路由,主路由关闭DHCP服务。应用生效会重启软路由!
"))
- o.inputtitle = translate("Apply")
- o.inputstyle = "reset"
- o.write = function()
- luci.sys.exec("/bin/nuc &> /dev/null &")
- end
- o=s:taboption("mode",Button,"normalmode",translate("切换成路由模式"),translate("本模式适合于有两个网口或以上的设备使用,如多网口软路由或者虚拟了两个以上网口的虚拟机使用!应用生效会重启软路由!。
"))
- o.inputtitle = translate("Apply")
- o.inputstyle = "reset"
- o.write = function()
- luci.sys.exec("/bin/normalmode &> /dev/null &")
- end
-
- o=s:taboption("mode",Button,"ipmode6",translate("设置为IPV6网络"),translate("点击应用切换到IPV6模式!保存应用后即刻有效!
"))
-
- o.inputtitle = translate("Apply")
- o.inputstyle = "add"
- o.write = function(self, section)
- luci.sys.exec("ipmode6 &> /dev/null &")
- end
-
- o=s:taboption("mode",Button,"ipmode4",translate("设置为IPV4网络"),translate("点击应用切换到IPV4模式!保存应用后即刻有效!
"))
-
- o.inputtitle = translate("Apply")
- o.inputstyle = "add"
- o.write = function(self, section)
- luci.sys.exec("ipmode4 &> /dev/null &")
- end
-
-end
if nixio.fs.access("/etc/dnsmasq.conf")then
s:tab("dnsmasqconf",translate("dnsmasq"),translate("本页是配置/etc/dnsmasq.conf的文档内容。应用保存后自动重启生效"))
@@ -127,6 +95,7 @@ e.remove("/tmp/hosts.tmp")
end
end
end
+
if nixio.fs.access("/etc/config/arpbind")then
s:tab("arpbindconf",translate("ARP绑定"),translate("本页是配置/etc/config/arpbind包含APR绑定MAC地址文档内容。应用保存后自动重启生效"))
conf=s:taboption("arpbindconf",Value,"arpbindconf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
@@ -148,6 +117,7 @@ e.remove("/tmp/arpbind")
end
end
end
+
if nixio.fs.access("/etc/config/firewall")then
s:tab("firewallconf",translate("防火墙"),translate("本页是配置/etc/config/firewall包含防火墙协议设置文档内容。应用保存后自动重启生效"))
conf=s:taboption("firewallconf",Value,"firewallconf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
@@ -169,6 +139,7 @@ e.remove("/tmp/firewall")
end
end
end
+
if nixio.fs.access("/etc/config/mwan3")then
s:tab("mwan3conf",translate("负载均衡"),translate("本页是配置/etc/config/mwan3包含负载均衡设置文档内容。应用保存后自动重启生效"))
conf=s:taboption("mwan3conf",Value,"mwan3conf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
@@ -211,6 +182,7 @@ e.remove("/tmp/dhcp")
end
end
end
+
if nixio.fs.access("/etc/config/ddns")then
s:tab("ddnsconf",translate("DDNS"),translate("本页是配置/etc/config/ddns包含动态域名设置文档内容。应用保存后自动重启生效"))
conf=s:taboption("ddnsconf",Value,"ddnsconf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
@@ -233,48 +205,50 @@ end
end
end
-if nixio.fs.access("/etc/config/timecontrol")then
-s:tab("timecontrolconf",translate("时间控制"),translate("本页是配置/etc/config/timecontrol包含上网时间控制配置文档内容。应用保存后自动重启生效"))
-conf=s:taboption("timecontrolconf",Value,"timecontrolconf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
+if nixio.fs.access("/etc/config/parentcontrol")then
+s:tab("parentcontrolconf",translate("家长控制"),translate("本页是配置/etc/config/parentcontrol包含家长控制配置文档内容。应用保存后自动重启生效"))
+conf=s:taboption("parentcontrolconf",Value,"parentcontrolconf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
conf.template="cbi/tvalue"
conf.rows=20
conf.wrap="off"
conf.cfgvalue=function(t,t)
-return e.readfile("/etc/config/timecontrol")or""
+return e.readfile("/etc/config/parentcontrol")or""
end
conf.write=function(a,a,t)
if t then
t=t:gsub("\r\n?","\n")
-e.writefile("/tmp/timecontrol",t)
-if(luci.sys.call("cmp -s /tmp/timecontrol /etc/config/timecontrol")==1)then
-e.writefile("/etc/config/timecontrol",t)
-luci.sys.call("/etc/init.d/timecontrol restart >/dev/null")
+e.writefile("/tmp/parentcontrol",t)
+if(luci.sys.call("cmp -s /tmp/parentcontrol /etc/config/parentcontrol")==1)then
+e.writefile("/etc/config/parentcontrol",t)
+luci.sys.call("/etc/init.d/parentcontrol restart >/dev/null")
end
-e.remove("/tmp/timecontrol")
+e.remove("/tmp/parentcontrol")
end
end
end
-if nixio.fs.access("/etc/config/rebootschedule")then
-s:tab("rebootscheduleconf",translate("定时设置"),translate("本页是配置/etc/config/rebootschedule包含定时设置任务配置文档内容。应用保存后自动重启生效"))
-conf=s:taboption("rebootscheduleconf",Value,"rebootscheduleconf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
+
+if nixio.fs.access("/etc/config/autotimeset")then
+s:tab("autotimesetconf",translate("定时设置"),translate("本页是配置/etc/config/autotimeset包含定时设置任务配置文档内容。应用保存后自动重启生效"))
+conf=s:taboption("autotimesetconf",Value,"autotimesetconf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
conf.template="cbi/tvalue"
conf.rows=20
conf.wrap="off"
conf.cfgvalue=function(t,t)
-return e.readfile("/etc/config/rebootschedule")or""
+return e.readfile("/etc/config/autotimeset")or""
end
conf.write=function(a,a,t)
if t then
t=t:gsub("\r\n?","\n")
-e.writefile("/tmp/rebootschedule",t)
-if(luci.sys.call("cmp -s /tmp/rebootschedule /etc/config/rebootschedule")==1)then
-e.writefile("/etc/config/rebootschedule",t)
-luci.sys.call("/etc/init.d/rebootschedule restart >/dev/null")
+e.writefile("/tmp/autotimeset",t)
+if(luci.sys.call("cmp -s /tmp/autotimeset /etc/config/autotimeset")==1)then
+e.writefile("/etc/config/autotimeset",t)
+luci.sys.call("/etc/init.d/autotimeset restart >/dev/null")
end
-e.remove("/tmp/rebootschedule")
+e.remove("/tmp/autotimeset")
end
end
end
+
if nixio.fs.access("/etc/config/wolplus")then
s:tab("wolplusconf",translate("网络唤醒"),translate("本页是配置/etc/config/wolplus包含网络唤醒配置文档内容。应用保存后自动重启生效"))
conf=s:taboption("wolplusconf",Value,"wolplusconf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
@@ -318,6 +292,29 @@ e.remove("/tmp/smartdns")
end
end
end
+
+if nixio.fs.access("/etc/config/bypass")then
+s:tab("bypassconf",translate("BYPASS"),translate("本页是配置/etc/config/bypass包含bypass配置文档内容。应用保存后自动重启生效"))
+conf=s:taboption("bypassconf",Value,"bypassconf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
+conf.template="cbi/tvalue"
+conf.rows=20
+conf.wrap="off"
+conf.cfgvalue=function(t,t)
+return e.readfile("/etc/config/bypass")or""
+end
+conf.write=function(a,a,t)
+if t then
+t=t:gsub("\r\n?","\n")
+e.writefile("/tmp/bypass",t)
+if(luci.sys.call("cmp -s /tmp/bypass /etc/config/bypass")==1)then
+e.writefile("/etc/config/bypass",t)
+luci.sys.call("/etc/init.d/bypass restart >/dev/null")
+end
+e.remove("/tmp/bypass")
+end
+end
+end
+
if nixio.fs.access("/etc/config/openclash")then
s:tab("openclashconf",translate("openclash"),translate("本页是配置/etc/config/openclash的文档内容。应用保存后自动重启生效"))
conf=s:taboption("openclashconf",Value,"openclashconf",nil,translate("开头的数字符号(#)或分号的每一行(;)被视为注释;删除(;)启用指定选项。"))
@@ -340,5 +337,4 @@ end
end
end
-
return m
diff --git a/luci-app-autotimeset/README.md b/luci-app-autotimeset/README.md
index e9e1075df..a5fc1407c 100644
--- a/luci-app-autotimeset/README.md
+++ b/luci-app-autotimeset/README.md
@@ -8,6 +8,8 @@
## 功能说明:
+### 定时设置1.9版
+#### 2023.4.1 定时设置1.9版:加入定时断网重连、定时检测WAN3重启等服务。
### 定时设置1.6版
#### 2023.1.15 定时设置1.6版:重新代码制作优化。在之前的版本上新增加:定时清理内存、定时清理系统垃圾、定时断网、定时重启网络共享、定时重拨 等 8大功能
@@ -62,28 +64,38 @@
源码来源:https://github.com/sirpdboy/luci-app-autotimeset
-你可以随意使用其中的源码,但请注明出处。
-![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/说明2.jpg)
+
+## 使用与授权相关说明
+
+- 本人开源的所有源码,任何引用需注明本处出处,如需修改二次发布必告之本人,未经许可不得做于任何商用用途。
+
# My other project
-网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
+- 网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
-定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
+- 定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
-关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
+- 关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
-opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
+- opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
-opentoks 主题: https://github.com/sirpdboy/luci-theme-opentoks [仿KOOLSAHRE主题]
+- kucat 主题: https://github.com/sirpdboy/luci-theme-kucat
-btmob 主题: https://github.com/sirpdboy/luci-theme-btmob
+- 家长控制: https://github.com/sirpdboy/luci-theme-parentcontrol
-系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
+- 系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
-ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
+- ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
+- 进阶设置(系统高级设置+主题设置kucat/agron/opentopd): https://github.com/sirpdboy/luci-app-advancedplus
+
+- 设置向导: https://github.com/sirpdboy/luci-app-wizard
+
+- 分区扩容: https://github.com/sirpdboy/luci-app-partexp
+
+- lukcy大吉: https://github.com/sirpdboy/luci-app-lukcy
## 捐助
@@ -96,4 +108,3 @@ ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
-
diff --git a/luci-app-netspeedtest/README.md b/luci-app-netspeedtest/README.md
index 82cc73736..97cb65a53 100644
--- a/luci-app-netspeedtest/README.md
+++ b/luci-app-netspeedtest/README.md
@@ -117,19 +117,37 @@ luci-app-netspeedtest 网络速度诊断测试(包括:内网网页版测速
![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/netspeedtest4.jpg)
-## 其它
-- 我的其它项目:
+
+## 使用与授权相关说明
+
+- 本人开源的所有源码,任何引用需注明本处出处,如需修改二次发布必告之本人,未经许可不得做于任何商用用途。
+
+
+# My other project
+
- 网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
+
- 定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
+
- 关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
-- btmob 主题: https://github.com/sirpdboy/luci-theme-btmob
+
+- opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
+
+- kucat 主题: https://github.com/sirpdboy/luci-theme-kucat
+
+- 家长控制: https://github.com/sirpdboy/luci-theme-parentcontrol
+
- 系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
+
- ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
-- Lucky(大吉): https://github.com/sirpdboy/luci-app-lucky
-## 感谢
+- 进阶设置(系统高级设置+主题设置kucat/agron/opentopd): https://github.com/sirpdboy/luci-app-advancedplus
-感谢sivel、superspeed、user1121114685、ZeaKyX、佐须之男、lean等。因为有你们珠玉在前!
+- 设置向导: https://github.com/sirpdboy/luci-app-wizard
+
+- 分区扩容: https://github.com/sirpdboy/luci-app-partexp
+
+- lukcy大吉: https://github.com/sirpdboy/luci-app-lukcy
## 捐助
diff --git a/luci-app-partexp/README.md b/luci-app-partexp/README.md
index e417d3acd..b2dd875c9 100644
--- a/luci-app-partexp/README.md
+++ b/luci-app-partexp/README.md
@@ -70,25 +70,38 @@ luci-app-partexp 一键自动格式化分区、扩容、自动挂载插件
![screenshots](https://raw.githubusercontent.com/sirpdboy/openwrt/master/doc/partexp.jpg)
+
+
+## 使用与授权相关说明
+
+- 本人开源的所有源码,任何引用需注明本处出处,如需修改二次发布必告之本人,未经许可不得做于任何商用用途。
+
+
# My other project
-网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
+- 网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
-定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
+- 定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
-关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
+- 关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
-opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
+- opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
-opentoks 主题: https://github.com/sirpdboy/luci-theme-opentoks [仿KOOLSAHRE主题]
+- kucat 主题: https://github.com/sirpdboy/luci-theme-kucat
-btmob 主题: https://github.com/sirpdboy/luci-theme-btmob
+- 家长控制: https://github.com/sirpdboy/luci-theme-parentcontrol
-系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
+- 系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
-ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
+- ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
-lucky大吉: https://github.com/sirpdboy/luci-app-lucky
+- 进阶设置(系统高级设置+主题设置kucat/agron/opentopd): https://github.com/sirpdboy/luci-app-advancedplus
+
+- 设置向导: https://github.com/sirpdboy/luci-app-wizard
+
+- 分区扩容: https://github.com/sirpdboy/luci-app-partexp
+
+- lukcy大吉: https://github.com/sirpdboy/luci-app-lukcy
## 捐助
diff --git a/luci-app-passwall/Makefile b/luci-app-passwall/Makefile
index bd8d99663..b53418e81 100644
--- a/luci-app-passwall/Makefile
+++ b/luci-app-passwall/Makefile
@@ -6,7 +6,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-passwall
-PKG_VERSION:=4.64-4
+PKG_VERSION:=4.64-5
PKG_RELEASE:=
PKG_CONFIG_DEPENDS:= \
diff --git a/luci-app-passwall/luasrc/passwall/api.lua b/luci-app-passwall/luasrc/passwall/api.lua
index e20ce6e0f..d34fe074a 100644
--- a/luci-app-passwall/luasrc/passwall/api.lua
+++ b/luci-app-passwall/luasrc/passwall/api.lua
@@ -612,38 +612,41 @@ local function auto_get_arch()
end
function parseURL(url)
- local pattern = "^(%w+)://"
- local protocol = url:match(pattern)
+ if not url or url == "" then
+ return nil
+ end
+ local pattern = "^(%w+)://"
+ local protocol = url:match(pattern)
- if not protocol then
- --error("Invalid URL: " .. url)
- return nil
- end
+ if not protocol then
+ --error("Invalid URL: " .. url)
+ return nil
+ end
- local auth_host_port = url:sub(#protocol + 4)
- local auth_pattern = "^([^@]+)@"
- local auth = auth_host_port:match(auth_pattern)
- local username, password
+ local auth_host_port = url:sub(#protocol + 4)
+ local auth_pattern = "^([^@]+)@"
+ local auth = auth_host_port:match(auth_pattern)
+ local username, password
- if auth then
- username, password = auth:match("^([^:]+):([^:]+)$")
- auth_host_port = auth_host_port:sub(#auth + 2)
- end
+ if auth then
+ username, password = auth:match("^([^:]+):([^:]+)$")
+ auth_host_port = auth_host_port:sub(#auth + 2)
+ end
- local host, port = auth_host_port:match("^([^:]+):(%d+)$")
+ local host, port = auth_host_port:match("^([^:]+):(%d+)$")
- if not host or not port then
- --error("Invalid URL: " .. url)
- return nil
- end
+ if not host or not port then
+ --error("Invalid URL: " .. url)
+ return nil
+ end
- return {
- protocol = protocol,
- username = username,
- password = password,
- host = host,
- port = tonumber(port)
- }
+ return {
+ protocol = protocol,
+ username = username,
+ password = password,
+ host = host,
+ port = tonumber(port)
+ }
end
local default_file_tree = {
diff --git a/luci-app-passwall/luasrc/passwall/util_xray.lua b/luci-app-passwall/luasrc/passwall/util_xray.lua
index 996edbcf4..9cf130e4a 100644
--- a/luci-app-passwall/luasrc/passwall/util_xray.lua
+++ b/luci-app-passwall/luasrc/passwall/util_xray.lua
@@ -675,7 +675,7 @@ function gen_config(var)
local preproxy_node = preproxy_enabled and preproxy_node_id and uci:get_all(appname, preproxy_node_id) or nil
local preproxy_is_balancer
- if not preproxy_node and api.parseURL(preproxy_node_id) then
+ if not preproxy_node and preproxy_node_id and api.parseURL(preproxy_node_id) then
local parsed1 = api.parseURL(preproxy_node_id)
local _node = {
type = "Xray",
diff --git a/luci-app-passwall/root/usr/share/passwall/rules/chnlist b/luci-app-passwall/root/usr/share/passwall/rules/chnlist
index 0c85384ac..b18f63c7f 100644
--- a/luci-app-passwall/root/usr/share/passwall/rules/chnlist
+++ b/luci-app-passwall/root/usr/share/passwall/rules/chnlist
@@ -6,7 +6,6 @@
00042.com
00058.com
0006266.com
-0007.net
000714.xyz
000dn.com
000e.com
@@ -121,6 +120,7 @@
021dianyuan.com
021dzjx.com
021east.com
+021fenglei.com
021fx.com
021gjhb.com
021ja.com
@@ -261,7 +261,6 @@
0371wang.com
037201.com
037398.com
-0375art.com
0376news.com
0378zz.com
0379home.com
@@ -317,6 +316,7 @@
0523zp.com
0523zz.com
05273.com
+0527ys.com
0527zz.com
052yx.com
0531.com
@@ -416,7 +416,6 @@
06peng.com
07.la
0701news.com
-0704tv.com
07073.com
07073h5.com
07073sy.com
@@ -571,7 +570,6 @@
0914cn.com
0915home.com
091601.com
-0916auto.com
0917.com
0917e.com
0919123.com
@@ -608,6 +606,7 @@
0kee.com
0qda82zu.com
0rl.cc
+0s52.com
0s8s.com
0sm.com
0x0.biz
@@ -1047,7 +1046,6 @@
12580.com
12580.net
12580.tv
-12580jnh.com
12580study.com
125a.net
125edu.com
@@ -1074,6 +1072,7 @@
128456.com
1288.tv
128qd.com
+128sy.com
128uu.com
12988.net
12edu.com
@@ -1099,7 +1098,6 @@
1314zf.com
1317w.com
131cc.com
-131vip1.com
131w.tv
1322.com
132lawyer.com
@@ -1127,7 +1125,6 @@
135edu.com
135fa.com
135plat.com
-135top.com
135yuedu.com
136.com
1360.com
@@ -1153,6 +1150,7 @@
139135.com
1392189.com
13937180868.com
+139592.com
13973.com
139cm.com
139down.com
@@ -1232,7 +1230,6 @@
15w.com
15wz.com
15xdd.com
-15yan.com
15yc.com
15yl.com
160.com
@@ -1921,7 +1918,6 @@
2144.com
2144gy.com
214yx.com
-21511fff.com
2155.com
216tt.com
217.net
@@ -2042,7 +2038,6 @@
2265.com
226500.com
226531.com
-226y.com
2280.com
2281wa.ren
2288.org
@@ -2115,9 +2110,7 @@
23673.com
236z.com
237y.com
-238.com
2380.in
-23900341.com
239334.cc
23bei.com
23book.com
@@ -2225,7 +2218,6 @@
263y.com
263zw.com
264006.com
-265.com
26595.com
265g.com
265o.com
@@ -2311,6 +2303,7 @@
2baxb.me
2bkw.com
2broear.com
+2bulu.com
2caipiao.com
2ccc.com
2chcn.com
@@ -2361,8 +2354,6 @@
2loveyou.com
2m2j.com
2ma2.com
-2mdn-cn.net
-2mdn.net
2mjob.com
2mould.com
2muslim.org
@@ -2389,7 +2380,6 @@
2yuanyy.com
2yun.com
2yup.com
-2zfzly.com
2zhk.com
2zimu.com
2zzzzzz.com
@@ -2454,7 +2444,6 @@
315online.com
315sc.org
315tech.com
-315wangdai.com
315z.net
315zw.com
31609.com
@@ -2637,7 +2626,6 @@
3499.co
34job.com
34wl.com
-34xiaoshuo.com
35.com
350.com
350.net
@@ -2683,6 +2671,7 @@
360-bo.tv
360-g.net
360-game.net
+360-jr.com
360.com
360.net
3600.com
@@ -2694,7 +2683,6 @@
360510.com
36099.com
360abc.com
-360aiyi.com
360anyu.com
360bifen.net
360biji.com
@@ -3295,7 +3283,6 @@
425yx.com
42651.com
426g.com
-42824.com
429006.com
42927bj.com
42927gz.com
@@ -3535,7 +3522,6 @@
5118.com
5118img.com
5119.net
-511god.net
511mv.com
511wan.com
511yj.com
@@ -3659,7 +3645,6 @@
51chang.com
51changdu.com
51changdu.xyz
-51changmi.com
51changxie.com
51chaoban.com
51chongdian.net
@@ -3727,7 +3712,6 @@
51feibao.com
51findshop.com
51flrc.com
-51fmzg.com
51fpg.com
51fubei.com
51fucai.com
@@ -4438,7 +4422,6 @@
54op.com
54pictu.com
54qs.com
-54tf.com
54traveler.com
54tusi.com
54up.net
@@ -4767,7 +4750,6 @@
5fun.com
5fwan.com
5gcg.com
-5ggm.com
5glianc.com
5goto.com
5gseo.net
@@ -4817,7 +4799,6 @@
5ip9.com
5ipatent.com
5ipkwan.com
-5ips.net
5iqiqu.com
5isanguo.com
5isohu.com
@@ -5171,11 +5152,12 @@
678ie.com
678pdf.com
678py.com
+67gu.com
67joy.com
-67lm.com
67mo.com
67wanwan.com
67yes.com
+68.com
680.com
68120120.com
6816.com
@@ -5271,6 +5253,7 @@
6kw.com
6laohu.com
6lk.net
+6ll.com
6m5m.com
6mao.com
6mh7.com
@@ -5293,6 +5276,7 @@
6thhosp.com
6tiantian.com
6tie.com
+6tofsu.com
6v.com
6v6.work
6vps.net
@@ -5368,6 +5352,7 @@
71wl.com
71xe.com
71zs.com
+72.com
720582.com
720pmovie.com
720static.com
@@ -5424,7 +5409,6 @@
73card.com
73zw.com
74.com
-7412557.com
7428.net
744zy.com
7474.com
@@ -5472,7 +5456,6 @@
76dongdong.com
76ju.com
76wu.com
-76xh.com
76y.com
76zu.com
770921.com
@@ -5541,7 +5524,6 @@
782yx.com
78302.com
78360.net
-7849.com
7878hk.com
7881.com
788511.com
@@ -5604,7 +5586,6 @@
7cname.com
7cxk.com
7dah8.com
-7dapei.com
7didc.com
7do.net
7down.net
@@ -5653,7 +5634,6 @@
7mah2.com
7mo.cc
7modifier.com
-7moe.com
7moor-fs1.com
7moor-fs2.com
7moor.com
@@ -6018,7 +5998,6 @@
88520.cc
885210.net
8855.org
-885533.com
885741.com
88582.com
8858a.com
@@ -6144,7 +6123,6 @@
8miu.com
8miu.net
8ms.xyz
-8mu8.com
8n2.com
8n6n.com
8njy.com
@@ -6192,7 +6170,6 @@
90432.net
90576.com
906you.com
-90880.com
90907.com
90bola.cc
90bola.me
@@ -6441,6 +6418,7 @@
927jx.com
928vbi.com
92913.com
+929825.com
92987.com
9299.net
92aliyun.com
@@ -6591,7 +6569,6 @@
95en.com
95epay.com
95fenapp.com
-95google.com
95gq.com
95k.com
95links.com
@@ -6611,7 +6588,6 @@
96189.com
9618968.com
962.net
-96211.com
962121.net
962168.com
962222.net
@@ -6628,6 +6604,7 @@
96520.com
96533.com
965373.com
+96590.net
9665.com
966599.com
9666sr.com
@@ -6782,7 +6759,6 @@
99988866.xyz
99997aaa.com
99998aaa.com
-99999net.net
999ask.com
999bj.com
999brain.com
@@ -6854,7 +6830,6 @@
99wuxian.com
99xr.com
99xyx.com
-99yoo.com
99youmeng.com
99ys.com
99zhizhu.com
@@ -7135,9 +7110,6 @@ acconsys.com
accopower.com
account.cdnetworks.com
account.samsung.com
-accounts.googlers.com
-accounts.xn--9trs65b.com
-accounts.xn--ggle-55da.com
accsh.org
accu.cc
accurate-china.com
@@ -7185,7 +7157,6 @@ acgz1.com
acgzc.com
acgzyj.com
achiming.com
-achsd.com
aci-wh.com
acing.com
acingame.com
@@ -7312,7 +7283,6 @@ adminportal.cdnetworks.com
adminso.com
admintony.com
adminxy.com
-admob-cn.com
admqr.com
adnineplus.com
adnyg.com
@@ -7331,7 +7301,6 @@ adsage.com
adsame.com
adscover.com
adsctl.com
-adservice.google.com
adsjdy.com
adslr.com
adsmogo.com
@@ -7557,7 +7526,6 @@ ai-rtc.com
ai-start.com
ai-thinker.com
ai.cc
-ai.ytimg.com
ai012.com
ai2hao.com
ai7.com
@@ -7586,7 +7554,6 @@ aicesu.com
aichaicp.com
aichaoxing.com
aichat.net
-aichawu.com
aichunjing.com
aiclicash.com
aiclk.com
@@ -7662,7 +7629,6 @@ aihala.com
aihanfu.com
aihanfu.net
aihangtian.com
-aihao.cc
aihao.org
aihecong.com
aihehuo.com
@@ -7674,6 +7640,7 @@ aihuau.com
aihuishou.com
aihuo.cc
aii-alliance.org
+aiibii.com
aiijournal.com
aiimg.com
aiimooc.com
@@ -8521,7 +8488,6 @@ anzerclub.com
anzext.com
anzhen.org
anzhi.com
-anzhibao.com
anzhitan.com
anzhixun.com
anzhuoapk.com
@@ -8679,8 +8645,6 @@ apowo.com
apowogame.com
apoyl.com
app-123.com
-app-measurement-cn.com
-app-measurement.com
app-router.com
app-sage.com
app-site-association.cdn-apple.com
@@ -8755,7 +8719,6 @@ apps.apple.com
apps.mzstatic.com
apps.samsung.com
apps121.com
-apps5.oingo.com
appscan.io
appsflower.com
appshike.com
@@ -9160,7 +9123,6 @@ av199.com
av2.me
av269.com
av380.net
-avail.googleflights.net
avalon.pw
avalon233.com
avanpa.com
@@ -9622,7 +9584,6 @@ banbaise.com
banbaowang.com
banciyuan.me
bandaoapp.com
-bandari.net
bandcevent.com
bandenghui.com
bandengw.com
@@ -9661,6 +9622,7 @@ bangxuetang.com
bangyike.com
bangzechem.com
bangzhufu.com
+banjia1680.com
banjiajia.com
banjiamao.com
banjixiaoguanjia.com
@@ -9911,7 +9873,6 @@ bbcss.com
bbctop.com
bbdservice.com
bbdup.com
-bbercn.com
bbfoxgame.com
bbfstore.com
bbgsite.com
@@ -10061,10 +10022,6 @@ bdysite.com
bdyxzx.com
be-xx.com
be90.com
-beacons.gcp.gvt2.com
-beacons.gvt2.com
-beacons2.gvt2.com
-beacons3.gvt2.com
beadwallet.com
bear20.com
bearad.com
@@ -10188,7 +10145,6 @@ beiwaiqingshao.com
beiwangshan.com
beiweigroup.com
beiwo.com
-beiwo.tv
beiww.com
beixingmh.com
beiying.online
@@ -10203,7 +10159,6 @@ bejoin.net
bejson.com
belfone.com
belle8.com
-belmeng.com
beltandroadforum.org
beltxman.com
bemanicn.com
@@ -10213,6 +10168,7 @@ benbenq.com
benber-tech.com
benber.com
benbun.com
+bendi5.com
bendibao.com
bendiw.cc
benellimotor.com
@@ -10238,6 +10194,7 @@ benniux.com
bensedl.com
benseshijue.com
benshouji.com
+bensiea.com
benyh.com
benyouhui.com
benzhb.com
@@ -10675,7 +10632,6 @@ biqugewx.com
biqugex.com
biqugexs.com
biqugexs.la
-biqugexsw.com
biqugexsw8.com
biqugexx.com
biquguan.com
@@ -10686,7 +10642,6 @@ biquku.la
biqukun.la
biqulou.net
biquluo.com
-biqumo.com
biqupai.com
biququ.com
biqusa.com
@@ -10750,6 +10705,7 @@ bitscn.net
bitsde.com
bitse.com
bitsqa.com
+bittopmall.com
bitu360.com
bitvh.com
biubiu.tv
@@ -10846,7 +10802,6 @@ bjcec.com
bjceis.com
bjcfzx.com
bjcgtrain.com
-bjcifco.net
bjckkj.com
bjcls.net
bjcma.com
@@ -11061,6 +11016,7 @@ bjzs114.com
bjzwzx.com
bjzxcp.com
bjzyrxgs.com
+bk-cdn.com
bk41.net
bk5u.com
bkbyxa.com
@@ -11068,6 +11024,7 @@ bkclouds.cc
bkdou.com
bkill.net
bkjk-inc.com
+bkjk.com
bkjpress.com
bkn.cc
bkpcn.com
@@ -11394,7 +11351,6 @@ boqiicdn.com
boquxinxi.com
boraid.org
borderlessbd.com
-borgmon.adz.google.com
borlonclan.com
borninsummer.com
bornlead.com
@@ -11480,7 +11436,6 @@ bqpoint.com
bqq8.com
bqrdh.com
bqteng.com
-bqzhh.com
bragood.com
braincf.com
brand4x4.com
@@ -11743,7 +11698,6 @@ bwie.net
bwjf.com
bwlc.net
bwmelon.com
-bwptl.com
bwpx.com
bwsm.org
bwsoft.net
@@ -11864,6 +11818,7 @@ bytemastatic.com
byteoc.com
byteorg.com
byteorge.com
+byteox.com
bytescm.com
bytesfield.com
bytesmanager.com
@@ -11917,18 +11872,16 @@ c-canyin.com
c-cnc.com
c-cpp.com
c-ctrip.com
-c-e-m.com
c-estbon.com
c-fol.net
c-lodop.com
+c-nin.com
c-ps.net
c-rst.com
c-sky.com
c-sz.com
c-t.work
c-yl.com
-c.admob.com
-c.android.clients.google.com
c.citic
c.team
c1042.com
@@ -11989,8 +11942,6 @@ cablingteam.com
cabplink.com
cacfo.com
cacg.cc
-cache-management-prod.google.com
-cache.pack.google.com
cachedataby.com
cachekit.com
cackui.com
@@ -12057,12 +12008,14 @@ caihongbashi.net
caihongqi.com
caihongtang.com
caihongto.com
+caihongx.com
caihuaw.com
caij100.com
caijing365.com
caijingcaipiao22270.com
caijingche.com
caijingmobile.com
+caijingwa.com
caijingwu.com
caijinyuan.com
caijixia.com
@@ -12078,6 +12031,7 @@ cailiaoren.com
cailutong.com
caimai.cc
caimei365.com
+caimitech.com
caimogu.cc
caimogu.net
caimomo.com
@@ -12216,7 +12170,6 @@ canyouchina.com
canyuanzs.com
caobao.com
caogen.com
-caogen88.com
caohaifeng.com
caohejing.com
caohejing.org
@@ -12321,7 +12274,6 @@ cav-ad.com
cavca.org
cawae.net
caxa.com
-caylor.cc
cazpw.com
cbca.net
cbcie.com
@@ -12407,7 +12359,6 @@ ccdby.com
ccddvr.com
ccdol.com
ccea.pro
-cceai.com
cceato.com
ccedisp.com
ccedpw.com
@@ -12585,7 +12536,6 @@ ccv160.com
ccv168.com
ccv5.com
ccview.net
-ccvnn.com
ccwcw.com
ccwcyw.com
ccwonline.com
@@ -12730,6 +12680,7 @@ cdndo.com
cdnet110.com
cdnetdns.net
cdnff.com
+cdngogo2.cc
cdngslb.com
cdngslb8.com
cdngtm.com
@@ -12767,7 +12718,6 @@ cdnvpn.net
cdnvue.com
cdnyoyun.com
cdnyt69.com
-cdnyzdjj.com
cdooc.com
cdqcnt.com
cdqcp.com
@@ -13081,7 +13031,6 @@ cgwell.com
cgwenjian.com
cgwic.com
cgws.com
-cgxc.cc
cgxia.com
cgxm.net
cgylke.com
@@ -13327,7 +13276,6 @@ checar.mobi
checheboke.com
chechong.com
check.cc
-checkin.gstatic.com
checkip.pw
checkoo.com
checkpass.net
@@ -13464,6 +13412,7 @@ chenyuanjian.com
chenyudong.com
chenzao.com
chenzhicheng.com
+chenzhilong.chat
chenzhongkj.com
chenzhongtech.com
cheonhyeong.com
@@ -13688,7 +13637,6 @@ chinaairer.com
chinaamc.com
chinaamuse.com
chinaanonymous.com
-chinaar.com
chinaartificialstone.com
chinaasc.org
chinaaseanenv.org
@@ -14083,6 +14031,7 @@ chinasosuo.cc
chinasou.com
chinasoushang.com
chinaspringtown.com
+chinasrif.com
chinassl.com
chinassl.net
chinasspp.com
@@ -14716,6 +14665,7 @@ cjhxfund.com
cjienc.com
cjiit.com
cjjd04.com
+cjjd05.com
cjjd06.com
cjjd07.com
cjjd08.com
@@ -14815,15 +14765,11 @@ cli.im
click-v.com
click369.com
clicksdiy.com
-clickserve.cc-dt.com
-clickserve.dartsearch.net
-clickserver.googleads.com
clicksun.net
clickwifi.net
client51.com
clientflow.apple.com
clientflow.apple.com.akadns.net
-clientservices.googleapis.com
cliffordtrading.com
cliim.com
cliim.net
@@ -14887,7 +14833,6 @@ cloudinward.com
cloudiplc.com
cloudkirin.com
cloudleft.com
-cloudlet.info
cloudmes.io
cloudminds.com
cloudmob.vip
@@ -14946,6 +14891,7 @@ cmbchina.biz
cmbchina.com
cmbchina.net
cmbimg.com
+cmbs-soft.com
cmbwinglungbank.com
cmbyc.com
cmcc-ecs.com
@@ -15047,7 +14993,6 @@ cn.msi.com
cn.net
cn.pandora.net
cn.vc
-cn.widevine.com
cn.windowssearch.com
cn0-6.com
cn00.com
@@ -15101,7 +15046,6 @@ cname123.net
cnamegslb.com
cnanzhi.com
cnaomeng.com
-cnappinstall.googleadapis.com
cnappsoft.xyz
cnautofinance.com
cnautonews.com
@@ -15521,7 +15465,6 @@ cnstock.com
cnsun.cc
cnsun.net
cnsuning.com
-cnsunp.com
cnsuv.com
cnswy.net
cnsynews.com
@@ -15717,7 +15660,6 @@ codingdao.com
codingke.com
codinglabs.org
codingpy.com
-codingserf.com
codingsky.com
codingwhy.com
codingyang.com
@@ -15828,14 +15770,12 @@ congrongfund.com
congyicn.com
congzao.com
congzhi.com
-connectivitycheck.gstatic.com
connector-systems.com
conoha.vip
conpak.com.hk
conshow.com
console-integration.cdnetworks.com
console.cdnetworks.com
-content.googleadapis.com
contentchina.com
contentchina.net
contiez.com
@@ -15928,8 +15868,6 @@ coralsec.com
corebai.com
coreesports.net
coreldrawchina.com
-corp.google.com
-corp.googleapis.com
corpautohome.com
corpease.net
corpize.com
@@ -15995,7 +15933,6 @@ cpicsz.com
cpihualai.com
cpitsh.org
cpjltx.com
-cpk01.com
cplchain.com
cpo.xyz
cpo2o.com
@@ -16058,7 +15995,6 @@ cqcqcq.com
cqcsic.com
cqcsrc.com
cqcy.com
-cqcyls.com
cqdadi.com
cqdai.com
cqdailynews.com
@@ -16135,9 +16071,9 @@ cqqiyi.com
cqqnb.net
cqqp.com
cqqsyy.com
-cqqzgrh.com
cqrc.net
cqrcb.com
+cqsckj02.com
cqscmy.net
cqshenou.com
cqslib.org
@@ -16197,7 +16133,6 @@ crabchina.com
crackersta.com
craftcontact.com
crandom.com
-crashlyticsreports-pa.googleapis.com
crazepony.com
crazyenglish.org
crazyflasher.com
@@ -16244,7 +16179,6 @@ crispstata.com
crjfw.com
crl.globalsign.net
crl.kaspersky.com
-crl.pki.goog
crlf0710.com
crlg.com
crm.cc
@@ -16317,7 +16251,6 @@ csdiy.wiki
csdn.com
csdn.net
csdnxiazai.xyz
-csdxcw.com
csdyx.com
csea767.com
csebank.com
@@ -16339,7 +16272,6 @@ cshufanyi.com
cshxdc.com
cshyqx.com
cshzw.com
-csi.gstatic.com
csic-711.com
csic-ljtech.com
csic612.com
@@ -16772,6 +16704,7 @@ czbtv.com
czbx18.com
czcarbon.com
czchuanlin.com
+czchyz.com
czcid.com
czcqly.com
czctech.com
@@ -16924,7 +16857,6 @@ dafaji.com
dafang24.com
dafangya.com
dafanshu.com
-dafayu.com
dafork.com
dafy.com
dagangcheng.com
@@ -17216,7 +17148,6 @@ darongcheng.com
darryring.com
dartchina.com
dartou.com
-dartsearch-cn.net
daruan.com
darwinlearns.com
dasctf.com
@@ -17625,11 +17556,11 @@ demage.com
demaxiya.com
demix.cc
demixc.com
+demizhongbao.com
demlution.com
demo8.com
demodashi.com
demogic.com
-demohour.com
demon.tw
demonlee.tech
demoso.net
@@ -17729,7 +17660,6 @@ deyiso.com
deyoulife.com
deyun.fun
deyurumen.com
-dezhi.com
dezhong365.com
dezhongmobi.com
dezhoudaily.com
@@ -17788,7 +17718,6 @@ dfzystt.com
dg-360lhx.com
dg-hanxin.com
dg-mall.com
-dg-meta.video.google.com
dg11185.com
dg114.com
dg121.com
@@ -17860,7 +17789,6 @@ dhkq120.com
dhkqmz.com
dhkqyy.com
dhmeri.com
-dhq898.com
dhqtech.com
dhrcbank.com
dhrest.com
@@ -17887,7 +17815,6 @@ dian123.com
dian234.com
dian321.com
dian5.com
-diananjia.com
dianapp.com
dianbo.org
dianbobao.com
@@ -18182,9 +18109,6 @@ disneybox.com
dispnt.com
distantmeaning.com
distinctclinic.com
-distribution.qatp1.net
-distribution.qcpp1.net
-distribution.qpdp1.net
ditan360.com
ditan369.com
dithub.com
@@ -18295,8 +18219,6 @@ dl-origin.ubnt.com
dl-rc.com
dl.delivery.mp.microsoft.com
dl.djicdn.com
-dl.google.com
-dl.l.google.com
dl.ubnt.com
dl0728.com
dl158.net
@@ -18478,6 +18400,7 @@ dnspood.net
dnsppdd.com
dnsrw.com
dnss.vip
+dnsserverhe.com
dnssina.com
dnsurl.net
dnsv1.com
@@ -18710,11 +18633,8 @@ douban.com
douban.fm
doubanio.com
doubean.com
-doubi.ren
doubilm.com
doubimeizhi.com
-doubleclick-cn.net
-doubleclick.net
douboshi.net
douc.cc
doucang.com
@@ -18817,11 +18737,6 @@ downkuai.com
download-x.com
download.developer.apple.com
download.microsoft.com
-download.mlcc.google.com
-download.qatp1.net
-download.qcpp1.net
-download.qpdp1.net
-download.tensorflow.google.com
download.visualstudio.microsoft.com
download.windowsupdate.com
downloadcenter.samsung.com
@@ -18852,7 +18767,6 @@ dpcafc.com
dpcq1.net
dpcyjt.com
dper.com
-dpevmh.com
dpfile.com
dplayerjsvideo.com
dplayersvideostatic.com
@@ -19029,7 +18943,6 @@ du7.com
du8.com
dualaid.com
duan.red
-duanjn.com
duanlonggang.com
duanmale.com
duanmeiwen.com
@@ -19101,7 +19014,6 @@ dunjiaodu.com
dunkhome.com
dunwang.com
duobei.com
-duobeiyun.com
duobeiyun.net
duobiji.com
duocaitou.com
@@ -19376,7 +19288,6 @@ dz1982.com
dz31hao.com
dz746.com
dz88.com
-dz88.la
dzbake.com
dzbarcode.com
dzbchina.com
@@ -19701,7 +19612,6 @@ ecamzone.cc
ecaray.com
ecare365.com
ecartoon.net
-ecasesoft.com
ecbcamp.com
ecboo.com
eccang.com
@@ -19995,7 +19905,6 @@ efwh.com
efy-tech.com
egainnews.com
egcmedia.com
-egfcare.com
egg-born.org
egg.htcsense.com
eggjs.org
@@ -20115,6 +20024,7 @@ ekclubinternational.com
ekesoo.com
eketong.com
ekuaibao.com
+ekwangs.com
ekweixin.com
elabinfo.com
elane.com
@@ -20215,7 +20125,6 @@ emilhk.com
emjob.com
emlinix.com
emlog.net
-emmapplecodevice.googleapis.com
emojimobile.com
emojiwiz.com
emrl0z.com
@@ -20654,6 +20563,7 @@ ewebsoft.com
ewecha.com
ewei.com
eweiqi.com
+ewen.co
ewenyan.com
ewerew.com
ewide.net
@@ -20732,7 +20642,6 @@ expreview.com
expsky.com
exsvc.net
ext2fsd.com
-extfans.com
exthin.net
extmail.org
extron-tech.com
@@ -20774,7 +20683,6 @@ eyoodns.com
eyou.com
eyou.net
eyoucms.com
-eyoujj.com
eyourbusiness.com
eyrefree.org
eyu2017.xyz
@@ -20783,7 +20691,6 @@ eyuconnect.com
eyugame.com
eyunidc.com
eyunker.com
-eyunsou.com
eyunzhu.com
eyurumen.com
eyuyan.com
@@ -20958,6 +20865,7 @@ fang-zhou.com
fang.com
fang33.com
fang668.com
+fang91.com
fang99.cc
fang99.com
fangbaoqiang.net
@@ -21146,6 +21054,7 @@ fastadx.com
fastbestbetergoodcdn.com
fastcdn.com
fastdo.cc
+fastgit.org
fastgz.com
fastidea.cc
fastliii.com
@@ -21453,6 +21362,7 @@ fengyan.cc
fengyitong.name
fengyu.moe
fengyuansufen.com
+fengyuncad.com
fengyuncx.com
fengyunpdf.com
fengyushan.com
@@ -21460,7 +21370,6 @@ fengyx.com
fengzhangame.net
fengzixbs.com
fenha.net
-fenhao.me
fenking.club
fenlei168.com
fenlei265.com
@@ -21641,7 +21550,6 @@ fir.vip
firadio.net
fire233.com
fire2333.com
-firebase-settings.crashlytics.com
firebirdprint.com
fireemblem.net
fireemulator.com
@@ -21904,12 +21812,7 @@ fonsview.com
font.im
font5.com
font6.com
-fontfiles.googleadapis.com
-fontfiles.googleapis.com
fontke.com
-fonts.googleadapis.com
-fonts.googleapis.com
-fonts.gstatic.com
foodbk.com
foodjx.com
foodmate.net
@@ -22081,6 +21984,7 @@ freemindworld.com
freemoban.com
freemudgame.com
freeoa.net
+freeok.vip
freeqingnovel.com
freericheyes.com
freeshoppingchina.com
@@ -22179,7 +22083,6 @@ ftfast.com
fthformal.com
ftium4.com
ftnormal00ab.com
-ftnormal00ak.com
ftnormal01as.com
ftqq.com
ftsafe.com
@@ -22481,8 +22384,6 @@ fzzyky.com
g-emall.com
g-photography.net
g-var.com
-g0.gstatic.com
-g1.gstatic.com
g12345.com
g12e.com
g168.net
@@ -22490,14 +22391,12 @@ g188.net
g1c5.com
g1d.net
g1f5.com
-g2.gstatic.com
g2.link
g207.com
g2g1.com
g2h3.com
g2us.com
g2work.com
-g3.gstatic.com
g312.com
g32365.com
g3d.org
@@ -22511,6 +22410,7 @@ g80mx.com
g88885555.com
g88886666.com
g8f8.com
+g9y.net
ga001.com
ga25.com
gaapqcloud.com
@@ -22826,7 +22726,6 @@ gcloudsdk.com
gcmc.cc
gcoreinc.com
gcores.com
-gcpnode.com
gcstorage.com
gcsz.net
gctd.xyz
@@ -22903,7 +22802,6 @@ gdlalian.com
gdlins.com
gdls114.com
gdlsgz.com
-gdmappress.com
gdmingshizx.com
gdmm.com
gdmoa.org
@@ -22954,7 +22852,6 @@ gdyjs.com
gdysdz.com
gdyunyin.net
gdyxc.com
-gdzhbxg.com
gdzhongshan.com
gdzp.org
gdzrlj.com
@@ -23414,7 +23311,6 @@ gloryview.com
glorze.com
glosku.com
glowapp.fun
-glp.com
glqh.com
glshimg.com
gltjk.com
@@ -23437,10 +23333,8 @@ gmanhua.com
gmcc.net
gmcchina.net
gmdun.com
-gmecity.com
gmed.cc
gmem.cc
-gmem.site
gmfintl.com
gmgc.info
gmgdc.com
@@ -23508,7 +23402,6 @@ gocea.net
goceshi.com
gochego.com
gocn.vip
-god51.com
godaily.org
godasai.com
godbiao.com
@@ -23623,7 +23516,6 @@ gongkongbpo.com
gongkongedu.com
gongkongke.com
gongkongmall.com
-gonglchuangl.net
gonglin91.com
gongmutang.com
gongnou.com
@@ -23641,7 +23533,6 @@ gongye360.com
gongyeku.com
gongyelian.com
gongyeyun.com
-gongyichuangyi.net
gongyicn.org
gongyingshi.com
gongyishibao.com
@@ -23688,28 +23579,8 @@ goodtea.cc
goodtp.com
goodzuji.com
goofish.com
-google-analytics-cn.com
-google-analytics.com
-googleadservices-cn.com
-googleadservices.com
-googleanalytics.com
-googleapis-cn.com
-googleapps-cn.com
googlebridge.com
-googleflights-cn.net
googlenav.com
-googleoptimize-cn.com
-googleoptimize.com
-googleplex.com
-googlesyndication-cn.com
-googlesyndication.com
-googletagmanager-cn.com
-googletagmanager.com
-googletagservices-cn.com
-googletagservices.com
-googletraveladservices-cn.com
-googletraveladservices.com
-googlevads-cn.com
googlevip8.com
googlevoice.org
googleyixia.com
@@ -23746,7 +23617,6 @@ gosuncdn.com
gosuncdn.net
gosunm.com
goten.com
-goto.google.com
goto2jump.com
gotocdn.com
gotodn.com
@@ -23823,7 +23693,6 @@ gpautobid.com
gpbctv.com
gpbeta.com
gpcqjy.com
-gpcxw.com
gpd.hk
gpdi.com
gper.club
@@ -23988,8 +23857,6 @@ gssfgk.com
gst-china.net
gst.prod.dl.playstation.net
gstarcad.com
-gstatic-cn.com
-gstaticadssl.l.google.com
gstdt.com
gstonegames.com
gsxb.net
@@ -24051,9 +23918,9 @@ gtm-i1d6.com
gtm-i1d7.com
gtm-i1d8.com
gtm-i1d9.com
+gtm-i2d4.com
gtm-i2d8.com
gtm-i2d9.com
-gtm.oasisfeng.com
gtmlufax.com
gtn9.com
gtobal.com
@@ -24175,7 +24042,6 @@ gudi.cc
guduodata.com
guestops.com
gufengmh9.com
-guge.tw
gugeanzhuangqi.com
gugeapps.net
gugong.net
@@ -24366,8 +24232,6 @@ guzzoni.apple.com
gvacdn.com
gvi-tech.com
gvlocalization.com
-gvt1-cn.com
-gvt2-cn.com
gw-ec.com
gw.craft.moe
gw2sc.com
@@ -24619,7 +24483,6 @@ gzrishun.com
gzrmw.com
gzrobot.com
gzrobots.com
-gzrsa.com
gzshandi.com
gzshangshan.net
gzshuimh.com
@@ -24701,6 +24564,7 @@ h0758.net
h1bz.com
h231.com
h2ex.com
+h2o-china.com
h2os.com
h2vm.com
h3c.com
@@ -24770,7 +24634,6 @@ hackdig.com
hackerav.com
hackernews.cc
hackertalk.net
-hackerzhou.me
hackhome.com
hackhp.com
hackhw.com
@@ -24783,7 +24646,6 @@ hackpascal.net
hackrf.net
hackroad.com
hacori.com
-hacpai.com
haczjob.com
hadax.com
hadobi.com
@@ -24957,7 +24819,6 @@ haiyue.info
haiyuhe.com
haiyun.me
haiyunx.com
-haiyusoft.com
haizhangs.com
haizhanweb.com
haizhixing.net
@@ -25849,7 +25710,6 @@ heiyan.la
heiyan.org
heiyange.com
heiyanimg.com
-heiyanwang.com
heiying.cc
heiyuewan.com
heiyunxitong.com
@@ -26094,7 +25954,6 @@ hftogo.com
hfx.link
hfx.net
hfyestar.com
-hfyjgg.com
hfykd.com
hfyouqi.com
hfyt365.com
@@ -26739,7 +26598,6 @@ homylogistics.com
honda-sundiro.com
hong-lawfirm.com
hong-shun.com
-hong.ren
hongbao.show
hongbeibang.com
hongbeicn.com
@@ -26908,7 +26766,6 @@ houdunwang.com
houge.biz
houjt.com
houkai.com
-houpuwang.com
houqinbao.com
houqun.net
houquner.com
@@ -27043,6 +26900,7 @@ hrmarket.net
hroot.co
hroot.com
hrpackage.com
+hrrsj.com
hrrukou.com
hrs100.com
hrsalon.org
@@ -27358,7 +27216,6 @@ huanmusic.com
huanpingge.com
huanqiu.com
huanqiuauto.com
-huanqiuhuamu.com
huanqiukexue.com
huanqiumil.com
huanqiuw.com
@@ -28019,7 +27876,6 @@ hxytea.com
hxytw.com
hxyxsj.com
hxzq.net
-hxzs31.com
hy-la.com
hy-zr.com
hy01888.com
@@ -28052,7 +27908,6 @@ hygy361.com
hyhcdn.com
hyhjbh.com
hyhl66.com
-hyhq168.com
hyhro.com
hyhuo.com
hyhygame.com
@@ -28134,6 +27989,8 @@ hzdx.com
hzecsemir.com
hzeg.com
hzfc.cc
+hzfeiyao.com
+hzfolo.com
hzfucai.net
hzgh.org
hzgjj.com
@@ -28187,6 +28044,7 @@ hzqiuxue.com
hzqlpt.com
hzqx.com
hzr1.com
+hzranqu.com
hzrc.com
hzredream.com
hzrobam.com
@@ -28316,7 +28174,6 @@ iaeac.org
iaikx.com
ialicdn.com
ialloc.com
-ialloc.org
iambanban.com
iambocai.com
iameduwork.com
@@ -28566,7 +28423,6 @@ icom5g.com
iconfans.com
iconfans.org
iconntech.com
-icoolen.com
icoou.com
icoremail.net
icos8.com
@@ -28639,7 +28495,6 @@ idc4.com
idc400.com
idc45.com
idc789.com
-idc886.com
idc917.com
idc96.net
idcay.com
@@ -28826,6 +28681,7 @@ ifenglian.com
ifengniao.net
ifengo.com
ifengpai.com
+ifengqun.com
ifenguo.com
ifengweekly.com
ifengwoo.com
@@ -28853,7 +28709,6 @@ iflytektstd.com
ifma-china.org
ifmicro.com
ifmtech.com
-ifmx.cc
ifnews.com
ifonelab.net
iforce-media.com
@@ -28962,7 +28817,6 @@ ihr360.com
ihref.com
ihrscloud.com
ihuaben.com
-ihuajian.net
ihuan.me
ihuanling.com
ihuanque.com
@@ -29172,7 +29026,6 @@ im323.com
im520.com
im577.com
im5i.com
-im87.net
imaccn.com
imaegoo.com
imageaccelerate.com
@@ -29204,7 +29057,6 @@ imanhuaw.net
imaojiang.com
imarketchina.com
imaschina.com
-imasdk.googleapis.com
imatchic.com
imatlas.com
imayitxt.com
@@ -29314,7 +29166,6 @@ imomoe.ai
imomoe.com
imomoe.in
imomoe.io
-imomoe.jp
imooc.com
imoocc.com
imoonfm.com
@@ -29552,6 +29403,7 @@ internetworld.cloud
interotc.net
intertid.com
interval.im
+intimerent.com
intio.org
intl-hzc.com
intlgame.com
@@ -29581,6 +29433,7 @@ invoee.com
inwaishe.com
inwatch.cc
inxedu.com
+inxni.com
inyuapp.com
inzone-auto.com
inzotek.com
@@ -29812,7 +29665,6 @@ is4.mzstatic.com
is5-ssl.mzstatic.com
is5.mzstatic.com
isamanhua.com
-isaonian.com
isay365.com
isbdai.org
iscrv.com
@@ -29918,6 +29770,7 @@ isuzhou.me
isvee.com
isvjcloud.com
isvjd.com
+isvup.com
iswifting.com
isyour.love
it-api.com
@@ -30293,7 +30146,6 @@ iyocloud.com
iyong.com
iyongpdf.com
iyooread.com
-iyoowi.com
iyoucai.com
iyoudui.com
iyouhun.com
@@ -30661,7 +30513,6 @@ jewellworld.com
jewelryseeds.com
jexus.org
jeyi.com
-jf2688.com
jf9p.com
jfapv.net
jfbcb.com
@@ -30722,7 +30573,6 @@ jhcms.com
jhctbank.com
jhdqz.com
jhdxjk.com
-jhfgg.com
jhfl.com
jhforever.com
jhgtgb.com
@@ -30751,6 +30601,7 @@ ji36.net
ji7.com
jia-he-jia.com
jia.com
+jia12.com
jia360.com
jia400.com
jiaads.com
@@ -30787,8 +30638,6 @@ jiajiao114.com
jiajiaoban.com
jiaju.cc
jiaju.com
-jiaju100.com
-jiajucj.com
jiajuketang.com
jiajumi.com
jiajuol.com
@@ -30947,11 +30796,13 @@ jianzhu2008.com
jiao4.com
jiaoben.net
jiaobuser.com
+jiaochengji.com
jiaochengzhijia.com
jiaodian.pub
jiaodong.net
jiaofei123.com
jiaohuilian.com
+jiaohusheji.net
jiaoliuqu.com
jiaomai.com
jiaoman.cc
@@ -30961,7 +30812,6 @@ jiaoping.com
jiaoran.net
jiaoshouhuayuan.com
jiaoshouwang.com
-jiaotongshigu.org
jiaotou.org
jiaoyimao.com
jiaoyin.com
@@ -30979,7 +30829,6 @@ jiarenvip.com
jiasale.com
jiashuangkuaizi.com
jiashule.com
-jiaston.com
jiasuba.com
jiasubook.com
jiasudu666.com
@@ -31209,7 +31058,6 @@ jinfengpaint.com
jinfengwine.com
jinfuzi.com
jing-xian.com
-jingbei.li
jingbo.net
jingbotech.com
jingc.com
@@ -31472,7 +31320,6 @@ jisupdf.com
jisupdfeditor.com
jisupdftoword.com
jisupe.com
-jisuqianbao.com
jisutodo.com
jisutp.com
jisutui.vip
@@ -31510,7 +31357,6 @@ jiufawang.com
jiugang.com
jiugangbid.com
jiuhuang.com
-jiuhuar.com
jiuhuashan.cc
jiuishizanjin.com
jiujiange.com
@@ -31600,7 +31446,6 @@ jiyoujia.com
jiyouwang.com
jiyuncn.com
jizhan.com
-jizhangapp.com
jizhangzhuce.com
jizhiba.com
jizhidsp.com
@@ -31664,6 +31509,7 @@ jjkk.org
jjkucunxie.com
jjldbk.com
jjldxz.com
+jjlvu.com
jjmatch.com
jjmh.com
jjmkids.com
@@ -31750,6 +31596,7 @@ jlq.com
jlr360.com
jlsdzgckcy.com
jlsemi.com
+jlsjsxxw.com
jlspr.com
jltyjxzz.com
jlwlyx.com
@@ -32304,7 +32151,6 @@ juji.tv
jujiangkk.com
jujiaobaby.com
jujiaonet.com
-jujiaonet1.com
jujias.com
jujienet.com
jujin8.com
@@ -32524,6 +32370,7 @@ jx3tong.com
jxage.com
jxal.net
jxbhwl.com
+jxbqmt.com
jxc4.com
jxcaipu.com
jxcb.net
@@ -32666,7 +32513,6 @@ jz08.com
jz100.com
jz177.com
jz182.com
-jz2005.com
jz5u.com
jz6.com
jz6868.com
@@ -32740,11 +32586,9 @@ k2os.com
k345.cc
k366.com
k369.com
-k3887.com
k38s0.xyz
k4nz.com
k518.com
-k5k1.com
k5n.com
k6271.com
k666.com
@@ -32797,7 +32641,6 @@ kaifamei.com
kaifangkecheng.com
kaifapiao.com
kaifaxueyuan.com
-kaifenghenan.com
kaifu.com
kaifuzq.com
kaige68.com
@@ -32805,7 +32648,6 @@ kaihei.co
kaihu51.com
kaihuia.com
kaijia.com
-kaijia.me
kaikeba.com
kailincheng.com
kailing.pub
@@ -32989,6 +32831,7 @@ kaoshidian.com
kaoshishenqi.net
kaoshizixun.com
kaotipai.com
+kaotop.com
kaowana.com
kaowang.com
kaoyan.com
@@ -33064,9 +32907,9 @@ kd185.com
kd21xs.com
kd9000.com
kdatacenter.com
-kdbbx.com
kdd.cc
kdfax.com
+kdhlw.com
kdige.com
kdniao.com
kdpt.net
@@ -33128,7 +32971,6 @@ keji100.net
kejiabj.com
kejian.design
kejianyi.com
-kejietextile.com
kejihai.com
kejihub.com
kejijie.net
@@ -33452,7 +33294,6 @@ kkidc.com
kkikan.com
kkj2.com
kkjiaofei.com
-kkjk.com
kkk5.com
kkkd.com
kkkwww.com
@@ -33872,6 +33713,7 @@ kuailexs.com
kuailezu.com
kuailiyu.com
kuailiyu.net
+kuailvzaixian.com
kuaimi.com
kuaimi.net
kuaipandata.com
@@ -34026,6 +33868,7 @@ kunmingkanghui.com
kunpo.cc
kuntaihotel.com
kunyueyun.com
+kunyun8.com
kuo-yi.com
kuodie.com
kuoo8.com
@@ -34392,6 +34235,7 @@ lanmao.com
lanmaokeji.com
lanmaos.com
lanmit.com
+lanmon.net
lanou3g.com
lanpanpan.com
lanqb.com
@@ -34471,6 +34315,7 @@ laodongfa.com
laoduo.net
laofu.online
laofuxi.com
+laoge.xyz
laogongshuo.com
laogu.cc
laogu.com
@@ -34523,7 +34368,6 @@ laozongyi.com
laozu.com
laozuo.org
lapin365.com
-laqiangu.com
laravel-admin.org
laravel-china.org
laravelacademy.org
@@ -34541,6 +34385,7 @@ lashou.com
lastdream.net
lasy.site
lategege.com
+latepost.com
latexstudio.net
latin100.com
lativ.com
@@ -34807,7 +34652,6 @@ leining-shield.com
leiouxiong.com
leipengkai.com
leiphone.com
-leirenw.com
leirsw.com
leishen-lidar.com
leishouwin.cc
@@ -34848,7 +34692,6 @@ lelepyq.com
leleren.com
leletv.com
leletv.net
-lelevod.com
lelewl.com
lemai.com
lemaker.com
@@ -35335,6 +35178,7 @@ lilvb.com
lily-collection.com
lilysamericandiner.com
lilysgame.com
+limaoqiu.com
limax.com
limboy.com
limei.com
@@ -35355,6 +35199,7 @@ linecg.com
linecg.net
linekong.com
linelayout.com
+linemore.com
linewell.com
linewow.com
linezing.com
@@ -35364,6 +35209,7 @@ ling-shi.com
lingaoren.com
lingb.net
lingbao-e.com
+lingchusw.xyz
lingd.cc
lingd.com
lingdai.name
@@ -35466,7 +35312,6 @@ linkpro.tech
linkrall-trk.com
linkresearcher.com
linkscue.com
-linksfin.com
linksgood.com
linkshop.com
linksoon.net
@@ -35556,7 +35401,6 @@ lionaka.com
lionelliu.com
lionmobo.com
lionmobo.net
-lipai365.com
lipian.com
lipiji.com
lipilianghang.com
@@ -35699,7 +35543,6 @@ liuyangfcw.com
liuyanzhao.com
liuyifei.cc
liuzaoqi.com
-liuzhichao.com
liuzhixiang.com
liuzongyang.com
liuzuo.com
@@ -35712,6 +35555,7 @@ livechina.com
livecourse.com
liveinau.com
liveincy.com
+livejournal.com
liveme.com
livemediav.com
livemook.com
@@ -35934,7 +35778,6 @@ lofficielchina.net
loftcn.com
lofter.com
loftshine.com
-log4d.com
logacg.com
logclub.com
logdu.com
@@ -36499,6 +36342,7 @@ lv74.com
lv96.com
lvanol.com
lvbad.com
+lvbeijingtour.com
lvbenma.com
lvbuo.com
lvchanghuanbao.com
@@ -36572,7 +36416,6 @@ lwcj.com
lwd3699.com
lwdjc.com
lweasy.com
-lwedu.com
lwfengji.net
lwfjmj.com
lwgsw.com
@@ -36687,6 +36530,7 @@ lytmgd.com
lytning.xyz
lytoufang.com
lytpw.com
+lytuchuang10.com
lytuchuang2.com
lytuchuang3.com
lytuchuang4.com
@@ -36953,7 +36797,6 @@ maixiaba.com
maixuewen.com
maiya91.com
maiyaole.com
-maiymai.com
maizhi.com
maiziedu.com
maizim.com
@@ -37060,6 +36903,7 @@ mangxuewang.com
mangzitian.com
manhua1.com
manhua101.com
+manhua166.com
manhua188.com
manhua365.com
manhua456.com
@@ -37272,7 +37116,6 @@ maydeal.com
mayi.com
mayiangel.com
mayicms.com
-mayidui.net
mayihr.com
mayijieqian.com
mayima.net
@@ -37528,6 +37371,7 @@ meiku123.com
meilecui.com
meili-inc.com
meilibaobao.com
+meilidongnanya.com
meilijia.com
meiling.com
meiling360.com
@@ -37981,7 +37825,6 @@ mihoyogift.com
mihtool.com
mihua.net
mihuashi.com
-mihuguan.com
mihui365.com
mihuwa.com
miicp.com
@@ -38110,7 +37953,6 @@ mingsoft.net
mingstar.net
mingtaokeji.com
mingtian.com
-mingtian6.com
mingtrip.com
mingxiaodai.com
mingxing.com
@@ -38307,6 +38149,7 @@ mlocso.com
mlog.club
mlogcn.com
mlrzsj.com
+mlsbmw.com
mlsub.net
mlt01.com
mlwanwan.com
@@ -38380,7 +38223,6 @@ mmyfilm.com
mmzh.com
mn-soft.com
mnancheng.com
-mnbkw.com
mnbvtgv.com
mng0303.com
mnihyc.com
@@ -38596,9 +38438,6 @@ moneygz.com
moneyslow.com
monhun.fun
monidai.com
-monitoring.qatp1.net
-monitoring.qcpp1.net
-monitoring.qpdp1.net
monknow.com
monph.com
monseng.com
@@ -38617,6 +38456,7 @@ moodoon.com
moogos.com
moojing.com
moojnn.com
+moolsun.com
moomoo.com
moonbasa.com
moonbook.com
@@ -38682,6 +38522,7 @@ mosgcj.com
mosheng520.com
moshike.com
moshou.com
+moshua.net
moshuanghua.com
moshuqiqiu.com
mosifel.com
@@ -39371,7 +39212,6 @@ nagagame.net
nagain.com
nagcloudcs.com
nagekuai.com
-nahan.org
nahuayuan.com
nahuo.com
nahuo9.com
@@ -39397,7 +39237,6 @@ nalanxi.com
nalichi.com
name1688.com
name2012.com
-name5566.com
nameidi.com
namepre.com
namesilopro.com
@@ -40047,7 +39886,6 @@ njdapaidang.com
njdewo.com
njdfwb.com
njgb.com
-njgep.com
njgjj.com
njhaiwai.com
njhengyou.com
@@ -40158,7 +39996,6 @@ nnzsxblaw.com
noahedu.com
noahsnail.com
noahteck.com
-nobanus.com
nobmoo.com
nocang.com
nocare.com
@@ -40327,7 +40164,6 @@ ntcfy.com
ntdvf.com
ntechw.com
ntefyxq.com
-ntejiazheng.com
ntes53.com
ntfabu.com
ntflk.com
@@ -40545,7 +40381,6 @@ ocsjs.com
ocsp-lb.apple.com.akadns.net
ocsp.apple.com
ocsp.globalsign.com
-ocsp.pki.goog
ocsp.us.cdnetworks.com
ocsp2.apple.com
ocsp2.globalsign.com
@@ -40643,6 +40478,7 @@ oilhr.com
oilmooc.com
oinva5yl.com
oiuwe.com
+oje26fnevfdg.com
ok-meeting.com
ok06.com
ok1616.com
@@ -40751,6 +40587,7 @@ omlzz.com
ommoo.com
omni-pharma.com
omnibeautylux.com
+omobi.cc
omooo.net
omos88.com
omowork.com
@@ -40798,6 +40635,7 @@ ones.ai
onescorpion.com
oneshao.com
onesight.com
+onething.net
onethingcloud.com
onethingpcs.com
onetog.com
@@ -40938,7 +40776,6 @@ ops.ci
opsapp.com
opskb.com
opskumu.com
-opslinux.com
opsnote.com
opstool.com
optaim.com
@@ -41267,7 +41104,6 @@ padasuo.net
paddlepaddle.org
paddlewaver.com
pafwl.com
-pagead-googlehosted.l.google.com
pageadmin.net
pagechoice.com
pagechoice.net
@@ -41325,6 +41161,7 @@ pan131.com
pan58.com
pan8.net
panabit.com
+panasonicmall.com
pancake.apple.com
pancake.cdn-apple.com.akadns.net
panchuang.net
@@ -41354,6 +41191,7 @@ pangdo.com
panggugu.com
panghuasheng.com
pangku.com
+pangku01.com
pangmao56.com
pangmaovc.com
pangoing.com
@@ -41406,7 +41244,6 @@ paopaoche.net
paopaohd.com
paopaoshipin.com
paopaox.com
-paoshuba.cc
paoxq.com
paoxue.com
papa21.com
@@ -41503,7 +41340,6 @@ pbcan.com
pblie.com
pbsidc.com
pbsvpn.com
-pbtdl.com
pbtxt.com
pc-daily.com
pc120.com
@@ -41512,6 +41348,7 @@ pc34.com
pc51.com
pc521.net
pc5210.com
+pc55.com
pc6.com
pc6a.com
pc811.com
@@ -41700,7 +41537,6 @@ pepresource.com
perfect-input.com
perfect99.com
perfectdiary.com
-performanceparameters.googleapis.com
peropero.net
peroperogames.com
personpsy.org
@@ -41742,7 +41578,6 @@ pgl-world.com
pglstatp-toutiao-b.com
pglstatp-toutiao.com
pgsql.tech
-pgsqldb.org
pgyer.com
pgyidc.com
pgzs.com
@@ -41831,6 +41666,7 @@ phpxs.com
phpyun.com
phys.net
physicalchina.vip
+physoe.com
phyt88.com
phyy.com
pi7.com
@@ -42073,7 +41909,6 @@ pkbigdata.com
pkbkok.com
pkdyplayer.com
pkfj.xyz
-pki-goog.l.google.com
pkm360.com
pkmmo.com
pko123.com
@@ -42109,7 +41944,6 @@ platenogroup.com
platinum-traveller.com
platinumchina.com
play-analytics.com
-play.1ucrs.com
play.craft.moe
play68.com
play700.com
@@ -42460,10 +42294,7 @@ pro6e.com
procar.cc
processon.com
procreate.love
-prod-controlbe.floonet.goog
-prod-databe.floonet.goog
prod-support.apple-support.akadns.net
-prod.databe.floonet.goog
product1.djicdn.com
productivity.wiki
proginn.com
@@ -42472,7 +42303,6 @@ programmer.group
programmer.ink
programschool.com
progressingeography.com
-prohui.com
project-oa.com
projectaker.com
projector-window.com
@@ -42506,11 +42336,9 @@ psdiv.com
pse-meti.com
psgui.com
psing.tech
-psjay.com
psjxty.com
psnine.com
psoneart.com
-pssclub.com
pstatp.com
pstips.net
pstxg.com
@@ -42724,9 +42552,6 @@ q6haqi.com
q6u.com
q77777777.com
qacn.net
-qagpublic.qatp1.net
-qagpublic.qcpp1.net
-qagpublic.qpdp1.net
qalex.com
qapi.cc
qaqgame.com
@@ -42749,7 +42574,6 @@ qbj8.com
qbjrxs.com
qbox.me
qbox.net
-qbtlk.com
qbview.com
qbxz.com
qc-dds.net
@@ -42909,9 +42733,6 @@ qftouch.com
qfun.com
qg.net
qg108.com
-qgadmin.qatp1.net
-qgadmin.qcpp1.net
-qgadmin.qpdp1.net
qgbnzb.com
qgbtd.com
qgbzyzl.com
@@ -42926,7 +42747,6 @@ qgtql.com
qguiyang.com
qgvps.com
qgw.tm
-qgwsp.com
qgxl.org
qgysj.org
qgyyzs.net
@@ -43029,7 +42849,6 @@ qiangchezu.com
qiangchuan.com
qiangdun.com
qianggen.com
-qianggongzhang.com
qianggou5.com
qiangidc.vip
qiangka.com
@@ -43438,12 +43257,12 @@ qirexiaoshuo.com
qirui.com
qisaoba.com
qisbook.com
-qishenga.com
qishixitong.com
qishixunmei.com
qishu.cc
qishu.co
qishu.tw
+qishu.vip
qishunbao.com
qishuta.net
qisool.com
@@ -43502,7 +43321,6 @@ qixin007.com
qixin18.com
qixincha.com
qixing123.com
-qixing318.com
qixingcdn.com
qixingcr.com
qixingquan.com
@@ -43679,7 +43497,6 @@ qpgame.com
qplus.com
qpoc.com
qpstar.com
-qpx.googleflights.net
qpxiaoshuo.com
qpzq.net
qq-xmail.com
@@ -43739,7 +43556,6 @@ qqkqw.com
qqkrmotors.com
qqku.com
qqkuyou.com
-qqkw.net
qqleju.com
qqlin.net
qqma.com
@@ -43896,12 +43712,6 @@ qu02.com
qu247.com
qua.com
qualisports.cc
-qualysapi.qatp1.net
-qualysapi.qcpp1.net
-qualysapi.qpdp1.net
-qualysguard.qatp1.net
-qualysguard.qcpp1.net
-qualysguard.qpdp1.net
quan.mx
quan007.com
quan365.com
@@ -44173,7 +43983,6 @@ qvip.net
qvkanwen.com
qvlz.com
qvpublish.com
-qvxo.com
qwdacy.com
qweather.com
qweather.net
@@ -44189,7 +43998,6 @@ qwq.ren
qwqk.net
qwqoffice.com
qwsy.com
-qwupoq.com
qwxcs.com
qwxsw.com
qwzhe.com
@@ -44245,7 +44053,6 @@ qyjpzx.com
qykh2009.com
qykodo.com
qyle1.com
-qyled.xyz
qymgc.com
qyous.com
qypiayer.xyz
@@ -44490,7 +44297,6 @@ readpaper.com
readpaul.com
readten.net
readu.net
-readwise.com
readwithu.com
ready4go.com
reaer.com
@@ -44512,7 +44318,6 @@ reasonclub.com
rebatesme.com
rebo5566.com
rebooo.com
-recaptcha.net
recgo.com
rechaos.com
recolighting.com
@@ -44538,19 +44343,6 @@ redianzixun.com
rediao.com
redicecn.com
redidc.com
-redirector.bdn.dev
-redirector.c.chat.google.com
-redirector.c.docs.google.com
-redirector.c.drive.google.com
-redirector.c.mail.google.com
-redirector.c.pack.google.com
-redirector.c.play.google.com
-redirector.c.youtubeeducation.com
-redirector.gcpcdn.gvt1.com
-redirector.gvt1.com
-redirector.offline-maps.gvt1.com
-redirector.snap.gvt1.com
-redirector.xn--ngstr-lra8j.com
redisbook.com
redisdoc.com
redisfans.com
@@ -44586,7 +44378,6 @@ refineidea.com
reformdata.org
refractorywin.com
reg007.com
-regioninfo-pa.googleapis.com
reglogo.net
regtm.com
rehtt.com
@@ -44696,7 +44487,6 @@ retalltech.com
retey.net
retiehe.com
retouchpics.com
-retow.com
return.net
returnc.com
reverselove.com
@@ -45050,7 +44840,6 @@ rrmm2.com
rrppt.com
rrr.me
rrrdai.com
-rrrmj.com
rrrrdaimao.com
rrrxz.com
rrs.com
@@ -45161,6 +44950,7 @@ ruijiery.com
ruijinginfo.com
ruijinintl.com
ruikesearch.com
+ruimao.xyz
ruiqicanyin.com
ruiruigeblog.com
ruiscz.com
@@ -45181,11 +44971,11 @@ rujiazg.com
ruketang.com
rulejianzhan.com
rulesofsurvivalgame.com
-rum8.perf.linkedin.com
rumt-sg.com
rumt-zh.com
runcmd.com
runcome.com
+rundamedical.com
runde666.net
rundejy.com
rundongex.com
@@ -45319,7 +45109,6 @@ s8x1.com
s8xs.com
s936.com
s9523.com
-s955s.com
s95r.com
s98s2.com
s9yun.com
@@ -45337,7 +45126,6 @@ sact-digital.com
sae-china.org
saebbs.com
saen.com
-safebrowsing.googleapis.com
safecenter.com
safehoo.com
safejmp.com
@@ -45565,9 +45353,6 @@ sc946.com
scacm.com
scaffi.com
scala.cool
-scanservice1.qatp1.net
-scanservice1.qcpp1.net
-scanservice1.qpdp1.net
scanv.com
scarbbs.com
scarclinic-cn.com
@@ -46072,12 +45857,10 @@ seopre.com
seosiguan.com
seosn.com
seosrx.net
-seosteven.com
seotcs.com
seowhy.com
seoxiaosai.com
seoxuetang.com
-seoyu.net
sepact.com
sepri.com
septinn.com
@@ -46088,7 +45871,6 @@ sequoiadb.com
serholiu.com
servasoft.com
serverless.ink
-service.urchin.com
servicemesher.com
servicewechat.com
servingcdn.com
@@ -46098,7 +45880,6 @@ sesier.com
sesubox.com
setbbts.cyou
seteuid0.com
-settings.xn--9trs65b.com
seuic.com
sevdot.com
seven7777.eu
@@ -46222,6 +46003,7 @@ sh7.com
sh85gk.com
sh8y.com
sh9130.com
+sh9156.com
sh9yuan.com
sha-cun.com
sha-steel.com
@@ -46341,6 +46123,7 @@ shangshaban.com
shangshangke.me
shangshi360.com
shangshici.com
+shangshiwl.com
shangshu.cc
shangshuyixue.com
shangtao.net
@@ -46493,7 +46276,6 @@ sheencity.com
sheepmats.com
sheetgit.com
sheinet.com
-sheizhiwo.com
sheji.com
shejibao.com
shejiben.com
@@ -46545,6 +46327,7 @@ shenghan.org
shenghefilms.com
shengheplastic.com
shenghui56.com
+shenghuo365.com
shenghuojia.com
shenghuorili.com
shenghuowo.com
@@ -46561,7 +46344,6 @@ shengqianlianmeng.net
shengqugames.com
shengren.work
shengsci.com
-shengshaonv.xyz
shengtaireli.com
shengtian.com
shengtongedu.com
@@ -46583,6 +46365,7 @@ shenhongmao.com
shenhua.cc
shenhuagushi.net
shenjian.io
+shenjiballs.com
shenkexin.com
shenkong.net
shenlanbao.com
@@ -46613,6 +46396,7 @@ shenshu.info
shenshuo.net
shenshuw.com
shensuantang.com
+shensuokeji.com
shentongdata.com
shenweimicro.com
shenweisupport.com
@@ -47009,6 +46793,7 @@ shqingzao.com
shqlty.com
shqmxx.com
shqswlgs.com
+shqyg.com
shrail.com
shrca.org
shrcb.com
@@ -47241,7 +47026,6 @@ shuttle.co
shuwangxing.com
shuwenxianyun.com
shuwulou.com
-shuxiao.wang
shuxinyi.net
shuyang.tv
shuyangba.com
@@ -47596,7 +47380,9 @@ situdata.com
sivan.in
sivps.com
siwaman.com
+siwapay.com
siwazywcdn2.com
+siwazywcdn3.com
siwazywimg.com
siwei.me
siweidaotu.com
@@ -47630,7 +47416,6 @@ sj3w.com
sj88.com
sj998.com
sjawards.com
-sjbzx.com
sjcomic.com
sjdzp.com
sjdzp.net
@@ -48014,7 +47799,6 @@ snxfcw.com
snxw.com
snyu.com
snzfj.net
-snzgy.com
snzhz.com
so-love.com
so-naver.com
@@ -48285,7 +48069,6 @@ souidc.org
soukecheng.net
soukf.com
soukuyou.com
-soulady.net
soulapp.me
souldee.com
soulgame.mobi
@@ -48406,7 +48189,6 @@ speiyou.com
spfmc.com
spforum.net
spgnux.com
-sphinxrating.com
spibj.com
spiiker.com
spin-view.com
@@ -48537,10 +48319,7 @@ ssish.com
ssjjss.com
ssjjtt.com
ssjlicai.com
-ssjzw.com
ssky123.com
-ssl-google-analytics.l.google.com
-ssl.gstatic.com
sslaaa.com
sslceshi.com
sslchaoshi.com
@@ -48596,10 +48375,6 @@ stackoverflow.club
stackoverflow.wiki
stage1st.com
stage3rd.com
-staging-controlbe.floonet.goog
-staging-databe.floonet.goog
-staging-regioninfo-pa.googleapis.com
-staging.databe.floonet.goog
stajy.com
standardshop.net
star1024.com
@@ -49068,7 +48843,6 @@ supor.com
suporpe.com
support-china.apple-support.akadns.net
support-cn.samsung.com
-support.1ucrs.com
support.apple.com
support.globalsign.com
support.lenovo.com
@@ -49168,7 +48942,6 @@ swiftlet.net
swiftmi.com
swiftstar.net
swijoy.com
-switchvip.com
switchxiazai.com
swjoy.com
swkong.com
@@ -49192,6 +48965,7 @@ swsm.net
swsmu.com
swstsg.com
swt0.com
+swtuchuang4.com
swupdl.adobe.com
swwlotus.com
swwy.com
@@ -49236,7 +49010,6 @@ sxjagc.com
sxjh88.com
sxjhzsgc.com
sxjzxww.com
-sxkid.com
sxkzxt.com
sxlcdn.com
sxldns.com
@@ -49526,11 +49299,11 @@ szjinhuanyu.com
szjlwul.com
szjunfei.com
szjuquan.com
+szjys1888.com
szjytx.com
szkegao.net
szkingdom.com
szkoa.com
-szlan.com
szlande.com
szlangwei.com
szlc9.com
@@ -49669,7 +49442,6 @@ szzunbao.com
szzxks.net
szzyqc.net
szzyqy.com
-t-bb.net
t-cha.com
t-cheshi.com
t-chs.com
@@ -49678,7 +49450,6 @@ t-firefly.com
t-gafa.com
t-io.org
t-ji.net
-t-jiaju.com
t-jiu.com
t-nan.com
t-v.com
@@ -49713,7 +49484,6 @@ t8tcdn.com
ta26.com
taaas.org
tabalt.net
-tac.googleapis.com
tachangxing.com
tacool.com
tactan.net
@@ -49907,7 +49677,6 @@ tao30.com
tao616.com
tao800.com
tao8090.com
-taoad.com
taobao-img.com
taobao.com
taobao.cz
@@ -50012,7 +49781,6 @@ taoxv.com
taoyeyou.com
taoyi-support.com
taoyizhu.com
-taoyuantravel.com
taozaisheng.com
taozhanyun.com
taozhuo.com
@@ -50223,6 +49991,7 @@ technode.com
techoke.com
techonegame.com
techqianmo.com
+techshidai.com
techsir.com
techtmt.com
techuangyi.com
@@ -50320,7 +50089,6 @@ tengxiao.wang
tengxunmail.com
tengxunqiye.com
tengxunqiyeyou.com
-tengxunyu.com
tengy.com
tengyuejz.com
tengzhihh.com
@@ -50330,7 +50098,6 @@ tenhot.net
tenlonstudio.com
tenlywu.com
tenmh.com
-tennisworld.mobi
tennoo.com
tenpay.com
tenqent.com
@@ -50365,8 +50132,6 @@ teshenqi.com
tesolsh.com
tesoon.com
test-edu.net
-test.bugs-qa.chromium.org
-test.gbugs-qa.chromium.org
test404.com
testbird.com
testcoo.com
@@ -50977,8 +50742,8 @@ tljob8001.com
tlkzs.com
tlqwine.com
tlrcbk.com
+tlryjg.com
tlsj-hd.com
-tlstwy.com
tlte.com
tltesoft.com
tltuan.net
@@ -50998,7 +50763,6 @@ tmdm.com
tmeiju.com
tmeissheng.com
tmgwdz.vip
-tmhhost.com
tmhong.com
tmhvps.com
tmiep.org
@@ -51177,8 +50941,6 @@ toolfk.com
toolmall.com
toolmao.com
toolnb.com
-tools.google.com
-tools.l.google.com
tooming.com
toomoss.com
toon.mobi
@@ -51578,6 +51340,7 @@ tswuby.com
tsxcx.xyz
tsybsmz.com
tsyqb.com
+tsyvps.com
tsyzm.com
tsz.com
tszckj.com
@@ -51927,7 +51690,6 @@ tuyou.me
tuyoujp.com
tuyoumi.com
tuyouxinxi.net
-tuyuantech.com
tuzhan.com
tuzhan.net
tuzhanai.com
@@ -51946,7 +51708,6 @@ tv5box.com
tvandnet.com
tvapk.com
tvapk.net
-tvb1.cc
tvbbj.com
tvblack.com
tvbwind.com
@@ -52197,7 +51958,6 @@ u5wan.com
u69cn.com
u6u.com
u77.com
-u78.com
u7u9.com
u8376.com
u8sy.com
@@ -52274,9 +52034,6 @@ uchuanbo.com
uchuhimo.me
ucicq.com
ucjoy.com
-uclmad.com
-uclmimg.com
-uclmjs.com
ucloudgda.com
ucloudnaming.info
uclouds3.com
@@ -52329,7 +52086,6 @@ uelike.com
uemo.net
uepei.com
ueren.com
-uerlqe.com
uestcedu.com
uestcguoji.com
ueuz.com
@@ -52439,7 +52195,6 @@ ukonline2000.com
ukoo.net
ukpass.org
ukpathway.com
-ukraine-beauty.com
ukubang.com
ukui.org
ukulelecn.com
@@ -52505,7 +52260,6 @@ unclenoway.com
unclenoway.net
unclenowayapi.com
unclicks.com
-undefined.ltd
underfill.cc
uneed.com
unfish.net
@@ -52606,8 +52360,6 @@ uoschina.com
uoser.org
uouo123.com
uovz.com
-up.corp.goog
-up.gcp.googlers.com
up360.com
up4dev.com
up71.com
@@ -52626,8 +52378,6 @@ upchina.com
upchinapro.com
upchinaproduct.com
upd.kaspersky.com
-update.crashlytics.com
-update.googleapis.com
updates-http.cdn-apple.com
updates-http.cdn-apple.com.akadns.net
updates.cdn-apple.com
@@ -53746,6 +53496,7 @@ wanfangdata.com
wanfangqikan.com
wanfangs.com
wanfangtech.com
+wanfangtech.net
wanfantian.com
wanfumei.net
wanfuqianqiu.com
@@ -53918,6 +53669,7 @@ wansf.com
wanshahao.com
wanshanshuju.com
wanshifu.com
+wanshiruyi.net
wanshitong.com
wanshouyou.net
wanshuyun.com
@@ -54065,7 +53817,6 @@ wddream.com
wdfangyi.com
wdfxw.net
wdghy.com
-wdinter.com
wdiyi.com
wdjimg.com
wdjky.com
@@ -54108,7 +53859,6 @@ weand.com
weaoo.com
weapp.com
weapp.me
-wear.googleapis.com
wearemanner.com
weareqy.com
weartrends.com
@@ -54153,7 +53903,6 @@ webkaka.com
webkdcdn.com
webkf.net
webkv.com
-webmagic.io
webmeng.net
webmulu.com
webnovel.com
@@ -54284,7 +54033,6 @@ weifenpay.com
weifrom.com
weigang.com
weigongju.org
-weigongxue.com
weihai.tv
weihaicollege.com
weihaipoly.com
@@ -54506,6 +54254,7 @@ welqua.com
wemdsm.com
wemediacn.com
wemomo.com
+wemorefun.com
wemunc.org
wemvp.com
wenancehua.com
@@ -54950,7 +54699,6 @@ whsy.org
whsyy.net
whtbq.com
whtcm.com
-whtcm.net
whtdcb.com
whtdsc.com
whtfzy.com
@@ -55308,7 +55056,6 @@ wl.dlservice.microsoft.com
wl369.com
wlanadmin.com
wlanbanlv.com
-wlanwifi.net
wlcbnews.com
wlcbw.com
wlcxx.com
@@ -55368,6 +55115,7 @@ wmphp.com
wmpic.me
wmpvp.com
wmpyol.com
+wmqfey.com
wms100.com
wmsjyun.com
wmssedu.com
@@ -55390,6 +55138,7 @@ wnark.com
wnbsq.com
wndhw.com
wndlkj.com
+wndroid.com
wnform.com
wnhuifu.com
wniecm.com
@@ -55486,6 +55235,7 @@ wolf.cc
wolfcstech.com
wolfgo.com
wolfogre.com
+wolianw.com
wolife.com
wolighting.com
woliuda.com
@@ -55658,7 +55408,6 @@ wp-h.com
wp10.cc
wpan123.com
wpceo.com
-wpchina.org
wpcio.com
wpcnzz.com
wpdaxue.com
@@ -55771,6 +55520,7 @@ wshttpdns.com
wsisp.com
wsisp.net
wsjx.net
+wskam.com
wslcode.com
wsljf.xyz
wslmf.com
@@ -55813,7 +55563,6 @@ wtd56.com
wtdex.com
wtdms.com
wting.info
-wtmmn.com
wtn5.com
wtobag.com
wtoip.com
@@ -55894,7 +55643,6 @@ wuhanpe.com
wuhanpep.com
wuhanport.com
wuhanrt.com
-wuhansailingclub.com
wuhantest.com
wuhantianqi114.com
wuhantskj.com
@@ -56060,8 +55808,6 @@ www-123490.com
www-175345.com
www-4620.com
www-63608.com
-www-google-analytics.l.google.com
-www-googletagmanager.l.google.com
www.adobe.com
www.agoda.com
www.akamai.com
@@ -56077,21 +55823,17 @@ www.cg
www.com.my
www.dell-brand.com
www.dell.com
-www.destinationurl.com
www.dji.com
www.djivideos.com
www.epsonconnect.com
www.globalsign.com
-www.googleadapis.com
www.gov.mo
-www.gstatic.com
www.htc.com
www.htcsense.com
www.linkedin.com
www.microsoft.com
www.nike.com
www.pandora.net
-www.pxcc.com
www.redhat.com
www.samsung.com
www.st.com
@@ -56167,7 +55909,6 @@ wxkol.com
wxlagame.com
wxlongre.com
wxmama.com
-wxmcgz.com
wxmetro.net
wxmolegames.com
wxmovie.com
@@ -56203,7 +55944,6 @@ wy213.com
wyaoqing.com
wybbao.com
wybgs.com
-wycanyin.com
wycntv.com
wydbw.com
wydfghjjh.live
@@ -56211,6 +55951,7 @@ wydljx.com
wydns.com
wyduihua.com
wyh138.com
+wyhos.fun
wyins.net
wykefu.com
wyktwx.com
@@ -56289,6 +56030,7 @@ wzyun.net
wzz180809.net
wzz1809.com
wzznft.com
+wzzp.com
wzzww.com
x-bows.com
x-cti.org
@@ -56833,6 +56575,7 @@ xiangyujiankang.com
xiangyukj.com
xiangyun.so
xiangyunseo.com
+xiangyuqimo.com
xiangzhan.com
xiangzhiren.com
xiangzhuyuan.com
@@ -56956,6 +56699,7 @@ xiaoheima.com
xiaohongchun.com
xiaohongdian.wang
xiaohongshu.com
+xiaohongshu.net
xiaohongshulvyou.com
xiaohuabaichu.com
xiaohuabuluo.com
@@ -57006,6 +56750,7 @@ xiaolin.in
xiaolinsi.com
xiaolinwl.com
xiaolinyuan.com
+xiaoliqing.net
xiaolizhuli.com
xiaolu123.com
xiaoluboke.com
@@ -57630,6 +57375,7 @@ xinyifu.net
xinyisemi.com
xinyitt.com
xinyo100.com
+xinyong.net
xinyongbuy.com
xinyou.com
xinyour.com
@@ -57833,7 +57579,6 @@ xjishu.com
xjisme.com
xjiyou.com
xjjnjp.org
-xjltp.com
xjlxw.com
xjlz365.com
xjmty.com
@@ -57912,7 +57657,6 @@ xlobo.com
xlpai.com
xlpan.com
xlqzh.com
-xlrocket.com
xlsemi.com
xlshou.com
xltrip.com
@@ -58025,7 +57769,6 @@ xn--2krw29cdqai43k.com
xn--6rt008ee0k3ua.com
xn--6rt008ee0k3ua.net
xn--7hv285el2dtof.com
-xn--9kr7l.com
xn--dkr447bejn.com
xn--dkr447bejn.net
xn--e9qp53aepg.xn--ses554g
@@ -58033,7 +57776,6 @@ xn--ebr05n.com
xn--eqrt2g.xn--vuq861b
xn--fiq8ituh5mn9d1qbc28lu5dusc.xn--vuq861b
xn--fiqz7g67bsydx1ed00d.com
-xn--flw351e.com
xn--glr604k.com
xn--it-1r3f.com
xn--ntsp37j.net
@@ -58097,7 +57839,6 @@ xp85.com
xp868.com
xp933.com
xp9365.com
-xpagn.com
xpaper.com
xpaper.net
xpaper.vip
@@ -58197,7 +57938,6 @@ xsool.com
xsp0311.com
xspcf.com
xspic.com
-xspliter.com
xsrtvu.com
xsshuku.com
xsslyjt.com
@@ -58326,7 +58066,6 @@ xuegongkong.com
xueguoedu.net
xuehai.net
xuehaibjb.com
-xuehaoba.com
xuehuacdn.com
xuehuahua.cc
xuehuahua.net
@@ -58344,7 +58083,6 @@ xueleku.com
xuelema.com
xueleyun.com
xueli9.com
-xuelu.org
xueming.li
xuenb.com
xuepaijie.com
@@ -58394,6 +58132,7 @@ xuexin365.com
xuexiniu.com
xuexitong.com
xuexivip.net
+xuexiwa.com
xueyanshe.com
xueyiyun.com
xueyou.org
@@ -58548,6 +58287,7 @@ xxcmw.com
xxdao.com
xxfzl.com
xxgd888.com
+xxggg.net
xxghh.biz
xxgj47.com
xxgzmlt.com
@@ -58557,7 +58297,6 @@ xxhkt.com
xxhyzd.com
xxingclub.com
xxjcy.com
-xxjr.com
xxjrjxc.com
xxjrqc.com
xxka.com
@@ -58619,6 +58358,7 @@ xy1212.com
xy1758.com
xy178.com
xy1989.com
+xy2401.com
xy3000.com
xy58.net
xy599.com
@@ -58645,6 +58385,7 @@ xyffsb.com
xyfw.org
xygmed.com
xyh001.com
+xyh2021.com
xyhc.com
xyhis.com
xyhlcd.com
@@ -58784,7 +58525,6 @@ ya247.com
yaahe.com
yabo.com
yabolive.com
-yabovip2029.com
yac8.com
yac8.net
yadashi.com
@@ -58918,11 +58658,13 @@ yanjunbo.com
yankanshu.net
yankay.com
yanliu.org
+yanlutong.com
yanmbjiage.com
yannaisi.com
yannv.com
yanoda.com
yanpk.com
+yanpwy.com
yanqiao.com
yanqingzhan.net
yansedaquan.com
@@ -59009,6 +58751,7 @@ yatiku.com
yatiwang.com
yatsenglobal.com
yatsoft.com
+yaucxrt.com
yawancaiwu.com
yaxi.net
yaxige.com
@@ -59257,6 +59000,7 @@ yesoulchina.com
yespearl.com
yestar.com
yestar1992.com
+yestarcorp.com
yestarm.com
yestarvip.com
yeston.net
@@ -59360,7 +59104,6 @@ yhdns.net
yhdtns.com
yhees.com
yhetent.com
-yhfx.info
yhgfb-cn-static.com
yhgo.wang
yhgo8.com
@@ -59396,7 +59139,6 @@ yhyf.cc
yhz2000.com
yhz365.com
yhz66.com
-yhzdt.com
yhzky.net
yhzky1.net
yhzm.cc
@@ -59590,6 +59332,7 @@ yimeng.com
yimengmusic.com
yimenonline.com
yimenyun.net
+yimian.xyz
yimianmian.com
yimiaozhongdemeng.com
yimidida.com
@@ -59622,6 +59365,7 @@ yinduzx.com
yineitong.com
yinfeiy.com
ying-ji.com
+yingbar.com
yingbei365.com
yingbishufa.com
yingcankeji.com
@@ -59752,6 +59496,7 @@ yipingmi.vip
yipinhr.com
yipinread.com
yipinsucai.com
+yipintemian.com
yipuping.com
yiqi.com
yiqianbao.com
@@ -59829,7 +59574,6 @@ yisojuan.com
yisou.com
yisouti.com
yisouyifa.com
-yiss.com
yisu.com
yisusoft.com
yit.com
@@ -59987,7 +59731,6 @@ yjvps.com
yjwlo.com
yjwujian.com
yjxsoft.com
-yjyghb.com
yjz9.com
yjzb.app
yjzb.tv
@@ -60063,6 +59806,7 @@ ym1998.com
ym23.com
ym68.cc
ym75168.com
+ymadly.com
ymailcampaign.com
ymall.com
ymanz.com
@@ -60114,7 +59858,6 @@ yn-tobacco.com
yn12396.com
yn58.com
ynairport.com
-ynaquatic-foods.com
ynb2dca.com
ynbit.com
ynbojie.com
@@ -60126,6 +59869,7 @@ yneg-ev.com
yneit.com
ynet.com
ynfabu.com
+ynfxw.com
yngd016.com
ynggzy.com
yngp.com
@@ -60404,7 +60148,6 @@ youmenr.com
youmew.com
youmi.net
youmiad.com
-youmingdot.com
youminonline.com
youmobi.com
youmodou.com
@@ -60751,7 +60494,6 @@ ysxs8.com
ysyycv.com
yszx99.com
yszyun.com
-yszyz.com
yszzlt.com
yt1998.com
yt1a.icu
@@ -60915,7 +60657,6 @@ yuejiewangluo.com
yuejuanbao.com
yuekenet.com
yuekeyun.com
-yuelong.info
yueloo.com
yuelu.net
yuelun.com
@@ -60992,7 +60733,6 @@ yule114.com
yule116.com
yule263.com
yuledaily.com
-yulefm.com
yulehezi.com
yuleie.com
yulejiaodian.com
@@ -61001,7 +60741,6 @@ yuleredian.com
yuleres.com
yuli.be
yulicdn.com
-yuliechina.com
yulinapp.com
yulingtianxia.com
yulongjun.com
@@ -61019,7 +60758,6 @@ yumi.com
yumimobi.com
yuming.com
yumingguwen.com
-yumingjoy.com
yumixitong.com
yumstone.com
yun-gu.com
@@ -61373,7 +61111,6 @@ ywsoftware.com
ywtd.xyz
ywtrzm.com
ywtuchuang1.com
-ywtx.cc
ywxue.com
ywxzz.com
ywyanxing.com
@@ -61432,6 +61169,7 @@ yxjedu02.com
yxjia.com
yxkfw.com
yxkjlcd.com
+yxlaba.com
yxlady.com
yxlady.net
yxle.net
@@ -61443,6 +61181,7 @@ yxn.fun
yxool.com
yxou.com
yxpk.net
+yxpms.com
yxptfs.com
yxqiche.com
yxrank.com
@@ -61457,6 +61196,7 @@ yxt.com
yxt521.com
yxtapp.com
yxttzb.com
+yxtun.com
yxtvg.com
yxwoo.com
yxxgame.com
@@ -61505,7 +61245,6 @@ yygold.com
yygrammar.com
yygzs.com
yyh.la
-yyh2.com
yyhao.com
yyhh.com
yyhhaa.com
@@ -61521,6 +61260,7 @@ yylm.org
yymedias.com
yyming2.com
yymoban.com
+yynetwk.com
yyouren.com
yypm.com
yypt.com
@@ -61619,6 +61359,7 @@ yzzs.cc
yzzsoft.com
yzzzn.com
z-bank.com
+z-dd.net
z-index.cc
z-inn.com
z-zhuji.com
@@ -62154,7 +61895,6 @@ zhaiiker.com
zhaikexueyuan.com
zhaimansky.com
zhainanba.net
-zhainanbaw.com
zhainanfulishe.com
zhainanhuayuan.com
zhaiqianfeng.com
@@ -62352,6 +62092,7 @@ zhe4000.com
zhe800.com
zhebei.com
zhefengle.com
+zhejianglab.com
zhejiangmuseum.com
zhejiangqinghe.com
zhejing.tech
@@ -62454,13 +62195,10 @@ zhgjm.com
zhgl.com
zhgnj.com
zhgqt.com
-zhgsw.com
zhguoguo.com
zhhainiao.com
-zhhbqg.com
zhhrm.com
zhhs-china.com
-zhhtxt.com
zhhuahui.com
zhhy-oa.com
zhi-bo.net
@@ -62568,7 +62306,6 @@ zhilianfm.com
zhiliangren.com
zhiliaoke.com
zhiliaomj.com
-zhilii.com
zhilingshidai.com
zhilong.me
zhilongtech.com
@@ -62600,6 +62337,7 @@ zhipin.com
zhipingke.com
zhiqiang.org
zhiqiapp.com
+zhiqihuo.com
zhiquanxia.com
zhiquapp.com
zhiquyuan.com
@@ -62612,6 +62350,7 @@ zhiru.com
zhirui-inv.com
zhiruyi.com
zhisanzhao.com
+zhishangsoft.com
zhisheji.com
zhishi.life
zhishibo.com
@@ -62794,7 +62533,6 @@ zhongruihuacheng.com
zhongruitech.com
zhongshang114.com
zhongshanpark.com
-zhongshanyinyuetang.org
zhongshengdai.com
zhongshucan.com
zhongso.com
@@ -62824,6 +62562,7 @@ zhongyoo.com
zhongyouex.com
zhongyougc.com
zhongyoumedia.com
+zhongyulian.com
zhongyunjy.com
zhongzhao.com
zhongzhide.com
@@ -62893,7 +62632,6 @@ zhuangyi.com
zhuangzhuang.net
zhuanhuanqi.com
zhuaniao.com
-zhuanile.com
zhuankeba.org
zhuanlichaxun.net
zhuanliqiao.com
@@ -62915,7 +62653,6 @@ zhuanzhi.ai
zhuanzhi.net
zhuanzhuan.com
zhuanzhuantui.com
-zhuashouru.com
zhuatang.com
zhuaxia.com
zhuayou.com
@@ -63031,7 +62768,6 @@ zhuoyouba.net
zhuoyoutech.com
zhuoyuanxinfang.com
zhuoyue.wang
-zhuoyuebbs.com
zhuoyuechenxing.com
zhuozhengsoft.com
zhuozhoufangchan.com
@@ -63191,7 +62927,6 @@ zishuogif.com
zishuovideo.com
zisia.org
zisuo.com
-ziti.so
ziti163.com
zitiao.org
zitiaonc.com
@@ -63294,7 +63029,6 @@ zjfdc.net
zjft.com
zjgas.net
zjgjj.com
-zjgmdf.com
zjgqt.org
zjgrrb.com
zjgslb.com
@@ -63341,7 +63075,6 @@ zjkgjj.com
zjkings.com
zjknews.com
zjks.com
-zjkssw.com
zjlcwg.com
zjldrcb.com
zjlottery.com
@@ -63449,6 +63182,7 @@ zking.com
zkl2333.com
zkoffcn.com
zkpk.org
+zkrdlab.com
zkread.com
zkroom.com
zksoftwaresz.com
@@ -63545,7 +63279,6 @@ zmnrz.com
zmobuy.com
zmonster.me
zmpal.com
-zmqlh.com
zmren.com
zmrenwu.com
zmrgame.com
@@ -63719,7 +63452,6 @@ zqvip8.cc
zqwzc.com
zqxsc.com
zqygame.com
-zqzj.org
zqzyxx.com
zrahh.com
zrblog.net
@@ -63915,6 +63647,7 @@ zuimeia.com
zuimeiqidai.com
zuimeitianqi.com
zuimeix.com
+zuimh.com
zuiqiangyingyu.net
zuirede.com
zuishidai.com
@@ -63960,6 +63693,7 @@ zuojiaju.com
zuojiawang.com
zuojing.com
zuojj.com
+zuokesteak.com
zuolinyouli.vip
zuoqu.com
zuoqudashi.net
@@ -64131,7 +63865,6 @@ zybuluo.com
zyc918.com
zyccc.com
zycits.com
-zyclps.com
zycmfw.com
zycsc.com
zyctd.com
@@ -64196,12 +63929,12 @@ zyz119.com
zyzaojiao.com
zyzhan.com
zyzhyl.com
+zyzimg.com
zyzj.org
zyzjmz.org
zyzkb.net
zyzw.com
zyzxs.com
-zz-qq.com
zz-zigzag.com
zz21.com
zz314.com
@@ -64251,13 +63984,11 @@ zzkiss000.com
zzliot.com
zzllq.com
zzloop.com
-zzlz.net
zzm8.com
zzmama.net
zzmscg.com
zzmyt.com
zznah001.com
-zznn7.xyz
zzobokj.com
zzpd8.com
zzpuke.com
diff --git a/luci-app-passwall/root/usr/share/passwall/rules/chnroute b/luci-app-passwall/root/usr/share/passwall/rules/chnroute
index f398b3236..f4d129040 100644
--- a/luci-app-passwall/root/usr/share/passwall/rules/chnroute
+++ b/luci-app-passwall/root/usr/share/passwall/rules/chnroute
@@ -467,6 +467,7 @@
103.130.152.0/24
103.130.160.0/22
103.130.228.0/22
+103.131.138.0/23
103.131.152.0/22
103.131.168.0/22
103.131.176.0/22
@@ -485,6 +486,7 @@
103.132.188.0/22
103.132.208.0/22
103.132.212.0/22
+103.132.22.0/23
103.132.234.0/23
103.132.60.0/22
103.132.64.0/22
@@ -1894,6 +1896,7 @@
103.247.168.0/22
103.247.172.0/22
103.247.176.0/22
+103.247.191.0/24
103.247.200.0/22
103.247.212.0/22
103.248.0.0/23
diff --git a/luci-app-passwall/root/usr/share/passwall/rules/chnroute6 b/luci-app-passwall/root/usr/share/passwall/rules/chnroute6
index e7401301a..0450e0f91 100644
--- a/luci-app-passwall/root/usr/share/passwall/rules/chnroute6
+++ b/luci-app-passwall/root/usr/share/passwall/rules/chnroute6
@@ -394,6 +394,8 @@
2400:ef40::/32
2400:f480::/32
2400:f5c0::/32
+2400:f6e0::/32
+2400:f720::/32
2400:f7c0::/32
2400:f840::/32
2400:f980::/32
diff --git a/luci-app-poweroffdevice/README.md b/luci-app-poweroffdevice/README.md
index 761d48c1b..2babe50db 100644
--- a/luci-app-poweroffdevice/README.md
+++ b/luci-app-poweroffdevice/README.md
@@ -58,31 +58,38 @@ poweroffdevice是一款基于OPNEWRT编译的关机源码插件。
源码来源:https://github.com/sirpdboy/luci-app-poweroffdevice
-### 你可以随意使用其中的源码,但请注明出处。
-你可以随意使用其中的源码,但请注明出处。
-============================
+## 使用与授权相关说明
+
+- 本人开源的所有源码,任何引用需注明本处出处,如需修改二次发布必告之本人,未经许可不得做于任何商用用途。
# My other project
-网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
+- 网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
-定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
+- 定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
-关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
+- 关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
-opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
+- opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
-opentoks 主题: https://github.com/sirpdboy/luci-theme-opentoks [仿KOOLSAHRE主题]
+- kucat 主题: https://github.com/sirpdboy/luci-theme-kucat
-btmob 主题: https://github.com/sirpdboy/luci-theme-btmob
+- 家长控制: https://github.com/sirpdboy/luci-theme-parentcontrol
-系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
+- 系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
-ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
+- ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
+- 进阶设置(系统高级设置+主题设置kucat/agron/opentopd): https://github.com/sirpdboy/luci-app-advancedplus
+
+- 设置向导: https://github.com/sirpdboy/luci-app-wizard
+
+- 分区扩容: https://github.com/sirpdboy/luci-app-partexp
+
+- lukcy大吉: https://github.com/sirpdboy/luci-app-lukcy
## 捐助
diff --git a/luci-app-xray/README.md b/luci-app-xray/README.md
index 867cd47cd..53e83796e 100644
--- a/luci-app-xray/README.md
+++ b/luci-app-xray/README.md
@@ -37,7 +37,7 @@ Focus on making the most of Xray (HTTP/HTTPS/Socks/TProxy inbounds, multiple pro
Choose one below:
-* Add `src-git-full luci-app-xray https://github.com/yichya/luci-app-xray` to `feeds.conf.default` and run `./scripts/feeds update -a; ./scripts/feeds install -a`
+* Add `src-git-full luci_app_xray https://github.com/yichya/luci-app-xray` to `feeds.conf.default` and run `./scripts/feeds update -a; ./scripts/feeds install -a`
* Clone this repository under `package`
Then find `luci-app-xray` under `Extra Packages`.
diff --git a/luci-theme-design/Makefile b/luci-theme-design/Makefile
index dc921525a..2a5622ae7 100644
--- a/luci-theme-design/Makefile
+++ b/luci-theme-design/Makefile
@@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk
LUCI_TITLE:=Design Theme
LUCI_DEPENDS:=
-PKG_VERSION:=5.7.4-20230417
+PKG_VERSION:=5.7.5-20230418
include $(TOPDIR)/feeds/luci/luci.mk
diff --git a/luci-theme-design/dev/style.css b/luci-theme-design/dev/style.css
index c3eaa87c6..aaf48512a 100644
--- a/luci-theme-design/dev/style.css
+++ b/luci-theme-design/dev/style.css
@@ -2707,7 +2707,7 @@ header > .container > .pull-right > * {
border-bottom: var(--sectionBorder);
border-left: var(--sectionBorder);
border-right: var(--sectionBorder);
- /* background-color: var(--sectionbgColor); */
+ background-color: var(--sectionbgColor);
border-radius: 10px;
}
diff --git a/luci-theme-design/htdocs/luci-static/design/css/style.css b/luci-theme-design/htdocs/luci-static/design/css/style.css
index eb78a2d8b..f88917ffd 100644
--- a/luci-theme-design/htdocs/luci-static/design/css/style.css
+++ b/luci-theme-design/htdocs/luci-static/design/css/style.css
@@ -1,2 +1,2 @@
: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_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_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:400;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:0;padding:0;height:100%;font-family:-apple-system,microsoft yahei!important;font-size:.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:100%;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:.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:0 0;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:#09c}abbr{text-decoration:underline;cursor:help}br{display:block;margin-bottom:.2px;content:''}hr{margin:1rem 0;border-color:#eee;opacity:.1}header,.main{width:100%;position:absolute}header{background-color:var(--bgwhite);box-shadow:18rem 2px 4px rgba(0,0,0,.08);transition:box-shadow .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}footer>a{color:#9a258f;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:400!important;font-variant:normal!important;text-transform:none!important;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.node-services-passwall2 #cbi-passwall2{text-align:center}.node-services-passwall2 input.cbi-button.cbi-button{max-width:unset}.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!important;display:inline-block;cursor:pointer;color:#666}.zonebadge{border-radius:6px;padding:5px}.zonebadge em{padding:3px}svg{background-color:var(--sectionbgColor)}.cbi-section .cbi-section{margin:10px}.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-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[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:20px 20px;height:20px;width:20px;padding:0 0 0 20px;width:0}.ifacebox-body img{background-size:20px 20px;width:20px!important;height:20px!important;padding:0 0 0 20px!important}.ifacebox-head{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:0;position:relative;height:100%;height:calc(100% - 4rem)}.main>.loading{position:fixed;width:100%;height:100%;z-index:1000;display:block;background-color:#f0f0f0;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:.2rem;display:inline-block}.node-main-login{text-align:center;background-color:var(--bgwhite)!important}.node-main-login .cbi-section-node>.cbi-value:nth-of-type(2n){background:0 0}.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:0!important;margin-bottom:1rem;display:inline;background:0 0;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 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;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjNjI3Mzg2IiBkPSJNMTIgNGE0IDQgMCAwIDEgNCA0IDQgNCAwIDAgMS00IDQgNCA0IDAgMCAxLTQtNCA0IDQgMCAwIDEgNC00bTAgMTBjNC40Mi4wIDggMS43OSA4IDR2Mkg0di0yYzAtMi4yMSAzLjU4LTQgOC00eiIvPjwvc3ZnPg==)}.node-main-login>.main .cbi-input-password{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjNjI3Mzg2IiBkPSJNMTIgMTdhMiAyIDAgMCAwIDItMiAyIDIgMCAwIDAtMi0yIDIgMiAwIDAgMC0yIDIgMiAyIDAgMCAwIDIgMm02LTlhMiAyIDAgMCAxIDIgMnYxMGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlYxMGEyIDIgMCAwIDEgMi0yaDFWNmE1IDUgMCAwIDEgNS01IDUgNSAwIDAgMSA1IDV2MmgxbS02LTVhMyAzIDAgMCAwLTMgM3YyaDZWNmEzIDMgMCAwIDAtMy0zeiIvPjwvc3ZnPg==)}.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 0 4px transparent;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;line-height:60px;color:var(--logo_color);cursor:default;display:block;width:18rem;height:60px;text-align:center;float:left;font-weight:900;letter-spacing:1px;padding:0 4.5rem;transition:.1s ease-in-out}header>.container>a[class=brand]:after{content:"";font-size:14px;font-family:Tahoma;position:absolute;top:-10px;font-weight:400!important}header>.container>.brand-hostname{font-size:14px;line-height:60px;color:#555;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;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:.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:700;font-size:1.1rem;transition:all .1s}.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:700!important;text-transform:none!important;speak:none;font-size:1.2rem!important;-webkit-font-smoothing:antialiased}.main>.main-left>.nav>.slide>.menu::after{right:.5rem;top:.8rem;font-family:design!important;font-style:normal!important;font-variant:normal!important;content:"\eb03";float:right;padding-right:5px;line-height:1.6;-moz-osx-font-smoothing:grayscale;transition:all .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=QuickStart]:before{content:"\e67e"}.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=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>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:.675rem 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:.675rem 0 .675rem 2.5rem;text-decoration:none;cursor:pointer}.main>.main-left>.nav>.slide>.menu2{display:block;padding:.675rem 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:#fff}.main>.main-left>.nav>.slide>.menu2:hover{background:var(--activeColor);color:#fff}.main>.main-left>.nav>.slide:hover{background:0 0}.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:0 0!important;border:none!important;text-transform:capitalize;font-size:1rem;margin:.1rem .5rem;padding:.675rem 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:#fff}.main>.main-left>.nav>.slide>.slide-menu>.active>a{color:#fff}.main>.main-left>.nav>.slide>.slide-menu>li:hover{background:var(--activeColor);color:#fff!important;transition:all .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}h1{color:var(--activeColor);font-size:20px;padding-bottom:10px;border-bottom:1px solid #eee}h2{color:var(--activeColor);padding:0 12px 6px;text-transform:capitalize}h3{font-size:1.2rem;color:var(--activeColor);font-weight:700;padding:0 12px 10px}h4{}label{display:inline-block;vertical-align:middle}fieldset{padding:10px;border:1px;font-weight:400;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);-webkit-overflow-scrolling:touch}fieldset>legend{display:none!important}fieldset>fieldset{padding:0}.panel-title{width:100%;display:block;padding:10px;font-weight:700;font-size:1rem}table{border-spacing:0;border-collapse:collapse;width:100%;border:0 solid #eee!important;margin:0!important}strong{font-weight:700;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:#c06}fieldset>table>tbody>tr:nth-of-type(odd){background-color:var(--sectionbgColor2)}#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%}.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}#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:.75rem!important;line-height:130%;color:var(--progressbartxtColor)!important}.cbi-value-field{width:65%}.node-system-admin .cbi-value-field li div{padding:0!important}.node-system-admin em{padding:0!important}.node-nlbw-display hr{display:none}.node-nlbw-display p{line-height:1.5;padding:0 10px 5px}#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}.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}.node-status-routes .cbi-section-node{max-height:500px;overflow-y:auto;overflow-x:auto}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}#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}.cbi-button{-webkit-appearance:none;text-transform:uppercase;color:#fff;background-color:#337ab7;transition:all .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:0 8px;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:#6a65d6}.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:.6;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:#536473!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}.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;float:left;display:block;white-space:nowrap;height:2.5rem;line-height:2.5rem;font-size:.92rem}.cbi-tabmenu>li>a{text-decoration:none;float:left;display:block;white-space:nowrap;height:2.5rem;line-height:2.5rem;font-size:.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{}.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{}.cbi-value-helpicon>img{display:none}.cbi-value-helpicon:before{content:"\f059"}.cbi-value-description{opacity:.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:400}.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}.cbi-section-descr{padding:3px 10px}.cbi-map-descr{padding:5px 5px 5px 12px}.cbi-map-descr h3{font-size:.92rem;font-weight:400;color:#666}#cbi-vsftpd .cbi-map-descr{color:var(--activeColor);padding:0 12px 0;font-size:1.2rem;font-weight:700}.hidden{display:none}.left{text-align:left!important}.right{text-align:right!important}.right .cbi-button{height:20px;line-height:20px;min-width:60px;margin:0}.inline{display:inline}.cbi-page-actions{text-align:center}.cbi-value input[type=password],.cbi-value input[type=text]{}.ifacebadge{display:inline-flex;padding:5px;background-color:var(--badgebgColor);align-content:center;align-items:center;border-radius:var(--commonRadius1);border:var(--badgeBorder);color:#666}#content_syslog{padding:5px;margin-top:10px;border-radius:10px;background-color:var(--sectionbgColor);box-shadow:3px 3px 3px transparent}.ifacebadge>img{float:right;margin-left:.3rem}img.cbi-image-button{vertical-align:middle}fieldset.cbi-section{border:var(--sectionBorder);margin-bottom:20px;border-radius:10px;margin-top:5px}.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:.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}#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 #0f0;background-color:#cfc;display:block;padding:2px;color:#000;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 red;background-color:#fcc;display:block;font-style:normal;padding:2px;color:#000;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 #ccc;background-color:#eee;display:block;font-style:normal;padding:2px;color:#000;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:0;color:#000;overflow-x:auto}.uci-change-legend{padding:5px}.uci-change-legend-label{width:150px;float:left;display:flex;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:.5rem}#iwsvg,#iwsvg2,#bwsvg{border:var(--sectionBorder)!important;font-family:-apple-system;background:0 0!important}.ifacebox{border:var(--ifaceboxBorderColor) 1px solid;border-radius:var(--commonRadius1);font-size:.92rem;font-weight:400}.ifacebox-head{color:#fff}.ifacebox-body small{font-size:.8rem!important;padding:5px}.ifacebox-body strong{color:#f7f7f7;font-size:0!important}.cbi-image-button{}.zonebadge>.ifacebadge{padding:3px 5px;margin:5px}.zonebadge>input[type=text]{padding:.16rem 1rem;min-width:10rem;margin-top:.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}div.cbi-value var,td.cbi-value-field var{font-style:italic;color:#0069d6}small{font-size:small;font-weight:400!important;white-space:normal}.cbi-button-up,.cbi-button-down{display:inline-block;min-width:0;font-size:.9rem}.cbi-optionals{padding:1rem 1rem 0;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:.7rem 0;border-radius:20px}#xhr_poll_status_off{padding:.7rem 0;border-radius:20px}.label{padding: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-right:.5rem;border-radius:10px;z-index:10;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,.56);content:"";z-index:99;display:none}.node-services-shadowsocksr .cbi-input-textarea,.node-nlbw-config .cbi-input-textarea{}.node-services-shadowsocksr #cbi-logview .cbi-section{padding:0}.node-network-diagnostics .cbi-section{border-radius:10px}.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}.node-system-reboot>.main>.main-right p,.node-system-reboot>.main>.main-right h3{margin-left:12px}.node-system-reboot #maincontent{}.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%}.node-system-packages>.main table tr td:nth-child(1){width:auto!important}.node-system-packages .cbi-section-node .cbi-value-last{}.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{padding:10px;overflow:auto;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);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}.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;padding:12px;border:0;font-weight:400;font-style:normal;line-height:1;font-family:inherit;min-width:inherit;overflow-x:auto;overflow-y:hidden;box-shadow:3px 3px 3px transparent;border-radius:10px;background-color:var(--bgwhite);-webkit-overflow-scrolling:touch}.node-system-flashops fieldset fieldset{border:none}.node-system-flashops br{display:none}.node-system-flashops .cbi-section{}.node-system-flashops .cbi-section-descr{padding:12px;line-height:1.5;border-radius:6px}.node-status-iptables .cbi-tabmenu,.node-system-packages .cbi-tabmenu,.node-system-flashops .cbi-tabmenu{}#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}.node-status-realtime table>tbody>tr>td{text-align:left!important;padding:10px 3px}.node-status-realtime table[id=connections]>tbody>tr>td{padding:10px 3px;text-align:center!important}.node-status-realtime table{table-layout:auto!important}.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}.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}body.lang_pl.node-main-login .cbi-value-title{width:12rem}#detail-bubble{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{}header>.container{}.main{height:calc(100% - 3.5rem)}.main-left{width:calc(0% + 18rem);top:50px}.main-right{width:calc(100% - 18rem)}table{font-size:.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}#detail-bubble{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){.main-left{width:0;position:fixed;z-index:100}.main-right{width:100%}.showSide{margin:0;padding:0;display:inline-block;position:absolute;width:300px;height:50px;padding:1.15rem 2rem}.showSide:before{content:"\e20e";font-size:1.7rem}#maincontent>.container{margin: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}.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}#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}#detail-bubble #bubble-table{display:inline-table;overflow:auto}header{box-shadow:0 2px 4px rgba(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:.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}#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}#detail-bubble #bubble-table{display:inline-table;overflow:auto}}@media screen and (max-width:470px){#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}#detail-bubble #bubble-table{display:block;overflow:auto}.main-right>#maincontent{overflow:auto}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{}select{width:100%}header{height:55px}h3{padding:0 10px 10px}.showSide{height:45px}#maincontent>.container{margin: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:0;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:.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{}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%}#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}#detail-bubble #bubble-table{display:block;overflow:auto}}@media screen and (max-width:315px){.label{position:absolute;right:5px;top:-70px}}#intervalSelect{height:40px!important}.commandbox div{position:unset!important}#cbi-netspeedtest-homebox-{display:unset!important}.node-status-realtime .container{overflow:auto}.node-network-network div[onclick*="document.getElementById('cbid.network."],#cbi-network div[onclick*="document.getElementById('cbid.network."]{background-color:unset!important}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}.node-services-aliyundrive-webdav #mask-box{background:transparent}.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}.fb-container .cbi-button{border-radius:var(--commonRadius0);margin:3px 3px 3px 0;height:unset!important}.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}.node-network-network .ifacebox strong{color:var(--ifaceboxFontColor);padding:5px}.node-network-firewall .zonebadge strong,.node-network-firewall label strong{color:var(--ifaceboxFontColor)}.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:#000!important;background-color:unset!important}.node-nas-qbittorrent p#qBittorrent_status input{line-height:unset}.node-system-diskman.dialog-format-active #dialog_format .dialog_box{background:var(--alertBackground);border-radius:var(--commonRadius1)}.node-services-watchcat-plus select[id*="cbi.opt.watchcat"]{width:auto}.node-nas-fileassistant .fb-container .cbi-value-owner,.node-nas-fileassistant .fb-container .cbi-value-perm{display:table-cell}.node-services-adguardhome input[onclick*="window.open('http://'+window.location.hostname+':"]{line-height:0}
+ }[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_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_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:400;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:0;padding:0;height:100%;font-family:-apple-system,microsoft yahei!important;font-size:.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:100%;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:.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:0 0;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:#09c}abbr{text-decoration:underline;cursor:help}br{display:block;margin-bottom:.2px;content:''}hr{margin:1rem 0;border-color:#eee;opacity:.1}header,.main{width:100%;position:absolute}header{background-color:var(--bgwhite);box-shadow:18rem 2px 4px rgba(0,0,0,.08);transition:box-shadow .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}footer>a{color:#9a258f;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:400!important;font-variant:normal!important;text-transform:none!important;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.node-services-passwall2 #cbi-passwall2{text-align:center}.node-services-passwall2 input.cbi-button.cbi-button{max-width:unset}.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!important;display:inline-block;cursor:pointer;color:#666}.zonebadge{border-radius:6px;padding:5px}.zonebadge em{padding:3px}svg{background-color:var(--sectionbgColor)}.cbi-section .cbi-section{margin:10px}.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-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[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:20px 20px;height:20px;width:20px;padding:0 0 0 20px;width:0}.ifacebox-body img{background-size:20px 20px;width:20px!important;height:20px!important;padding:0 0 0 20px!important}.ifacebox-head{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:0;position:relative;height:100%;height:calc(100% - 4rem)}.main>.loading{position:fixed;width:100%;height:100%;z-index:1000;display:block;background-color:#f0f0f0;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:.2rem;display:inline-block}.node-main-login{text-align:center;background-color:var(--bgwhite)!important}.node-main-login .cbi-section-node>.cbi-value:nth-of-type(2n){background:0 0}.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:0!important;margin-bottom:1rem;display:inline;background:0 0;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 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;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjNjI3Mzg2IiBkPSJNMTIgNGE0IDQgMCAwIDEgNCA0IDQgNCAwIDAgMS00IDQgNCA0IDAgMCAxLTQtNCA0IDQgMCAwIDEgNC00bTAgMTBjNC40Mi4wIDggMS43OSA4IDR2Mkg0di0yYzAtMi4yMSAzLjU4LTQgOC00eiIvPjwvc3ZnPg==)}.node-main-login>.main .cbi-input-password{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBmaWxsPSIjNjI3Mzg2IiBkPSJNMTIgMTdhMiAyIDAgMCAwIDItMiAyIDIgMCAwIDAtMi0yIDIgMiAwIDAgMC0yIDIgMiAyIDAgMCAwIDIgMm02LTlhMiAyIDAgMCAxIDIgMnYxMGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlYxMGEyIDIgMCAwIDEgMi0yaDFWNmE1IDUgMCAwIDEgNS01IDUgNSAwIDAgMSA1IDV2MmgxbS02LTVhMyAzIDAgMCAwLTMgM3YyaDZWNmEzIDMgMCAwIDAtMy0zeiIvPjwvc3ZnPg==)}.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 0 4px transparent;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;line-height:60px;color:var(--logo_color);cursor:default;display:block;width:18rem;height:60px;text-align:center;float:left;font-weight:900;letter-spacing:1px;padding:0 4.5rem;transition:.1s ease-in-out}header>.container>a[class=brand]:after{content:"";font-size:14px;font-family:Tahoma;position:absolute;top:-10px;font-weight:400!important}header>.container>.brand-hostname{font-size:14px;line-height:60px;color:#555;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;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:.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:700;font-size:1.1rem;transition:all .1s}.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:700!important;text-transform:none!important;speak:none;font-size:1.2rem!important;-webkit-font-smoothing:antialiased}.main>.main-left>.nav>.slide>.menu::after{right:.5rem;top:.8rem;font-family:design!important;font-style:normal!important;font-variant:normal!important;content:"\eb03";float:right;padding-right:5px;line-height:1.6;-moz-osx-font-smoothing:grayscale;transition:all .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=QuickStart]:before{content:"\e67e"}.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=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>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:.675rem 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:.675rem 0 .675rem 2.5rem;text-decoration:none;cursor:pointer}.main>.main-left>.nav>.slide>.menu2{display:block;padding:.675rem 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:#fff}.main>.main-left>.nav>.slide>.menu2:hover{background:var(--activeColor);color:#fff}.main>.main-left>.nav>.slide:hover{background:0 0}.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:0 0!important;border:none!important;text-transform:capitalize;font-size:1rem;margin:.1rem .5rem;padding:.675rem 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:#fff}.main>.main-left>.nav>.slide>.slide-menu>.active>a{color:#fff}.main>.main-left>.nav>.slide>.slide-menu>li:hover{background:var(--activeColor);color:#fff!important;transition:all .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}h1{color:var(--activeColor);font-size:20px;padding-bottom:10px;border-bottom:1px solid #eee}h2{color:var(--activeColor);padding:0 12px 6px;text-transform:capitalize}h3{font-size:1.2rem;color:var(--activeColor);font-weight:700;padding:0 12px 10px}h4{}label{display:inline-block;vertical-align:middle}fieldset{padding:10px;border:1px;font-weight:400;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);-webkit-overflow-scrolling:touch}fieldset>legend{display:none!important}fieldset>fieldset{padding:0}.panel-title{width:100%;display:block;padding:10px;font-weight:700;font-size:1rem}table{border-spacing:0;border-collapse:collapse;width:100%;border:0 solid #eee!important;margin:0!important}strong{font-weight:700;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:#c06}fieldset>table>tbody>tr:nth-of-type(odd){background-color:var(--sectionbgColor2)}#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%}.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}#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:.75rem!important;line-height:130%;color:var(--progressbartxtColor)!important}.cbi-value-field{width:65%}.node-system-admin .cbi-value-field li div{padding:0!important}.node-system-admin em{padding:0!important}.node-nlbw-display hr{display:none}.node-nlbw-display p{line-height:1.5;padding:0 10px 5px}#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}.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}.node-status-routes .cbi-section-node{max-height:500px;overflow-y:auto;overflow-x:auto}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}#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}.cbi-button{-webkit-appearance:none;text-transform:uppercase;color:#fff;background-color:#337ab7;transition:all .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:0 8px;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:#6a65d6}.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:.6;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:#536473!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}.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;float:left;display:block;white-space:nowrap;height:2.5rem;line-height:2.5rem;font-size:.92rem}.cbi-tabmenu>li>a{text-decoration:none;float:left;display:block;white-space:nowrap;height:2.5rem;line-height:2.5rem;font-size:.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{}.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{}.cbi-value-helpicon>img{display:none}.cbi-value-helpicon:before{content:"\f059"}.cbi-value-description{opacity:.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:400}.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}.cbi-section-descr{padding:3px 10px}.cbi-map-descr{padding:5px 5px 5px 12px}.cbi-map-descr h3{font-size:.92rem;font-weight:400;color:#666}#cbi-vsftpd .cbi-map-descr{color:var(--activeColor);padding:0 12px 0;font-size:1.2rem;font-weight:700}.hidden{display:none}.left{text-align:left!important}.right{text-align:right!important}.right .cbi-button{height:20px;line-height:20px;min-width:60px;margin:0}.inline{display:inline}.cbi-page-actions{text-align:center}.cbi-value input[type=password],.cbi-value input[type=text]{}.ifacebadge{display:inline-flex;padding:5px;background-color:var(--badgebgColor);align-content:center;align-items:center;border-radius:var(--commonRadius1);border:var(--badgeBorder);color:#666}#content_syslog{padding:5px;margin-top:10px;border-radius:10px;background-color:var(--sectionbgColor);box-shadow:3px 3px 3px transparent}.ifacebadge>img{float:right;margin-left:.3rem}img.cbi-image-button{vertical-align:middle}fieldset.cbi-section{border:var(--sectionBorder);margin-bottom:20px;border-radius:10px;margin-top:5px}.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:.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}#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 #0f0;background-color:#cfc;display:block;padding:2px;color:#000;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 red;background-color:#fcc;display:block;font-style:normal;padding:2px;color:#000;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 #ccc;background-color:#eee;display:block;font-style:normal;padding:2px;color:#000;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:0;color:#000;overflow-x:auto}.uci-change-legend{padding:5px}.uci-change-legend-label{width:150px;float:left;display:flex;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:.5rem}#iwsvg,#iwsvg2,#bwsvg{border:var(--sectionBorder)!important;font-family:-apple-system;background:0 0!important}.ifacebox{border:var(--ifaceboxBorderColor) 1px solid;border-radius:var(--commonRadius1);font-size:.92rem;font-weight:400}.ifacebox-head{color:#fff}.ifacebox-body small{font-size:.8rem!important;padding:5px}.ifacebox-body strong{color:#f7f7f7;font-size:0!important}.cbi-image-button{}.zonebadge>.ifacebadge{padding:3px 5px;margin:5px}.zonebadge>input[type=text]{padding:.16rem 1rem;min-width:10rem;margin-top:.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}div.cbi-value var,td.cbi-value-field var{font-style:italic;color:#0069d6}small{font-size:small;font-weight:400!important;white-space:normal}.cbi-button-up,.cbi-button-down{display:inline-block;min-width:0;font-size:.9rem}.cbi-optionals{padding:1rem 1rem 0;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:.7rem 0;border-radius:20px}#xhr_poll_status_off{padding:.7rem 0;border-radius:20px}.label{padding: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-right:.5rem;border-radius:10px;z-index:10;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,.56);content:"";z-index:99;display:none}.node-services-shadowsocksr .cbi-input-textarea,.node-nlbw-config .cbi-input-textarea{}.node-services-shadowsocksr #cbi-logview .cbi-section{padding:0}.node-network-diagnostics .cbi-section{border-radius:10px}.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}.node-system-reboot>.main>.main-right p,.node-system-reboot>.main>.main-right h3{margin-left:12px}.node-system-reboot #maincontent{}.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%}.node-system-packages>.main table tr td:nth-child(1){width:auto!important}.node-system-packages .cbi-section-node .cbi-value-last{}.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{padding:10px;overflow:auto;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}.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;padding:12px;border:0;font-weight:400;font-style:normal;line-height:1;font-family:inherit;min-width:inherit;overflow-x:auto;overflow-y:hidden;box-shadow:3px 3px 3px transparent;border-radius:10px;background-color:var(--bgwhite);-webkit-overflow-scrolling:touch}.node-system-flashops fieldset fieldset{border:none}.node-system-flashops br{display:none}.node-system-flashops .cbi-section{}.node-system-flashops .cbi-section-descr{padding:12px;line-height:1.5;border-radius:6px}.node-status-iptables .cbi-tabmenu,.node-system-packages .cbi-tabmenu,.node-system-flashops .cbi-tabmenu{}#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}.node-status-realtime table>tbody>tr>td{text-align:left!important;padding:10px 3px}.node-status-realtime table[id=connections]>tbody>tr>td{padding:10px 3px;text-align:center!important}.node-status-realtime table{table-layout:auto!important}.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}.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}body.lang_pl.node-main-login .cbi-value-title{width:12rem}#detail-bubble{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{}header>.container{}.main{height:calc(100% - 3.5rem)}.main-left{width:calc(0% + 18rem);top:50px}.main-right{width:calc(100% - 18rem)}table{font-size:.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}#detail-bubble{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){.main-left{width:0;position:fixed;z-index:100}.main-right{width:100%}.showSide{margin:0;padding:0;display:inline-block;position:absolute;width:300px;height:50px;padding:1.15rem 2rem}.showSide:before{content:"\e20e";font-size:1.7rem}#maincontent>.container{margin: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}.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}#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}#detail-bubble #bubble-table{display:inline-table;overflow:auto}header{box-shadow:0 2px 4px rgba(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:.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}#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}#detail-bubble #bubble-table{display:inline-table;overflow:auto}}@media screen and (max-width:470px){#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}#detail-bubble #bubble-table{display:block;overflow:auto}.main-right>#maincontent{overflow:auto}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{}select{width:100%}header{height:55px}h3{padding:0 10px 10px}.showSide{height:45px}#maincontent>.container{margin: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:0;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:.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{}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%}#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}#detail-bubble #bubble-table{display:block;overflow:auto}}@media screen and (max-width:315px){.label{position:absolute;right:5px;top:-70px}}#intervalSelect{height:40px!important}.commandbox div{position:unset!important}#cbi-netspeedtest-homebox-{display:unset!important}.node-status-realtime .container{overflow:auto}.node-network-network div[onclick*="document.getElementById('cbid.network."],#cbi-network div[onclick*="document.getElementById('cbid.network."]{background-color:unset!important}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}.node-services-aliyundrive-webdav #mask-box{background:transparent}.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}.fb-container .cbi-button{border-radius:var(--commonRadius0);margin:3px 3px 3px 0;height:unset!important}.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}.node-network-network .ifacebox strong{color:var(--ifaceboxFontColor);padding:5px}.node-network-firewall .zonebadge strong,.node-network-firewall label strong{color:var(--ifaceboxFontColor)}.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:#000!important;background-color:unset!important}.node-nas-qbittorrent p#qBittorrent_status input{line-height:unset}.node-system-diskman.dialog-format-active #dialog_format .dialog_box{background:var(--alertBackground);border-radius:var(--commonRadius1)}.node-services-watchcat-plus select[id*="cbi.opt.watchcat"]{width:auto}.node-nas-fileassistant .fb-container .cbi-value-owner,.node-nas-fileassistant .fb-container .cbi-value-perm{display:table-cell}.node-services-adguardhome input[onclick*="window.open('http://'+window.location.hostname+':"]{line-height:0}
diff --git a/luci-theme-opentopd/README.md b/luci-theme-opentopd/README.md
index 13590e06c..a5ae17336 100644
--- a/luci-theme-opentopd/README.md
+++ b/luci-theme-opentopd/README.md
@@ -143,24 +143,38 @@ opentopd是一款基于luci-theme-material构建,使用HTML5、CSS3编写的Luci
### 你可以随意使用其中的源码,但请注明出处。
+
+
+## 使用与授权相关说明
+
+- 本人开源的所有源码,任何引用需注明本处出处,如需修改二次发布必告之本人,未经许可不得做于任何商用用途。
+
+
# My other project
-网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
+- 网络速度测试 :https://github.com/sirpdboy/NetSpeedTest
-定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
+- 定时设置插件 : https://github.com/sirpdboy/luci-app-autotimeset
-关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
+- 关机功能插件 : https://github.com/sirpdboy/luci-app-poweroffdevice
-opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
+- opentopd主题 : https://github.com/sirpdboy/luci-theme-opentopd
-opentoks 主题: https://github.com/sirpdboy/luci-theme-opentoks [仿KOOLSAHRE主题]
+- kucat 主题: https://github.com/sirpdboy/luci-theme-kucat
-btmob 主题: https://github.com/sirpdboy/luci-theme-btmob
+- 家长控制: https://github.com/sirpdboy/luci-theme-parentcontrol
-系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
+- 系统高级设置 : https://github.com/sirpdboy/luci-app-advanced
-ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
+- ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
+- 进阶设置(系统高级设置+主题设置kucat/agron/opentopd): https://github.com/sirpdboy/luci-app-advancedplus
+
+- 设置向导: https://github.com/sirpdboy/luci-app-wizard
+
+- 分区扩容: https://github.com/sirpdboy/luci-app-partexp
+
+- lukcy大吉: https://github.com/sirpdboy/luci-app-lukcy
## 捐助
@@ -173,4 +187,3 @@ ddns-go动态域名: https://github.com/sirpdboy/luci-app-ddns-go
-