From b591c273638ff7bc134d0cd59e4499ec04cc56bf Mon Sep 17 00:00:00 2001 From: CN_SZTL Date: Sun, 6 Dec 2020 13:14:37 +0800 Subject: [PATCH] luci-theme-edge: add package --- CONTRIBUTED.md | 3 +- package/ctcgfw/luci-theme-edge/Makefile | 16 + .../htdocs/luci-static/edge/background/1.jpg | Bin 0 -> 27946 bytes .../htdocs/luci-static/edge/background/2.jpg | Bin 0 -> 21993 bytes .../htdocs/luci-static/edge/background/3.jpg | Bin 0 -> 37438 bytes .../htdocs/luci-static/edge/cascade.css | 4120 +++++++++++++++++ .../htdocs/luci-static/edge/custom.css | 46 + .../htdocs/luci-static/edge/favicon.ico | Bin 0 -> 15406 bytes .../htdocs/luci-static/edge/fonts/argon.woff | Bin 0 -> 8808 bytes .../htdocs/luci-static/edge/glare.svg | 29 + .../htdocs/luci-static/edge/icons/arrow.svg | 1 + .../htdocs/luci-static/edge/icons/spinner.svg | 1 + .../htdocs/luci-static/edge/js/jquery.min.js | 2 + .../htdocs/luci-static/edge/js/script.js | 321 ++ .../htdocs/luci-static/edge/js/waves.js | 41 + .../htdocs/luci-static/edge/landscape.css | 75 + .../htdocs/luci-static/edge/logo.png | Bin 0 -> 14025 bytes .../htdocs/luci-static/edge/sun.svg | 14 + .../htdocs/luci-static/edge/waves.css | 135 + .../luasrc/view/header_login.htm | 38 + .../luasrc/view/themes/edge/footer.htm | 36 + .../luasrc/view/themes/edge/header.htm | 240 + .../luasrc/view/themes/edge/header_login.htm | 121 + .../luasrc/view/themes/edge/sysauth.htm | 139 + .../root/etc/uci-defaults/30_luci-theme-edge | 7 + 25 files changed, 5384 insertions(+), 1 deletion(-) create mode 100644 package/ctcgfw/luci-theme-edge/Makefile create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/background/1.jpg create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/background/2.jpg create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/background/3.jpg create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/cascade.css create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/custom.css create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/favicon.ico create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/fonts/argon.woff create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/glare.svg create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/icons/arrow.svg create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/icons/spinner.svg create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/js/jquery.min.js create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/js/script.js create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/js/waves.js create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/landscape.css create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/logo.png create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/sun.svg create mode 100644 package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/waves.css create mode 100644 package/ctcgfw/luci-theme-edge/luasrc/view/header_login.htm create mode 100644 package/ctcgfw/luci-theme-edge/luasrc/view/themes/edge/footer.htm create mode 100644 package/ctcgfw/luci-theme-edge/luasrc/view/themes/edge/header.htm create mode 100644 package/ctcgfw/luci-theme-edge/luasrc/view/themes/edge/header_login.htm create mode 100644 package/ctcgfw/luci-theme-edge/luasrc/view/themes/edge/sysauth.htm create mode 100644 package/ctcgfw/luci-theme-edge/root/etc/uci-defaults/30_luci-theme-edge diff --git a/CONTRIBUTED.md b/CONTRIBUTED.md index 2a629f00a3..4b3ea3d128 100644 --- a/CONTRIBUTED.md +++ b/CONTRIBUTED.md @@ -41,7 +41,8 @@ node-request source: [jerrykuku/node-request](https://github.com/jerrykuku/node- luci-app-jd-dailybonus source: [jerrykuku/luci-app-jd-dailybonus](https://github.com/jerrykuku/luci-app-jd-dailybonus).
luci-app-oled source: [NateLol/luci-app-oled](https://github.com/NateLol/luci-app-oled).
luci-app-beardropper source: [NateLol/natelol](https://github.com/NateLol/natelol).
-luci-app-vssr source: [jerrykuku/luci-app-vssr](https://github.com/jerrykuku/luci-app-vssr). +luci-app-vssr source: [jerrykuku/luci-app-vssr](https://github.com/jerrykuku/luci-app-vssr).
+luci-theme-edge source: [garypang13/luci-theme-edge](https://github.com/garypang13/luci-theme-edge). ## License ### Depend on their own License. diff --git a/package/ctcgfw/luci-theme-edge/Makefile b/package/ctcgfw/luci-theme-edge/Makefile new file mode 100644 index 0000000000..99b0065eca --- /dev/null +++ b/package/ctcgfw/luci-theme-edge/Makefile @@ -0,0 +1,16 @@ +# +# Copyright (C) 2008-2019 GaryPang +# +# This is free software, licensed under the Apache License, Version 2.0 . +# + +include $(TOPDIR)/rules.mk + +LUCI_TITLE:=Edge Theme +LUCI_DEPENDS:= + +PKG_LICENSE:=Apache-2.0 + +include $(TOPDIR)/feeds/luci/luci.mk + +# call BuildPackage - OpenWrt buildroot signature diff --git a/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/background/1.jpg b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/background/1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5f7ce31545229234dc76adf749653c398be68ca8 GIT binary patch literal 27946 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 Zxb@pP$QWBphnG9 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�+b{VNAr z-OwYSqWfPXud3!ZYRJ)cEgbMf2zm(qODXzZokdTZRk z>lMQfc`ElV`@Px+@+nJ<_BJCZ;4bzNEUY z?!r==R6p5E1#Zr+}vX?55|M zqoAqm-P|Gyg-Ly>mcxXLnl0TyYE-_yFB>)yR+pM(^yph3!q+4BC)hQ|T~UMYZUw27 zgf~-4Wf^+38(I+RMbo~E{lZtrI42~8ADvy4(KcbV&7}D5rLeW+bFRbT{$1yBW!91|Pc`z;+SF)G>2N?- z^=F=<=aQTvIOPv~03R^|&<^H5`Uk)*F!?}$j)VStQeno`>PU=e;#c~O>dZQFV_7-; z2j76tkDlAW?Eiy8|2ge@G$YRBmOl4bN@q#_deBSt$l3448kijA>f} zTHI8Q)>*876c5(^ABcjWt=8YIRd)g*H-T_a^qfdaIYO2bw_n5MKc)!KfB1+S&_?tN zz*H9jhWJ|XuC)=s)wKUuezb}L+J=5$m2m&^JHBES9IuoM?KW@2 zO!qJbNDd1_@>~$HCNnQJUUacVhz$8Z(jKzvKrtNUAnSk6Ui>sA@~K4d#V{4n$84zf z8(H6`RmIJ%y8`Luz#U#0**smWGpaQ-d(x59UCZ>|Paoch|Lw5IHNhLV?DMJsAFVH# zC>yf~r%P<{prnF1(aJz7L0s6~B}cqfY&*j&e2X8P4c3cMEK<2>5H`^)k+G_cH}xXu zP?_aLE>FY*M@<54N zaXK9=HB3H5rJi2+U_a?-QOW0BTE=!+QxMDj8`%|usv2jJ7s;o3eIVOm4%RGE_%nS6 zsY-$&ZBviu-^I@%s@R@`AW5N^HvQzO{F%P7L|vhL$9tB0@9VIt1&F^r-5pJc&@xI~ z*G96zsm2q;dzj9~GFM#+ayK=du{l3Fd71N)&h5fTq4-@w^zTLI9gpbJr_{Z`ooqEW z_$`{8gpCxYLN49rtI`-Kg}B%@q$Iw9*>6SR6c$SC82u)S`$h-sWL0tlaB6H-zL_lr zN^w+J`a&=ThuDt6dP*w`T67O8q`GgkQ;NiHqK3(tlB|PTpt!D|qkL zgBwkyrSDQ9PDZs)sPTmHSW7BZN3&$u9FW=Vqhp@xI)9-TF!&jg!+ud52oQouLXRY6;df2QT1htYlv6D2U)F&ws4)ibOCf6-kPMgsU7fD=@! zgM~uRumW@-fp!|NXCL|uG9RG;_$axUNeGS6#w}nfr?S2QyiWV{u0j3x)Gu<>-s)kMYeZ%`zk8gde*Kw1p5M(+1!u>0@!WQRa*r=Vd z`>7+D8FAw4;w(h-Dl@&C|3+HU!r_{^7q_8B!k$`yHOg6|f&3wZde$#t`syo?vUZ{5 z)?RO+sUqm81JU%@g^;D(P6aDIQ>d%j{3Sg6~-P zCB@Q(lS>LwtTEX{TJ{JEaPL}u3NEIf_XH7x@HLVtFDd5rS8`v}I$+%$M%~1pS`6iYaI0tXS3%g0^RgRHu#W=YNORuH! zTjNscYhiK+9@?D3_ZS^wPgLJ(&gw45D{}4?;}=Qa{K7S4##Cb#{Vv&G zoTo4$0fhYo^-?S0$k{Nl!zgX!Ru<(}#fM~n2j29Lot+~TS?b)ZM2m?TbK?FFTM|j$ zQ+DB4Yl98@+i0@Ex@J8*{wHtg*L1RuABd{`0RY>pp58GK=da#1aV!*yo2n3 zhYN>0TWYd{Um+!LXch>)Ds-PT)flx;ijHevN!TaG9#e-~CffI6kVq37KW?5VF;&B? z+1J_$DVHk8kTL1GARGT#2sP8J1v(#a+f~$bKXXEN)=ZQGg zTh_2`=1#}vi-Oi-|FC|3Zd=9$T|~M{BCpI(aE_BrcJvn4mmTh3l=L!G<1F%d$}m5| z8lFYDV;jbx(i}&4z;DiBn#WW63An!NU34QBiUS;GUh#D0fvJkio!{FSm-Vwx`OZ|t zhe+#$tG1JWNA={d3X{~yESKtSIUptRb~<##&msuRfg6Xnt;H4rZp=RUSq@+Fj1%|no}Tk^2#XP*T%K zW3|L=<6m7`NV0B70>pAu)JV2aeHpUG=Z_+CE9$*8w=3x=K2ta2vNrlvAyPwf4)beMJ>^y|1BbjyRD55!*W2Yzayx z0gvV2yQS0bPcC$2^daE2z2!@CpTH zkL?XNdJs8oM@3i)sKr9=#(Q_3=^5v3A`0BOg*NFPLdBhjDS6u)H32Z@h$t=d`plVj zGostcBB{Yy*X_-oas^DobH+0kFdPyorqvrgdnH{N(*lV}YD|4efQBZ5i8rQA+%}Q1^`5)PA`8WKlgC zNm+(sLmcGSHmzBqMae^I&5qJ6gj%fFHkfYzS#>)*J*apas}8>{g>P3uBCe>mnoSGa zllzwxO{VaD!vj`mZt_$nc9J@kSQ{M;s4k<*tzAUbGlq__P|_y5N@bWe&v2Es1tg`0 zJa3YEn*YifW)Wst1=hip+eEV-Mt#{Oe;x3@e9#}?0qr-SIR`Y+b{&WUe#3Q?`7h$2 z??9jY8=?NMYyV#n=zpS7bR?{b_TZ7Z040-Bi8-pPs$wOVp9yPE7P_UXV(BQTqA4mY z3hjt0+9_JeFiq`$v+r1lDn$L1AKlmba&%N0#tt{HHjS#Icq-8w#LgCk(I@OO3zzO; zYnXjtIygD@or)<1$!FQu$~<$3xBhj%jB97d#qD=uc8)`9DbI5R z>8dw1&*Y?GjCv*q7LQ$87oO!fg|C9_4Q!~_%D(j2j6?Id`m<3Aj5><#4fh6!kW8`m8Nxp^aWi((mcYnCfqV%a>1B(34Y?BDVg?9<`i+HI3213C4oCa_vE3B6t=Z+6HxobG z73emnOv>RGTOECFs7nXs8eXA(+Z_Qpj3%r~ykaR&-Qcq>axE;$q_UXRAUD$7!oErI z=<3;5uoK$sfG0~oD&F(fNLsbz#J$v~V)Iv^EQB-nQV!dmHuU@46=-vu z@^;@7Mr6?Qft+`N?Ue!qw;W|Qlx;Ter`RGZ;|LVHzC}}WGUcSxJf+gRwL&dsL?=3d zG}?0N<+e+jfB*VYA4NjY+uu-9*wmBSd{$1Z9y}4mbnr^%ckdB6Ni8Wgii&nEcL<_>mrqM-*WZQOG92HPO_v)<0#NzW~M(M>=VWwl`4O6 zGewqPXeB*P@)Ul9)MG=&5c}EqBi5=p?f!gUItm=K6)`&fZ2eF8XSGBK+7~;nuY!LF z);|2&a{msr_NgQ*zM0sse05K-V(R2#)-9NWh8-5FgyW@0xNefBvAS2c-*~n$eK_WD zsT~$|?`JR{&$)QnErk!1^kTh*@x(L@CAqv0H7P!)v|}AGWWIxU*2vv7dVpf6E3AbJ z;K~>0fsMVP+n!Ug@#}ii=fjnLam4C1>6P}r0z7T0y=@ErrGb#oelkRoQ51*Wk~lrk>ca3S?04aY#_3$9THb6Wn@f^wB-`v#bW%gb#&fyDC}Blv znTvM63V91qMJF9^ID#ngzLRHP5Uc9v`x^SPehZi7<0yBr`SKA8@?1zj?LhH4;hE}o zDf8oVrpJ9HBITk?L6{%$Heuwi2+m41IoMoDaMTq+2Eo)8`42hqSl11u>JA5$`6dUr zE*XG;6OWZ8hzJCImjhj@+WW}5X-I6;1h<*_=<5r{UN$>T=Oe&Hppp{WqAszNX9o4@>XAIS8~*1+eyic)WkS zDD)iw?*=e&K*|D54JQHY`ycO#9qXS1z)xc5VFv-ek`5n|BW9E)Ge$v^BSNU%$&80- zP^eC*j;~G=fV%Pa@tLK0{q<#qkp6wyT=QTvosOZmwW?X;lm+vlZU=01PZ??(8loRM zvMoKdJkj@-j$GAMEom=4&Ro0#`KwTwZr?Tbra+$A!4iM@34YE7CV zjOk%aOdJk)~i=$ z_F{vL_JJdH?|KHvaY&0l@iRx!3sf(W5xroKYr#Y;GGfL}FwQ|72irA>!@Ec@D^B2< z9ww}3(6(E~Vv;zC;1}}5fT}*=K}($$Z41OhW+No`sq}}G?wL=7;R`Bf#cbKxQ26h21m) za{PXIa|`erQsH^aOLM<}^WLoNNunQFf;9JFN3E5`BxaBMl+WjhchclX$I5AJwjLeW zpHE`Jw8~Eb5ISGn}aTKb{F+`q?HgkoO$_g-SD-|wfsJk{<{vl=_ zdy?kw`4~F=;I>^Dfk#vDi%W(;Xrh}wqpnJT9qYKh;U^6yhO+$(Pz?x~sK9!+q>IDR z6Bc16vUck$70Ric2(`k@?fiM>pUiB)|$)F{9?SPNf_H*z{sgJ?2dbzr(@RI+{x9N#OaM-Whd+xm}!jh7H zqbITP&8Oq;{ItnuMK3vph~iWc>a<`nsatSr+8Ve@@GxpuBWeKPkM0wLi0oK{aEyEq zT1kS{#QP0}=0z$YD*dO!SnXW&kXGy55Y4`bvw=30CydP8?rFbl*ufzx6jMNQ%orC= zn^(H0a?6W7LhnQe=Utrb0V`|c65O|-UX%Bi^sR$j%-aX7*hjl?cl||j_JKSm?&kxD z>gA>V?jU+*IFekv^w%+#m6kelTNx%BeJMG%5k^ou8URUonAaLl$B10N`+kIG$LQct zF{}GdNj{lm(mtR4;GzDJ)L4vphI+|# zO;f-qsBGoqoUE6h{x%|D80X$9#bGU~I|Xd*Ta%ns*~`%_Uiq{i-xa58^BzWHN{ZF~ z>*)5wbL~Y_zfapFnfwZ8Jq)IS?`KF?b@0>X=EQF8bm!qMXu;o%vMOcF`79$=G)oo` zvY+tr5;u*W_#8N#iIdeYAM5p&uRoyYR@Qv|xPrLMQwsXD>ijT%Y(qBH=B~fkvC#cZ zxPWoUH)h|qlYmr4x!@$v>4uZbI;jLI`~CR6i?Iz-wea!B(xl>2be3L~V%*&HE;9~N zi#HO)J|CT4~E`i?MAiiKfg`eCY*Yd0MVtyto2&68y@IAC-JY2h!1XtHjdc*xnbVlR<6Hm7GD zjA7quJua$tUi@DC;NS{0k^7WfzPzc|PHeL$;0lx~MwbxDCW3|A*IM!`iWO5QzWFz7 zhCf^E9HW?NMsCQAF3I=k3M6v~Ivk*yoVQXPxXa`v(;+(%lQOfV^0fO$i|Y2N%~A0- zXjuRs51Sz;@(NU0s!D@Vt+m4V?5RwP^yd?BrvNN^cnQTGvD0*V1>*e@sFk{}UjibF zp&78h(_e0U@VcjX(}FVD@q-F0mAG>jNszv(C|kl#irGWEfpsuBsu>&ZGaF4GiDx^bGWubZ}Cp@ zSx|s5-KB%(0tT07+xA=#+my1B@B`=S8OAK^0A+e&W72LFmc$g5Mm(7mP#*33h?o8J zeX_9v0zJ@x{VbXk8c@|T()-nv%#+O>s4JeFuEpz;8q#@7?a`d90~iTi24a3|f9Z15 z^H7+pNG)&C&SqQ(yJ?Weu>Lgz1$(z2V}<5QF-kTZB(S(_kbG7y3w+$^Ri=uQ?Y44Wg;vZKtx{bU9P*mM@xuC;;p$+AL8I$cS5T%6KKzu1IW+>Zp zqF)}I5+WvyQ_cO3Lso!6x(kbKKhi^cQD=~*dsColcHu+nBXAfdpTkXr94Id0wSl#a zegvh|lLv(wwsPZRRLPY_9v90?dIbPjc^6R&j;NkP8y_P4^GJHuJcmbb+Ok$NvN zb$473lyFM;fakN(dCAQ;eINL=b=y!kN;Y7nF1M3Kwg;rGV)AR7s_9K6eNZ`) z2N-X3^!iUp$scO$Pg%)zI;r*#{rv~nfCF@m3EII!msKSENxdSjD^~vT=D=vC9bLEa zZ_=Mo%@mD-`3VF7P@+K+1ObS6B0*I}b|NbkM@I;Ml!mlpce<0B0!>*HYOYMhN&TLN z(=%o+`wX$r#W*tx-NDDk3d<%+_)9SvI|J(n1}pwV?&Qni&8brt1wYJ8Qcg=|WYxkp zD9cq2Lf&j$f$knuKtL2~3%XxP@*?x7t6VjHL?xFrX6n2Nqbsq0T|Gv~C#$FV>aBj- z(44>4{sKh-*>*6Ivr#e6Y2t|0jemarAaBe06WN~(2?UHZKK*L$Y55a;Fl zbRW}Oy#2&_ONZWH< zWxM1VzlV*baHT#;wy3&DomtO|M{I96NiZ~4XBc&j3dT*WjH@E2T)u{<&`CTa_q!lv zIO-wX2&7z9=H#6w^jxuJaz45(@2Op_J&V&mHz2cPOBc6lt0~txK-vi5O2a)tz90! zWb_J6j+^y&G`5)#mgQr0J5gn`^?S&e4I$jQycN=PQhn)L#1v)n%>d)+%#xdG&vWnM zeaxNq(Ds;%-I82|dp4g=@Fk;Wv;%X&KlE?CPoSu7XsAAadot#otFzTf@;+z%kPiNM zeur&-Imr6y*)!5BkcCjlQY zA9>6~-MA^?Ev@MypVKnPGvs$9J*O|tbI|9_s1P&$LEdIp6$k=oJPwPWRvv`cBs9dI znaRrRvQ{o$Y_u#V9@{?7TPgGUqBnQzyzBn@pb!VF|4c3W^j_mb4)z7zOjrcqo#NhPdo)LRs zgqHF|;eqD})g=YaaOwhw5bf6$^I`1P1GpVG+!u`IDrSYdrD2Md@$awduazapnHywvk$-~I`?>;F8EW&2iE(yLJAuQct_FI zXhCpvJt6>-O!?RKPX7g~K-3RFDnFVdYzLaf{JSNkC80qW20$yEDg~&eiBbh_We37& zEOLaYi%O?Zhqh1$y#L-~1Gciq2J9%FoB6&CWIY!vnD1N>pl$Q*KMT(YZ7CY;g67N(DKAh8f)5caFpbziaqY!`1hFwtRPi(#U_`|G= z+{!{b_0QxV>W`Csr@cCwFg+N8$=?lP3Qar#il$iYRVaoe5<>!MQkkdn;3mne zVkQE3tEQ#9B~AF$9EyD*a^s10joVYPHIyE#&dF^za$J25E2xl}PTN^zW298F0~C&& zFR57QRx2m2Kr|yp7Ew#~5^^3x&zl|jd}l+T#)oC755M)<4w~LwVsX@U?j|PR{Cpw! zd2z_`hpO5EYl2_U)A%v4)IA*!fpSwJ{^!RepZrPt3C?|GQytnzI-8ke?iS(7p01ST za`%G#B{DMZevqkqIboI->UB6?uVrBC>fQ#hu~m-8Y5N00H#m1+V&`Gg*_0fea|=An zv$Jy-XI+x-C#~QJw{I}@^0w_KDodK}JM}a2r`FE+Ilf$4Fi;t(ApxK8=y1P%+Wfj> zq>DM*OLm=ru0S`M?Baw~q<;jiKo^ALhC4)xZJ@Pr{4B|h zKNBP_4Ujx}j2)*La{`(cWb7_|rJ^UUtg>@BffZc!@o!kyx(gbkUiLw_N$27UWa{oE zkKcyky@X&bxduccUXtYQwlU;qOtZ^3Ve_@+Vhw0qjL0Dbr;kduC)4X2<`il#DTF}= z8Te@{1W%8-0vWGB2FCkiXZe{Dw}XSuW{ox=BaKPI?lbm5q!39We<({4B$(*wN1IJU zsQB1(4ZJxz0AFe2-B0vIiD;x^b{?d=>nUB@IxRL1N(6DUZL)CZT2tA&YvU@6fKD@1 zdS0^jOz++uEd~=kOxZ#Tk|>K&(AT=MOpcQ4q)HiNM9Nt79VP_i2b%|`NWKm5^2Jvo z(H0sJAd8er7mf3|VNGqDy=2!(FAP zm-MCGPUWu<>$aD-Y0WmLg6@p!W;j|(ByeHkUxA(oc1@lS=wXE#R4(a+=(E*6lpR3)1mrBl|k}qsCSep0zLhuw|(bPXOj7g9N zJ{W0I)h-HsV>=qVw`2h1QG#u%a|Azyl4dQu_YBJ z@sIqM#e{h`Dz}%l7=J$qJ=%s*xSCCiQ)mvh_yY>|LXxz=%-9x^tHU5o_b&8`!I>K@>WX6tSu7bb|GT5-7bGL&NQL z88AR?qKN=>AqP72|69&_oqhqb!<_(|S&ObcMrV7AFs9NFYJZbE=<+OdA~-D!%?*x|4!#MjD*z0-7>o zUnQzm=-yhgVR~nse|0e7G}v(E9@CCaKpjJx$mHsm*gLyZAEF7H92Ds&EH(tfyI$v6 zbW`Ac@sTaGx=4cT(0I0_5GO`>`0NDIjE=jCQZy)ar~yfioj~Z5!dFdh(fge_z8`as zOT8bxcSRF&KeJdD&0-1x&0rf4ebibtYT#Zq@S^PUx6GFbDTnr8nVxH z;w0Tb;nBUj34BT-7fz3unQH@ubsxBcnA!btxwG?YHFGb1Eaoz$4&iBxaYXmooq>#~xhb-?mQ1rSK&~~pb0*aO%k$rqN+5LW{ z6VkJaX`meAnIca!PBuqO_A5HZytPNXM)ZE*3_tP`RH_mmOqkHRoYSP53;RI&vuxphRPIpt@=M7>ulwk9U@ zMJ^_Pk9ZI3-jBEWmL|%mis*Y}3UOOq@#9%vhZo3y#|x6rbtX~7r(u)o_JR?4C$TBx zxuI>PHPccL{hL-%=2sx-wzzU#0_StvF3!?JSzQgpa@Ys`#YewfyVEn`=Gfu)?9aX?1@k8zByxwj1fHDvIo&S>0-pp*AjGk%3P`9P7OEy| z+!I+b5a`woP+nZw@UnShT-i1=}jpAvgVJKa)0ckxZ(j6V)Yn3rtCLbZb^4)T0t z?R%=?jr6{-_~!mIM5b>pzAJS$E;lXZgI9rsek%JcH9f}>zCss06!$qCkbKpPyPRXA zL7bh%XZZ!$cp13bg4l8R^u+4Pn~K1)E)y0*d$z>S(i^&T3Ux*x1rMX&c1zD_YKTF1 z2V!tahntxlwDs3_phHd-Bm6a5vSAA!XN55CiVtegBFabekF2yz06#ds5R10CznK+y z)?ZQkUD*ul02zJ`-?FOo`kTHxBisu{(#q!O^mB#R^Om;{X=RQZQTLqvn$EfSm>KzI z0cye_Loh~6e91bCjWeIW#3kjPDUr>?*~Q<_4Dw(UE2{P};Rc2q$n1!uTX(7>>_LZ2 zBoP$`fk&dUTLY&wpum)#@`zVFrRub-OQE}Zp~^z|6_~uUaUUhz0=tU|3vwyI-49WTCVp_mZ|T0C74P>M9V&AYD~;^m>s$t07DQ{6q7l>EY-VA?VV7^a6?N?XT~P z<_=(gvqgWiM3O;3u4(KKzktpey+%1o!2eArsX-iavC&}7RhXa92|y_vqn73gI~J{~ znj^o8jbl-crtlr)JwF4<#QltSiiVBmsPb?5cZ~Z{#oaeRs!|WppIFIRe8VcPbNyCp_RAIH46Hx+Mj~<6-eFtP6V(=hxK!s(M?p=0*`KM2a5Dl z<0-R$fUc^#<}$$03yH(Nkt)E_8lo?5G{DQ)6ygH$q34{4eawZV#0 z-qf6FfQJkvEW1&yy82%TZo(fw^G~|V{O;%O@F@6E*-HnOyWKy+&Ie;2ZulKmi4-(f zk4I&3?7iF*BF|}-VzTN%(bI158(N8qB)Udyh`aQ)5w@k|c)8}JDmqW6^w>dbZXK9d z*ic`AY_kc@V^x>U@T}PMzG>mjShZ-c_Fg!)RDP_={_da7`^oqzso*E-86@Z?gPZ$d zTbD(gq@mYIsuGCRlVqM;bvL$$aj4X6x=%om!<(0{(8m?Fx!GHG!$ri0a3GG_EMjv^ zI$$%vfNWLw{`T;9p5r$K)QgF5M3j@Rd3RVy79>9l0@`q+qj4w>)+9*d=}G??llYyb zo{UZI3?(4@?)5; zy6abFpmd`zf%}#uX+JVX$g*2`G$Xbk@V+0rcL|er z*=kb{{|B0r0365%8=`(UoqFl8woUX#J?_V#oEf{wPGE?Z@>}m*yxqlu00Z!e9np(9Yq~0W z|I#4{ei1gmIf0Hqfj|Db_5tl#L|*bS=}LTK59yY_lOIe`EJwD09dOuRU6W9 zxL>>iT%Y*tl}6}=*~JyeW)pU6+jBz0A4j<2%XnE*Ys^he*(bb?!SFBSe8bx(`C{0| z^re%+_XB5ZhGZiFYX51`=VCROnuLMXS!Vvnj=QXzb44VAAly+w0W91#96jc0}81*!8%|jYrE15_H&v>I!J3y^V42psS2^Xt9Zz%5L z--Fi@nMBUXYd=)Y|&Mc501J)Y=iTc7KG#7zJV@vQ;0L@Jyk|Y1U@Bp3Czb24@5@&$x zxGtu?c9H+A%mMuA9iRX}T?5Gb1B>l|g?s?L@t@T{e<)*hRlu>XO$h?*M=tKDb&jfv z4Y3d+8JvzBF=DdP>20ELsJJ&^qDrHfdid+xoxLlNkE`1(SPS=9oAtuhMb=zNe+5L`^WK_OBjdM(CPr}$o4F?S3n%VpAtQn_=BV}; zx83oE{S3DU-_G1)PRtOi?q_a$j5_>9VaQGEqkyB5tGJj;UAeCM7Qc&CLE{VO7cZaX zcW0l&K8S*9Sj*C^x3I z&0RIKjgDl;_A6!O^+;Y~CYdBy=G^zK)KD1T%&!${423|`5HJDJrzO;6oX+Am%Sh)+ z?%bZM8d#oHN~D~+0=4!xaZaIHU0Iv<7gpeE;6>uNNh!uc-_!tZFNuO`C;2X{2lBkk zQam%9E9cq@hgKOc9iO?ee7w~`HN%>+{p1v@?VMNzLwO==Z%bo;*wo0SD>m*FZPy?Rhz@ka^L8a6W+fuTrFwqxsNoc=4o$^ z6u`q;nUQ$H7^!!XQJJg`CXD31C2};=h#fb7T&6o)PkN(wu_}*R=KZaS8ZC(Hh^FYU zB8sxWG{q1%v`Z!fGENXjAtbe=&r%p)DHu9#F!nnttxLUEkXb92Cg0^g1UoS)u9!Je z*VOx0nWvTe4K+(&Tr4l~Ave+m)4LBJ)0Z=MP^+B8Z5X(H{t;al^{daJe?nq`khO(M z_F$NVblhMw3hwLNFXnaNZA*6rBItV964G#5kN2%n*kmhPq?ahno1&cmH^RM6@yX2K zNFk?BGrfeU7|Q$Mja~C`(FPs9nK|oIhL5iwna)wun=z~{!n)GDv20#~=b>SJzpXm#*@_h2FrnND|``Po`$RxINKRs|j=^U0@ zUQiI<<k#lmmKRm1c0ixc{mw}?ocPdep`B6G%sL@leIRbUgw zh*?t6g$NK!2}>fno}~vp5aKnJ2`FeR#)jvmWRWGvl~G|^9+%deh~$xY(t^)p`RLyO z({@~qf%98}&c&#*wo|=f`p-yZPT*o(b51caR*^?23~WqN-1M9Ew(tlR{TRB8i1E*L3kkVC zae`l2tItcf4RekKd&JI=TY-6NfwHSG(*5u6a}o*$q(VM9nX28v5mvzdU?%DOxKVX| z+mJ8tgCl43(2HV)FWPxqj`jN|!x2^yc#lZsC5EwHsbk*AV!-c`0|%JwTg(I>6G$s+ z*~)!sJ$H=hV_78fZ$)Aws;l-8fdiAI{ir)b?E4n9PX#LCr~+fvZiF8D91FD)?DGm< zf$l8JCI=pE_)nHtc;^|y<&I0>j$~mT%(Le_-#(rmn%`&+S9B{(kq9hTNIm{lWUsLY z5KH(8SD>4Wa*C~~940yv*~F4=pUnw#N2JK9v6_{>`zzaQKm&QG9;V^VMF-!hpoPF& zL%(K3&=$^E*|U%PJz=P0(x(Rp=zp`BtxJx)uMb#uQ1Z~Bp=>zkE9Q0Tb4?NPu;>K7 zjtIPJlw1*x&@BZwom69_IAAFZ>qUGMF2PCp1Jp{p!>4-8i7&o!o_1~S?y3;nQ_~ig zjRh}TWk7-vK>!sKL{-aU&E};r_gob{tWGZ`@K%&MdQ^?%@V_|p5is+?vC0R!74eEI=w9f12PNd7ihKp^S47I4)ECZ$DS1sz_be~Kno>jLa7Nx4Hok+s0#Xl-h zEKl@6Q)wc4cMH|ipeyAgC;c4tbJK3r?%Naj2o)H&)U%PM84`N!64~L=q=_1~pQ#Sh z4LYPPGUMdad9NrJ*?c`P>S51pf9BYjSo9lhJgVU>?Gv(Dwosy=R~`@`T|MtoNY_to zNV15Lu}cmi&Fe9RrLDMBeAI5bU)q}Tx#7u$qPA26kyK`69Gvf7D3SZ+-sbNw;{iJ# zzixc6j$4{ImKPi4XBf_1PFRRyik(?a%!UqVV<)P8-$_1Q%v^tirZj_nH&Ox_++cJ;~Yf1X3`U}!##U&k^=i8NgnVSp$y6>h8j zU?Aq<*AyH1#38vg;4xC$S?lm^|4ekEV#dsOsN&JnVavd>MDM$+6EDV`FyPj;;U?^k z+(jOJv$GV4xmJP)d1%l|l)M;Bpeb1^a~!7}o=Dcyx?LEH2VVSF=9)v%t4_oBDhx?z*`Nmf(F zbe`0}BkCmIq354ct-YTi>PS#5T(_9n0?Ee*DV;ci{ES#o_p`Ec2YvI{9a#;(>crWd zn2R2u?%EMQT1K4|+QkHL=8Ops)ivog5g5{UNk8U{{UH#$NxOshQ6tdwaPOq6WvYMf zq10Z~ChikS<-MN>0;^qv6Z2n=5=8xets4~^+$UKDqxwlk6;%6T!E zo<~-w6>2yskc77Iv}(WYH^$5(35446p&H^nc%Kr*JTpWhJ{9~<2@t+zE;rm;EJc=) z(m{0vN_%tyr!b%<#9M%Un&tgT)5+w>=3tS}2DzkUJ+ZF1C~THvJ`a~G78SL*%zkic z&_hKb!o`~Lbe+8FY*2S9I;R#WX|%c*{L(3VL$=a!ILQqB`-6qrlgmSu@1OMUwGc?5 zNKK~qbd?jH4KSZO`9Y%uSAy8Ln@^ISFBHg%-d{YSsb0DQ)n0*Ki<~V-i1S}o8a)2W zI8pv1cqVkfedO~GC~5W_tk^O3GyNNX=nk>66pO=s*=6-TT8`_S|9cMxr03DD_A~-i>>>%~7f`W%v2Cp+xE4s0=@s^qL3U2)TU(r*n*>H( z50DOly2(+~4P$eNo9(KAfEd`|!CU0*wm4JqOT)gk#k_On{R%>a&-*n~srkhH9EHhY ztS~21V7#=ZpxnOaYoTNjbbN=b73y3B3r0CL$nGL_vB7l`2)GO7nd81U=7r*ZO{B zK_-)#$;__T-ut>+qx?jFlwY0x@Tt7(h$E^hZtkKq`*+&dTukI09r5ej_k^{lWy&5X z3$k`okA6}-+IieVzV)o$p3+)@`_?jE-R+W1!F3OFUpUv_6hiA+f-J*o)$MYVaZD#q-rXY7aK)**d{_v&G&zFq^NMA;) zMo!#K-d~8)x$!obd;jZ7_K&=o`|4CPvCgFe@`bFoRHcZ^n#w1BuiMp9v0mL_L3BP; zU(#4ko7#h#tr|5-{q1K_ZRy%qAVv02DDG75U#l^#NG~Ij@0o8y;vL zRQGTm=l|!ixn!!Q;}ybq<<-xO zmRHuI?c!fPiz>?abG>=!T~$4)4D#uJU?F>mn4+Wa^gh9ZzfQ%?xp!^sE%2m|%%vpZ zYJkFaS+O?|cyveWdJuoTJlw+sz4--u*!`pU0jkC#i7*&L>X#1Pg1qQ{J zJZ4nPYha}XK#rJ0!eiKExc*NSL1)$~W}LZxzK3?BM|G~AI`W|q6BTGiQVj0X0cKbS zFQWS;sn;=U(`u6#X;$lA!zmymA?Alu%#4huO?fbzv-Dvz(I|l+;uIzHvWXk1L1*v3 zGf*U*Myfu>LEZJ!w3rqjQ4HTK8SxJjNZ*W3%||CjcTuS_A7N36@^eplg9U>`}9UE_${;?ZA58&sr57IP@48( z{m)Fr3DOTn)G}sOGn!a_1N!Gy0ZL8_}KAQ!^6FG=g81f&0bA@WBY>z z5yMOIGcVJw^+>2R1^oPCx&KOo{KQyD^f9>1hD@_k7TA#ByA-|Rl^)g;7R!?NVIA8nw z$m@F-?P!Uvwpm z;+3&Pqz@8lMf3iBZeUu-X@c}ZmJ5y4~!FRp1!ZM7$2?AzlCr~H_7A?94R zJ9m+-73Kn!@Irm4*_F$ltqa(}{7TBCz;CH?Uq7!G${;B`^FlDVM+Sc z48)vn{1F+^%w8;Z%!m!i>)3G?s%!p%ZOGlrDClUQh^g6)M=71X)~%JP=P`6UD+TW( zOg5HEc?3A=9du2+9H2;=)&Sa~iMMD`U;-8tF%8O|;57B~1zdz{v7sX9Zhbq$_6{1^ zg3yUX#&$+;>g!n*`813SY)|zar}(}&#yri!F5H_M*BQiDF%n#(+w2qe&p8PmE){4gsz3T^oPgbGy|HsCHgFg#C@ za6|GF0j)D|lOuoAh%*!jFC-JOodRzTTEid8M4|jX%1g31nB_Vd4rb?gio%1nU!y%D*eR||>!{?B^HI=VMWs;$r|GCd4%h=n}A?pf5Pw-?P#QM^mp}WEg7dbHIFM7S14(2*bMb$t?104h4!d_H54#m zXgQYz2CN^O4adyO_n$p^KC(Vd!SP$zR|&eK>ggMv$eQRz@VqyZRrPYrS+ua{bI6a>>}U|AWTd$g79uY6|b)H&XutE7p&{ z7=+d7@-QVTa9wO=lgf3~@6?%7-HiQxfCr3)NJOZ z-=Vqj=_~RkB35qEY%QzUL47|#r)*8+Trm%IG2_?tB#5*s6zC@ur2IQa{z=P+2nPk7$$Ux;ziVa+3+HOwJYu>t~aAPS~e@WeX6vj1k z{Y_uRNxba4c0#Vou~FG(^Aj&sXgn^>>^A*+WV^9Zyq|b=%SXhsa#|EbRs)ogpsq(Q z?uAhDfOK130}Q1i;lMtC-ZKiQvd6c?gp>5FX!(h` z*2m2<7|G&;_(Jd6pI#3=Vpc0tpoIuqfcmv7+mu z2cOb)tHSlHDMTG&LCYH;IYXX-buf$SA%g)0pksEO3=OzP+UxohUMg6AqSaY&gMq%% z0R=|uQw(SGrYHa+oOAgyJ?KM7TRh^ycRj=9%lZ`9^FHmS+N!1sbT>m2}%jjdg!YY+7)NRdqq^R=DzHB5zP)>$7&Nm z8U*y%KkKWFJl0FILz2q<)zKYVY?-Jei;oIDzbLPUGH4LQj!j8Qc8VCNk)Uz9zBsi0 z3BVJAcCqO}qaET~t-Vwhtihvp0ms$qdy6IJRd1_H=t@Y8AK9mrzro0D{DEc3yM5+$z#G}F^+g*j*^lPF{p2mIo8|UMXjEMKX;&a(yWy#`s)tl3v zV4fO1)IZ|wT|nBaFM0RIbdR^TyiFn>Jv4>_vq(RFXJvO>W&WBjT;@AG@%kW6z$!Q~HFHJtLSV<#WhVp%+rM{~dp+>sH}b!d&VO$?b|;=n=x ze-F;h&qPYg>)_!yTMQZ%GOg9|M{`c2rd|+w)d{>wm}kx7DhuINz)u9H`0zSid6zD= zgLccc;vGjZ=p5$j$sD&33MJjJeiGd1LucaC;i~ws5Y^UMY^Y_C6#alpAUMc|%9-GE z@<%oWtl@n8;n6%Fy29!!Ruk1?Zq_>wEaPcu<1DHq3k~NSJ8QzkQ=BrXl)^(k52Wxs z^e}sQ%Jl6iZKvjf?L@k{UogFm{1V;Q3=aw;vVT6;3!j{GZ5olRIG5aoQLz$fSJS)+ zAKrYb)_$qqk4Is>kR`Z5s(ZQrTEC%ft1>%`!>OjdH=`pY|$t#f|vz za7N_d1I1$z^rF2wq9ZZSnl!~Y;co>@m0fiuJ4`NQ3!=UlNEy-P(t$peLiOSs?{0fr zf73N^$$EZEP|Y|^E_8^MOQ@UhhAV?zBH?&;j_Ry{b)k|s@sg|jr`w}@&M9eO0$X7N z%qzJ#G+l_olXLagralwhRZnAz`o*_a?4_@S`xlwni@VP$@a}qgRr@Hd$QV5|R!+)GDe=+SSC{J`zJOWH)r@*?--Rg3`U8ee0y^< z_D*MvG!9?o&x{;a)@YCPyc3HNs&G5{GsX1O#MRR3hs>V>YOOkEKvnR#hlPo; znEr65xYpgr`3^O)ESo7OGDIZjh(@&U>;!G+F`n#+taiPMQ+qlA-_og4GisloEa>U$ z%qrGl;=h3%3lt#wSLD4yzmy1%i*L@t37&d*pix<|pn+JOtY{EA8wN*r%OBMsr^}%0 z4Rm>cRylHgPYVKWb?<{dI7o~S+C9KOcqnFtDurYhcm`rh!UAYUw&`75Abzlf6$P*?AdU)8gcf3hjh`ga5rqF_`eIhoQH*>AdV^ZEE zj2mIa%Q)^BRI%JGTRV5uxa(Hak76!uw6UV6`fx1vWr6t%+la;BKzhrX`{znG?SHRE z%`KYV8YV@s&~1m-G<#n$RX=$={0h?tFAMM3>1n4qS#_REcAdT&cOEAdD)F(sjiL8` zr4*Z^%ydFuKq22;&G_@YX2nFwx9JmO_vx{U=i5u33@01pFLUO*279*#W%l|xa2$8K zYFHrg3}O9i&?Upji`b=ck%n-+oP9>eKknow)bk_LN*5y4yyQ($iE`!)TDG*M(frxQ zIuowAmEybQZ+u(Zwj_!7$J4QV+zDQTT><*GQ67dqO)oxO`(p5+QWTpO*|_Du3%CYQ zou_irrb`FQv=^0CTsGBuq^^nw8P0FxBe8E>^BdVvvHC4r^vp4yW%<)EY1-n=YD+~f z&U+)RH(JU{rFAVAXJ&W*fql&Lk|?QU(U6$97?hJ@B*Jkn{1IE-0xwUbdWV-5Pcf(q zzV5y%jq)cnD`3N$c_e#Sl$em>gl17(0#4HbK`=t_b34RfAg(7DfZQJ%}BzFd# zvwx*K+SE!&*k^|Ek2>ES+Lq_=doR~neWxMALTgAI=XPd{XMG#JfYf7DZ`bnE1crQN`YTN-DLQfv5n zcNX08^98f-aki|zO_$HiYL`-|>WiAuZM;Z%_|e+YZ*MX}wO*+%on0JUEp?*TmR|5A z^@h)>8%Ay=_~TTq_!p6fi{V|#^7{+WNLmfUb6`V&&y3UM zyaQbwIR62K?*S_t`2;q4plRSJ6oK04Ye7P#?2zpg{mQ@vL08H-Stw(eYbj72G8b>7 zcv!gM;_U)?BwJ&c{CI7YQ=f>NuGg~wH2o<`_BYj+0^yD9`}8U37HdPbF~pJG&LLiy23 z$4Psb){Epl9T3o)AzX{KzuBAa%YJBtM+Z!s6wo=Mr z?r(H5|AEOBtCC1z{wi<}c+i8s!OQlOu8OlVDOg5{lIc_B9@SG!jjS-8nr6p&Dm5XT z*qHu_u?wkhbkKXLcW687oYcoJ%PsDVd4xw`86)Qskh)D2G@U`DW*?Kv$I%|cDinDw zo~Dr|8@$g_@oVm<1re=gAx2@(fcInFj^ZggghHlv*K0j!gm7Hk zn!1{uoxYYDmSAu-mMH+38GSu`7>2{ckT7qQUZ`$b-mMtWTGQq-(AOlECMxq%i>|r0 z_bGQdUq}7Ln&kvK)j52-^$d5oSENYv{FdtWqJ?CXqwuR~*0SsIlpP^)c{T0I$5#lN zRLo#hjd*9>9-)uEnP_wr)%G?_wxg~(Hl9c2?sJgyHbl)^`~!RR+TYcc(0bF)+55Zu zs?r76-9A>twQ1WNk5RFv{j?JWOT#nM7Z|stS3Ab*_80mRdTKa@@T#u0#EfapU50;P zQH%vCk$Ekxmz`q2q+^6^REKL6W8Hr!_{@*PQPyX36k(jC`zhBC@G}PzjjY z#tnxl<~oaik=2pg4|rdBT{8tt6WTtA-qIJc6H^(*XTgmX4eOGOvT=Nb$4rT z{GcsN9_phLZk^Hn0FRm53N_d~rhYE1HrplFg(dbQ-*>NN%ZYd{tn0q7@9g?=m6LrhJNI33cX(V`jY36n@1I}v}vvM^iA+}1a%?TI}&L0A??kp-*oFME~Se|BrQxT>ndpZJ^vvUCe`6R5yR5`^PluQv`kk6S9DK zoNVtv7NP1S550q>ucLp0*(^9opMn&(fKocAhLi(MPF*X?$Sb&192S$p=$T!7!X%|` z_!h2Cow<-oIy@WEek!+*Rgal_Lw;r8e$FGO5{&BFaVuk7#!|;A`2DF5ik^lla`6Td z`pxg}?jtexS5z&UPlWU`FJh$EEh8`!_1T^5jmJ4}@N%4Ao}B$&*Pg&2OS|6UKbJxD z+6f}^gwwmzkDWcU8pg|G6O6m=PA&VFREg&FGMvs&?f1*OSh9#O_B3Mp zaLZ)B>rQ`-1?S_oeQKB=U(d^DV$;o!$JcIA%r9HqHkTva?fIn_>Qq4c!9z%huJsNb zMa(h3>p2x{1Crr-&DF6V#7uB~$|3TsKDkV)nnp>fwmJz^-j4hEOgW7_7bl$gt}#4H zAI>_*pT#aBlhL%jQT)J77I7_P-ux3AdO&>hMBPWky0c({U(7g0Wuc=3)8k5&%rCII z&Gmq#?A*P>&s1kH>1x>@&c`?FGaA<4(MKv~*xnH6rhc4=76}jkT|b51{%JmxR28(r z0BZrGNwlp`@TXAcj~gyIb01yj6TA=X}=qH)ogA543^)xggF!%rqfU*+|KZH@~0-&61Psla}3WlIi32J8~ z}5MZIMlan8)^#wNO@GLL4TesD- zwxLKWi+}I&*k!J~^BYoxMU!^gEp`#7cd^kmy513r$D4|c5%}0TMn+>&O3DKNZb7rU zYkv#PCm6?Qz@|Mv|W0sc&nW!YL{S;T9eT}b zvpD&}`FL%U;F2Mm0;H*kgtpMw1Fc%eo3~BAL?s{HToCjXRlO$(GYwN{l|#*ZkIzDQ zF`di47Nyry>Fr!E&UMoMq7>7<^BYp#8}>ABsmZ!DZ6jyeTcRVF)$W&|@8b&kfx(j( zI~Z5SEJm>CK~_F&0fi9Jya*2iR8ds$UJbpnJQu=4Tf_1ERarxSL0+e4k^OWr+X}1Wbgn_50mn?k~tM6`q}R9!+q6Rk$TN zZ^4k}VDnfF%!)rc-+x1+x8WG);SYMjG`pYookp6yCk69LZ|W$e$DO;o#x;u5iWlPX zPmnHALC4x_sR)>>epD!ry;)&0sxs1Uu);cnt|lD5FMBV|#BMXsZ01@dz0Ks86`c0W zLw9jNUGa`#AU`WQ+ohC|GI8(jwZJsb>siG~p+1uB3q>HN$k@n#h}Vfvh)=k!li0+N z|NDGD12z~gg;ro|W-b{t?0Xs0_g-a`0pOB=s6GZ~3puVoFNklD%w|jh{3Z?RkNiSR zHxOZ|lm|YQJbB!}{~de;7RP{C2%&lvcmt&V2&fT3^j+j!pA3ru zSp<53f}AnJ=?_~oKgEGKzthYNzyoYGrn>XlADzje_yZ(pf-=2^+M$GJ2lIF*NN8W6 zRFQoLa07(VDS{sn29AgdgXxGSXW_zxflfT7Q_>P$z!I&q#4&{e9>!V<9Fx&%ZE3f` zxH$dI`9a>E8LIEqLsD`??07h$B)|v|vq?*iH+;8@ydh*y-8c8H7#^j_#Bsutrj1yD zcbN!EITAcK(`;5^+M1xv!{>7gTqq$-NJu;(PqC-hu>iWxXuuNd5QD=?<^vJqeIDIF zjQ$}IzGi!^Pgd*H8Pl?f{13Ovp8L7*f7kuwS#V6`mfQ`e5BJ1ZwN`~qx_-QguM=P$ z`Cuzh5yzM?sl&Y!-*VkPB;fc$;G(TYZ+stHtu_0vpM+k~&oZYZM`1I@OrUFip!mn3 zJeU;&l^~{K+xQ|KqQ~>@8l${n1Jj{I(YJj){SCu|HlV2Y)JH~4g6#>o^?hF)YlKee zX;H+ zCVC&~23-`6PXIJOg6aReAO{5eKn9Nliv#r6;AsGwkUt3`6jp&wI~cHN2N~lZ;1%l5 zgA%sC0to#DLg;reeHjK!9@$v_r3oQ-V{ib;2?jYG5Y+1=^0~-Ifcs>H01kaxD8>Sn z(>Cu=U`GGaH$mrt34y}_lY6igjK|YLQu%lF8S(@YSi?bmBfE}A?QPUs9KegwdgvBT z@O<-Myvv(rHK;h(2Pg#HAGJFtrZuLW3n8(_Zj|KeNj{0H@aR-(f4cB4sA4>%$M4F! z`dcgO)I!8dOLHCz&gk-W_^})Y8p_VAUPH8fjPb5cS8{)Fg3R?}CeV+(1ArMU0mGZt zYQ>xF&@9N3?{P(MfLPwcRh zRCSN&b>@dedXcHp;oj22HHB87xdBtW~!r2y!0+ye0jubI)LMSVYqqPGg+}y$5d-5Clpu%>$IHA%!>3k>L>T30jEwyW^>5X%YyH{5H#?bPx_nU~^U>&jv&c*5CLt__5v!XJfl z>=^Uiq^#>75$Z#7@KN6XnV~tT=bkf+VI9e7oUeN<7v@|`k0Dz0RBd$47Sgol+wecU z%h`UsGpT3zw#cfCkfgu6r9PE_Tiwu*4c z{ppCBV75>04F(cFmy^VWtGzHz^{+3D2OM|m>}T~asF|kAXbJb`Vil{!w0IL{bhD8P zLJi?|(fVc=Un)8X$7^THYTb_OO(7X}4iuHN;`p=jo&lABkaJ*Si8;`~IwZPei0|J} z0TO)Rqz_>KKW|3;xL*bZRLC%C>U@RU11DGJB zQ!M|&eyIUH=yXzin-2(v+4XU-8^u7GK(S1QoV`P90APa9SbGat^Mj4}2Vw6mKScZ*J1i-Z-N zxut&Rb{U_s+#Nt^T!nGzsN1~B;T66i)^ppl!?sca8HANI-)Qyfttlxe)(?%8o9tT^ zvk4XYYGTV|2$+N5d+3vvK|3#Nt;4d#ICG*kX)w>7UcAk+*0eXyQN3k#clsgU>}bTh zJ1j}ltdUtIs`>mDRcE5#M@`;{8;HZ8YvV%&N1db1u_`;Cm&IA?8l!$izvl_6ZbtWd zC*LqwCB%&%VZN7qpL4l3Jt)5D^3pq;t?8tV$56<|X8t){Gxm6xMeD^wUM6bwdfkLcWvhatwhfE|EfyY^KThDJgT%7pO6~JA1Qv9p z{h!3kT}|D`o>B*846K&VLgWCS&bY&v)HFG zltuE;s$ zixoHn~mHm5a7&sGDEJuLQ5a95q^=hs3lYSaH+@+1d zB_^ITSTkP_w~OVI@(Nim7970jizD7VZ9X9ozRYb!F;dH~GMH#fyV~<1zsphlzNA(o zyU354CBd5&s&HqxGYg$SIBiS~kq=?+5hd^fTsEBiqk-`_jAigbVF^Fg;~w7(EHqCq zygvWq`1stOVAh*N7rR|!b`RmJBA%Y=#d#{LHH^d$rzE*VI-~i7I7g$tIoC(>gmFKi zVubUT*fu4!IImrMkOYSE^(`y~rB`R;A2+phSC8qd7$w-1$;8*mA0#snW#p`+N$$4WSe6!sKp$2&%g zxX1s#dH&%hV=1Y8Re0G%?{rx{pN*a-Yn!+X+UA^%B z=;`)&Z2Pj4x0d^p!&~sp*Dpf`5N@0}m2V|qPX97aa(W{+;AR*j71Mv*(KzGd;L*b5 z5?+VIxl5Vbk$$IBPx-Gm5_Q;)qPmpQ&+A1@eW^z6xC zfzaacmferZ;zdeavK?l)enz5x?0p*URm5tWHItloWKF45k2b2<-kyE2tS_g>BMRNK z|CXX90I&Fg^-i?`>%J2Or@gM^jX50-wy4XJte0JO2A{LwZXA6iRK*$A*RD~icbspx zrHB+g()_rOVsAb|uzCs>kRJEAOwipu?H}0d{WtgXxhttg$BL}0U%PG#$ee$h##5^( z<>NkQ{50n3JrQN`N!?HUZEnF}4T8D+hq*GtcRuA?_7`u8IOe`*#;K_MKHa#%mLEUW ze(BQ3dF^jdLkHP`Ku+Y(%L1q|AC;P$P#4xV8P3{KdBkyjNm<3Y)&i-(`??D1XZz`^YyR!oXN%|MrW=2_A+1H$2Qzag_p8lNi>s>+L#S}X% zo#T;~Cc&vzfaBiSLhOU~oRFVymd^-f)$n?=Ck!aa~2QMlFSq?fv5Hzb!F=lqRYkV`U{=Rj^hUz9VqEA9D?-so+wjZzKevDS$~)A^sn zNVrjx%N5>c>iW7Hif69e@>FsDmY2(jJ#RkpCe%T`>UJw#bzPd_A42dQMy>of4bHDc;6M;xTR5eiglF;Iy>X zu3MT^Blk9A%D}m;B~KuIp{!p6KN1SpGj{+F{2=*(h~$7O{F}-H$OmHu&{6Wru#luT z$n-!Z7Ih$DsPAKJ5=LMy`VsUkd$$WOa0^X7CX}EfR`Nj~V$Ijr*BS8iyTjWCJ zOJua02MRmY{mWG|JACWbESMrrJ?YReng%(W3776c(g+}8PEk^?JiVCWrbV8Xg>Qq{ zgF40M8v3_+k#%rY^rd1*#(fGKhoardSXW{qrsMWB$H}eURJsOn@%6F&OoL?S)7;jFCE7ly>b+H{FQ7C@2h)Mrmfcb$wa1h_(bbUY}6pmr!s<7uSAJ*f!cRZ;Oo=i zOjvd%TVeU_g4-G@wBL8e<{}V=cY9={N-ij|D)haqgi)s&6t6J|K6)DXdS3JsB0 z5pk?Vf{x+3i|6sL%|4qFYMalG@=-Id?+n5Q5H;o(9_iPZ^S52EDb|uRxFdC)-l%~726t#JalJ6g~!^P8W|p8 zdV9G_Y6o9}G&$_#7N#l~zRV{Hm@n?X#+0nSsm~bmk#~iY;*&Fh;y__o!yo5zpbQ7e z7!*yB`TpIrxzpz8F0JWw?y@L1&P1Sfx1Lhz}C z|Kp&@aBi?6)M&w|ruos06qoxQZOlAC)})>uGH3?*zduW&g3Tc4JjlO*R)SP;|8(0r$TZ_VjFx8Jf~K(Ky9lj77jSPy5s+WAg6k;&-Nk$4 z4NbA{&f`Zci99ntHzDP~c9toTaQj z0xIl1byPjo zmBUmpuY*!zyUE=`2%mizU~oza6TznV^JaxDcXyH9lh?BO`(aZ{FWJ}qb(nusZS1ft z3wGK^xl5M3Y}(0tU3F%)>iZPiKd>i(&fm(-1OI^yFUaWt_rmq5_3QWDp*_&cHPXx& zw-a7wsm7@MY%Zh=C$xdJUt=-5!B6!z-zB3spirdAqPfo9HMwacAfdV{`r_4<@F|b? zuyrw`CuSYK4h!Shn$lB*Dd|W(BUQT#eLkSRfVgm=? ze;Vnbu<5^In-Bv88p>S$7n}W!(Z~wY3oCT9-eAn!u_n@oYQDEpwEreY1& zZ~_g49%crg?(~f^zV@2|0&mjT<1W~$T`%hn1p9NOapn`*9=;T z3Y>(igmGssjNH#l2EX?T(T%U8?gITp zS+m2kg-)5Ir)@8B9KxY0h zP{h#=m0~=Pjo@zolcPfBOE1+$vuQO>w^oR+{%GI3G8Xh*R<;9+#oT$%;b77E+57Mo z;IFPfj#Thcn<+M1dRIo6w`=-{LWo>-sZd`p;KJCYT8SW)-%^gBuXX1zb|WY2fsyo#vk_kXP!vM zb8}OU`i#(D1{*P2fu0zSUro4*65xesw53qV5R0lf&wvGI)mBr5g1(t!} z1ABT<+#qmW++W~#BgMb-c}ni71I0DA38=bur&~1u63=D%gQ^@T#_3XkP5+xr_~S|- zcM`_KNzB1h2^YK$%MFUhVB`&Ai*20gw3dr(^Ar_|b9ehcIjv}y(?-{kAPQ@dWK6qr zsqb3c5WadH6Fo3^6Ed7MaH9*hd9~vR1K2 zVU}JCyO;6Ah1=3*kGv|pZbI-V4SL?~2efxuRSkd}_{=lUdK|ziW-ZSMeQv)9*ee3@ z&230-d|JDjYkwQ^+Ti6t-$8~(f5XM^=mm-9ErC>uzJ3|Adn7gHU&w1AV>@>S4QbWy z^avLl$D6uo<(iUK{lh7kzql@1)Wze6-%9R(W!*K@y6~=vsXF=Aa(gKe+f!;<@59`a zyO{*Yj=Z?tcpwPnPsA$-ZYYl+4DeQrJcZR{<53ta><1Q`l|aJrKr=8!ialT{5d~mO z$gwfRbO-#^Uj!A3eEA`t34IK~k_VpqKcvooAkc#-`){;;@Rvk`BEvz%96%!K2;u=i z@&iI{XgXm8I7MH`wc|kkNiHfFpA->#v%w?iLnt|2L}u_mz=1%FfC$V-KoRpE6kf}8 ztAQAT90UC8*8gK^0XIK3SD&6Uy22>#r;&NTX@G8+K~P1<0{U<<3bq|@V3*+*-(9v{ zm{=Ws!?=#y&0WN4>Wz%C5&NWj+w8k~AFi&8VWUh`(j0}1jMdGrmAWZ4%vXOU7YqSo z(*YCWIlmqU)7QF$4Zq#Ni&h57;~=6)tL|+;x^vd+Sm4XuiCA7ws(TOFQ4sttar&d33=i1=TNea)l1qp7*Ds$I*}4#3>6t3L1(Y^>bcmDKF!RW9+b^< zl7AsTR@QJh2AgQCtxdxdrA(dC^3+0V)|!i=_sHa{{BFGgRaw+#5BHhPa&tB2xW{X2 zEDNL#aoIwIxyto#vS5a-pC=5@$Vgz)>k1esbzyjrNi?cbzNww!j#og!jRjQYL4ouN zcw(UL2>MycvDCqX218C51eU;wb<83uf*dCST5%LCO@Clipzc?4do9#=0v_YvM64M& zBq%F8z|jBFgkxYJu>uXa|JxP%3IGf5RJG@x@ zv6tYNsJ35z(sX$BV^Lis<;13Hb}mi!kpBFGVCo9#8ngbCr$`TJoaF`wHTv&zH9XonOVwgmz+9ds>yg z#$6VTJsGMQ+FI;AT6j+Ru^F~0oSCVHF?-g-T#Rkj9d+%6a`XOt1dp-*?L15UMMY%7 z`FjERLY*>wr!+zmBpLNT`e(Q(9r?jD&_x(dU1*Vs(UP&{UOr!;U^KZL6-TF+F~v0} zr-SONdhzMwwnK-D+5GE6Q&#J2&URCj&p*ydsZwlPtg=tKX?cqeoNS=5j*(_~ zTa?A^TtP)CWG!91gr!AEmj!fB-~_oN6hTvCCU|^MVgTwJP_g}Bm=3Zr(2Q?5x>xOR zoe&(bCx9AaD5T}k<0Ah9Jv$&12M95HDEu$sJOYSH9GP(bVEJ0G4=_{+?0>To5G95D zuV)E#RC0hGsiZ&gnlylyn*k2Y1GWRh^c{JKp^w}r1)P@gcRf^{W5MI(m~k!87pYZp zngp&4Oi4n$mRSHA0A~Y2sp>@LR6aHllK|x%q1^{i97wy%OPQucK zE~K{NsyHX}wXvB98CPT5VfB5%)b1w<3*(-&$qMskelafPH7-*pt5%ELkGol@bjTm6 zl(4O099F>4r&j!y%l@)f%92lhwrEH z91o4p`L-pRsw^#aa4U4;dL9chD$(VRUtV~Rnw)oS;O-zC(T+(&=QFKnaTh$eG{ku0 zZcM6j#t$wXGjp~jjjDipS6i;g(>4KviVtn97TN=pKWSXho^P zBt>#ajy2WfujvasXR$D4_5In@<+Xr)*QF(1GsC+jfqJ_^goDQq8fsz^@(v;vC@cmb z$aknH2jqbUgx^quESRd)Kr$+lWe6Jcq5Ko#9Lzk9;4qmW`XNvEgn*C8A5&(5rz_Lb zO*TbfULDNVL4{(z01!x%&lOI7u#njyX8xHf;GcX5{0s_I6AqSL57tAnL#|Q-cZ7#O z8=yU)WerH>!Naxz@lfa@Qk1R@3}S*=+gof|-3M0<$qcks7dbUPXo#DKI*9IrpZ2#~ zi15d@#=)Rqg$`w_{{+nZ9753F96L{M@oXTl@k_rlU7FVBd?NRjd5}Y_0>y?}o2HfD zV$bsdZbXinS9p2U0P#l~yPJM$<;M(bix)kyH+i(22)#bNe_q_^6yWqX(W$!$r)H#)K*YKB1*AJB?-(`$0cBLtma>r;bCSjK~dba-6 z%~mIknI~Qg&MKdEe7DOg0vA!|l%t+qoyaMoz|F(*3I*BHRTq#ytUT*xvMD(jy}`<9Id*aw)c)bC(aQ&HE)i)ZK|8JpXE z$HX(7#4|Ab+3}RkBaS1$v>2SF&mD=#9l#+xL!nK9d0A->hg`4sxr*wkbAtUb7P+!u z+x@Rm#7iUmS#PUdMZu?f$opR_BS?Cx0xEUP(wk9kA zoZ=~E3*+^yq=u;qxL*5NK~&Dm5_mV#+$Q8@#z1^TDt3Qf^&YC`tB-r7_Bb2}{$kY% zgX*50kK}dILv|0y&jh&s)u~a;?=^D0_=Se;f=@}^l{iG+b93=soOn0# zI=E*!iP$V0To-Hs9|6ihalAzij(_G@SnsmR1oWGmutexy7J&P;qX+FmH3GhR=Gapl zI0$qbDYuBDNVthHxc%XQ{NM&pE?*~seZf9qp98>gp?_rOeewLcc4tpxv*CJx@5Q&f z3V^pSO3np-YliE;p!ytOPW}RaGnnl*7hd6St%K`X(buD(bHQ4B64^mu+;A?i`CL#O z81)86jS2u8E`1KryaTSH;gak(@;B)8z;O{nhvBx+;UBm%Z9!S)=yw%t9x)@`BP jzz_L0`W+mCV|1N3y7K3s6Wd^KSb?WBFtI&{{~7*&*b`U9 literal 0 HcmV?d00001 diff --git a/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/cascade.css b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/cascade.css new file mode 100644 index 0000000000..b0b72f9822 --- /dev/null +++ b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/cascade.css @@ -0,0 +1,4120 @@ +/** + * Edge is a clean HTML5 theme for LuCI. It is based on luci-theme-Argon + * + * luci-theme-edge + * Copyright 2020 Garypang + * + * Have a bug? Please create an issue here on GitHub! + * https://github.com/garypang13/luci-theme-edge/issues + * + * luci-theme-material: header + * Copyright 2015 Lutty Yang + * https://github.com/LuttyYang/luci-theme-material/ + * + * Agron Theme + * https://demos.creative-tim.com/argon-dashboard/index.html + * + * Login background + * https://unsplash.com/ + * Font generate by Icomoon + * + * Licensed to the public under the Apache License 2.0 + */ +/* + * Include base and custom css + */ +@import url("custom.css?v=1"); +/* + * Icon Css and Fonts + */ +@font-face { + font-family: 'Google Sans'; + src: + url('data:application/font-woff;charset=utf-8;base64,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') format('woff'); + font-weight: normal; + font-style: normal; +} + +@font-face { + font-family: 'argon'; + src: url('fonts/argon.woff?vncylf') format('woff'); + font-weight: normal; + font-style: normal; + font-display: block; +} + +[class^="icon-"], +[class*=" icon-"] { + /* use !important to prevent issues with browser extensions that change fonts */ + font-family: 'argon' !important; + font-style: normal; + font-weight: normal; + font-variant: normal; + text-transform: none; + line-height: 1; + /* Better Font Rendering =========== */ + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +a { + color: #5A8DEE; + text-decoration: none; + background-color: transparent; +} + +*::-webkit-scrollbar:hover { + background-color: rgba(100, 100, 100, .09); +} + +*::-webkit-scrollbar-thumb:vertical { + background: rgba(100, 100, 100, .5); + -webkit-border-radius: 100px; +} + +*::-webkit-scrollbar-thumb:vertical:active { + background: rgba(100, 100, 100, .61); + -webkit-border-radius: 100px; +} + +*::-webkit-scrollbar { + width: 0.5em !important; + overflow: visible; + border-radius: 4px; + -webkit-border-radius: 4px; +} + +*::-webkit-scrollbar-track { + opacity: 0; + -webkit-transition: all .5s; +} + +*::-webkit-scrollbar-thumb { + overflow: visible; + border-radius: 4px; + background: rgba(100, 100, 100, .2); +} + +.icon-hello-world:before { + content: "\e90e"; +} + +.icon-expand_more:before { + content: "\e20b"; +} + +.icon-menu:before { + content: "\e20e"; +} + +.icon-favorite:before { + content: "\e291"; +} + +.icon-spinner:before { + content: "\e603"; +} + +.icon-delete:before { + content: "\e900"; +} + +.icon-edit:before { + content: "\e901"; +} + +.icon-use:before { + content: "\e902"; +} + +.icon-loading:before { + content: "\e903"; +} + +.icon-switch:before { + content: "\e904"; +} + +.icon-error:before { + content: "\e905"; +} + +.icon-dashboard:before { + content: "\e906"; +} + +.icon-logout:before { + content: "\e907"; +} + +.icon-Network:before { + content: "\e908"; +} + +.icon-services:before { + content: "\e909"; +} + +.icon-system:before { + content: "\e90a"; +} + +.icon-vpn:before { + content: "\e90b"; +} + +.icon-storage:before { + content: "\e90c"; +} + +.icon-statistics:before { + content: "\e90d"; +} + +.icon-angle-right:before { + content: "\e90f"; +} + +.icon-password:before { + content: "\e910"; +} + +.icon-user:before { + content: "\e971"; +} + +.icon-question:before { + content: "\f059"; +} + +.sk-folding-cube { + position: absolute; + width: 40px; + height: 40px; + left: 50%; + top: 50%; + margin: -20px 0 0 -20px; + -webkit-transform: rotateZ(45deg); + transform: rotateZ(45deg); +} + +.sk-folding-cube .sk-cube { + float: left; + width: 50%; + height: 50%; + position: relative; + -webkit-transform: scale(1.1); + -ms-transform: scale(1.1); + transform: scale(1.1); +} + +.sk-folding-cube .sk-cube:before { + content: ''; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background-color: #5A8DEE; + -webkit-animation: sk-foldCubeAngle 2.4s infinite linear both; + animation: sk-foldCubeAngle 2.4s infinite linear both; + -webkit-transform-origin: 100% 100%; + -ms-transform-origin: 100% 100%; + transform-origin: 100% 100%; +} + +.sk-folding-cube .sk-cube2 { + -webkit-transform: scale(1.1) rotateZ(90deg); + transform: scale(1.1) rotateZ(90deg); +} + +.sk-folding-cube .sk-cube3 { + -webkit-transform: scale(1.1) rotateZ(180deg); + transform: scale(1.1) rotateZ(180deg); +} + +.sk-folding-cube .sk-cube4 { + -webkit-transform: scale(1.1) rotateZ(270deg); + transform: scale(1.1) rotateZ(270deg); +} + +.sk-folding-cube .sk-cube2:before { + -webkit-animation-delay: 0.3s; + animation-delay: 0.3s; +} + +.sk-folding-cube .sk-cube3:before { + -webkit-animation-delay: 0.6s; + animation-delay: 0.6s; +} + +.sk-folding-cube .sk-cube4:before { + -webkit-animation-delay: 0.9s; + animation-delay: 0.9s; +} + +@-webkit-keyframes sk-foldCubeAngle { + 0%, + 10% { + -webkit-transform: perspective(140px) rotateX(-180deg); + transform: perspective(140px) rotateX(-180deg); + opacity: 0; + } + + 25%, + 75% { + -webkit-transform: perspective(140px) rotateX(0deg); + transform: perspective(140px) rotateX(0deg); + opacity: 1; + } + + 90%, + 100% { + -webkit-transform: perspective(140px) rotateY(180deg); + transform: perspective(140px) rotateY(180deg); + opacity: 0; + } +} + +@keyframes sk-foldCubeAngle { + 0%, + 10% { + -webkit-transform: perspective(140px) rotateX(-180deg); + transform: perspective(140px) rotateX(-180deg); + opacity: 0; + } + + 25%, + 75% { + -webkit-transform: perspective(140px) rotateX(0deg); + transform: perspective(140px) rotateX(0deg); + opacity: 1; + } + + 90%, + 100% { + -webkit-transform: perspective(140px) rotateY(180deg); + transform: perspective(140px) rotateY(180deg); + opacity: 0; + } +} + +.table { + position: relative; + display: table; +} + +.tr { + display: table-row; +} + +.thead { + display: table-header-group; +} + +.tbody { + display: table-row-group; +} + +.tfoot { + display: table-footer-group; +} + +.td, +.th { + line-height: normal; + display: table-cell; + padding: 0.5em; + text-align: center; + vertical-align: middle; +} + +.th { + font-weight: bold; +} + +.tr.placeholder { + height: 4em; +} + +.tr.placeholder > .td { + line-height: 3; + position: absolute; + right: 0; + bottom: 0; + left: 0; + padding: 0.4rem 0 !important; + text-align: center !important; + background: inherit; +} + +.td[width="33%"] { + padding: 1.1em 2rem; +} + +.table[width="33%"], +.th[width="33%"], +.td[width="33%"] { + width: 33%; +} + +.table[width="100%"], +.th[width="100%"], +.td[width="100%"] { + width: 100%; +} + + +* { + box-sizing: border-box; + margin: 0; + padding: 0; +} + +.h1, +.h2, +.h3, +.h4, +.h5, +.h6, +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: inherit; + font-weight: normal; + line-height: 1.1 !important; + color: inherit; +} + +html { + overflow-y: hidden; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} + +body { + font-family: "Google Sans", "Microsoft Yahei", "WenQuanYi Micro Hei", "sans-serif", "Helvetica Neue", "Helvetica", "Hiragino Sans GB"; + font-size: 0.82rem; + color: #4d5156 +} + +html, +body { + height: 100%; + margin: 0; + padding: 0; + overflow-x: hidden; +} + +select { + padding: 0.36rem 0.8rem; + color: #555; + border: thin solid #ccc; + background-color: #fff; + background-image: none; +} + +div { + position: relative; +} + +.btn, +button, +select, +input, +.cbi-button, +.cbi-dropdown { + color: #4d5156; + border: none; + border-bottom: 1px solid #9e9e9e; + outline: 0; + background-image: none; + box-shadow: none; + transition: box-shadow 0.15s ease; +} + +input:not([type]), input[type=text]:not(.browser-default), input[type=password]:not(.browser-default), input[type=email]:not(.browser-default), input[type=url]:not(.browser-default), input[type=time]:not(.browser-default), input[type=date]:not(.browser-default), input[type=datetime]:not(.browser-default), input[type=datetime-local]:not(.browser-default), input[type=tel]:not(.browser-default), input[type=number]:not(.browser-default), input[type=search]:not(.browser-default), textarea.materialize-textarea { + background-color: transparent; + border: none; + border-bottom: 1px solid #9e9e9e; + border-radius: 0; + outline: none; + margin: 0; + padding: 0 0.5rem; + -webkit-box-shadow: none; + box-shadow: none; + -webkit-box-sizing: content-box; + box-sizing: content-box; + transition: box-shadow .3s, border .3s; +} + +.cbi-value-field>div { + position: relative; +} + +.focus-input { + position: absolute; + display: block; + width: 100%; + height: 100%; + top: 0; + left: 0; + pointer-events: none; +} + +.focus-input::before { + content: ""; + display: block; + position: absolute; + top: 2.2rem; + left: 0; + width: 0; + height: 2px; + -webkit-transition: all 0.4s; + -o-transition: all 0.4s; + -moz-transition: all 0.4s; + transition: all 0.4s; + background: #5A8DEE; +} + +select+.focus-input::before { + top: 2.12rem; +} + +.node-main-login .focus-input::before { + top: 2.73rem; +} + +input:focus + .focus-input::before,select:focus + .focus-input::before { + width: 100%; +} + +select, +.cbi-dropdown { + width: inherit; + cursor: default; +} + +select:not([multiple="multiple"]):focus, +input:not(.cbi-button):focus, +.cbi-dropdown:focus { +} + +.cbi-dropdown, +select[multiple="multiple"] { +} + +pre { + overflow: auto; +} + +code { + font-size: 1rem; + font-size-adjust: 0.35; + padding: 1px 3px; + color: #101010; + border-radius: 2px; + background: #ddd; +} + +abbr { + cursor: help; + text-decoration: underline; + color: #797474; +} + +hr { + margin: 1rem 0; + opacity: 0.1; + border-color: #eee; +} + +header, +.main { + width: 100%; +} + +footer { + font-size: 0.8rem; + overflow: hidden; + padding: 1rem; + text-align: right; + white-space: nowrap; + color: #aaa; + text-shadow: 0 0 2px #bbb; +} + +footer > a { + text-decoration: none; + color: #aaa; +} + +small { + font-size: 90%; + line-height: 1.42857143; + white-space: normal; +} + +.main { + position: relative; + top: 0; + bottom: 0; + overflow-y: auto; + height: 100%; +} + +.main > .loading { + position: fixed; + z-index: 1000; + top: 0; + display: block; + width: 100%; + height: 100%; + pointer-events: none; + background-color: #f0f0f0; +} + +.main > .loading > span { + font-family: monospace; + font-size: 2rem; + font-size-adjust: 0.35; + position: relative; + top: 12.5%; + display: block; + text-align: center; + color: #888; +} + +.main > .loading > span > .loading-img { + position: relative; + top: 0.1rem; + left: 0.05rem; + display: inline-block; + width: 1.25rem; + height: 1.25rem; + margin-right: 1rem; + animation: anim-rotate 2s infinite linear; + background: url(icons/spinner.svg) no-repeat center; +} + +@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); + } +} + +p { + line-height: 1.8rem; +} + +.main-left { + top: 0; + float: left; + width: 15%; + width: calc(0% + 15rem); + height: 100%; + background-color: #fff; + background-color: var(--menu-bg-color); + box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); + transition: box-shadow .25s, -webkit-box-shadow .25s; + overflow-x: auto; + position: fixed; + z-index: 100; +} + +.main-left .sidenav-header { + padding: 1.5rem 0 0.6rem; + text-align: center; + width: calc(0% + 13rem); +} + +.main-left .sidenav-header .brand { + font-size: 1.8rem; + color: #5A8DEE; + font-family: "TypoGraphica"; + text-decoration: none; + text-align: center; + cursor: default; + vertical-align: text-bottom; + white-space: nowrap; +} + +.brand img { + width: 180px; +} + +.main-right { + float: right; + width: 85%; + width: calc(100% - 15rem); + height: 100%; + transition: all 0.2s; + overflow-x: hidden; +} + +.main-right > #maincontent { + position: relative; + z-index: 50; + margin-top: 2rem; +} + +.pull-right { + float: right; +} + +.pull-left { + float: left; +} + +.nowrap:not(.td) { + white-space: nowrap; +} +[disabled="disabled"] { + pointer-events: none; +} + +header { + color: #fff; + color: var(--header-color); + display: none; +} + +header .fill { + padding: 0.8rem 0; +} + +header .container { + height: 2rem; + padding: 0 1rem; +} + +header .container .showSide { + display: none; + font-size: 1.4rem; +} + +header .container .brand { + font-size: 1.5rem; + color: #fff; + font-family: "TypoGraphica"; + text-decoration: none; + padding-left: 1rem; + cursor: default; + vertical-align: text-bottom; + display: none; +} + +header .container .pull-right { + float: right; + margin-top: 0rem; + display: flex; +} + +header .fill .status { + position: absolute; + top: 25%; + right: 1em; + float: right; +} + +header .fill .status * { + position: relative; + top: 0.2rem; + float: left; + margin-left: 0.3rem; + cursor: pointer; +} + +#xhr_poll_status { + display: flex; + margin-left: 0.5rem; +} + +#xhr_poll_status * { + color: #fff; +} + +.modal.alert-message { + background-color: #5A8DEE; + color: #fff; +} + +.modal.alert-message p { + font-weight: bold; + font-size: 0.9rem; + text-align: center; +} + +.modal .label.warning { + background-color: #FDAC41 !important; + color: #fff !important; +} + +.danger,.error { + background-color: rgba(255, 91, 92, 0.2) !important; + color: #FF5B5C !important; +} + +.danger a,.error a { + color: #FF5B5C !important; +} + +.warning { + background-color: rgba(253, 172, 65, 0.2) !important; + color: #FDAC41 !important; +} + +.warning a { + color: #FDAC41 !important; +} + +.modal.warning { + color: #fff !important; + background-color: #FDAC41 !important; +} + +.success { + background-color: rgba(57, 218, 138, 0.2) !important; + color: #39DA8A !important; +} + +.success a { + color: #39DA8A !important; +} + +.alert, +.alert-message { + font-weight: bold; + margin-bottom: 1em; + padding: 0.7rem 1rem; + background: rgba(90, 141, 238, 0.2); + color: #5A8DEE; + border: 0; +} + +.alert a, +.alert-message a { + color: #5A8DEE; +} + +.alert h4, +.alert-message h4 { + padding: 0rem 1.5rem 0.75rem 0rem; +} + +.alert .btn, +.alert-message .btn { + height: auto; +} + +.alert-message > h4 { + font-size: 110%; + font-weight: bold; +} + +.alert-message .btn { + padding: 0.3rem 0.6rem; +} + +.container .alert, +.container .alert-message { + margin-top: 1rem; +} +/* + * Main Menu + */ +.main .main-left { + transition: all 0.2s; +} + +.main .main-left .nav { + margin-top: 0rem; +} + +.main .main-left .nav li { + padding: 0.5rem 1rem; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.main .main-left .nav li a { + display: block; + color: #5f6368; + color: var(--menu-color); +} + +.main .main-left .nav li { + padding: 0; +} + +.main .main-left .nav li ul { + display: none; +} + +.main .main-left .nav>li>a { + display: block; + margin: 0.4rem 0.5rem !important; + padding: 0.5rem 0 0.5rem 2.5rem !important; + transition: box-shadow .25s, -webkit-box-shadow .25s; + border-radius: 2px; + text-decoration: none; + cursor: default; + transition: all 0.2s; + position: relative; + font-size: 0.93rem; +} + +.main .main-left .nav li .menu.active { + color: #fff; + background: #5A8DEE; +} + +.main .main-left .nav li .menu.active::before { + color: #fff !important; +} + +.main .main-left .nav li .menu.active::after { + transform: rotate(90deg); + color: #fff !important; +} + +.main .main-left .nav>li>a:first-child:hover { + cursor: pointer; + color: #fff; + background: #5A8DEE; +} + +.main .main-left .nav>li>a:first-child:hover::before { + color: #fff !important; +} + +.main .main-left .nav>li>a:first-child::before { + font-family: 'argon' !important; + font-style: normal; + font-weight: normal; + font-variant: normal; + text-transform: none; + line-height: 1; + /* Better Font Rendering =========== */ + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + position: absolute; + left: 0.8rem; + padding-top: 3px; + transition: all 0.3s; +} + +.main .main-left .nav li .menu::after { + position: absolute; + right: 0.5rem; + top: 0.8rem; + font-family: 'argon' !important; + font-style: normal; + font-weight: normal; + font-variant: normal; + text-transform: none; + line-height: 1; + /* Better Font Rendering =========== */ + -moz-osx-font-smoothing: grayscale; + content: '\e90f'; + transition: all 0.15s ease; + color: #ced4da; + text-rendering: auto; + -webkit-font-smoothing: antialiased; + transition: all 0.3s; +} + +.main .main-left .nav li .menu[data-title=Status]:before { + content: "\e906"; + color: #5e72e4; +} + +.main .main-left .nav li .menu[data-title=System]:before { + content: "\e90a"; + color: #fb6340; +} + +.main .main-left .nav li .menu[data-title=Services]:before { + content: "\e909"; + color: #11cdef; +} + +.main .main-left .nav li .menu[data-title=NAS]:before { + content: "\e90c"; + color: #f3a4b5; +} + +.main .main-left .nav li .menu[data-title=VPN]:before { + content: "\e90b"; + color: #8965e0; +} + +.main .main-left .nav li .menu[data-title=Network]:before { + content: "\e908"; + color: #8965e0; +} + +.main .main-left .nav li .menu[data-title=Bandwidth_Monitor]:before { + content: "\e90d"; + color: #2dce89; +} + +.main .main-left .nav li .menu[data-title=Docker]:before { + content: "\e911"; + color: #6699ff; +} + +.main .main-left .nav li .menu[data-title=Statistics]:before { + content: "\e913"; + color: #8965e0; +} + +.main .main-left .nav li .menu[data-title=Control]:before { + content: "\e912"; + color: #5e72e4; +} + +.main .main-left .nav li .menu[data-title=Asterisk]:before { + content: "\e914"; + color: #fb6340; +} + +.main .main-left .nav li a[data-title=Logout]:before { + content: "\e907"; + color: #adb5bd; +} + +.main .main-left .nav li:hover { + background: none; +} + +.main .main-left .nav li .slide-menu { + margin: 0 0.5rem 0 2.5rem; + padding: 0rem 0.5rem; +} + +.main .main-left .nav li .slide-menu li { + position: relative; + border-radius: 2px; + margin: 0.2rem 0; + padding: 0.5rem 0rem; + background: none; +} + +.main .main-left .nav li .slide-menu li a { + white-space: nowrap; + text-decoration: none; +} + +.main .main-left .nav li .slide-menu li::after { + content: ""; + position: absolute; + left: 0; + bottom: 0; + width: 0; + height: 2px; + background-color: #5A8DEE; + transition: all 0.2s; +} + +.main .main-left .nav li .slide-menu li:hover { + background: none; +} + +.main .main-left .nav li .slide-menu li:hover::after { + width: 100%; +} + +.main .main-left .nav li .slide-menu .active { + background: none; + color: var(--menu-color); +} + +.main .main-left .nav li .slide-menu .active a { + color: var(--menu-color); +} + +.main .main-left .nav li .slide-menu .active::after { + content: ""; + position: absolute; + left: 0; + bottom: 0; + width: 100%; + height: 2px; + background-color: #5A8DEE; + transition: all 0.2s; +} + +.main .main-left .nav li .slide-menu .active:hover { + background: none; +} + +.main .main-left .nav li .slide-menu .active:hover::after { + width: 100%; +} + +body[class*="node-"] > .main > .main-left > .nav > .slide > .menu::before { + transition: transform 0.1s ease-in-out; +} + +body[class*="node-"] > .main > .main-left > .nav > .slide > .menu.active::before { + transition: transform 0.2s ease-in-out; +} + +.main > .main-left[style*="overflow: hidden"] > .nav > .slide > .menu::before { + display: none; +} + +#maincontent > .container { + padding:0 2%; +} + +.Overview.node-admin-status #maincontent > .container { + padding:0; +} + +.Overview.node-admin-status #maincontent > .container h2{ + padding-left:2rem; +} +ul { + line-height: normal; +} + +li { + list-style-type: none; +} + +h1 { + font-size: 2rem; + padding-bottom: 10px; + border-bottom: thin solid #eee; +} + +h2 { + font-size: 1.8rem; + padding: 1rem 2rem; +} + +h3 { + font-size: 1.4rem; + margin: 0rem 0 0 0; + padding: 2rem 2rem 1.25rem 2rem; +} + +h4 { + font-size: 1.2rem; + margin: 1.2rem 0 0 0; + padding: 0rem 2rem 0.75rem 2rem; +} + +h5 { + font-size: 1rem; + margin: 2rem 0 0 0; + padding-bottom: 10px; +} + +.container .cbi-section{ + margin-bottom:1rem; + +} + +.cbi-modal .cbi-section, +.cbi-section .cbi-section { + padding: 0; + box-shadow: none; +} + +.cbi-modal .cbi-tabmenu { + margin-left: 0; +} + +.cbi-map-descr, +.cbi-section-descr { + font-size: small; + line-height: 2rem; + padding: 0 0 0.5rem 0; +} + +.cbi-section-node { + padding-left: 2rem; +} + +.cbi-section .cbi-section-node { + padding-left: 0; +} + +.cbi-section-descr { + color: #404040; +} + +.cbi-map-descr + fieldset { + margin-top: 1rem; +} + +.cbi-map-descr > abbr { + cursor: help; + text-decoration: underline; +} + +.cbi-section > legend { + display: none !important; +} + +fieldset.cbi-section{ +border:none; +} + +fieldset > fieldset, +.cbi-section > .cbi-section { + margin: 0; + padding: 0; + border: 0; + box-shadow: none; +} + +.cbi-section > h3:first-child, +.panel-title { + font-size: 1.4rem; + line-height: 1; + display: block; + width: 100%; + margin: 0; + margin-bottom: 0; + padding: 1.25rem 2rem; + color: #32325d; + color: var(--gray-dark); +} + +.cbi-section > h3:first-child, +.cbi-section > h4:first-child, +.cbi-section > p:first-child, +[data-tab-title] > h3:first-child, +[data-tab-title] > h4:first-child, +[data-tab-title] > p:first-child { + padding: 0.5rem; +} + +table { + border-spacing: 0; + border-collapse: collapse; +} + +table, +.table { + overflow-y: hidden; + width: 100%; +} + +table > tbody > tr > td, +table > tbody > tr > th, +table > tfoot > tr > td, +table > tfoot > tr > th, +table > thead > tr > td, +table > thead > tr > th, +.table > .tbody > .tr > .td, +.table > .tbody > .tr > .th, +.table > .tfoot > .tr > .td, +.table > .tfoot > .tr > .th, +.table > .thead > .tr > .td, +.table > .thead > .tr > .th, +.table > .tr > .td.cbi-value-field, +.table > .tr > .th.cbi-section-table-cell { + padding: 0.5rem; +} + +.container > .cbi-section:first-of-type > .table[width="100%"] > .tr > .td { + padding: 0.6rem; +} + +.cbi-section-table-cell { + line-height: 1.1; + align-self: flex-end; + flex: 1 1 auto; +} + +tr > td, +tr > th, +.tr > .td, +.tr > .th, +.cbi-section-table-row::before, +#cbi-wireless > #wifi_assoclist_table > .tr:nth-child(2) { + padding: 1rem 1rem 1rem 1rem; +} + +#cbi-wireless .td, +#cbi-network .tr:first-child > .td, +.table[width="100%"] > .tr:first-child > .td, +[data-page="admin-network-diagnostics"] .tr > .td, +.tr.table-titles > .th, +.tr.cbi-section-table-titles > .th { + border-top: 0 !important; + padding: 1.1em 1rem; + line-height: 1.3rem; +} + +.cbi-tab-descr { + padding: 1rem; +} + +.table[width="100%"] > .tr:first-child > .td { + margin: auto 0; +} + +.cbi-section-table-row { + margin-bottom: 1rem; + text-align: center !important; + background: #f4f4f4; +} + +.cbi-section-table-row:last-child { + margin-bottom: 0; +} + +.cbi-section-table-row > .cbi-value-field .cbi-dropdown, +.cbi-section-table-row > .cbi-value-field .cbi-input-select, +.cbi-section-table-row > .cbi-value-field .cbi-input-text, +.cbi-section-table-row > .cbi-value-field .cbi-input-password { + width: 100%; + min-width: 0 !important; +} + +.cbi-section-table-row > .cbi-value-field [data-dynlist] > input, +.cbi-section-table-row > .cbi-value-field input.cbi-input-password { + width: calc(100% - 1.5rem); +} + +.cbi-section-table-row .td { + text-align: center !important; +} + +table > tbody > tr, +div > .table > .tr,.cbi-map >.cbi-section .cbi-value { + background-color: #fff; + transition: background-color .25s +} + +table > tbody > tr:nth-of-type(4n+2), +div > .table > .tr:nth-of-type(4n+2),.cbi-map >.cbi-section .cbi-value:nth-of-type(2n) { + background-color: #e5effd; +} + +table > tbody > tr:nth-of-type(4n+2):hover, +div > .table > .tr:nth-of-type(4n+2):hover { + background-color: #d9e9ff; +} + +table > tbody > tr:nth-of-type(4n), +div > .table > .tr:nth-of-type(4n) { + background-color: rgba(223, 56, 18, 0.04); +} + +table > tbody > tr:nth-of-type(4n):hover, +div > .table > .tr:nth-of-type(4n):hover { + background-color: rgba(223, 56, 18, 0.09); +} + +.cbi-map >.cbi-section .cbi-value:nth-of-type(2n) { + background-color: #e5effdb8; +} + +.cbi-map >.cbi-section .cbi-value:nth-of-type(2n):hover { + background-color: #e5effd; +} + +/* fix multiple table */ +table table, +.table .table, +.cbi-value-field table, +.cbi-value-field .table, +td > table > tbody > tr > td, +.td > .table > .tbody > .tr > .td, +.cbi-value-field > table > tbody > tr > td, +.cbi-value-field > .table > .tbody > .tr > .td { + border: 0; +} +/* button style */ +.btn, +.cbi-button, +.item::after { + font-size: 0.8rem; + display: inline-block; + width: auto !important; + padding: 0 0.8rem; + cursor: pointer; + white-space: nowrap; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + transition: all 0.2s ease-in-out; + text-align: center; + vertical-align: middle; + text-decoration: none; + color: #fff; + border: 0; + border-radius: 0.2rem; + background-image: none; + -webkit-appearance: none; + -ms-touch-action: manipulation; + touch-action: manipulation; +} + +.cbi-button-up, +.cbi-button-down { + font-size: 1.2rem; + display: inline-block; + min-width: 0; + padding: 0.2rem 0.3rem; + color: transparent !important; + background: url(icons/arrow.svg) no-repeat center !important; + background-size: 12px 20px !important; +} + +.cbi-button-up { + transform: scaleY(-1); +} + +.cbi-button:not(select) { + -webkit-appearance: none !important; +} + +button:hover, +.waves-input-wrapper:hover, +.btn:hover, +.cbi-button:hover, +.item:hover::after { + opacity: 0.7; + top: 0.1rem; +} + +.cbi-button-up:hover, +.cbi-button-up:focus { + opacity: 0.7; +} + +.btn:disabled, +.cbi-button:disabled { + cursor: not-allowed; + pointer-events: none; + opacity: 0.5; + box-shadow: none; +} +/* gray */ +.alert-message [class="btn"], +.modal div[class="btn"], +.cbi-button-find, +.cbi-button-link, +.cbi-button-up, +.cbi-button-down, +.cbi-button-neutral, +.cbi-button[name="zero"], +.cbi-button[name="restart"], +.cbi-button[onclick="hide_empty(this)"] { + color: #fff; + background-color: #A3AFBD !important; +} +/* dark blue */ +.btn.primary, +.cbi-page-actions .cbi-button-save, +.cbi-page-actions .cbi-button-apply + .cbi-button-save, +.cbi-button-add, +.cbi-button-save, +.cbi-button-positive, +.cbi-button-link, +.cbi-button[value="Enable"], +.cbi-button[value="Scan"], +.cbi-button[value^="Back"], +.cbi-button-neutral[onclick="handleConfig(event)"] { + font-weight: normal; + color: #fff; + border: none; + background-color: #23bd70 !important; +} +/* light blue */ +.cbi-page-actions .cbi-button-apply, +.cbi-section-actions .cbi-button-edit, +.cbi-button-edit, +.cbi-button-apply, +.cbi-button-reload, +.cbi-button-action, +.cbi-button[value="Submit"], +.cbi-button[value="Upload"], +.cbi-button[value$="Apply"], +.cbi-button[onclick="addKey(event)"] { + font-weight: normal; + color: #fff; + background-color: #5A8DEE !important; +} +/* red */ +.btn.danger, +.cbi-section-remove > .cbi-button, +.cbi-button-remove, +.btn[onclick="handleOpkg(event)"], +.cbi-button-reset, +.cbi-button-negative, +.cbi-button[value="Stop"], +.cbi-button[value="Kill"], +.cbi-button[onclick="reboot(this)"], +.cbi-button-neutral[value="Restart"] { + font-weight: normal; + color: #fff; + border: none; + background-color: #fdb75a !important; +} +/* yellow */ +.btn[value="Dismiss"], +.cbi-button[value="Terminate"], +.cbi-button[value="Reset"], +.cbi-button[value="Disabled"], +.cbi-button[onclick^="iface_reconnect"], +.cbi-button[onclick="handleReset(event)"], +.cbi-button-neutral[value="Disable"] { + font-weight: normal; + color: #fff; + border: none; + background-color: #00CFDD !important; +} +/* green */ +.cbi-button-success, +.cbi-button-download, +.cbi-button[name="backup"], +.cbi-button[value="Download"], +.cbi-button[value="Save mtdblock"] { + font-weight: normal; + color: #fff; + background-color: #5cb85c !important; +} + +.cbi-page-actions .cbi-button-link:first-child { + float: left; +} + +.a-to-btn { + text-decoration: none; +} + +.cbi-value-field .cbi-button-add { + font-weight: bold; + margin: 9px 0 4px 3px; + padding: 1px 6px; +} + +.tabs > li, +.cbi-tabmenu > li { + display: inline-block; + padding: 0; + margin: 0; + cursor: pointer; +} + +.tabs > li,.cbi-tabmenu > li { + border-bottom: 0.2rem solid transparent; + background-color: #fff; +} + +.tabs > li[class~="active"], +.tabs > li:hover { + border-bottom-color: #5A8DEE; + background-color: #669bff36; +} + +.tabs > li:hover { + cursor: pointer; +} + +.tabs > li > a, +.cbi-tabmenu > li > a { + padding: 0.8rem 1.9rem; + text-decoration: none; + color: #404040; + display: inline-block; +} + +.tabs > li[class~="active"] > a { + color: #5A8DEE; + color: #5A8DEE; +} + +ul.tabs,.tabmenu .tabs,#tabmenu .tabs,ul.cbi-tabmenu { + padding-left: 2.5%; + box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12); + transition: box-shadow .25s, -webkit-box-shadow .25s; + border-radius: 2px; + border-bottom: 0; + margin-bottom: 10px; + background-color: #fff; + padding-top: 1rem; +} + +#packages{ + margin-left: -2%; + width: 105%; +} + +.cbi-tabmenu > li:hover { + background-color: rgba(246,178,181,0.2); +} + +.cbi-tabmenu > li[class~="cbi-tab"] { + background-color: rgba(246,178,181,0.2); + border-bottom-color: #ff9b84; +} + +.cbi-tabmenu > li[class~="cbi-tab"] a { + color: #ee6e73; +} + +.cbi-section .cbi-section-remove:nth-of-type(2n), +.container > .cbi-section .cbi-section-node:nth-of-type(2n) { + background-color: #f9f9f9; +} +[data-tab-title] { + overflow: hidden; + height: 0; + opacity: 0; + margin: 0; + padding: 0rem 0rem !important; +} +[data-tab-title] p { + margin-left: 1rem; + margin-bottom: 1rem; +} +[data-tab-active="true"] { + overflow: visible; + height: auto; + opacity: 1; + transition: opacity 0.25s ease-in; + margin: inherit !important; +} + +.cbi-section-node-tabbed { + margin-top: 0; + padding: 0; + transition: box-shadow .25s, -webkit-box-shadow .25s; + border-radius: 2px; +} + +.cbi-value-field, +.cbi-value-description { + display: table-cell; + position: relative; + margin-top: 1rem; + margin-bottom: 1rem; +} + +.cbi-value-field abbr, +.cbi-value-description abbr { + color: #32325d; + color: var(--gray-dark); +} + +.cbi-value-description { + line-height: inherit !important; +} + +.cbi-value-title { + display: table-cell; + float: left; + width: 15rem; + padding-right: 2rem; + text-align: right; + word-wrap: break-word; +} + +.cbi-value { + display: inline-block; + width: 100%; + padding: 0.5rem 1rem; + line-height: 2.4rem; +} + +.cbi-value-field >* { + line-height: 1.3rem; +} + +.cbi-value ul { + line-height: 1.25; +} + +.cbi-value-field .cbi-dropdown, +.cbi-value-field .cbi-input-select, +.cbi-value input[type="text"], +.cbi-value input[type="password"] { + min-width: 18rem; +} + +#cbi-firewall-zone .cbi-input-select, +#cbi-network-switch_vlan .cbi-input-select { + min-width: 11rem; +} + +#cbi-network-switch_vlan .cbi-input-text { + max-width: 3rem; +} + +.cbi-input-invalid { + color: #f5365c; + border-bottom-color: #f5365c; +} + +.cbi-section-error { + font-weight: bold; + line-height: 1.42857143; + margin: 18px; + padding: 6px; + border: thin solid #f5365c; + border-radius: 3px; + background-color: #fce6e6; +} + +.cbi-section-error ul { + margin: 0 0 0 20px; +} + +.cbi-section-error ul li { + font-weight: bold; + color: #f5365c; +} + +.td[data-title]::before { + font-weight: bold; + display: none; + padding: 0.25rem 0; + content: attr(data-title) ":\20"; + text-align: left; + white-space: nowrap; +} + +.tr.placeholder .td[data-title]::before { + display: none; +} + +.tr[data-title]::before, +.tr.cbi-section-table-titles.named::before { + font-weight: bold; + display: table-cell; + align-self: center; + flex: 1 1 5%; + padding: 0.25rem; + content: attr(data-title) "\20"; + text-align: center; + vertical-align: middle; + white-space: normal; + word-wrap: break-word; +} + +.cbi-rowstyle-1 { + background-color: #f9f9f9; +} + +.cbi-rowstyle-2 { +} + +.cbi-rowstyle-2 .cbi-button-up, +.cbi-rowstyle-2 .cbi-button-down, +body:not(.Interfaces) .cbi-rowstyle-2:first-child { + background-color: #fff !important; +} + +.cbi-section-table .cbi-section-table-titles .cbi-section-table-cell { + width: auto !important; +} + +.td.cbi-section-actions { + text-align: right !important; + vertical-align: middle; +} + +.td.cbi-section-actions > * { + display: inline-flex; +} + +.td.cbi-section-actions > * > *, +.td.cbi-section-actions > * > form > * { + margin: 0 5px; + display: flex; + align-items: center; +} + +.td.cbi-section-actions > * > form { + display: inline-flex; + margin: 0; +} +/* lists */ +.cbi-dynlist { + line-height: 1.3; + flex-direction: column; + min-height: 30px; + cursor: text; +} + +.cbi-dynlist > .item { + position: relative; + max-width: 25rem; + margin-right: 2em; + margin-bottom: 0.3rem; + padding: 1em 0.25em 0.25em 0; + pointer-events: none; + color: #8898aa; + border-bottom: 2px solid #5A8DEE; + border-bottom: 2px solid #5A8DEE; + outline: 0; +} + +.cbi-dynlist[name="sshkeys"] > .item { + max-width: none; +} + +.cbi-dynlist > .item::after { + font-weight: bold; + position: absolute; + right: -2em; + bottom: 0; + display: inline-flex; + min-height: 17px; + padding: 0 6px; + content: "\00D7"; + pointer-events: auto; + color: #fff; + border: thin solid #f5365c; + border: thin solid var(--red); + background-color: #f5365c; + background-color: var(--red); +} + +.cbi-dynlist > .item > span { + white-space: normal; + word-break: break-word; +} + +.cbi-dynlist > .add-item { + display: inline-flex; + align-items: center; + width: 100%; + min-width: 16rem; +} + +.cbi-dynlist > .add-item:not([ondrop]) > input { + overflow: hidden; + width: 100%; + min-width: 15rem; + white-space: nowrap; + text-overflow: ellipsis; +} + +.cbi-dynlist > .add-item[ondrop] > input { + min-width: 13rem; +} + +.cbi-dynlist, +.cbi-dropdown { + position: relative; + display: inline-flex; + padding: 0.2rem; +} + +.cbi-dropdown[placeholder*="select"] { + max-width: 25rem; + margin-top: -3px; +} + +.cbi-dropdown > ul { + display: flex; + overflow-x: hidden; + overflow-y: auto; + width: 100%; + margin: 0 !important; + padding: 0; + list-style: none; + outline: 0; +} + +#cbi-adblock-global-adb_sources .cbi-dropdown > ul.preview { + display: none; +} + +.cbi-button-apply > ul.preview { + display: none; +} + +.cbi-button-apply > ul.preview li { + color: #fff; +} + +.cbi-button-apply > ul:first-child li { + color: #fff; +} + +.cbi-dropdown > .open { + flex-basis: 15px; +} + +.cbi-dropdown > .open, +.cbi-dropdown > .more { + font-size: 1rem; + font-weight: 900; + display: flex; + flex-direction: column; + flex-grow: 0; + flex-shrink: 0; + justify-content: center; + padding: 0 0.25em; + cursor: default; + text-align: center; + outline: 0; + line-height: 1rem; +} + +.cbi-dropdown > .more, +.cbi-dropdown > ul > li[placeholder] { + font-weight: bold; + display: none; + color: #777; + text-shadow: 1px 1px 0 #fff; +} + +.cbi-dropdown > ul > li { + display: none; + overflow: hidden; + align-items: center; + align-self: center; + flex-grow: 1; + flex-shrink: 1; + white-space: nowrap; + text-overflow: ellipsis; +} + +.cbi-dropdown > ul > li .hide-open { + display: initial; +} + +.cbi-dropdown > ul > li .hide-close { + display: none; +} + +.cbi-dropdown > ul > li[display]:not([display="0"]) { + border-left: thin solid #ccc; +} + +.cbi-dropdown[empty] > ul { + max-width: 1px; +} + +.cbi-dropdown > ul > li > form { + display: none; + margin: 0; + padding: 0; + pointer-events: none; +} + +.cbi-dropdown > ul > li img { + margin-right: 0.25em; + vertical-align: middle; +} + +.cbi-dropdown > ul > li > form > input[type="checkbox"] { + height: auto; + margin: 0; + display:inline-block; +} + +.cbi-dropdown > ul > li input[type="text"] { + height: 20px; +} + +.cbi-dropdown[open] > ul.dropdown { + position: absolute; + z-index: 1100; + display: block; + width: auto; + min-width: 100%; + max-width: none; + max-height: 200px; + border: thin solid #918e8c; + background: #f6f6f6; + box-shadow: 0 0 4px #918e8c; + color: var(--main-menu-color); + left: 0; +} + +.cbi-dropdown[open] > ul.dropdown li { + color: #000; +} + +.cbi-dropdown > ul > li[display], +.cbi-dropdown[open] > ul.preview, +.cbi-dropdown[open] > ul.dropdown > li, +.cbi-dropdown[multiple] > ul > li > label, +.cbi-dropdown[multiple][open] > ul.dropdown > li, +.cbi-dropdown[multiple][more] > .more, +.cbi-dropdown[multiple][empty] > .more { + display: flex; + align-items: center; + flex-grow: 1; +} + +.cbi-dropdown[empty] > ul > li, +.cbi-dropdown[optional][open] > ul.dropdown > li[placeholder], +.cbi-dropdown[multiple][open] > ul.dropdown > li > form { + display: block; +} + +.cbi-dropdown[open] > ul.dropdown > li .hide-open { + display: none; +} + +.cbi-dropdown[open] > ul.dropdown > li .hide-close { + display: initial; +} + +.cbi-dropdown[open] > ul.dropdown > li { + border-bottom: thin solid #ccc; + padding: 0.5rem 0.8rem; +} + +.cbi-dropdown[open] > ul.dropdown > li[selected] { + background: #b0d0f0; +} + +.cbi-dropdown[open] > ul.dropdown > li.focus { + background: linear-gradient(90deg, #a3c2e8 0%, #84aad9 100%); +} + +.cbi-dropdown[open] > ul.dropdown > li:last-child { + margin-bottom: 0; + border-bottom: 0; +} + +.cbi-dropdown[open] > ul.dropdown > li[unselectable] { + opacity: 0.7; +} + +.cbi-dropdown[open] > ul.dropdown > li > input.create-item-input:first-child:last-child { + width: 100%; +} + +.cbi-dropdown[disabled] { + pointer-events: none; + opacity: 0.6; +} + +.cbi-dropdown .zonebadge { + width: 100%; +} + +.cbi-dropdown[open] .zonebadge { + width: auto; +} +/* progressbar */ +.cbi-progressbar { + position: relative; + min-width: 170px; + height: 20px; + margin: 6px 0; + border: thin solid #999; + border-radius: 0.2rem; + box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); +} + +@keyframes progress-bar-stripes { + from { + background-position: 0.357rem 0; + } + + to { + background-position: 0 0; + } +} + +.cbi-progressbar > div { + width: 0; + height: 100%; + transition: width 0.25s ease-in; + background-color: #5A8DEE; + background-image: linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent); + background-size: auto auto; + animation: progress-bar-stripes 1s linear infinite; +} + +.cbi-progressbar::after { + font-family: monospace; + font-size: 1em; + font-weight: bold; + font-size-adjust: 0.38; + line-height: normal; + position: absolute; + top: 2px; + right: 0; + bottom: 2px; + left: 0; + overflow: hidden; + content: attr(title); + text-align: center; + white-space: pre; + text-overflow: ellipsis; + color: #ff4500d1; +} + +#modal_overlay { + position: fixed; + z-index: 900; + top: 0; + right: 10000px; + bottom: 0; + left: -10000px; + overflow-y: scroll; + transition: opacity 0.125s ease-in; + opacity: 0; + background: rgba(0, 0, 0, 0.7); + -webkit-overflow-scrolling: touch; +} + +.modal { + display: flex; + align-items: center; + flex-wrap: wrap; + width: 90%; + min-width: 270px; + max-width: 695px; + min-height: 32px; + margin: 25vh auto; + padding: 1em; + border-radius: 3px !important; + background: #fff; + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0 2px 0 rgba(0, 0, 0, 0.12); +} + +.modal > * { + line-height: normal; + flex-basis: 100%; + max-width: 100%; +} + +.modal > pre, +.modal > textarea { + font-size: 1rem; + font-size-adjust: 0.35; + overflow: auto; + margin-bottom: 0.5em; + padding: 8.5px; + cursor: auto; + white-space: pre-wrap; + color: #eee; + outline: 0; + background-color: #101010; + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0 2px 0 rgba(0, 0, 0, 0.12); +} + +.modal > h4 { + margin: 0.5em 0; +} + +.modal ul { + margin-left: 2.2em; +} + +.modal li { + list-style-type: square; + color: #808080; +} + +.modal p { + word-break: break-word; + margin: 1rem 0; +} + +h3+p,h4+p { + margin-top: 0 !important; +} + +.modal .label { + font-size: 0.6rem; + font-weight: normal; + padding: 0.1rem 0.3rem; + cursor: default; + border-radius: 0; + background: #9b9b9b; + color: #fff; +} + +.modal .label.notice { + color: #fff; + background: #5A8DEE; +} + +body.modal-overlay-active { + overflow: hidden; + height: 100vh; +} + +body.modal-overlay-active #modal_overlay { + right: 0; + left: 0; + opacity: 1; +} + +.spinning { + position: relative; + padding-left: 32px !important; +} + +.spinning::before { + position: absolute; + top: 0; + bottom: 0; + left: 0.2em; + width: 32px; + content: ""; + background: url(../resources/icons/loading.gif) no-repeat center; + background-size: 16px; +} +/* luci */ +.hidden { + display: none; +} + +.left, +.left::before { + text-align: left !important; +} + +.right, +.right::before { + text-align: right !important; +} + +.center, +.center::before { + text-align: center !important; +} + +.top { + align-self: flex-start !important; + vertical-align: top !important; +} + +.bottom { + align-self: flex-end !important; + vertical-align: bottom !important; +} + +.inline { + display: inline; +} + +.cbi-page-actions { + padding-top: 1rem; + text-align: right; +} + +.node-main-login .cbi-page-actions { + padding-right: 0; +} + +.cbi-page-actions > form[method="post"] { + display: inline-block; +} + +.th[data-type="button"], +.td[data-type="button"], +.th[data-type="fvalue"], +.td[data-type="fvalue"] { + flex: 1 1 2em; + text-align: center; +} + +.ifacebadge { + display: inline-flex; + padding: 0.5rem 0.8rem; + border-bottom: thin solid #ccc; + background: #eee; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); +} + +td > .ifacebadge, +.td > .ifacebadge { + font-size: 0.8rem; + background-color: #f0f0f0; +} + +.ifacebadge > em, +.ifacebadge > img { + display: inline-block; + align-self: flex-start; + margin: 0 0.2rem; +} + +.ifacebadge > img + img { + margin: 0 0.2rem 0 0; +} + +.network-status-table { + display: flex; + flex-wrap: wrap; +} + +.network-status-table .ifacebox { + flex-grow: 1; +} + +.network-status-table .ifacebox-body { + display: flex; + flex-direction: column; + height: 100%; +} + +.network-status-table .ifacebox-body > span { + flex: 10 10 auto; + height: 100%; +} + +.network-status-table .ifacebox-body > div { + display: flex; + flex-wrap: wrap; +} + +.network-status-table .ifacebox-body .ifacebadge { + align-items: center; + flex: 1 1 auto; + min-width: 220px; + margin: 0.5em 0em 0 0em; + padding: 0.5em; + background-color: #fff; +} +/* textarea */ +textarea { + font-family: monospace; + width: 95%; + min-width: 28rem; + padding: 0.8rem; + line-height: 1.6rem !important; + box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); + transition: box-shadow .25s, -webkit-box-shadow .25s; + border-radius: 2px; + border: 0 !important; +} + +textarea:focus{ + outline: none; + border: 1px solid #5A8DEE !important; + box-shadow: 0 0px 5px 0 #5A8DEE; +} + +.cbi-section textarea { + margin: 0rem; +} + +#syslog { + font-size: small; + line-height: 1.25; + width: 100%; + padding: 1rem; + resize: none; + color: #eee; + border: 0; + box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); + transition: box-shadow .25s, -webkit-box-shadow .25s; + border-radius: 2px; + background-color: #242424; + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0 2px 0 rgba(0, 0, 0, 0.12); + max-height: 100% !important; +} + +#syslog:focus { + outline: 0; +} +/* config changes */ +.uci-change-list { + font-family: monospace; +} + +.uci-change-list ins, +.uci-change-legend-label ins { + display: block; + padding: 2px; + text-decoration: none; + border: thin solid #0f0; + background-color: #cfc; +} + +.uci-change-list del, +.uci-change-legend-label del { + font-style: normal; + display: block; + padding: 2px; + text-decoration: none; + border: thin solid #f00; + background-color: #fcc; +} + +.uci-change-list var, +.uci-change-legend-label var { + font-style: normal; + display: block; + padding: 2px; + text-decoration: none; + border: thin solid #ccc; + background-color: #eee; +} + +.uci-change-list var ins, +.uci-change-list var del { + font-style: normal; + padding: 0; + white-space: pre; + border: 0; +} + +.uci-change-legend { + padding: 5px; +} + +.uci-change-legend-label { + float: left; + width: 150px; +} + +.uci-change-legend-label > ins, +.uci-change-legend-label > del, +.uci-change-legend-label > var { + display: block; + float: left; + width: 10px; + height: 10px; + margin-right: 4px; +} + +.uci-change-legend-label var ins, +.uci-change-legend-label var del { + line-height: 0.4; + border: 0; +} + +.uci-change-list var, +.uci-change-list del, +.uci-change-list ins { + padding: 0.5rem; +} +/* other fix */ +#iwsvg, +#iwsvg2, +#bwsvg { + border: thin solid #d4d4d4 !important; +} + +#iwsvg, +[data-page="admin-status-realtime-bandwidth"] #bwsvg { + border-top: 0 !important; +} + +.ifacebox { + line-height: 1.25; + display: inline-flex; + flex-direction: column; + min-width: 100px; +} + +.ifacebox-head { + padding: 0.25em; + background: #eee; +} + +.ifacebox-head.active { + background: #5A8DEE; +} + +.ifacebox-head.active * { + color: #fff; + color: var(--white); +} + +.ifacebox-body { + padding: 0.5em 2rem; + line-height: 1.6em; +} + +.cbi-image-button { + margin-left: 0.5rem; +} + +.zonebadge { + display: inline-block; + padding: 0.2rem 0.5rem; +} + +.zonebadge .ifacebadge { + margin: 0.1rem 0.2rem; + padding: 0.2rem 0.3rem; + border: thin solid #6c6c6c; +} + +.zonebadge > input[type="text"] { + min-width: 10rem; + margin-top: 0.3rem; + padding: 0.16rem 1rem; +} + +.zonebadge > em, +.zonebadge > strong { + display: inline-block; + margin: 0 0.2rem; +} + +.cbi-value-field .cbi-input-checkbox, +.cbi-value-field .cbi-input-radio { + margin-right: 5px; +} + +.cbi-value-field > ul > li { + display: flex; +} + +.cbi-value-field > ul > li > label { + margin-top: 0.5rem; +} + +.cbi-value-field > ul > li .ifacebadge { + margin-top: -0.5rem; + margin-left: 0.4rem; + background-color: #eee; +} + +.cbi-section-table-row > .cbi-value-field .cbi-dropdown { + min-width: 7rem; +} + +.cbi-section-create { + display: inline-flex; + align-items: center; + margin: 0.25rem 0 0.25rem 1rem; +} + +.cbi-section-create > * { + margin: 0.5rem; +} + +.cbi-section-remove { + padding: 0.5rem; +} + +div.cbi-value var, +td.cbi-value-field var, +.td.cbi-value-field var { + font-style: italic; + color: #0069d6; +} + +.cbi-optionals { + padding: 1rem 1rem 0 1rem; + border-top: thin solid #ccc; +} + +.cbi-dropdown-container { + position: relative; +} + +.cbi-tooltip-container, +span[data-tooltip], +span[data-tooltip] .label { + cursor: help !important; +} + +.cbi-tooltip { + position: absolute; + z-index: 1000; + left: -1000px; + padding: 2px 5px; + transition: opacity 0.25s ease-out; + white-space: pre; + pointer-events: none; + opacity: 0; + border-radius: 3px; + background: #fff; + box-shadow: 0 0 2px #444; +} + +.cbi-tooltip-container:hover .cbi-tooltip { + left: auto; + transition: opacity 0.25s ease-in; + opacity: 1; +} + +.zonebadge .cbi-tooltip { + margin: -1.5rem 0 0 -0.5rem; + padding: 0.25rem; + background: inherit; +} + +.zonebadge-empty { + color: #404040; + background: repeating-linear-gradient(45deg, rgba(204, 204, 204, 0.5), rgba(204, 204, 204, 0.5) 5px, rgba(255, 255, 255, 0.5) 5px, rgba(255, 255, 255, 0.5) 10px); +} + +.zone-forwards { + display: flex; + min-width: 10rem; +} + +.zone-forwards > * { + flex: 1 1 45%; +} + +.zone-forwards > span { + flex-basis: 10%; + padding: 0 0.25rem; + text-align: center; +} + +.zone-forwards .zone-src, +.zone-forwards .zone-dest { + display: flex; + flex-direction: column; +} + +.label,#indicators span { + font-size: 0.8rem; + padding: 0.3rem 0.8rem; + white-space: nowrap; + text-decoration: none; + text-transform: uppercase; + border-radius: 3px; + text-shadow: none; + margin: 0 0.5rem; + color: #fff; + background: #5A8DEE; +} + +#indicators span[data-indicator="poll-status"] { + color: #FDAC41 !important; + background-color: #FFEED9; +} + +#indicators span[data-indicator="uci-changes"] { + color: #39DA8A !important; + background-color: #D2FFE8; +} + +input[type="checkbox"], +input[type="radio"] { + position: relative; + right: 0.2rem; + margin: 0; + vertical-align: bottom; +} + +label[data-index][data-depends] { + padding-right: 2em; +} + +.showSide { + display: none; +} + +.darkMask { + position: fixed; + z-index: 99; + display: none; + width: 100%; + height: 100%; + content: ""; + top: 0; + background-color: rgba(0, 0, 0, 0.56); +} +/* diagnostics */ +#diag-rc-output > pre, +#command-rc-output > pre, +[data-page="admin-services-wol"] .notice code { + font-size: 1.2rem; + font-size-adjust: 0.35; + line-height: normal; + display: block; + overflow-y: hidden; + width: 100%; + padding: 8.5px; + white-space: pre; + color: #eee; + background-color: #101010; + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0 2px 0 rgba(0, 0, 0, 0.12); +} +[data-page="admin-network-diagnostics"] .table { + box-shadow: none; +} + +input[name="ping"], +input[name="traceroute"], +input[name="nslookup"] { + width: 80%; +} +/* fix Main Login */ +.node-main-login .main { + top: 0; + height: 100% !important; +} + +.node-main-login .main .main-left { + display: none; +} + +.node-main-login .main .main-right { + width: 100%; + text-align: center; + overflow: hidden; +} + +.node-main-login .main .main-right header { + background: none !important; + box-shadow: none !important; + display: none !important; +} + +.node-main-login .main .main-right .login-bg { + display: block; + position: fixed; + width: 100%; + height: 100%; + left: 0px; + top: 0px; + background-size: cover; + background-color: #000; + background-position: top center; + transition: all 0.5s; +} + +.node-main-login .main .main-right .login-bg.blur { + transform: scale(1.05); + -webkit-filter: blur(5px); + /* Chrome, Safari, Opera */ + filter: blur(5px); +} + +.node-main-login .main .main-right #maincontent { + height: 100%; + padding-top: 23vh; + margin-top: 0rem; + background-color: transparent !important; + text-align: center; + display: inline-block; + z-index: 999; +} + +.node-main-login .main .main-right #maincontent .container { + display: inline-block; + padding: 1rem 1.2rem; + position: relative; + box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); + transition: box-shadow .25s, -webkit-box-shadow .25s; + border-radius: 2px; + text-align: left; + background: rgba(255, 255, 255, 0.75); + margin: 0; +} + +.node-main-login .main .main-right #maincontent .alert-message.warning { + position: absolute; + color: #fff; + width: calc(100%); + box-sizing: border-box; + margin-top: -3.5rem; + border-radius: 5px !important; + padding: 0.5rem 1rem; + text-align: center; + background-color: #eea236 !important; +} + +.node-main-login .main .main-right #maincontent .alert-message p { + color: #fff; + font-weight: normal; + font-size: 0.83rem; +} + +.node-main-login .main .main-right #maincontent .alert-message.error { + position: absolute; + color: #fff; + width: calc(100%); + background-color: #f0ad4e; + border-color: #eea236; + box-sizing: border-box; + margin-top: -7.5rem; + border-radius: 5px !important; + padding: 1rem 1rem 0.5rem 1rem; + text-align: center; +} + +.node-main-login .main .main-right #maincontent .alert-message.error p { + color: #fff; +} + +.alert-message p { + text-align: center; +} + +.node-main-login .main .main-right #maincontent .alert-message.error h4 { + font-size: 1rem; +} + +.node-main-login .main .main-right #maincontent .alert-message.error .btn { + height: auto; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map h2 { + display: block; + margin: 10px auto 10px auto; + padding: 0; + text-align: center; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-map-descr { + text-align: center; + padding: 1rem; + color: #8898aa; + font-size: 1.2rem; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section { + padding: 0.5rem; + margin-top: 0 !important; + background: none !important; + box-shadow: none !important; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node { + padding: 0; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node .cbi-value { + display: block; + padding: 0; + background: none; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node .cbi-value * { + display: inline-block !important; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node .cbi-value .cbi-value-title { + display: none !important; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node .cbi-value .cbi-value-field { + position: relative; + width: 18rem; + margin-bottom: 1em; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node .cbi-value .cbi-value-field input { + font-size: 1rem; + line-height: 1.5; + display: block; + width: 100%; + height: calc(2.75rem + 2px); + padding: 0.625rem 0.75rem; + transition: all 0.15s cubic-bezier(0.68, -0.55, 0.265, 1.55); + color: #8898aa; + background-clip: padding-box; + box-sizing: border-box; + padding-left: 3em !important; + margin: 0; + text-align: center; + text-indent: -3rem; + background: transparent content-box !important; + box-sizing: border-box; + height: 0 !important; + padding: 1.38rem 0; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node .cbi-value .cbi-value-field input:focus { + color: #8898aa; + outline: 0; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node .cbi-value .cbi-value-field:before { + font-family: 'argon' !important; + font-style: normal; + font-weight: normal; + font-variant: normal; + text-transform: none; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + content: "\e971"; + color: #adb5bd; + font-size: 1.5rem; + position: absolute; + z-index: 100; + left: 10px; + top: 10px; +} + +.node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node .cbi-value.cbi-value-last .cbi-value-field:before { + content: "\e910"; +} + +.node-main-login .main .main-right #maincontent .container .cbi-page-actions { + text-align: center; + padding-top: 0; + margin-bottom: 20px; +} + +.node-main-login .main .main-right #maincontent .container .cbi-page-actions input { + padding: 0.7rem 5.5rem +} + +.node-main-login .main .main-right #maincontent .container .cbi-page-actions .cbi-button { + background-color: #5a8deec7; +} + +.node-main-login .main .main-right #maincontent .container .cbi-page-actions .cbi-button.cbi-button-reset { + display: none !important; +} + +.node-main-login .main .main-right #maincontent footer { + bottom: 0; + position: absolute; + width: 100%; + color: #fff; +} + +.node-main-login .main .main-right #maincontent footer a { + color: #fff; +} + +@media screen and (min-height: 585px) { + .node-main-login footer { + display: none; + position: absolute; + bottom: 0; + width: 100%; + } +} +/* fix status */ +.node-status-overview > .main fieldset:nth-child(4) .td:nth-child(2), +.node-status-processes > .main .table .tr .td:nth-child(3) { + white-space: normal; +} +/* fix system reboot */ +[data-page="admin-system-reboot"] p { + padding-left: 0rem; + color: #fff; +} +[data-page="admin-system-reboot"] .cbi-button { + background: #fb6340 !important; +} +[data-page="admin-system-reboot"] p > span { + position: relative; + top: 0.1rem; + left: 1rem; +} +/* samba */ +#cbi-samba [data-tab="template"] .cbi-value-field { + display: block; +} + +#cbi-samba [data-tab="template"] .cbi-value-title { + width: auto; + padding-bottom: 0.6rem; +} +/* admin-system-admin-password */ +[data-page="admin-system-admin"] .cbi-map h2, +[data-page="admin-system-admin-password"] .cbi-map h2, +[data-page="admin-system-admin"] .cbi-map .cbi-map-descr, +[data-page="admin-system-admin-password"] .cbi-map .cbi-map-descr { + margin-left: 1.5rem; + color: #32325d; + color: var(--gray-dark); +} +/* software */ + + +.controls { + margin: 0.5em 0 1em 0 !important; +} + +.controls > * > .btn:not([aria-label$="page"]) { + flex-grow: initial !important; + margin-top: 0.25rem; +} + +.controls > #pager > .btn[aria-label$="page"] { + font-size: 1.4rem; + font-weight: bold; +} + +.controls > * > label { + margin-bottom: 0.2rem; +} +[data-page="admin-system-opkg"] div.btn { + line-height: 3; + display: inline; +} +[data-page^="admin-system-admin"]:not(.node-main-login) .cbi-map:not(#cbi-dropbear) { + margin-top: 2rem; + padding-top: 0.1rem; +} + + +.cbi-tabmenu + .cbi-section { + margin-top: 0; +} +/* admin-system-crontab*/ +[data-page="admin-system-crontab"] #view p { + color: #fff; + margin-bottom: 1rem; +} +/*admin-system-flash*/ +[data-page="admin-system-flash"] .cbi-value { + padding: 0; +} +[data-page="admin-system-flash"] .cbi-section .cbi-section { + margin-top: 0; +} +[data-page="admin-system-flash"] legend { + display: block !important; + font-size: 1.2rem; + width: 100%; + display: block; + margin-bottom: 0; + padding: 1rem 0 1rem 1.5rem; + border-bottom: 1px solid rgba(0, 0, 0, 0.05); + line-height: 1.5; + margin-bottom: 0rem; + letter-spacing: 0.1rem; + color: #32325d; + font-weight: bold; +} +[data-page="admin-system-flash"] .cbi-section-descr { + font-weight: 600; + padding: 1rem 0 1rem 1.5rem; + color: #525f7f; +} +/* wireless overview */ +#cbi-wireless > #wifi_assoclist_table > .tr { + box-shadow: inset 1px -1px 0 #ddd, inset -1px -1px 0 #ddd; +} + +#cbi-wireless > #wifi_assoclist_table > .tr.placeholder > .td { + right: 33px; + bottom: 33px; + left: 33px; + border-top: thin solid #ddd !important; +} + +#cbi-wireless > #wifi_assoclist_table > .tr.table-titles { + box-shadow: inset 1px 0 0 #ddd, inset -1px 0 0 #ddd; +} + +#cbi-wireless > #wifi_assoclist_table > .tr.table-titles > .th { + border-bottom: thin solid #ddd; + box-shadow: 0 -1px 0 0 #ddd; +} + +#wifi_assoclist_table > .tr > .td[data-title="RX Rate / TX Rate"] { + width: 23rem; +} +[data-page="admin-network-dhcp"] .cbi-value { + padding: 0; +} +[data-page="admin-network-dhcp"] [data-tab-active="true"] { + padding: 1rem 0 !important; +} +/* firewall */ +#iptables { + margin: 0; +} + +.Firewall form { + margin: 2rem 2rem 0 0; + padding: 0; + box-shadow: none; +} + +#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; +} + +#cbi-network-switch_vlan .th, +#cbi-network-switch_vlan .td { + flex-basis: 12%; +} + +#cbi-firewall-zone .table, +#cbi-network-switch_vlan .table { + display: block; +} + +#cbi-firewall-zone .td, +#cbi-network-switch_vlan .td { + width: 100%; +} +[data-page="admin-network-firewall-custom"] #view p { + color: #fff; + margin-bottom: 1rem; +} +[data-page="admin-network-firewall-custom"] #view p textarea { + margin: 1.5rem; + box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); + transition: box-shadow .25s, -webkit-box-shadow .25s; + border-radius: 2px; + width: 95% !important; +} +/* applyreboot fix */ +#applyreboot-container { + margin: 2rem; +} + +#applyreboot-section { + line-height: 300%; + margin: 2rem; +} +/* openvpn bug fix */ +.OpenVPN a { + line-height: initial !important; +} +/* custom commands */ +.commandbox { + width: 24% !important; + margin: 10px 0 0 10px !important; + padding: 0.5rem 1rem; + border-bottom: thin solid #ccc; + background: #eee; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); +} + +.commandbox h3 { + line-height: normal !important; + overflow: hidden; + margin: 6px 0 !important; + white-space: nowrap; + text-overflow: ellipsis; +} + +.commandbox div { + left: auto !important; +} + +.commandbox code { + position: absolute; + overflow: hidden; + max-width: 60%; + margin-left: 4px; + padding: 2px 3px; + white-space: nowrap; + text-overflow: ellipsis; +} + +.commandbox code:hover { + overflow-y: auto; + max-height: 50px; + white-space: normal; +} + +.commandbox p:first-of-type { + margin-top: -6px; +} + +.commandbox p:nth-of-type(2) { + margin-top: 2px; +} +[data-page^="admin-system-commands"] .panel-title, +[data-page^="command-cfg"] .mobile-hide, +[data-page^="command-cfg"] .showSide { + display: none; +} + +#command-rc-output .alert-message { + line-height: 1.42857143; + position: absolute; + top: 40px; + right: 32px; + max-width: 40%; + margin: 0; + animation: anim-fade-in 1.5s forwards; + word-break: break-word; + opacity: 0; +} + +@keyframes anim-fade-in { + 100% { + opacity: 1; + } +} +/* other fix */ +input[type="checkbox"] { + appearance: none !important; + -webkit-appearance: none !important; + border: 1px solid #dee2e6; + width: 16px !important; + height: 16px !important; + padding: 0; + cursor: pointer; + transition: all 0.2s; + display:none; +} + +.cbi-dropdown[open]>ul.dropdown>li label { + margin-left: .5rem; +} + +#cbi-adblock-global-adb_sources .cbi-dropdown-open .cbi-dropdown[open] > ul.dropdown{ + position:relative !important; + bottom:0 !important; +} + +#cbi-adblock-global-adb_sources .cbi-dropdown-open #cbi-adblock-global-adb_sources .preview,.cbi-dropdown-open .more,.cbi-dropdown-open .open{ +display:none !important; +} + +input[type="checkbox"]:checked { + border: 1px solid #5A8DEE; + background-image: url('data:image/svg+xml,%3csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 8 8\'%3e%3cpath fill=\'%23fff\' d=\'M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z\'/%3e%3c/svg%3e') !important; + background-color: #5A8DEE; + background-size: 70%; + background-repeat: no-repeat; + background-position: center; +} + +@media screen and (max-width: 1600px) { + header > .fill > .container > #logo { + margin: 0 2.5rem 0 0.5rem; + } + + .main-left { + width: calc(0% + 13rem); + } + + .main-right { + width: calc(100% - 13rem); + } + + .label { + padding: 0.2rem 0.6rem; + } + + .cbi-value-title { + width: 15rem; + padding-right: 1.5rem; + } + + .cbi-value-field .cbi-dropdown, + .cbi-value-field .cbi-input-select, + .cbi-value input[type="text"], + .cbi-value input[type="password"] { + min-width: 15rem; + } + + #cbi-firewall-zone .cbi-input-select { + min-width: 9rem; + } + + .cbi-input-textarea { + font-size: small; + } + + .node-admin-status > .main fieldset li > a { + padding: 0.3rem 0.6rem; + } +} + +@media screen and (max-width: 1366px) { + header > .fill > .container { + cursor: default; + } + + .main-left { + width: calc(0% + 13rem); + } + + .main-right { + width: calc(100% - 13rem); + } + + .panel-title { + font-size: 1.1rem; + padding-bottom: 1rem; + } + + table { + font-size: 0.7rem !important; + width: 100% !important; + } + + .table .cbi-input-text { + width: 100%; + } + + .cbi-value-field .cbi-dropdown, + .cbi-value-field .cbi-input-select, + .cbi-value input[type="text"], + .cbi-value input[type="password"] { + min-width: 16rem; + } + + #cbi-firewall-zone .cbi-input-select { + min-width: 4rem; + } + + .main > .main-left > .nav > .slide > .slide-menu > li > a { + font-size: 0.8rem; + } + + #modal_overlay { + top: 0rem; + } + [ data-page="admin-network-firewall-forwards"] .table:not(.cbi-section-table) { + display: block; + } + [ data-page="admin-network-firewall-forwards"] .table:not(.cbi-section-table), + [data-page="admin-network-firewall-rules"] .table:not(.cbi-section-table), + [data-page="admin-network-hosts"] .table, + [data-page="admin-network-routes"] .table { + overflow-y: visible; + } + + .commandbox { + width: 32% !important; + } +} + +@media screen and (max-width: 1152px) { + header > .fill > .container > #logo { + display: none; + } + + header > .fill > .container > .brand { + position: relative; + } + + html, + .main { + overflow-y: visible; + } + + .main > .loading > span { + top: 25%; + } + + .main-left { + width: calc(0% + 13rem); + } + + .main-right { + width: calc(100% - 13rem); + } + + body:not(.logged-in) .showSide { + visibility: hidden; + width: 0; + margin: 0; + } + + .node-main-login > .main .cbi-value-title { + text-align: left; + } + + .cbi-value-title { + width: 10rem; + padding-right: 1rem; + } + + .cbi-value-field .cbi-dropdown, + .cbi-value-field .cbi-input-select, + .cbi-value input[type="text"] { + width: 16rem; + min-width: 16rem; + } + /*.cbi-value input[type="password"],*/ + .cbi-value input[name^="pw"], + .cbi-value input[data-update="change"]:nth-child(2) { + width: 13rem !important; + min-width: 13rem; + } + + #diag-rc-output > pre, + #command-rc-output > pre, + [data-page="admin-services-wol"] .notice code { + font-size: 1rem; + } + + .Interfaces .table { + overflow-x: hidden; + } + + #packages.table { + display: grid; + } + + .Overview .table[width="100%"] > .tr { + flex-wrap: nowrap; + } + + .tr.placeholder { + border-bottom: thin solid #ddd; + } + + .tr.placeholder > .td, + #cbi-firewall .tr > .td, + #cbi-network .tr:nth-child(2) > .td, + .cbi-section #wifi_assoclist_table .tr > .td { + border-top: 0; + } + +.node-admin-status.Overview .tr { + display: flex; + flex-direction: row; + flex-wrap: wrap; +} + + .th, + .td { + display: inline-block; + align-self: flex-start; + flex: 2 2 25%; + text-overflow: ellipsis; + word-wrap: break-word; + } + + .td select, + .td input[type="text"] { + width: 100%; + word-wrap: normal; + } + + .td [data-dynlist] > input, + .td input.cbi-input-password { + width: calc(100% - 1.5rem); + } + + .td[data-type="button"], + .td[data-type="fvalue"] { + flex: 1 1 12.5%; + text-align: left; + } + + .th.cbi-value-field, + .td.cbi-value-field, + .th.cbi-section-table-cell, + .td.cbi-section-table-cell { + flex-basis: auto; + padding-top: 1rem; + } + + .td.cbi-value-field, + .cbi-section-table-cell { + display: inline-block; + flex: 10 10 auto; + flex-basis: 50%; + text-align: center; + } + + .td.cbi-section-actions { + vertical-align: bottom; + } + + .tr.table-titles, + .tr.cbi-section-table-titles, + .tr.cbi-section-table-descr { + display: none; + } + + .tr[data-title]::before, + .tr.cbi-section-table-titles.named::before { + font-size: 0.9rem; + display: block; + flex: 1 1 100%; + border-bottom: thin solid rgba(0, 0, 0, 0.26); + background: #e9ecef; + } + + .td[data-title], + [data-page^="admin-status-realtime"] .td[id] { + text-align: left; + } + + .td[data-title]::before { + display: block; + } + + .cbi-button + .cbi-button { + margin-left: 0; + } + + .td.cbi-section-actions > * > *, + .td.cbi-section-actions > * > form > * { + margin: 2.1px 3px; + } + + .Firewall form { + position: static !important; + margin: 0 0 2rem 0; + padding: 2rem; + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0 2px 0 rgba(0, 0, 0, 0.12); + } + + .Firewall form input { + width: 100% !important; + margin: 0; + margin-top: 1rem; + } + + .Firewall .center, + .Firewall .center::before { + text-align: left !important; + } + + .commandbox { + width: 100% !important; + margin-left: 0 !important; + } +#packages .tr { + display: flex; + flex-direction: row; + flex-wrap: wrap; +} +#packages .td { + padding: 1em 2rem; +} +} + +@media screen and (max-width: 768px) { + header { + display: block; + } + + body { + font-size: 0.8rem; + } + + .tabs > li > a, .cbi-tabmenu > li > a { + padding: 0.7rem 1.2rem; + } + + .btn, button, .cbi-button, input[type=button], input[type=submit], input[type=reset] { + padding: 0.5rem 1.2rem !important; + } + + .cbi-progressbar::after { + font-size: 0.95em; + line-height: 1.5; + } + + .main-left { + position: fixed; + z-index: 100; + width: 0; + } + + .main-right { + width: 100%; + } + + .main-right > #maincontent { + margin-top: 0.5rem; + } + + .showSide { + padding: 0.1rem; + position: relative; + z-index: 99; + top: -0.7rem; + display: inline-block !important; + } + + .showSide::before { + font-family: 'argon' !important; + font-style: normal !important; + font-weight: normal !important; + font-variant: normal !important; + text-transform: none !important; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + content: "\e20e"; + font-size: 1.7rem; + } + + header > .fill > .container > .brand { + display: inline-block; + } + + .cbi-section > div { + overflow-x: auto; + } +} + +@media screen and (max-width: 600px) { + .mobile-hide { + display: none; + } + + #maincontent > .container { + margin: 1rem 0 1rem 0; + } + + .cbi-value-title { + text-align: left; + } + [ data-page="admin-system-flash"] legend { + padding: 1rem 0 1rem 1rem; + } + [ data-page="admin-system-flash"] .cbi-section-descr { + padding: 1rem 0 1rem 1rem; + } + [ data-page="admin-system-flash"] .cbi-value { + padding: 0 1rem; + } + [ data-page="admin-network-dhcp"] [data-tab-active="true"] { + padding: 1rem 1rem !important; + } + + body { + overflow-x: hidden; + } + + .node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node .cbi-value .cbi-value-field { + width: 16rem; + } + + .node-main-login footer { + display: none; + } +} + +@media screen and (min-width: 600px) { + ::-webkit-scrollbar { + width: 10px; + height: 10px; + } + + ::-webkit-scrollbar, + ::-webkit-scrollbar-corner { + background: transparent; + } + + ::-webkit-scrollbar-thumb { + background: #9e9e9e; + } + + ::-webkit-scrollbar-thumb:hover { + background: #757575; + } + + ::-webkit-scrollbar-thumb:active { + background: #424242; + } +} + +.waves-input-wrapper { + background-color: #475F7B; +} + +.cbi-button,.btn { + background-color: #00CFDD; +} + +.cbi-button.reconnect { + background-color: #00CFDD !important; +} + +.cpu .cbi-progressbar > div { + background-color: #5A8DEE !important; +} + +.memory .cbi-progressbar > div { + background-color: #FDAC41 !important; +} + +.cbi-map style+fieldset.cbi-section:first-of-type { + box-shadow: none !important; + display: block; + text-align: center; + overflow: hidden; + margin: 0.5rem 0; + background: none; + padding: 0; + border:none; +} + +.cbi-map style+fieldset.cbi-section:first-of-type p font { + position: relative; + display: inline-block; + padding: 0 1rem; +} + +.cbi-map style+fieldset.cbi-section:first-of-type p font:before, .cbi-map style+fieldset.cbi-section:first-of-type p font:after { + border-color: #FDAC41 !important; + content: ""; + position: absolute; + top: 50%; + width: 9999px; + border-top: 2px solid #DFE3E7; +} + +.cbi-map style+fieldset.cbi-section:first-of-type p font:before { + right: 100%; +} + +.cbi-map style+fieldset.cbi-section:first-of-type p font:after { + left: 100%; +} + +.cbi-map style+fieldset.cbi-section:first-of-type p em { + display: block; +} + +.cbi-section .cbi-section { + box-shadow: none !important; +} +/* Checkboxes + ========================================================================== */ +/* Remove default checkbox */ + +[type="checkbox"] + label:not(.lever) { + position: relative; + padding-left: 35px; + cursor: pointer; + display: inline-block; + height: 25px; + line-height: 25px; + font-size: 1rem; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +[type="checkbox"] + label:not(.lever):before, +[type="checkbox"]:not(.filled-in) + label:not(.lever):after { + content: ''; + position: absolute; + top: 0.4rem; + left: 0; + width: 15px; + height: 15px; + z-index: 0; + border: 2px solid #5a5a5a; + border-radius: 1px; + margin-top: 3px; + -webkit-transition: .2s; + transition: .2s; +} + +[type="checkbox"]:not(.filled-in) + label:not(.lever):after { + border: 0; + -webkit-transform: scale(0); + transform: scale(0); +} + +[type="checkbox"]:not(:checked):disabled + label:not(.lever):before { + border: none; + background-color: rgba(0, 0, 0, 0.42); +} + +[type="checkbox"].tabbed:focus + label:not(.lever):after { + -webkit-transform: scale(1); + transform: scale(1); + border: 0; + border-radius: 50%; + -webkit-box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1); + box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1); + background-color: rgba(0, 0, 0, 0.1); +} + +[type="checkbox"]:checked + label:not(.lever):before { + top: 0.1rem; + left: -5px; + width: 9px; + height: 18px; + border-top: 2px solid transparent; + border-left: 2px solid transparent; + border-right: 2px solid orangered; + border-bottom: 2px solid orangered; + -webkit-transform: rotate(40deg); + transform: rotate(40deg); + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-transform-origin: 100% 100%; + transform-origin: 100% 100%; +} + +[type="checkbox"]:checked:disabled + label:before { + border-right: 2px solid rgba(0, 0, 0, 0.42); + border-bottom: 2px solid rgba(0, 0, 0, 0.42); +} + +/* Indeterminate checkbox */ +[type="checkbox"]:indeterminate + label:not(.lever):before { + top: -11px; + left: -12px; + width: 10px; + height: 22px; + border-top: none; + border-left: none; + border-right: 2px solid orangered; + border-bottom: none; + -webkit-transform: rotate(90deg); + transform: rotate(90deg); + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-transform-origin: 100% 100%; + transform-origin: 100% 100%; +} + +[type="checkbox"]:indeterminate:disabled + label:not(.lever):before { + border-right: 2px solid rgba(0, 0, 0, 0.42); + background-color: transparent; +} + +[type="checkbox"].filled-in + label:not(.lever):after { + border-radius: 2px; +} + +[type="checkbox"].filled-in + label:not(.lever):before, +[type="checkbox"].filled-in + label:not(.lever):after { + content: ''; + left: 0; + position: absolute; + /* .1s delay is for check animation */ + -webkit-transition: border .25s, background-color .25s, width .20s .1s, height .20s .1s, top .20s .1s, left .20s .1s; + transition: border .25s, background-color .25s, width .20s .1s, height .20s .1s, top .20s .1s, left .20s .1s; + z-index: 1; +} + +[type="checkbox"].filled-in:not(:checked) + label:not(.lever):before { + width: 0; + height: 0; + border: 3px solid transparent; + left: 6px; + top: 10px; + -webkit-transform: rotateZ(37deg); + transform: rotateZ(37deg); + -webkit-transform-origin: 100% 100%; + transform-origin: 100% 100%; +} + +[type="checkbox"].filled-in:not(:checked) + label:not(.lever):after { + height: 20px; + width: 20px; + background-color: transparent; + border: 2px solid #5a5a5a; + top: 0px; + z-index: 0; +} + +[type="checkbox"].filled-in:checked + label:not(.lever):before { + top: 0; + left: 1px; + width: 8px; + height: 13px; + border-top: 2px solid transparent; + border-left: 2px solid transparent; + border-right: 2px solid #fff; + border-bottom: 2px solid #fff; + -webkit-transform: rotateZ(37deg); + transform: rotateZ(37deg); + -webkit-transform-origin: 100% 100%; + transform-origin: 100% 100%; +} + +[type="checkbox"].filled-in:checked + label:not(.lever):after { + top: 0; + width: 20px; + height: 20px; + border: 2px solid orangered; + background-color: orangered; + z-index: 0; +} + +[type="checkbox"].filled-in.tabbed:focus + label:not(.lever):after { + border-radius: 2px; + border-color: #5a5a5a; + background-color: rgba(0, 0, 0, 0.1); +} + +[type="checkbox"].filled-in.tabbed:checked:focus + label:not(.lever):after { + border-radius: 2px; + background-color: orangered; + border-color: orangered; +} + +[type="checkbox"].filled-in:disabled:not(:checked) + label:not(.lever):before { + background-color: transparent; + border: 2px solid transparent; +} + +[type="checkbox"].filled-in:disabled:not(:checked) + label:not(.lever):after { + border-color: transparent; + background-color: #949494; +} + +[type="checkbox"].filled-in:disabled:checked + label:not(.lever):before { + background-color: transparent; +} + +[type="checkbox"].filled-in:disabled:checked + label:not(.lever):after { + background-color: #949494; + border-color: #949494; +} + +.controls > *:nth-child(2), .controls > *:nth-child(3) { + position: relative; +} + +.controls>div .focus-input { + top: 1.53rem; +} + +#indicators { + cursor: pointer; + position: absolute; + top: 1.5rem; + right: 1.5rem; + z-index: 99; +} + +.cbi-section > h3:first-child, .panel-title { + font-size: 1.1rem !important; +} + +h2 { + font-size: 1.4rem !important; +} + +.main .main-left .nav li .slide-menu li { + padding: 0.4rem 0rem !important; +} + +h3 { + font-size: 1.1rem !important; + padding: 1rem 2rem !important; +} + +code,.cbi-progressbar::after { + font-size-adjust: none !important; + font-family: inherit !important; + font-size: 0.9em !important; +} +[data-page="admin-system-flash"] legend { + font-size: 1.1rem !important; + padding-bottom: 0.6rem !important; +} + +.main .main-left .nav>li>a:first-child::before { + font-size: 1.1rem !important; +} + +.td.version { + word-break: normal !important; +} + +.node-main-login .main .main-right .login-bg { + background-color: white !important; +} + +.cbi-map >.cbi-section .cbi-value { + padding-left: 1rem; + padding-right: 1rem; +} + +.cbi-section ~ .cbi-section> .panel-title { + padding-top: 0; +} + +#cbi-openclash .cbi-map-descr { + color: #404040 +} + +input,select { + height: 2.2rem; + background: none; +} + +.btn,button, + .cbi-button,input[type=button],input[type=submit],input[type=reset],.waves-input-wrapper { + height: auto !important; + width: auto !important; + padding: 0.6rem 1.6rem; + line-height: 1rem; + webkit-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); + box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); + border-radius: 2px; + transition: all .20s linear; + top: 0; + margin-left: 0.5rem; +} + +.btn:first-child,button:first-child, + .cbi-button:first-child,input[type=button]:first-child,input[type=submit]:first-child,input[type=reset]:first-child,.waves-input-wrapper:first-child { + margin-left: 0; +} + +i.waves-input-wrapper { + padding: 0 !important; +} + +i input { + margin: 0 !important +} + +.controls > * > .btn { + flex-basis: auto !important; +} + + +.cbi-map >.cbi-section .cbi-section-table,.container .cbi-tabmenu,.container #tabmenu,.cbi-map >.cbi-section .table { + margin-left: -2%; + width: 105%; +} + +.admin-status-overview h2.content { + display: none; +} + +#view>.cbi-section:first-child { + padding-top: 0; +} + +.node-admin-status div { + border: none !important; +} + +.cbi-section-table .tr .td:first-child,.cbi-section-table .tr .th:first-child, +.table .tr .td:first-child,.table .tr .th:first-child, +.table .tr:before { + padding-left: 2rem !important; +} + +.node-admin-status .table .tr .td:first-child { + padding-left: 3rem !important; +} + +ul.errors li { + margin-bottom: 1rem; +} + +.Wireless .cbi-section { + padding: 0 2rem; +} + +.cbi-section-table-row > .cbi-value-field .cbi-input-select { + min-width: 5rem !important; +} + +#cbi-passwall .status .red, #cbi-passwall .status .green { + font-size: 0.83rem !important; + line-height: 2rem; +} + +.waves-input-wrapper .waves-button-input { + line-height: 1rem; +} + +.cbi-dropdown.waves-effect { + display: inline-flex; +} + +#cbi-AdGuardHome-AdGuardHome .waves-input-wrapper>input { + color: #fff !important; +} + +input[type=password]+.cbi-button.cbi-button-neutral { + padding: 0 0.4rem; + color: #fff !important; +} + +.cbi-input-password[type=text]+.cbi-button.cbi-button-neutral { + padding: 0.2rem 0.5rem; +} + +.main-right>hr { + height: 6px; + background-color: rgba(255, 0, 27, 0.95); + background: linear-gradient(90deg,#e75239 0%,#e75239 12.5%,#ff961c 12.5%,#ff961c 25%,#ffcc27 25%,#ffcc27 37.5%,#fce62f 37.5%,#fce62f 50%,#cde35b 50%,#cde35b 62.5%,#82cc33 62.5%,#82cc33 75%,#41bece 75%,#41bece 87.5%,#049cdb 87.5%,#049cdb 100%); + background-position: 50% 0; + box-shadow: 0 1px 2px rgba(0,0,0,.0625) inset; + margin: 0 0 10px; + border: none; + opacity: 0.9; +} + +div[id^="cbi-unblockmusic"] .cbi-button { + top: -1.2rem; +} +[data-page^="admin-network-wifi"] form { + padding-left: 1.5rem; +} +[data-page^="admin-network-wifi"] form td { + padding-left: 1.5rem; +} + +.cbi-section-table .tr>.td:last-child,#packages .tr>.td:last-child{ + padding-right:3%; +} + +.command-output { + padding: 0 2rem; +} + +.chromeframe { + padding: 2rem 3rem; + margin: 0 auto; + font-size: 16px; + font-weight: bold; + color: #fff; + position: absolute; + top: 10rem; + width: 100%; + z-index: 9999; + text-align: center; + background: #5A8DEE; +} + +.chromeframe { + display: none; +} + +.chromeframe a { + color: orangered; +} + +.landscape { + position: absolute; + width: 100%; + height: 100%; +} + +[data-page="admin-network-wifi"] tr > td .cbi-button{ + margin-left: 0 !important; +} +[data-page="admin-network-wifi"] tr > td input[type="button"]{ + padding: 0.5rem 1rem !important; +} +table.interfaces .th{ + padding:1.1em 0.5rem !important; +} \ No newline at end of file diff --git a/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/custom.css b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/custom.css new file mode 100644 index 0000000000..c03f8db61e --- /dev/null +++ b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/custom.css @@ -0,0 +1,46 @@ +:root { + --main-color: #09c; + --header-bg: #09c; + --header-color: #fff; + --bar-bg: #5e72e4; + --menu-bg-color: #fff; + --menu-color: #5f6368; + --menu-color-hover: #202124; + --main-menu-color: #202124; + --submenu-bg-hover: #d4d4d4; + --submenu-bg-hover-active: #09c; + + --blue: #5e72e4; + --indigo: #5603ad; + --purple: #8965e0; + --pink: #f3a4b5; + --red: #f5365c; + --orange: #fb6340; + --yellow: #ffd600; + --green: #2dce89; + --teal: #11cdef; + --cyan: #2bffc6; + --white: #fff; + --gray: #8898aa; + --gray-dark: #32325d; + --light: #96999c; + --lighter: #e9ecef; + --primary: #5e72e4; + --secondary: #f7fafc; + --success: #2dce89; + --info: #11cdef; + --warning: #fb6340; + --danger: #f5365c; + --dark: #212529; + --default: #172b4d; + --white: #fff; + --neutral: #fff; + --darker: black; + --breakpoint-xs: 0; + --breakpoint-sm: 576px; + --breakpoint-md: 768px; + --breakpoint-lg: 992px; + --breakpoint-xl: 1200px; + + --font-body: "Microsoft Yahei", "WenQuanYi Micro Hei", "sans-serif", "Helvetica Neue", "Helvetica", "Hiragino Sans GB"; +} diff --git a/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/favicon.ico b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..4611336803d49af0896adf2698cfaec54e96b800 GIT binary patch literal 15406 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 BLQ((# literal 0 HcmV?d00001 diff --git a/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/fonts/argon.woff b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/fonts/argon.woff new file mode 100644 index 0000000000000000000000000000000000000000..ef1e9c2c434f786a409d2e3ac47a5035872e98e7 GIT binary patch literal 8808 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 b$ejqMF;>UORRG?q5=PhE&nt)jo%sI(Ce#aG literal 0 HcmV?d00001 diff --git a/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/glare.svg b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/glare.svg new file mode 100644 index 0000000000..6274ac9914 --- /dev/null +++ b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/glare.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/icons/arrow.svg b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/icons/arrow.svg new file mode 100644 index 0000000000..be864c5ac9 --- /dev/null +++ b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/icons/arrow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/icons/spinner.svg b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/icons/spinner.svg new file mode 100644 index 0000000000..6ddd3b3ed8 --- /dev/null +++ b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/icons/spinner.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/js/jquery.min.js b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/js/jquery.min.js new file mode 100644 index 0000000000..d467083b62 --- /dev/null +++ b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/js/jquery.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="

",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0 + * + * Have a bug? Please create an issue here on GitHub! + * https://github.com/garypang13/luci-theme-edge/issues + * + * luci-theme-material: + * Copyright 2015 Lutty Yang + * https://github.com/LuttyYang/luci-theme-material/ + * + * Agron Theme + * https://demos.creative-tim.com/argon-dashboard/index.html + * + * Login background + * https://unsplash.com/ + * Font generate by Icomoon + * + * Licensed to the public under the Apache License 2.0 + */ + +document.addEventListener('luci-loaded', function(ev) { +(function ($) { + $(".main > .loading").fadeOut(); + + /** + * trim text, Remove spaces, wrap + * @param text + * @returns {string} + */ + function trimText(text) { + return text.replace(/[ \t\n\r]+/g, " "); + } + + var lastNode = undefined; + var mainNodeName = undefined; + + var nodeUrl = ""; + (function(node){ + var luciLocation; + if (node[0] == "admin"){ + luciLocation = [node[1], node[2]]; + }else{ + luciLocation = node; + } + + for(var i in luciLocation){ + nodeUrl += luciLocation[i]; + if (i != luciLocation.length - 1){ + nodeUrl += "/"; + } + } + })(luciLocation); + + /** + * get the current node by Burl (primary) + * @returns {boolean} success? + */ + function getCurrentNodeByUrl() { + var ret = false; + if (!$('body').hasClass('logged-in')) { + luciLocation = ["Main", "Login"]; + return true; + } + + $(".main > .main-left > .nav > .slide > .menu").each(function () { + var ulNode = $(this); + ulNode.next().find("a").each(function () { + var that = $(this); + var href = that.attr("href"); + + if (href.indexOf(nodeUrl) != -1) { + ulNode.click(); + ulNode.next(".slide-menu").stop(true, true); + lastNode = that.parent(); + lastNode.addClass("active"); + ret = true; + return true; + } + }); + }); + return ret; + } + + /** + * menu click + */ + /** + * menu click + */ + $(".main > .main-left > .nav > .slide > .menu").click(function () { + var ul = $(this).next(".slide-menu"); + var menu = $(this); + $(".main > .main-left > .nav > .slide > .menu").each(function () { + var ulNode = $(this); + ulNode.removeClass("active"); + ulNode.next(".slide-menu").stop(true).slideUp("fast") + }); + if (!ul.is(":visible")) { + menu.addClass("active"); + ul.addClass("active"); + ul.stop(true).slideDown("fast"); + } else { + ul.stop(true).slideUp("fast", function () { + menu.removeClass("active"); + ul.removeClass("active"); + }); + } + return false; + }); + + /** + * hook menu click and add the hash + */ + $(".main > .main-left > .nav > .slide > .slide-menu > li > a").click(function () { + if (lastNode != undefined) lastNode.removeClass("active"); + $(this).parent().addClass("active"); + $(".main > .loading").fadeIn("fast"); + return true; + }); + + /** + * fix menu click + */ + $(".main > .main-left > .nav > .slide > .slide-menu > li").click(function () { + if (lastNode != undefined) lastNode.removeClass("active"); + $(this).addClass("active"); + $(".main > .loading").fadeIn("fast"); + window.location = $($(this).find("a")[0]).attr("href"); + return false; + }); + + /** + * get current node and open it + */ + if (getCurrentNodeByUrl()) { + mainNodeName = "node-" + luciLocation[0] + "-" + luciLocation[1]; + mainNodeName = mainNodeName.replace(/[ \t\n\r\/]+/g, "_").toLowerCase(); + $("body").addClass(mainNodeName); + } + + /** + * Sidebar expand + */ + var showSide = false; + $(".showSide").click(function () { + if (showSide) { + $(".darkMask").stop(true).fadeOut("fast"); + $(".main-left").stop(true).animate({ + width: "0" + }, "200"); + $(".main-right").css("overflow-y", "visible"); + showSide = false; + } else { + $(".darkMask").stop(true).fadeIn("fast"); + $(".main-left").stop(true).animate({ + width: "13rem" + }, "200"); + $(".main-right").css("overflow-y", "hidden"); + showSide = true; + } + }); + + $(".darkMask").click(function () { + if (showSide) { + showSide = false; + $(".darkMask").stop(true).fadeOut("fast"); + $(".main-left").stop(true).animate({ + width: "0" + }, "fast"); + $(".main-right").css("overflow-y", "visible"); + } + }); + + $(window).resize(function () { + if ($(window).width() > 921) { + $(".main-left").css("width", ""); + $(".darkMask").stop(true); + $(".darkMask").css("display", "none"); + showSide = false; + } + }); + + /** + * fix legend position + */ + $("legend").each(function () { + var that = $(this); + that.after("" + that.text() + ""); + }); + + $(".cbi-section-table-titles, .cbi-section-table-descr, .cbi-section-descr").each(function () { + var that = $(this); + if (that.text().trim() == ""){ + that.css("display", "none"); + } + }); + + $(".main-right").focus(); + $(".main-right").blur(); + $("input").attr("size", "0"); + $(".cbi-button-up").val("__"); + $(".cbi-button-down").val("__"); + $(".slide > a").removeAttr("href"); + + if (mainNodeName != undefined) { + console.log(mainNodeName); + switch (mainNodeName) { + case "node-status-system_log": + case "node-status-kernel_log": + $("#syslog").focus(function () { + $("#syslog").blur(); + $(".main-right").focus(); + $(".main-right").blur(); + }); + break; + case "node-status-firewall": + var button = $(".node-status-firewall > .main fieldset li > a"); + button.addClass("cbi-button cbi-button-reset a-to-btn"); + break; + case "node-system-reboot": + var button = $(".node-system-reboot > .main > .main-right p > a"); + button.addClass("cbi-button cbi-input-reset a-to-btn"); + break; + } + } + + var getaudio = $('#player')[0]; + /* Get the audio from the player (using the player's ID), the [0] is necessary */ + var audiostatus = 'off'; + /* Global variable for the audio's status (off or on). It's a bit crude but it works for determining the status. */ + + + $(document).on('click touchend', '.speaker', function() { + /* Touchend is necessary for mobile devices, click alone won't work */ + if (!$('.speaker').hasClass("speakerplay")) { + if (audiostatus == 'off') { + $('.speaker').addClass('speakerplay'); + getaudio.load(); + getaudio.play(); + audiostatus = 'on'; + return false; + } else if (audiostatus == 'on') { + $('.speaker').addClass('speakerplay'); + getaudio.play() + } + } else if ($('.speaker').hasClass("speakerplay")) { + getaudio.pause(); + $('.speaker').removeClass('speakerplay'); + audiostatus = 'on'; + } + }); + + $('#player').on('ended', function() { + $('.speaker').removeClass('speakerplay'); + /*When the audio has finished playing, remove the class speakerplay*/ + audiostatus = 'off'; + /*Set the status back to off*/ + }); + setTimeout(function(){ +var config = { + // How long Waves effect duration + // when it's clicked (in milliseconds) + duration: 600 +}; + Waves.attach("button,input[type='button'],input[type='reset'],input[type='submit']", ['waves-light']); + // Ripple on hover +$("button,input[type='button'],input[type='reset'],input[type='submit']").mouseenter(function() { + Waves.ripple(this, {wait: null}); +}).mouseleave(function() { + Waves.calm(this); +}); + Waves.init(config); +$(".waves-input-wrapper").filter(function () { + if($(this).children().css("display")=="none"){ + return true; + }else{ + return false; + } +}).hide(); + +$("div>select:first-child,div>input[type='text']:first-child").filter(function () { +return (!$(this).parents(".cbi-dynlist").length&&!$("body.Diagnostics").length&&!$(this).hasClass("cbi-input-password")) +}).after(""); + +$("input[type='checkbox']").filter(function () { + return (!$(this).next("label").length) +}).show(); + +$("select,input").filter(function () { + return ($(this).next(".focus-input").length) +}).focus(function(){ + $(this).css("border-bottom","1px solid #fff"); +}).blur(function(){ + $(this).css("border-bottom","1px solid #9e9e9e"); +}); + }, 0); + +var options = { attributes: true}; +function callback() { +$("div>select:first-child,div>input[type='text']:first-child").filter(function () { +return (!$(this).parents(".cbi-dynlist").length&&!$(this).hasClass("cbi-input-password")) +}).after(""); +$("select,input").filter(function () { + return ($(this).next(".focus-input").length) +}).focus(function(){ + $(this).css("border-bottom","1px solid #fff"); +}).blur(function(){ + $(this).css("border-bottom","1px solid #9e9e9e"); +}); +$("input[type='checkbox']").filter(function () { + return (!$(this).next("label").length) +}).show(); +} +var mutationObserver = new MutationObserver(callback); + mutationObserver.observe($("body")[0], options); + $(".cbi-value").has("textarea").css("background","none"); +})(jQuery); +}); \ No newline at end of file diff --git a/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/js/waves.js b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/js/waves.js new file mode 100644 index 0000000000..96d83260b5 --- /dev/null +++ b/package/ctcgfw/luci-theme-edge/htdocs/luci-static/edge/js/waves.js @@ -0,0 +1,41 @@ +;(function(window,factory){'use strict';if(typeof define==='function'&&define.amd){define([],function(){window.Waves=factory.call(window);return window.Waves;});} +else if(typeof exports==='object'){module.exports=factory.call(window);} +else{window.Waves=factory.call(window);}})(typeof global==='object'?global:this,function(){'use strict';var Waves=Waves||{};var $$=document.querySelectorAll.bind(document);var toString=Object.prototype.toString;var isTouchAvailable='ontouchstart'in window;function isWindow(obj){return obj!==null&&obj===obj.window;} +function getWindow(elem){return isWindow(elem)?elem:elem.nodeType===9&&elem.defaultView;} +function isObject(value){var type=typeof value;return type==='function'||type==='object'&&!!value;} +function isDOMNode(obj){return isObject(obj)&&obj.nodeType>0;} +function getWavesElements(nodes){var stringRepr=toString.call(nodes);if(stringRepr==='[object String]'){return $$(nodes);}else if(isObject(nodes)&&/^\[object (Array|HTMLCollection|NodeList|Object)\]$/.test(stringRepr)&&nodes.hasOwnProperty('length')){return nodes;}else if(isDOMNode(nodes)){return[nodes];} +return[];} +function offset(elem){var docElem,win,box={top:0,left:0},doc=elem&&elem.ownerDocument;docElem=doc.documentElement;if(typeof elem.getBoundingClientRect!==typeof undefined){box=elem.getBoundingClientRect();} +win=getWindow(doc);return{top:box.top+win.pageYOffset-docElem.clientTop,left:box.left+win.pageXOffset-docElem.clientLeft};} +function convertStyle(styleObj){var style='';for(var prop in styleObj){if(styleObj.hasOwnProperty(prop)){style+=(prop+':'+styleObj[prop]+';');}} +return style;} +var Effect={duration:750,delay:200,show:function(e,element,velocity){if(e.button===2){return false;} +element=element||this;var ripple=document.createElement('div');ripple.className='waves-ripple waves-rippling';element.appendChild(ripple);var pos=offset(element);var relativeY=0;var relativeX=0;if('touches'in e&&e.touches.length){relativeY=(e.touches[0].pageY-pos.top);relativeX=(e.touches[0].pageX-pos.left);} +else{relativeY=(e.pageY-pos.top);relativeX=(e.pageX-pos.left);} +relativeX=relativeX>=0?relativeX:0;relativeY=relativeY>=0?relativeY:0;var scale='scale('+((element.clientWidth/100)*3)+')';var translate='translate(0,0)';if(velocity){translate='translate('+(velocity.x)+'px, '+(velocity.y)+'px)';} +ripple.setAttribute('data-hold',Date.now());ripple.setAttribute('data-x',relativeX);ripple.setAttribute('data-y',relativeY);ripple.setAttribute('data-scale',scale);ripple.setAttribute('data-translate',translate);var rippleStyle={top:relativeY+'px',left:relativeX+'px'};ripple.classList.add('waves-notransition');ripple.setAttribute('style',convertStyle(rippleStyle));ripple.classList.remove('waves-notransition');rippleStyle['-webkit-transform']=scale+' '+translate;rippleStyle['-moz-transform']=scale+' '+translate;rippleStyle['-ms-transform']=scale+' '+translate;rippleStyle['-o-transform']=scale+' '+translate;rippleStyle.transform=scale+' '+translate;rippleStyle.opacity='1';var duration=e.type==='mousemove'?2500:Effect.duration;rippleStyle['-webkit-transition-duration']=duration+'ms';rippleStyle['-moz-transition-duration']=duration+'ms';rippleStyle['-o-transition-duration']=duration+'ms';rippleStyle['transition-duration']=duration+'ms';ripple.setAttribute('style',convertStyle(rippleStyle));},hide:function(e,element){element=element||this;var ripples=element.getElementsByClassName('waves-rippling');for(var i=0,len=ripples.length;i