diff --git a/Day01-15/code/Day11/mm.jpg b/Day01-15/code/Day11/mm.jpg
index 882abf2..e3381b7 100644
Binary files a/Day01-15/code/Day11/mm.jpg and b/Day01-15/code/Day11/mm.jpg differ
diff --git a/Day01-15/code/Day14/guido.jpg b/Day01-15/code/Day14/guido.jpg
index 78f71ae..a8f217c 100644
Binary files a/Day01-15/code/Day14/guido.jpg and b/Day01-15/code/Day14/guido.jpg differ
diff --git a/Day01-15/code/Day15/res/guido.jpg b/Day01-15/code/Day15/res/guido.jpg
index 78f71ae..a8f217c 100644
Binary files a/Day01-15/code/Day15/res/guido.jpg and b/Day01-15/code/Day15/res/guido.jpg differ
diff --git a/Day01-15/code/Day15/res/luohao.png b/Day01-15/code/Day15/res/luohao.png
index 31593b5..a190074 100644
Binary files a/Day01-15/code/Day15/res/luohao.png and b/Day01-15/code/Day15/res/luohao.png differ
diff --git a/Day01-15/res/formula_7.png b/Day01-15/res/formula_7.png
index 34862f2..dfade18 100644
Binary files a/Day01-15/res/formula_7.png and b/Day01-15/res/formula_7.png differ
diff --git a/Day01-15/res/image-filter.png b/Day01-15/res/image-filter.png
index cc4e6e5..ff512e5 100644
Binary files a/Day01-15/res/image-filter.png and b/Day01-15/res/image-filter.png differ
diff --git a/Day01-15/res/ipython-timeit.png b/Day01-15/res/ipython-timeit.png
index 4cd5a72..9125921 100644
Binary files a/Day01-15/res/ipython-timeit.png and b/Day01-15/res/ipython-timeit.png differ
diff --git a/Day01-15/res/oop-zhihu.png b/Day01-15/res/oop-zhihu.png
index 40e45ce..8aa05c6 100644
Binary files a/Day01-15/res/oop-zhihu.png and b/Day01-15/res/oop-zhihu.png differ
diff --git a/Day21-30/code/new/web1901/images/a1.jpg b/Day21-30/code/new/web1901/images/a1.jpg
index eed94cd..b4ce072 100644
Binary files a/Day21-30/code/new/web1901/images/a1.jpg and b/Day21-30/code/new/web1901/images/a1.jpg differ
diff --git a/Day21-30/code/new/web1901/images/a2.jpg b/Day21-30/code/new/web1901/images/a2.jpg
index dfefd6c..a6be447 100644
Binary files a/Day21-30/code/new/web1901/images/a2.jpg and b/Day21-30/code/new/web1901/images/a2.jpg differ
diff --git a/Day21-30/code/new/web1901/images/a3.jpg b/Day21-30/code/new/web1901/images/a3.jpg
index 01323ad..4409974 100644
Binary files a/Day21-30/code/new/web1901/images/a3.jpg and b/Day21-30/code/new/web1901/images/a3.jpg differ
diff --git a/Day21-30/code/new/web1901/images/backdrop.gif b/Day21-30/code/new/web1901/images/backdrop.gif
index fad78a4..0fa15c3 100755
Binary files a/Day21-30/code/new/web1901/images/backdrop.gif and b/Day21-30/code/new/web1901/images/backdrop.gif differ
diff --git a/Day21-30/code/new/web1901/images/bird.gif b/Day21-30/code/new/web1901/images/bird.gif
index fca6342..8494801 100755
Binary files a/Day21-30/code/new/web1901/images/bird.gif and b/Day21-30/code/new/web1901/images/bird.gif differ
diff --git a/Day21-30/code/new/web1901/images/bok-choi.jpg b/Day21-30/code/new/web1901/images/bok-choi.jpg
index 04bf15b..5fa8933 100755
Binary files a/Day21-30/code/new/web1901/images/bok-choi.jpg and b/Day21-30/code/new/web1901/images/bok-choi.jpg differ
diff --git a/Day21-30/code/new/web1901/images/button-sprite.jpg b/Day21-30/code/new/web1901/images/button-sprite.jpg
index 601e9cb..b5e9636 100755
Binary files a/Day21-30/code/new/web1901/images/button-sprite.jpg and b/Day21-30/code/new/web1901/images/button-sprite.jpg differ
diff --git a/Day21-30/code/new/web1901/images/buttons.jpg b/Day21-30/code/new/web1901/images/buttons.jpg
index d74ad62..8efc830 100755
Binary files a/Day21-30/code/new/web1901/images/buttons.jpg and b/Day21-30/code/new/web1901/images/buttons.jpg differ
diff --git a/Day21-30/code/new/web1901/images/chocolate-islands.jpg b/Day21-30/code/new/web1901/images/chocolate-islands.jpg
index 8dec94c..36cd69b 100755
Binary files a/Day21-30/code/new/web1901/images/chocolate-islands.jpg and b/Day21-30/code/new/web1901/images/chocolate-islands.jpg differ
diff --git a/Day21-30/code/new/web1901/images/clavinet.jpg b/Day21-30/code/new/web1901/images/clavinet.jpg
index af722ac..d4078d6 100755
Binary files a/Day21-30/code/new/web1901/images/clavinet.jpg and b/Day21-30/code/new/web1901/images/clavinet.jpg differ
diff --git a/Day21-30/code/new/web1901/images/dark-wood.jpg b/Day21-30/code/new/web1901/images/dark-wood.jpg
index 1b286a2..33ffe98 100755
Binary files a/Day21-30/code/new/web1901/images/dark-wood.jpg and b/Day21-30/code/new/web1901/images/dark-wood.jpg differ
diff --git a/Day21-30/code/new/web1901/images/dots.gif b/Day21-30/code/new/web1901/images/dots.gif
index ad94c96..5d40155 100755
Binary files a/Day21-30/code/new/web1901/images/dots.gif and b/Day21-30/code/new/web1901/images/dots.gif differ
diff --git a/Day21-30/code/new/web1901/images/email.png b/Day21-30/code/new/web1901/images/email.png
index ddc0b45..c258e86 100755
Binary files a/Day21-30/code/new/web1901/images/email.png and b/Day21-30/code/new/web1901/images/email.png differ
diff --git a/Day21-30/code/new/web1901/images/header.gif b/Day21-30/code/new/web1901/images/header.gif
index abb915b..b2bca3a 100755
Binary files a/Day21-30/code/new/web1901/images/header.gif and b/Day21-30/code/new/web1901/images/header.gif differ
diff --git a/Day21-30/code/new/web1901/images/header.jpg b/Day21-30/code/new/web1901/images/header.jpg
index 3893500..8da7f65 100755
Binary files a/Day21-30/code/new/web1901/images/header.jpg and b/Day21-30/code/new/web1901/images/header.jpg differ
diff --git a/Day21-30/code/new/web1901/images/icon-plus.png b/Day21-30/code/new/web1901/images/icon-plus.png
index f046db1..04f15ce 100755
Binary files a/Day21-30/code/new/web1901/images/icon-plus.png and b/Day21-30/code/new/web1901/images/icon-plus.png differ
diff --git a/Day21-30/code/new/web1901/images/icon.png b/Day21-30/code/new/web1901/images/icon.png
index 0eb1657..ad5889e 100755
Binary files a/Day21-30/code/new/web1901/images/icon.png and b/Day21-30/code/new/web1901/images/icon.png differ
diff --git a/Day21-30/code/new/web1901/images/icons.jpg b/Day21-30/code/new/web1901/images/icons.jpg
index 32a3758..62cb24c 100644
Binary files a/Day21-30/code/new/web1901/images/icons.jpg and b/Day21-30/code/new/web1901/images/icons.jpg differ
diff --git a/Day21-30/code/new/web1901/images/keys.jpg b/Day21-30/code/new/web1901/images/keys.jpg
index 4f5f002..da3bc7d 100755
Binary files a/Day21-30/code/new/web1901/images/keys.jpg and b/Day21-30/code/new/web1901/images/keys.jpg differ
diff --git a/Day21-30/code/new/web1901/images/lemon-posset.jpg b/Day21-30/code/new/web1901/images/lemon-posset.jpg
index c49e1fe..f63ca95 100755
Binary files a/Day21-30/code/new/web1901/images/lemon-posset.jpg and b/Day21-30/code/new/web1901/images/lemon-posset.jpg differ
diff --git a/Day21-30/code/new/web1901/images/logo-1.gif b/Day21-30/code/new/web1901/images/logo-1.gif
index 4e42c03..1eb753c 100755
Binary files a/Day21-30/code/new/web1901/images/logo-1.gif and b/Day21-30/code/new/web1901/images/logo-1.gif differ
diff --git a/Day21-30/code/new/web1901/images/logo-2.gif b/Day21-30/code/new/web1901/images/logo-2.gif
index 15de8c1..ecb16ed 100755
Binary files a/Day21-30/code/new/web1901/images/logo-2.gif and b/Day21-30/code/new/web1901/images/logo-2.gif differ
diff --git a/Day21-30/code/new/web1901/images/logo-3.gif b/Day21-30/code/new/web1901/images/logo-3.gif
index 36c35c5..f80d9bc 100755
Binary files a/Day21-30/code/new/web1901/images/logo-3.gif and b/Day21-30/code/new/web1901/images/logo-3.gif differ
diff --git a/Day21-30/code/new/web1901/images/logo.gif b/Day21-30/code/new/web1901/images/logo.gif
index 042cce5..46d3e3c 100755
Binary files a/Day21-30/code/new/web1901/images/logo.gif and b/Day21-30/code/new/web1901/images/logo.gif differ
diff --git a/Day21-30/code/new/web1901/images/magnolia-large.jpg b/Day21-30/code/new/web1901/images/magnolia-large.jpg
index 7a46aa5..ba16630 100755
Binary files a/Day21-30/code/new/web1901/images/magnolia-large.jpg and b/Day21-30/code/new/web1901/images/magnolia-large.jpg differ
diff --git a/Day21-30/code/new/web1901/images/magnolia-medium.jpg b/Day21-30/code/new/web1901/images/magnolia-medium.jpg
index 1651700..55df446 100755
Binary files a/Day21-30/code/new/web1901/images/magnolia-medium.jpg and b/Day21-30/code/new/web1901/images/magnolia-medium.jpg differ
diff --git a/Day21-30/code/new/web1901/images/magnolia-small.jpg b/Day21-30/code/new/web1901/images/magnolia-small.jpg
index 85cfed3..7e8a9f9 100755
Binary files a/Day21-30/code/new/web1901/images/magnolia-small.jpg and b/Day21-30/code/new/web1901/images/magnolia-small.jpg differ
diff --git a/Day21-30/code/new/web1901/images/otters.jpg b/Day21-30/code/new/web1901/images/otters.jpg
index 04ec0a7..cebaafe 100755
Binary files a/Day21-30/code/new/web1901/images/otters.jpg and b/Day21-30/code/new/web1901/images/otters.jpg differ
diff --git a/Day21-30/code/new/web1901/images/pattern.gif b/Day21-30/code/new/web1901/images/pattern.gif
index b82f9e5..cd24c4c 100755
Binary files a/Day21-30/code/new/web1901/images/pattern.gif and b/Day21-30/code/new/web1901/images/pattern.gif differ
diff --git a/Day21-30/code/new/web1901/images/picture-1.jpg b/Day21-30/code/new/web1901/images/picture-1.jpg
index 746b8e3..9100e31 100644
Binary files a/Day21-30/code/new/web1901/images/picture-1.jpg and b/Day21-30/code/new/web1901/images/picture-1.jpg differ
diff --git a/Day21-30/code/new/web1901/images/picture-2.jpg b/Day21-30/code/new/web1901/images/picture-2.jpg
index 506524b..f2194e8 100644
Binary files a/Day21-30/code/new/web1901/images/picture-2.jpg and b/Day21-30/code/new/web1901/images/picture-2.jpg differ
diff --git a/Day21-30/code/new/web1901/images/picture-3.jpg b/Day21-30/code/new/web1901/images/picture-3.jpg
index 4533c43..9489dd0 100644
Binary files a/Day21-30/code/new/web1901/images/picture-3.jpg and b/Day21-30/code/new/web1901/images/picture-3.jpg differ
diff --git a/Day21-30/code/new/web1901/images/print-01.jpg b/Day21-30/code/new/web1901/images/print-01.jpg
index 94f2d69..be5242d 100755
Binary files a/Day21-30/code/new/web1901/images/print-01.jpg and b/Day21-30/code/new/web1901/images/print-01.jpg differ
diff --git a/Day21-30/code/new/web1901/images/print-02.jpg b/Day21-30/code/new/web1901/images/print-02.jpg
index 1a5ef16..84648ce 100755
Binary files a/Day21-30/code/new/web1901/images/print-02.jpg and b/Day21-30/code/new/web1901/images/print-02.jpg differ
diff --git a/Day21-30/code/new/web1901/images/print-03.jpg b/Day21-30/code/new/web1901/images/print-03.jpg
index 2aa84e5..1c10aba 100755
Binary files a/Day21-30/code/new/web1901/images/print-03.jpg and b/Day21-30/code/new/web1901/images/print-03.jpg differ
diff --git a/Day21-30/code/new/web1901/images/print-04.jpg b/Day21-30/code/new/web1901/images/print-04.jpg
index 3550b91..e28fcba 100755
Binary files a/Day21-30/code/new/web1901/images/print-04.jpg and b/Day21-30/code/new/web1901/images/print-04.jpg differ
diff --git a/Day21-30/code/new/web1901/images/print-05.jpg b/Day21-30/code/new/web1901/images/print-05.jpg
index 121685c..d23c32b 100755
Binary files a/Day21-30/code/new/web1901/images/print-05.jpg and b/Day21-30/code/new/web1901/images/print-05.jpg differ
diff --git a/Day21-30/code/new/web1901/images/print-06.jpg b/Day21-30/code/new/web1901/images/print-06.jpg
index 118783a..6ff6ccb 100755
Binary files a/Day21-30/code/new/web1901/images/print-06.jpg and b/Day21-30/code/new/web1901/images/print-06.jpg differ
diff --git a/Day21-30/code/new/web1901/images/puppy.jpg b/Day21-30/code/new/web1901/images/puppy.jpg
index 3f1933c..abea7c3 100755
Binary files a/Day21-30/code/new/web1901/images/puppy.jpg and b/Day21-30/code/new/web1901/images/puppy.jpg differ
diff --git a/Day21-30/code/new/web1901/images/python-logo.png b/Day21-30/code/new/web1901/images/python-logo.png
index e6c63e1..68ef60f 100644
Binary files a/Day21-30/code/new/web1901/images/python-logo.png and b/Day21-30/code/new/web1901/images/python-logo.png differ
diff --git a/Day21-30/code/new/web1901/images/quokka.jpg b/Day21-30/code/new/web1901/images/quokka.jpg
index 7d11e11..a7d801c 100755
Binary files a/Day21-30/code/new/web1901/images/quokka.jpg and b/Day21-30/code/new/web1901/images/quokka.jpg differ
diff --git a/Day21-30/code/new/web1901/images/rhodes.jpg b/Day21-30/code/new/web1901/images/rhodes.jpg
index 4ad1489..4d5dc69 100755
Binary files a/Day21-30/code/new/web1901/images/rhodes.jpg and b/Day21-30/code/new/web1901/images/rhodes.jpg differ
diff --git a/Day21-30/code/new/web1901/images/roasted-brussel-sprouts.jpg b/Day21-30/code/new/web1901/images/roasted-brussel-sprouts.jpg
index 87b08c4..e95dae4 100755
Binary files a/Day21-30/code/new/web1901/images/roasted-brussel-sprouts.jpg and b/Day21-30/code/new/web1901/images/roasted-brussel-sprouts.jpg differ
diff --git a/Day21-30/code/new/web1901/images/shadow.png b/Day21-30/code/new/web1901/images/shadow.png
index 6d136cc..98ce05f 100755
Binary files a/Day21-30/code/new/web1901/images/shadow.png and b/Day21-30/code/new/web1901/images/shadow.png differ
diff --git a/Day21-30/code/new/web1901/images/slide-1.jpg b/Day21-30/code/new/web1901/images/slide-1.jpg
index 1437467..6dc6a85 100644
Binary files a/Day21-30/code/new/web1901/images/slide-1.jpg and b/Day21-30/code/new/web1901/images/slide-1.jpg differ
diff --git a/Day21-30/code/new/web1901/images/slide-2.jpg b/Day21-30/code/new/web1901/images/slide-2.jpg
index ffd8b43..a631b87 100644
Binary files a/Day21-30/code/new/web1901/images/slide-2.jpg and b/Day21-30/code/new/web1901/images/slide-2.jpg differ
diff --git a/Day21-30/code/new/web1901/images/slide-3.jpg b/Day21-30/code/new/web1901/images/slide-3.jpg
index 46bd9c5..4fa7315 100644
Binary files a/Day21-30/code/new/web1901/images/slide-3.jpg and b/Day21-30/code/new/web1901/images/slide-3.jpg differ
diff --git a/Day21-30/code/new/web1901/images/slide-4.jpg b/Day21-30/code/new/web1901/images/slide-4.jpg
index d226070..7823552 100644
Binary files a/Day21-30/code/new/web1901/images/slide-4.jpg and b/Day21-30/code/new/web1901/images/slide-4.jpg differ
diff --git a/Day21-30/code/new/web1901/images/star.png b/Day21-30/code/new/web1901/images/star.png
index 3c1bcdc..9c88493 100755
Binary files a/Day21-30/code/new/web1901/images/star.png and b/Day21-30/code/new/web1901/images/star.png differ
diff --git a/Day21-30/code/new/web1901/images/subscribe.jpg b/Day21-30/code/new/web1901/images/subscribe.jpg
index 9530ce5..ef7dabd 100755
Binary files a/Day21-30/code/new/web1901/images/subscribe.jpg and b/Day21-30/code/new/web1901/images/subscribe.jpg differ
diff --git a/Day21-30/code/new/web1901/images/teriyaki.jpg b/Day21-30/code/new/web1901/images/teriyaki.jpg
index 46ef115..f8bac47 100755
Binary files a/Day21-30/code/new/web1901/images/teriyaki.jpg and b/Day21-30/code/new/web1901/images/teriyaki.jpg differ
diff --git a/Day21-30/code/new/web1901/images/thumb-1.jpg b/Day21-30/code/new/web1901/images/thumb-1.jpg
index 2588658..5fc58b7 100644
Binary files a/Day21-30/code/new/web1901/images/thumb-1.jpg and b/Day21-30/code/new/web1901/images/thumb-1.jpg differ
diff --git a/Day21-30/code/new/web1901/images/thumb-2.jpg b/Day21-30/code/new/web1901/images/thumb-2.jpg
index aa714c5..54c1821 100644
Binary files a/Day21-30/code/new/web1901/images/thumb-2.jpg and b/Day21-30/code/new/web1901/images/thumb-2.jpg differ
diff --git a/Day21-30/code/new/web1901/images/thumb-3.jpg b/Day21-30/code/new/web1901/images/thumb-3.jpg
index 07db678..b787e42 100644
Binary files a/Day21-30/code/new/web1901/images/thumb-3.jpg and b/Day21-30/code/new/web1901/images/thumb-3.jpg differ
diff --git a/Day21-30/code/new/web1901/images/tim.png b/Day21-30/code/new/web1901/images/tim.png
index 72555ae..00ef80e 100644
Binary files a/Day21-30/code/new/web1901/images/tim.png and b/Day21-30/code/new/web1901/images/tim.png differ
diff --git a/Day21-30/code/new/web1901/images/title.gif b/Day21-30/code/new/web1901/images/title.gif
index 69bd450..8b3fd41 100755
Binary files a/Day21-30/code/new/web1901/images/title.gif and b/Day21-30/code/new/web1901/images/title.gif differ
diff --git a/Day21-30/code/new/web1901/images/tulip.gif b/Day21-30/code/new/web1901/images/tulip.gif
index 9c4b6a2..ebae83c 100755
Binary files a/Day21-30/code/new/web1901/images/tulip.gif and b/Day21-30/code/new/web1901/images/tulip.gif differ
diff --git a/Day21-30/code/new/web1901/images/twitter.png b/Day21-30/code/new/web1901/images/twitter.png
index e1d44bb..6a7ad51 100755
Binary files a/Day21-30/code/new/web1901/images/twitter.png and b/Day21-30/code/new/web1901/images/twitter.png differ
diff --git a/Day21-30/code/new/web1901/images/web.png b/Day21-30/code/new/web1901/images/web.png
index 5b81857..b0c5f40 100755
Binary files a/Day21-30/code/new/web1901/images/web.png and b/Day21-30/code/new/web1901/images/web.png differ
diff --git a/Day21-30/code/new/web1901/images/wurlitzer.jpg b/Day21-30/code/new/web1901/images/wurlitzer.jpg
index 32370a5..971c218 100755
Binary files a/Day21-30/code/new/web1901/images/wurlitzer.jpg and b/Day21-30/code/new/web1901/images/wurlitzer.jpg differ
diff --git a/Day21-30/code/new/web1901/images/zucchini-cake.jpg b/Day21-30/code/new/web1901/images/zucchini-cake.jpg
index 7072601..2788a0a 100755
Binary files a/Day21-30/code/new/web1901/images/zucchini-cake.jpg and b/Day21-30/code/new/web1901/images/zucchini-cake.jpg differ
diff --git a/Day21-30/code/old/javascript/img/a1.jpg b/Day21-30/code/old/javascript/img/a1.jpg
index eed94cd..b4ce072 100644
Binary files a/Day21-30/code/old/javascript/img/a1.jpg and b/Day21-30/code/old/javascript/img/a1.jpg differ
diff --git a/Day21-30/code/old/javascript/img/a2.jpg b/Day21-30/code/old/javascript/img/a2.jpg
index dfefd6c..a6be447 100644
Binary files a/Day21-30/code/old/javascript/img/a2.jpg and b/Day21-30/code/old/javascript/img/a2.jpg differ
diff --git a/Day21-30/code/old/javascript/img/a3.jpg b/Day21-30/code/old/javascript/img/a3.jpg
index 01323ad..4409974 100644
Binary files a/Day21-30/code/old/javascript/img/a3.jpg and b/Day21-30/code/old/javascript/img/a3.jpg differ
diff --git a/Day21-30/code/old/javascript/img/picture-1.jpg b/Day21-30/code/old/javascript/img/picture-1.jpg
index 746b8e3..9100e31 100644
Binary files a/Day21-30/code/old/javascript/img/picture-1.jpg and b/Day21-30/code/old/javascript/img/picture-1.jpg differ
diff --git a/Day21-30/code/old/javascript/img/picture-2.jpg b/Day21-30/code/old/javascript/img/picture-2.jpg
index 506524b..f2194e8 100644
Binary files a/Day21-30/code/old/javascript/img/picture-2.jpg and b/Day21-30/code/old/javascript/img/picture-2.jpg differ
diff --git a/Day21-30/code/old/javascript/img/picture-3.jpg b/Day21-30/code/old/javascript/img/picture-3.jpg
index 4533c43..9489dd0 100644
Binary files a/Day21-30/code/old/javascript/img/picture-3.jpg and b/Day21-30/code/old/javascript/img/picture-3.jpg differ
diff --git a/Day21-30/code/old/javascript/img/slide-1.jpg b/Day21-30/code/old/javascript/img/slide-1.jpg
index 1437467..6dc6a85 100644
Binary files a/Day21-30/code/old/javascript/img/slide-1.jpg and b/Day21-30/code/old/javascript/img/slide-1.jpg differ
diff --git a/Day21-30/code/old/javascript/img/slide-2.jpg b/Day21-30/code/old/javascript/img/slide-2.jpg
index ffd8b43..a631b87 100644
Binary files a/Day21-30/code/old/javascript/img/slide-2.jpg and b/Day21-30/code/old/javascript/img/slide-2.jpg differ
diff --git a/Day21-30/code/old/javascript/img/slide-3.jpg b/Day21-30/code/old/javascript/img/slide-3.jpg
index 46bd9c5..4fa7315 100644
Binary files a/Day21-30/code/old/javascript/img/slide-3.jpg and b/Day21-30/code/old/javascript/img/slide-3.jpg differ
diff --git a/Day21-30/code/old/javascript/img/slide-4.jpg b/Day21-30/code/old/javascript/img/slide-4.jpg
index d226070..7823552 100644
Binary files a/Day21-30/code/old/javascript/img/slide-4.jpg and b/Day21-30/code/old/javascript/img/slide-4.jpg differ
diff --git a/Day21-30/code/old/javascript/img/thumb-1.jpg b/Day21-30/code/old/javascript/img/thumb-1.jpg
index 2588658..5fc58b7 100644
Binary files a/Day21-30/code/old/javascript/img/thumb-1.jpg and b/Day21-30/code/old/javascript/img/thumb-1.jpg differ
diff --git a/Day21-30/code/old/javascript/img/thumb-2.jpg b/Day21-30/code/old/javascript/img/thumb-2.jpg
index aa714c5..54c1821 100644
Binary files a/Day21-30/code/old/javascript/img/thumb-2.jpg and b/Day21-30/code/old/javascript/img/thumb-2.jpg differ
diff --git a/Day21-30/code/old/javascript/img/thumb-3.jpg b/Day21-30/code/old/javascript/img/thumb-3.jpg
index 07db678..b787e42 100644
Binary files a/Day21-30/code/old/javascript/img/thumb-3.jpg and b/Day21-30/code/old/javascript/img/thumb-3.jpg differ
diff --git a/Day21-30/code/垃圾分类查询/images/harmful-waste.png b/Day21-30/code/垃圾分类查询/images/harmful-waste.png
index edaff8b..2055de5 100644
Binary files a/Day21-30/code/垃圾分类查询/images/harmful-waste.png and b/Day21-30/code/垃圾分类查询/images/harmful-waste.png differ
diff --git a/Day21-30/code/垃圾分类查询/images/kitchen-waste.png b/Day21-30/code/垃圾分类查询/images/kitchen-waste.png
index cd52f47..542bd28 100644
Binary files a/Day21-30/code/垃圾分类查询/images/kitchen-waste.png and b/Day21-30/code/垃圾分类查询/images/kitchen-waste.png differ
diff --git a/Day21-30/code/垃圾分类查询/images/other-waste.png b/Day21-30/code/垃圾分类查询/images/other-waste.png
index ef2222b..7bf4463 100644
Binary files a/Day21-30/code/垃圾分类查询/images/other-waste.png and b/Day21-30/code/垃圾分类查询/images/other-waste.png differ
diff --git a/Day21-30/code/垃圾分类查询/images/recyclable.png b/Day21-30/code/垃圾分类查询/images/recyclable.png
index a82922f..fbf35cc 100644
Binary files a/Day21-30/code/垃圾分类查询/images/recyclable.png and b/Day21-30/code/垃圾分类查询/images/recyclable.png differ
diff --git a/Day21-30/res/baidu_echarts.png b/Day21-30/res/baidu_echarts.png
index 7144a46..48ff43c 100644
Binary files a/Day21-30/res/baidu_echarts.png and b/Day21-30/res/baidu_echarts.png differ
diff --git a/Day21-30/res/bootstrap-layoutit.png b/Day21-30/res/bootstrap-layoutit.png
index 53b4d86..3735ac8 100644
Binary files a/Day21-30/res/bootstrap-layoutit.png and b/Day21-30/res/bootstrap-layoutit.png differ
diff --git a/Day21-30/res/字符实体.png b/Day21-30/res/字符实体.png
index ff4a01a..dd18622 100644
Binary files a/Day21-30/res/字符实体.png and b/Day21-30/res/字符实体.png differ
diff --git a/Day21-30/res/尺寸单位.png b/Day21-30/res/尺寸单位.png
index 47968e0..845e32b 100644
Binary files a/Day21-30/res/尺寸单位.png and b/Day21-30/res/尺寸单位.png differ
diff --git a/Day21-30/res/常用选择器.png b/Day21-30/res/常用选择器.png
index fe55a35..a54f4de 100644
Binary files a/Day21-30/res/常用选择器.png and b/Day21-30/res/常用选择器.png differ
diff --git a/Day21-30/res/结束标签.png b/Day21-30/res/结束标签.png
index 2479512..8034aa3 100644
Binary files a/Day21-30/res/结束标签.png and b/Day21-30/res/结束标签.png differ
diff --git a/Day31-35/res/ibm-col80-punched-card.png b/Day31-35/res/ibm-col80-punched-card.png
index d075ec8..8a797b1 100644
Binary files a/Day31-35/res/ibm-col80-punched-card.png and b/Day31-35/res/ibm-col80-punched-card.png differ
diff --git a/Day31-35/res/vim-multi-window.png b/Day31-35/res/vim-multi-window.png
index 85ef359..5028d27 100644
Binary files a/Day31-35/res/vim-multi-window.png and b/Day31-35/res/vim-multi-window.png differ
diff --git a/Day36-40/res/conceptual_model.png b/Day36-40/res/conceptual_model.png
index 2516ba3..0e87815 100644
Binary files a/Day36-40/res/conceptual_model.png and b/Day36-40/res/conceptual_model.png differ
diff --git a/Day36-40/res/redis-aof.png b/Day36-40/res/redis-aof.png
index 567c841..f7575df 100644
Binary files a/Day36-40/res/redis-aof.png and b/Day36-40/res/redis-aof.png differ
diff --git a/Day36-40/res/redis-bind-and-port.png b/Day36-40/res/redis-bind-and-port.png
index 2c2fb85..dc26d98 100644
Binary files a/Day36-40/res/redis-bind-and-port.png and b/Day36-40/res/redis-bind-and-port.png differ
diff --git a/Day36-40/res/redis-replication.png b/Day36-40/res/redis-replication.png
index 297b953..657508b 100644
Binary files a/Day36-40/res/redis-replication.png and b/Day36-40/res/redis-replication.png differ
diff --git a/Day36-40/res/redis-slow-logs.png b/Day36-40/res/redis-slow-logs.png
index 6cc46ce..10816aa 100644
Binary files a/Day36-40/res/redis-slow-logs.png and b/Day36-40/res/redis-slow-logs.png differ
diff --git a/Day41-55/49.RESTful架构和DRF入门.md b/Day41-55/49.RESTful架构和DRF入门.md
index effe463..1c2d7a7 100644
--- a/Day41-55/49.RESTful架构和DRF入门.md
+++ b/Day41-55/49.RESTful架构和DRF入门.md
@@ -51,7 +51,7 @@ REST_FRAMEWORK = {
# 配置默认页面大小
# 'PAGE_SIZE': 10,
# 配置默认的分页类
- # 'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
+ # 'DEFAULT_PAGINATION_CLASS': '...',
# 配置异常处理器
# 'EXCEPTION_HANDLER': '...',
# 配置默认解析器
@@ -80,6 +80,9 @@ REST_FRAMEWORK = {
前后端分离的开发需要后端为前端、移动端提供API数据接口,而API接口通常情况下都是返回JSON格式的数据,这就需要对模型对象进行序列化处理。DRF中封装了`Serializer`类和`ModelSerializer`类用于实现序列化操作,通过继承`Serializer`类或`ModelSerializer`类,我们可以自定义序列化器,用于将对象处理成字典,代码如下所示。
```Python
+from rest_framework import serializers
+
+
class SubjectSerializer(serializers.ModelSerializer):
class Meta:
@@ -94,6 +97,10 @@ class SubjectSerializer(serializers.ModelSerializer):
DRF框架支持两种实现数据接口的方式,一种是FBV(基于函数的视图),另一种是CBV(基于类的视图)。我们先看看FBV的方式如何实现数据接口,代码如下所示。
```Python
+from rest_framework.decorators import api_view
+from rest_framework.response import Response
+
+
@api_view(('GET', ))
def show_subjects(request: HttpRequest) -> HttpResponse:
subjects = Subject.objects.all().order_by('no')
@@ -343,4 +350,4 @@ except InvalidTokenError:
raise AuthenticationFailed('无效的令牌或令牌已经过期')
```
-相信通过上面的讲解,大家已经可以自行完成对投票项目用户登录功能的修改,如果有什么疑惑,可以参考我的代码,点击[地址一](https://github.com/jackfrued/vote)或[地址二](https://gitee.com/jackfrued/vote)可以打开项目仓库的页面。
+如果不清楚JWT具体的使用方式,可以先看看第55天的内容,里面提供了完整的投票项目代码的地址。
\ No newline at end of file
diff --git a/Day41-55/50.RESTful架构和DRF进阶.md b/Day41-55/50.RESTful架构和DRF进阶.md
index 5ed148d..28083cc 100644
--- a/Day41-55/50.RESTful架构和DRF进阶.md
+++ b/Day41-55/50.RESTful架构和DRF进阶.md
@@ -1,18 +1,48 @@
## RESTful架构和DRF进阶
-除了上一节讲到的方法,使用DRF创建REST风格的数据接口还有CBV(基于类的视图)的方式。使用CBV创建数据接口的特点是代码简单,开发效率高,但是没有FBV(基于函数的视图)灵活,因为使用FBV的方式,数据接口对应的视图函数执行什么样的代码以及返回什么的数据是高度可定制的。下面我们以定制学科的数据接口为例,讲解通过CBV方式定制数据接口的具体做法。
+除了上一节讲到的方法,使用DRF创建REST风格的数据接口也可以通过CBV(基于类的视图)的方式。使用CBV创建数据接口的特点是代码简单,开发效率高,但是没有FBV(基于函数的视图)灵活,因为使用FBV的方式,数据接口对应的视图函数执行什么样的代码以及返回什么的数据是高度可定制的。下面我们以定制学科的数据接口为例,讲解通过CBV方式定制数据接口的具体做法。
-### 使用ModelViewSet
+### 使用CBV
-修改之前项目中的`polls/views.py`,去掉`show_subjects`视图函数,添加一个名为`SubjectViewSet`的类。
+#### 继承APIView的子类
+
+修改之前项目中的`polls/views.py`,去掉`show_subjects`视图函数,添加一个名为`SubjectView`的类,该类继承自`ListAPIView`,`ListAPIView`能接收GET请求,它封装了获取数据列表并返回JSON数据的`get`方法。`ListAPIView`是`APIView` 的子类,`APIView`还有很多的子类,例如`CreateAPIView`可以支持POST请求,`UpdateAPIView`可以支持PUT和PATCH请求,`DestoryAPIView`可以支持DELETE请求。`SubjectView` 的代码如下所示。
```Python
+from rest_framework.generics import ListAPIView
+
+
+class SubjectView(ListAPIView):
+ # 通过queryset指定如何获取学科数据
+ queryset = Subject.objects.all()
+ # 通过serializer_class指定如何序列化学科数据
+ serializer_class = SubjectSerializer
+```
+
+刚才说过,由于`SubjectView`的父类`ListAPIView`已经实现了`get`方法来处理获取学科列表的GET请求,所以我们只需要声明如何获取学科数据以及如何序列化学科数据,前者用`queryset`属性指定,后者用`serializer_class`属性指定。要使用上面的`SubjectView`,需要修改`urls.py`文件,如下所示。
+
+```Python
+urlpatterns = [
+ path('api/subjects/', SubjectView.as_view()),
+]
+```
+
+很显然,上面的做法较之之前讲到的FBV要简单很多。
+
+#### 继承ModelViewSet
+
+如果学科对应的数据接口需要支持GET、POST、PUT、PATCH、DELETE请求来支持对学科资源的获取、新增、更新、删除操作,更为简单的做法是继承`ModelViewSet`来编写学科视图类。再次修改`polls/views.py`文件,去掉`SubjectView`类,添加一个名为`SubjectViewSet`的类,代码如下所示。
+
+```Python
+from rest_framework.viewsets import ModelViewSet
+
+
class SubjectViewSet(ModelViewSet):
queryset = Subject.objects.all()
serializer_class = SubjectSerializer
```
-通过查看`ModelViewSet`类的源代码可以发现,该类共有6个父类,其中前5个父类分别实现创建学科、获取指定学科、更新指定学科、删除指定学科和获取学科列表的数据接口,对应的方法分别是`create`、`retrieve`、`update`、`destroy`和`list`。由于ModelViewSet的父类中已经实现了这些方法,所以我们几乎没有编写任何代码就完成了学科数据接口的开发,我们要做的仅仅是指出如何获取到学科数据(通过`queryset`属性指定)以及如何序列化学科数据(通过`serializer_class`属性指定)。
+通过查看`ModelViewSet`类的源代码可以发现,该类共有6个父类,其中前5个父类分别实现对POST(新增学科)、GET(获取指定学科)、PUT/PATCH(更新学科)、DELETE(删除学科)和GET(获取学科列表)操作的支持,对应的方法分别是`create`、`retrieve`、`update`、`destroy`和`list`。由于`ModelViewSet`的父类中已经实现了这些方法,所以我们几乎没有编写任何代码就完成了学科数据全套接口的开发,我们要做的仅仅是指出如何获取到数据(通过`queryset`属性指定)以及如何序列化数据(通过`serializer_class`属性指定),这一点跟上面继承`APIView`的子类做法是一致的。
```Python
class ModelViewSet(mixins.CreateModelMixin,
@@ -28,13 +58,72 @@ class ModelViewSet(mixins.CreateModelMixin,
pass
```
-要使用上面的`SubjectViewSet`,需要在`urls.py`文件中进行URL映射。不同于之前的视图函数映射URL的方式,我们需要先创建一个路由器对象并通过该对象注册`SubjectViewSet`,然后将注册成功后生成的URL一并添加到`urlspattern`列表中,代码如下所示。
+要使用上面的`SubjectViewSet`,需要在`urls.py`文件中进行URL映射。由于`ModelViewSet`相当于是多个视图函数的汇总,所以不同于之前映射URL的方式,我们需要先创建一个路由器并通过它注册`SubjectViewSet`,然后将注册成功后生成的URL一并添加到`urlspattern`列表中,代码如下所示。
```Python
+from rest_framework.routers import DefaultRouter
+
router = DefaultRouter()
router.register('api/subjects', SubjectViewSet)
urlpatterns += router.urls
```
-### 使用APIView的子类
+除了`ModelViewSet`类外,DRF还提供了一个名为`ReadOnlyModelViewSet` 的类,从名字上就可以看出,该类是只读视图的集合,也就意味着,继承该类定制的数据接口只能支持GET请求,也就是获取单个资源和资源列表的请求。
+### 数据分页
+
+在使用GET请求获取资源列表时,我们通常不会一次性的加载所有的数据,除非数据量真的很小。大多数获取资源列表的操作都支持数据分页展示,也就说我们可以通过指定页码(或类似于页码的标识)和页面大小(一次加载多少条数据)来获取不同的数据。我们可以通过对`QuerySet`对象的切片操作来实现分页,也可以利用Django框架封装的`Paginator`和`Page`对象来实现分页。使用DRF时,可以在Django配置文件中修改`REST_FRAMEWORK`并配置默认的分页类和页面大小来实现分页,如下所示。
+
+```Python
+REST_FRAMEWORK = {
+ 'PAGE_SIZE': 10,
+ 'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination'
+}
+```
+
+除了上面配置的`PageNumberPagination`分页器之外,DRF还提供了`LimitOffsetPagination`和`CursorPagination`分页器,值得一提的是`CursorPagination`,它可以避免使用页码分页时暴露网站的数据体量,有兴趣的读者可以自行了解。如果不希望使用配置文件中默认的分页设定,可以在视图类中添加一个`pagination_class`属性来重新指定分页器,通常可以将该属性指定为自定义的分页器,如下所示。
+
+```Python
+from rest_framework.pagination import PageNumberPagination
+
+
+class CustomizedPagination(PageNumberPagination):
+ # 默认页面大小
+ page_size = 5
+ # 页面大小对应的查询参数
+ page_size_query_param = 'size'
+ # 页面大小的最大值
+ max_page_size = 50
+```
+
+```Python
+class SubjectView(ListAPIView):
+ # 指定如何获取数据
+ queryset = Subject.objects.all()
+ # 指定如何序列化数据
+ serializer_class = SubjectSerializer
+ # 指定如何分页
+ pagination_class = CustomizedPagination
+```
+
+如果不希望数据分页,可以将`pagination_class`属性设置为`None`来取消默认的分页器。
+
+### 数据筛选
+
+如果希望使用CBV定制获取老师信息的数据接口,也可以通过继承`ListAPIView`来实现。但是因为要通过指定的学科来获取对应的老师信息,因此需要对老师数据进行筛选而不是直接获取所有老师的数据。如果想从请求中获取学科编号并通过学科编号对老师进行筛选,可以通过重写`get_queryset`方法来做到,代码如下所示。
+
+```Python
+class TeacherView(ListAPIView):
+ serializer_class = TeacherSerializer
+
+ def get_queryset(self):
+ queryset = Teacher.objects.defer('subject')
+ try:
+ sno = self.request.GET.get('sno', '')
+ queryset = queryset.filter(subject__no=sno)
+ return queryset
+ except ValueError:
+ raise Http404('No teachers found.')
+```
+
+除了上述方式之外,还可以使用三方库`django-filter`来配合DRF实现对数据的筛选,使用`django-filter`后,可以通过为视图类配置`filter-backends`属性并指定使用`DjangoFilterBackend`来支持数据筛选。在完成上述配置后,可以使用`filter_fields` 属性或`filterset_class`属性来指定如何筛选数据,有兴趣的读者可以自行研究。
\ No newline at end of file
diff --git a/Day41-55/51.使用缓存.md b/Day41-55/51.使用缓存.md
index ee55bf6..7e39e08 100644
--- a/Day41-55/51.使用缓存.md
+++ b/Day41-55/51.使用缓存.md
@@ -1,4 +1,147 @@
## 使用缓存
+通常情况下,Web应用的性能瓶颈都会出现在关系型数据库上,当并发访问量较大时,如果所有的请求都需要通过关系型数据库完成数据持久化操作,那么数据库一定会不堪重负。优化Web应用性能最为重要的一点就是使用缓存,把那些数据体量不大但访问频率非常高的数据提前加载到缓存服务器中,这又是典型的空间换时间的方法。通常缓存服务器都是直接将数据置于内存中而且使用了非常高效的数据存取策略(哈希存储、键值对方式等),在读写性能上远远优于关系型数据库的,因此我们可以让Web应用接入缓存服务器来优化其性能,其中一个非常好的选择就是使用Redis。
+
+Web应用的缓存架构大致如下图所示。
+
+
+
+### Django项目接入Redis
+
+在此前的课程中,我们介绍过Redis的安装和使用,此处不再进行赘述。如果需要在Django项目中接入Redis,可以使用三方库`django-redis`,这个三方库又依赖了一个名为`redis` 的三方库,它封装了对Redis的各种操作。
+
+安装`django-redis`。
+
+```Bash
+pip install django-redis
+```
+
+修改Django配置文件中关于缓存的配置。
+
+```Python
+CACHES = {
+ 'default': {
+ # 指定通过django-redis接入Redis服务
+ 'BACKEND': 'django_redis.cache.RedisCache',
+ # Redis服务器的URL
+ 'LOCATION': ['redis://1.2.3.4:6379/0', ],
+ # Redis中键的前缀(解决命名冲突)
+ 'KEY_PREFIX': 'vote',
+ # 其他的配置选项
+ 'OPTIONS': {
+ 'CLIENT_CLASS': 'django_redis.client.DefaultClient',
+ # 连接池(预置若干备用的Redis连接)参数
+ 'CONNECTION_POOL_KWARGS': {
+ # 最大连接数
+ 'max_connections': 512,
+ },
+ # 连接Redis的用户口令
+ 'PASSWORD': 'foobared',
+ }
+ },
+}
+```
+
+至此,我们的Django项目已经可以接入Redis,接下来我们修改项目代码,用Redis为之写的获取学科数据的接口提供缓存服务。
+
+### 为视图提供缓存服务
+
+#### 声明式缓存
+
+所谓声明式缓存是指不修改原来的代码,通过Python中的装饰器(代理)为原有的代码增加缓存功能。对于FBV,代码如下所示。
+
+```Python
+from django.views.decorators.cache import cache_page
+@api_view(('GET', ))
+@cache_page(timeout=86400, cache='default')
+def show_subjects(request):
+ """获取学科数据"""
+ queryset = Subject.objects.all()
+ data = SubjectSerializer(queryset, many=True).data
+ return Response({'code': 20000, 'subjects': data})
+```
+
+上面的代码通过Django封装的`cache_page`装饰器缓存了视图函数的返回值(响应对象),`cache_page`的本意是缓存视图函数渲染的页面,对于返回JSON数据的视图函数,相当于是缓存了JSON数据。在使用`cache_page`装饰器时,可以传入`timeout`参数来指定缓存过期时间,还可以使用`cache`参数来指定需要使用哪一组缓存服务来缓存数据。Django项目允许在配置文件中配置多组缓存服务,上面的`cache='default'`指定了使用默认的缓存服务(因为之前的配置文件中我们也只配置了名为`default`的缓存服务)。视图函数的返回值会被序列化成字节串放到Redis中(Redis中的str类型可以接收字节串),缓存数据的序列化和反序列化也不需要我们自己处理,因为`cache_page`装饰器会调用`django-redis`库中的`RedisCache`来对接Redis,该类使用了`DefaultClient`来连接Redis并使用了[pickle序列化](https://python3-cookbook.readthedocs.io/zh_CN/latest/c05/p21_serializing_python_objects.html),`django_redis.serializers.pickle.PickleSerializer`是默认的序列化类。
+
+如果缓存中没有学科的数据,那么通过接口访问学科数据时,我们的视图函数会通过执行`Subject.objects.all()`向数据库发出SQL语句来获得数据,视图函数的返回值会被缓存,因此下次请求该视图函数如果缓存没有过期,可以直接从缓存中获取视图函数的返回值,无需再次查询数据库。如果想了解缓存的使用情况,可以配置数据库日志或者使用Django-Debug-Toolbar来查看,第一次访问学科数据接口时会看到查询学科数据的SQL语句,再次获取学科数据时,不会再向数据库发出SQL语句,因为可以直接从缓存中获取数据。
+
+对于CBV,可以利用Django中名为`method_decorator`的装饰器将`cache_page`这个装饰函数的装饰器放到类中的方法上,效果跟上面的代码是一样的。需要提醒大家注意的是,`cache_page`装饰器不能直接放在类上,因为它是装饰函数的装饰器,所以Django框架才提供了`method_decorator`来解决这个问题,很显然,`method_decorator`是一个装饰类的装饰器。
+
+```Python
+from django.utils.decorators import method_decorator
+from django.views.decorators.cache import cache_page
+
+
+@method_decorator(decorator=cache_page(timeout=86400, cache='default'), name='get')
+class SubjectView(ListAPIView):
+ """获取学科数据的视图类"""
+ queryset = Subject.objects.all()
+ serializer_class = SubjectSerializer
+```
+
+#### 编程式缓存
+
+所谓编程式缓存是指通过自己编写的代码来使用缓存服务,这种方式虽然代码量会稍微大一些,但是相较于声明式缓存,它对缓存的操作和使用更加灵活,在实际开发中使用得更多。下面的代码去掉了之前使用的`cache_page`装饰器,通过`django-redis`提供的`get_redis_connection`函数直接获取Redis连接来操作Redis。
+
+```Python
+def show_subjects(request):
+ """获取学科数据"""
+ redis_cli = get_redis_connection()
+ # 先尝试从缓存中获取学科数据
+ data = redis_cli.get('vote:polls:subjects')
+ if data:
+ # 如果获取到学科数据就进行反序列化操作
+ data = json.loads(data)
+ else:
+ # 如果缓存中没有获取到学科数据就查询数据库
+ queryset = Subject.objects.all()
+ data = SubjectSerializer(queryset, many=True).data
+ # 将查到的学科数据序列化后放到缓存中
+ redis_cli.set('vote:polls:subjects', json.dumps(data), ex=86400)
+ return Response({'code': 20000, 'subjects': data})
+```
+
+需要说明的是,Django框架提供了`cache`和`caches`两个现成的变量来支持缓存操作,前者访问的是默认的缓存(名为`default`的缓存),后者可以通过索引运算获取指定的缓存服务(例如:`caches['default']`)。向`cache`对象发送`get`和`set`消息就可以实现对缓存的读和写操作,但是这种方式能做的操作有限,不如上面代码中使用的方式灵活。还有一个值得注意的地方,由于可以通过`get_redis_connection`函数获得的Redis连接对象向Redis发起各种操作,包括`FLUSHDB`、`SHUTDOWN`等危险的操作,所以在实际商业项目开发中,一般都会对`django-redis`再做一次封装,例如封装一个工具类,其中只提供了项目需要用到的缓存操作的方法,从而避免了直接使用`get_redis_connection`的潜在风险。当然,自己封装对缓存的操作还可以使用“Read Through”和“Write Through”的方式实现对缓存的更新,这个在下面会介绍到。
+
+### 缓存相关问题
+
+#### 缓存数据的更新
+
+在使用缓存时,一个必须搞清楚的问题就是,当数据改变时,如何更新缓存中的数据。通常更新缓存有如下几种套路,分别是:
+
+1. Cache Aside Pattern
+2. Read/Write Through Pattern
+3. Write Behind Caching Pattern
+
+第1种方式的具体做法就是,当数据更新时,先更新数据库,再删除缓存。注意,不能够使用先更新数据库再更新缓存的方式,也不能够使用先删除缓存再更新数据库的方式,大家可以自己想一想为什么(考虑一下有并发的读操作和写操作的场景)。当然,先更新数据库再删除缓存的做法在理论上也存在风险,但是发生问题的概率是极低的,所以不少的项目都使用了这种方式。
+
+第1种方式相当于编写业务代码的开发者要自己负责对两套存储系统(缓存和关系型数据库)的操作,代码写起来非常的繁琐。第2种方式的主旨是将后端的存储系统变成一套代码,对缓存的维护封装在这套代码中。其中,Read Through指在查询操作中更新缓存,也就是说,当缓存失效的时候,由缓存服务自己负责对数据的加载,从而对应用方是透明的;而Write Through是指在更新数据时,如果没有命中缓存,直接更新数据库,然后返回。如果命中了缓存,则更新缓存,然后再由缓存服务自己更新数据库(同步更新)。刚才我们说过,如果自己对项目中的Redis操作再做一次封装,就可以实现“Read Through”和“Write Through”模式,这样做虽然会增加工作量,但无疑是一件“一劳永逸”且“功在千秋”的事情。
+
+第3种方式是在更新数据的时候,只更新缓存,不更新数据库,而缓存服务这边会**异步的批量更新**数据库。这种做法会大幅度提升性能,但代价是牺牲数据的**强一致性**。第3种方式的实现逻辑比较复杂,因为他需要追踪有哪数据是被更新了的,然后再批量的刷新到持久层上。
+
+#### 缓存穿透
+
+缓存是为了缓解数据库压力而添加的一个中间层,如果恶意的访问者频繁的访问缓存中没有的数据,那么缓存就失去了存在的意义,瞬间所有请求的压力都落在了数据库上,这样会导致数据库承载着巨大的压力甚至连接异常,类似于分布式拒绝服务攻击(DDoS)的做法。解决缓存穿透的一个办法是约定如果查询返回为空值,把这个空值也缓存起来,但是需要为这个空值的缓存设置一个较短的超时时间,毕竟缓存这样的值就是对缓存空间的浪费。另一个解决缓存穿透的办法是使用布隆过滤器,具体的做法大家可以自行了解。
+
+#### 缓存击穿
+
+在实际的项目中,可能存在某个缓存的key某个时间点过期,但恰好在这个时间点对有对该key的大量的并发请求过来,这些请求没有从缓存中找到key对应的数据,就会直接从数据库中获取数据并写回到缓存,这个时候大并发的请求可能会瞬间把数据库压垮,这种现象称为缓存击穿。比较常见的解决缓存击穿的办法是使用互斥锁,简单的说就是在缓存失效的时候,不是立即去数据库加载数据,而是先设置互斥锁(例如:Redis中的setnx),只有设置互斥锁的操作成功的请求,才能执行查询从数据库中加载数据并写入缓存,其他设置互斥锁失败的请求,可以先执行一个短暂的休眠,然后尝试重新从缓存中获取数据,如果缓存还没有数据,则重复刚才的设置互斥锁的操作,大致的参考代码如下所示。
+
+```Python
+data = redis_cli.get(key)
+while not data:
+ if redis_cli.setnx('mutex', 'x'):
+ redis.expire('mutex', timeout)
+ data = db.query(...)
+ redis.set(key, data)
+ redis.delete('mutex')
+ else:
+ time.sleep(0.1)
+ data = redis_cli.get(key)
+```
+
+#### 缓存雪崩
+
+缓存雪崩是指在将数据放入缓存时采用了相同的过期时间,这样就导致缓存在某一时刻同时失效,请求全部转发到数据库,导致数据库瞬时压力过大而崩溃。解决缓存雪崩问题的方法也比较简单,可以在既定的缓存过期时间上加一个随机时间,这样可以从一定程度上避免不同的key在同一时间集体失效。还有一种办法就是使用多级缓存,每一级缓存的过期时间都不一样,这样的话即便某个级别的缓存集体失效,但是其他级别的缓存还能够提供数据,避免所有的请求都落到数据库上。
\ No newline at end of file
diff --git a/Day41-55/52.接入三方平台.md b/Day41-55/52.接入三方平台.md
new file mode 100644
index 0000000..b6094cf
--- /dev/null
+++ b/Day41-55/52.接入三方平台.md
@@ -0,0 +1,201 @@
+## 接入三方平台
+
+在Web应用的开发过程中,有一些任务并不是我们自己能够完成的。例如,我们的Web项目中需要做个人或企业的实名认证,很显然我们并没有能力判断用户提供的认证信息的真实性,这个时候我们就要借助三方平台提供的服务来完成该项操作。再比如说,我们的项目中需要提供在线支付功能,这类业务通常也是借助支付网关来完成而不是自己去实现,我们只需要接入像微信、支付宝、银联这样的三方平台即可。
+
+在项目中接入三方平台基本上就两种方式:API接入和SDK接入。
+
+1. API接入指的是通过访问三方提供的URL来完成操作或获取数据。国内有很多这样的平台提供了大量常用的服务,例如[聚合数据](https://www.juhe.cn/)上提供了生活服务类、金融科技类、交通地理类、充值缴费类等各种类型的API。我们可以通过Python程序发起网络请求,通过访问URL获取数据,这些API接口跟我们项目中提供的数据接口是一样的,只不过我们项目中的API是供自己使用的,而这类三方平台提供的API是开放的。当然开放并不代表免费,大多数能够提供有商业价值的数据的API都是需要付费才能使用的。
+2. SDK接入指的是通过安装三方库并使用三方库封装的类、函数来使用三方平台提供的服务的方式。例如我们刚才说到的接入支付宝,就需要先安装支付宝的SDK,然后通过支付宝封装的类和方法完成对支付服务的调用。
+
+下面我们通过具体的例子来讲解如何接入三方平台。
+
+### 接入短信网关
+
+一个Web项目有很多地方都可以用到短信服务,例如:手机验证码登录、重要消息提醒、产品营销短信等。要实现发送短信的功能,可以通过接入短信网关来实现,国内比较有名的短信网关包括:云片短信、网易云信、螺丝帽、SendCloud等,这些短信网关一般都提供了免费试用功能。下面我们以[螺丝帽](https://luosimao.com/)平台为例,讲解如何在项目中接入短信网关,其他平台操作基本类似。
+
+1. 注册账号,新用户可以免费试用。
+
+2. 登录到管理后台,进入短信版块。
+
+3. 点击“触发发送”可以找到自己专属的API Key(身份标识)。
+
+ 
+
+4. 点击“签名管理”可以添加短信签名,短信都必须携带签名,免费试用的短信要在短信中添加“【铁壳测试】”这个签名,否则短信无法发送。
+
+ 
+
+5. 点击“IP白名单”将运行Django项目的服务器地址(公网IP地址,本地运行可以打开[xxx]()网站查看自己本机的公网IP地址)填写到白名单中,否则短信无法发送。
+
+ 
+
+6. 如果没有剩余的短信条数,可以到“充值”页面选择“短信服务”进行充值。
+
+ 
+
+接下来,我们可以通过调用螺丝帽短信网关实现发送短信验证码的功能,代码如下所示。
+
+```Python
+def send_mobile_code(tel, code):
+ """发送短信验证码"""
+ resp = requests.post(
+ url='http://sms-api.luosimao.com/v1/send.json',
+ auth=('api', 'key-自己的APIKey'),
+ data={
+ 'mobile': tel,
+ 'message': f'您的短信验证码是{code},打死也不能告诉别人哟。【Python小课】'
+ },
+ verify=False
+ )
+ return resp.json()
+```
+
+运行上面的代码需要先安装`requests`三方库,这个三方库封装了HTTP网络请求的相关功能,使用起来非常的简单,我们在之前的内容中也讲到过这个三方库。`send_mobile_code`函数有两个参数,第一个参数是手机号,第二个参数是短信验证码的内容,第5行代码需要提供自己的API Key,就是上面第2步中查看到的自己的API Key。请求螺丝帽的短信网关会返回JSON格式的数据,对于上面的代码如果返回`{'err': 0, 'msg': 'ok'}`,则表示短信发送成功,如果`err`字段的值不为`0`而是其他值,则表示短信发送失败,可以在螺丝帽官方的[开发文档](https://luosimao.com/docs/api/)页面上查看到不同的数值代表的含义,例如:`-20`表示余额不足,`-32`表示缺少短信签名。
+
+可以在视图函数中调用上面的函数来完成发送短信验证码的功能,稍后我们可以把这个功能跟用户注册结合起来。
+
+生成随机验证码和验证手机号的函数。
+
+```Python
+import random
+import re
+
+TEL_PATTERN = re.compile(r'1[3-9]\d{9}')
+
+
+def check_tel(tel):
+ """检查手机号"""
+ return TEL_PATTERN.fullmatch(tel) is not None
+
+
+def random_code(length=6):
+ """生成随机短信验证码"""
+ return ''.join(random.choices('0123456789', k=length))
+```
+
+发送短信验证码的视图函数。
+
+```Python
+@api_view(('GET', ))
+def get_mobilecode(request, tel):
+ """获取短信验证码"""
+ if check_tel(tel):
+ redis_cli = get_redis_connection()
+ if redis_cli.exists(f'vote:block-mobile:{tel}'):
+ data = {'code': 30001, 'message': '请不要在60秒内重复发送短信验证码'}
+ else:
+ code = random_code()
+ send_mobile_code(tel, code)
+ # 通过Redis阻止60秒内容重复发送短信验证码
+ redis_cli.set(f'vote:block-mobile:{tel}', 'x', ex=60)
+ # 将验证码在Redis中保留10分钟(有效期10分钟)
+ redis_cli.set(f'vote2:valid-mobile:{tel}', code, ex=600)
+ data = {'code': 30000, 'message': '短信验证码已发送,请注意查收'}
+ else:
+ data = {'code': 30002, 'message': '请输入有效的手机号'}
+ return Response(data)
+```
+
+> **说明**:上面的代码利用Redis实现了两个额外的功能,一个是阻止用户60秒内重复发送短信验证码,一个是将用户的短信验证码保留10分钟,也就是说这个短信验证码的有效期只有10分钟,我们可以要求用户在注册时提供该验证码来验证用户手机号的真实性。
+
+### 接入云存储服务
+
+当我们提到**云存储**这个词的时候,通常是指把数据存放在由第三方提供的虚拟服务器环境下,简单的说就是将某些数据或资源通过第三平台托管。一般情况下,提供云存储服务的公司都运营着大型的数据中心,需要云存储服务的个人或组织通过向其购买或租赁存储空间来满足数据存储的需求。在开发Web应用时,可以将静态资源,尤其是用户上传的静态资源直接置于云存储服务中,云存储通常会提供对应的URL使得用户可以访问该静态资源。国内外比较有名的云存储服务(如:亚马逊的S3、阿里的OSS2等)一般都物美价廉,相比自己架设静态资源服务器,云存储的代价更小,而且一般的云存储平台都提供了CDN服务,用于加速对静态资源的访问,所以不管从哪个角度出发,使用云存储的方式管理Web应用的数据和静态资源都是非常好的选择,除非这些资源涉及到个人或商业隐私,否则就可以托管到云存储中。
+
+下面我们以接入[七牛云](https://www.qiniu.com/)为例,讲解如何实现将用户上传的文件保存到七牛云存储。七牛云是国内知名的云计算及数据服务提供商,七牛云在海量文件存储、CDN、视频点播、互动直播以及大规模异构数据的智能分析与处理等领域都有自己的产品,而且非付费用户也可以免费接入,使用其提供的服务。下面是接入七牛云的流程:
+
+1. 注册账号,登录管理控制台。
+
+ 
+
+2. 选择左侧菜单中的对象存储。
+
+ 
+
+3. 在空间管理中选择新建空间(例如:myvote),如果提示空间名称已被占用,更换一个再尝试即可。注意,创建空间后会提示绑定自定义域名,如果暂时还没有自己的域名,可以使用七牛云提供的临时域名,但是临时域名会在30天后被回收,所以最好准备自己的域名(域名需要备案,不清楚如何操作的请自行查阅相关资料)。
+
+ 
+
+4. 在网页的右上角点击个人头像中的“密钥管理”,查看自己的密钥,稍后在代码中需要使用AK(AccessKey)和SK(SecretKey)两个密钥来认证用户身份。
+
+ 
+
+5. 点击网页上方菜单中的“文档”,进入到[七牛开发者中心](https://developer.qiniu.com/),选择导航菜单中的“SDK&工具”并点击“官方SDK”子菜单,找到Python(服务端)并点击“文档”查看官方文档。
+
+ 
+
+接下来,只要安装官方文档提供的示例,就可以接入七牛云,使用七牛云提供的云存储以及其他服务。首先可以通过下面的命令安装七牛云的三方库。
+
+```Bash
+pip install qiniu
+```
+
+接下来可以通过`qiniu`模块中的`put_file`和`put_stream`两个函数实现文件上传,前者可以上传指定路径的文件,后者可以将内存中的二进制数据上传至七牛云,具体的代码如下所示。
+
+```Python
+import qiniu
+
+AUTH = qiniu.Auth('密钥管理中的AccessKey', '密钥管理中的SecretKey')
+BUCKET_NAME = 'myvote'
+
+
+def upload_file_to_qiniu(key, file_path):
+ """上传指定路径的文件到七牛云"""
+ token = AUTH.upload_token(BUCKET_NAME, key)
+ return qiniu.put_file(token, key, file_path)
+
+
+def upload_stream_to_qiniu(key, stream, size):
+ """上传二进制数据流到七牛云"""
+ token = AUTH.upload_token(BUCKET_NAME, key)
+ return qiniu.put_stream(token, key, stream, None, size)
+```
+
+下面是一个文件上传的简单前端页。
+
+```HTML
+
+
+
+
+ 上传文件
+
+
+
+
+
+```
+
+> **说明**:前端如果使用表单实现文件上传,表单的method属性必须设置为post,enctype属性需要设置为multipart/form-data,表单中type属性为file的input标签,就是上传文件的文件选择器。
+
+实现上传功能的视图函数如下所示。
+
+```Python
+from django.views.decorators.csrf import csrf_exempt
+
+
+@csrf_exempt
+def upload(request):
+ # 如果上传的文件小于2.5M,则photo对象的类型为InMemoryUploadedFile,文件在内存中
+ # 如果上传的文件超过2.5M,则photo对象的类型为TemporaryUploadedFile,文件在临时路径下
+ photo = request.FILES.get('photo')
+ _, ext = os.path.splitext(photo.name)
+ # 通过UUID和原来文件的扩展名生成独一无二的新的文件名
+ filename = f'{uuid.uuid1().hex}{ext}'
+ # 对于内存中的文件,可以使用上面封装好的函数upload_stream_to_qiniu上传文件到七牛云
+ # 如果文件保存在临时路径下,可以使用upload_file_to_qiniu实现文件上传
+ upload_stream_to_qiniu(filename, photo.file, photo.size)
+ return redirect('/static/html/upload.html')
+```
+
+> **注意**:上面的视图函数使用了`csrf_exempt`装饰器,该装饰器能够让表单免除必须提供CSRF令牌的要求。此外,代码第11行使用了`uuid`模块的`uuid1`函数来生成全局唯一标识符。
+
+运行项目尝试文件上传的功能,文件上传成功后,可以在七牛云“空间管理”中点击自己空间并进入“文件管理”界面,在这里可以看到我们刚才上传成功的文件,而且可以通过七牛云提供的域名获取该文件。
+
+
+
diff --git a/Day41-55/52.文件上传.md b/Day41-55/52.文件上传.md
deleted file mode 100644
index 719c9ff..0000000
--- a/Day41-55/52.文件上传.md
+++ /dev/null
@@ -1,4 +0,0 @@
-## 文件上传
-
-
-
diff --git a/Day41-55/53.异步任务和定时任务.md b/Day41-55/53.异步任务和定时任务.md
index 6c69e70..61e320b 100644
--- a/Day41-55/53.异步任务和定时任务.md
+++ b/Day41-55/53.异步任务和定时任务.md
@@ -1,6 +1,14 @@
## 异步任务和定时任务
+在Web应用中,如果一个请求执行了耗时间的操作或者该请求的执行时间无法确定,而且对于用户来说只需要知道服务器接收了他的请求,并不需要马上得到请求的执行结果,这样的操作我们就应该对其进行异步化处理。如果说**使用缓存是优化网站性能的第一要义**,那么将耗时间或执行时间不确定的任务**异步化则是网站性能优化的第二要义**,简单的说就是**能推迟做的事情都不要马上做**。
+
+上一章节中讲到的发短信和上传文件到云存储为例,这两个操作前者属于时间不确定的操作(因为作为调用者,我们不能确定三方平台响应的时间),后者属于耗时间的操作(如果文件较大或者三方平台不稳定,都可能导致上传的时间较长),很显然,这两个操作都可以做异步化处理。
+
+在Python项目中实现异步化处理可以使用多线程或借助三方库Celery来完成。
+
+### 使用Celery实现异步化
-
+
+### 使用多线程实现异步化
diff --git a/Day41-55/54.单元测试.md b/Day41-55/54.单元测试.md
index 7793bc1..d86a111 100644
--- a/Day41-55/54.单元测试.md
+++ b/Day41-55/54.单元测试.md
@@ -1,3 +1,4 @@
-## 单元测试和项目上线
+## 单元测试
+Python标准库中提供了名为`unittest` 的模块来支持我们对代码进行单元测试。所谓单元测试是指针对程序中最小的功能单元(在Python中指函数或类中的方法)进行的测试。
diff --git a/Day41-55/55.项目上线.md b/Day41-55/55.项目上线.md
index 8f7d06e..eac5b54 100644
--- a/Day41-55/55.项目上线.md
+++ b/Day41-55/55.项目上线.md
@@ -1,12 +1,4 @@
## 项目上线
-### 上线前的检查工作
-
-### 同步代码到云服务器
-
-### WSGI服务器的应用
-
-### Nginx的相关配置
-
-
+请各位读者移步到[《项目部署上线和性能调优》](../Day91-100/98.项目部署上线和性能调优.md)一文。
diff --git a/Day41-55/res/asynchronous-web-request.png b/Day41-55/res/asynchronous-web-request.png
index 3f8c2f6..41bf070 100644
Binary files a/Day41-55/res/asynchronous-web-request.png and b/Day41-55/res/asynchronous-web-request.png differ
diff --git a/Day41-55/res/csrf-simple.png b/Day41-55/res/csrf-simple.png
index 067ccd4..9ffae31 100644
Binary files a/Day41-55/res/csrf-simple.png and b/Day41-55/res/csrf-simple.png differ
diff --git a/Day41-55/res/debug-toolbar.png b/Day41-55/res/debug-toolbar.png
index 5d997e4..ffc1b15 100644
Binary files a/Day41-55/res/debug-toolbar.png and b/Day41-55/res/debug-toolbar.png differ
diff --git a/Day41-55/res/django-admin-add-model.png b/Day41-55/res/django-admin-add-model.png
index 58397ac..a38f2f2 100644
Binary files a/Day41-55/res/django-admin-add-model.png and b/Day41-55/res/django-admin-add-model.png differ
diff --git a/Day41-55/res/django-admin-apps.png b/Day41-55/res/django-admin-apps.png
index d4cd2ae..26f6614 100644
Binary files a/Day41-55/res/django-admin-apps.png and b/Day41-55/res/django-admin-apps.png differ
diff --git a/Day41-55/res/django-admin-delete-update-model.png b/Day41-55/res/django-admin-delete-update-model.png
index 1cc2d4e..ee5605a 100644
Binary files a/Day41-55/res/django-admin-delete-update-model.png and b/Day41-55/res/django-admin-delete-update-model.png differ
diff --git a/Day41-55/res/django-admin-login.png b/Day41-55/res/django-admin-login.png
index dfce471..7a172d7 100644
Binary files a/Day41-55/res/django-admin-login.png and b/Day41-55/res/django-admin-login.png differ
diff --git a/Day41-55/res/django-admin-models.png b/Day41-55/res/django-admin-models.png
index aa9c218..9ff5486 100644
Binary files a/Day41-55/res/django-admin-models.png and b/Day41-55/res/django-admin-models.png differ
diff --git a/Day41-55/res/django-admin-view-models-subject.png b/Day41-55/res/django-admin-view-models-subject.png
index e762e19..acbaf9d 100644
Binary files a/Day41-55/res/django-admin-view-models-subject.png and b/Day41-55/res/django-admin-view-models-subject.png differ
diff --git a/Day41-55/res/django-admin-view-models-teacher.png b/Day41-55/res/django-admin-view-models-teacher.png
index a27805c..3036e41 100644
Binary files a/Day41-55/res/django-admin-view-models-teacher.png and b/Day41-55/res/django-admin-view-models-teacher.png differ
diff --git a/Day41-55/res/django-admin-view-models.png b/Day41-55/res/django-admin-view-models.png
index d9c10f9..e27dce3 100644
Binary files a/Day41-55/res/django-admin-view-models.png and b/Day41-55/res/django-admin-view-models.png differ
diff --git a/Day41-55/res/django-middleware.png b/Day41-55/res/django-middleware.png
index 9e96567..ab77a5d 100644
Binary files a/Day41-55/res/django-middleware.png and b/Day41-55/res/django-middleware.png differ
diff --git a/Day41-55/res/drf-app.png b/Day41-55/res/drf-app.png
index bdef171..c60ed38 100644
Binary files a/Day41-55/res/drf-app.png and b/Day41-55/res/drf-app.png differ
diff --git a/Day41-55/res/json-web-token.png b/Day41-55/res/json-web-token.png
index 1070ecc..9af29ba 100644
Binary files a/Day41-55/res/json-web-token.png and b/Day41-55/res/json-web-token.png differ
diff --git a/Day41-55/res/luosimao-pay-onlinebuy.png b/Day41-55/res/luosimao-pay-onlinebuy.png
new file mode 100644
index 0000000..a8c69b9
Binary files /dev/null and b/Day41-55/res/luosimao-pay-onlinebuy.png differ
diff --git a/Day41-55/res/luosimao-sms-apikey.png b/Day41-55/res/luosimao-sms-apikey.png
new file mode 100644
index 0000000..251ba93
Binary files /dev/null and b/Day41-55/res/luosimao-sms-apikey.png differ
diff --git a/Day41-55/res/luosimao-sms-signature.png b/Day41-55/res/luosimao-sms-signature.png
new file mode 100644
index 0000000..7fd2617
Binary files /dev/null and b/Day41-55/res/luosimao-sms-signature.png differ
diff --git a/Day41-55/res/luosimao-sms-whitelist.png b/Day41-55/res/luosimao-sms-whitelist.png
new file mode 100644
index 0000000..6f67168
Binary files /dev/null and b/Day41-55/res/luosimao-sms-whitelist.png differ
diff --git a/Day41-55/res/mvc.png b/Day41-55/res/mvc.png
index b12ee5a..0481ccb 100644
Binary files a/Day41-55/res/mvc.png and b/Day41-55/res/mvc.png differ
diff --git a/Day41-55/res/pycharm-django-project.png b/Day41-55/res/pycharm-django-project.png
index 775b655..233b350 100644
Binary files a/Day41-55/res/pycharm-django-project.png and b/Day41-55/res/pycharm-django-project.png differ
diff --git a/Day41-55/res/pycharm-django-server.png b/Day41-55/res/pycharm-django-server.png
index e8e17fa..a6d0fae 100644
Binary files a/Day41-55/res/pycharm-django-server.png and b/Day41-55/res/pycharm-django-server.png differ
diff --git a/Day41-55/res/pycharm-django-static.png b/Day41-55/res/pycharm-django-static.png
index dab7184..a96a646 100644
Binary files a/Day41-55/res/pycharm-django-static.png and b/Day41-55/res/pycharm-django-static.png differ
diff --git a/Day41-55/res/pycharm-django-template.png b/Day41-55/res/pycharm-django-template.png
index 290b141..7242df8 100644
Binary files a/Day41-55/res/pycharm-django-template.png and b/Day41-55/res/pycharm-django-template.png differ
diff --git a/Day41-55/res/pycharm-django-virtual-environment.png b/Day41-55/res/pycharm-django-virtual-environment.png
index 41b4331..2c4c8f7 100644
Binary files a/Day41-55/res/pycharm-django-virtual-environment.png and b/Day41-55/res/pycharm-django-virtual-environment.png differ
diff --git a/Day41-55/res/pycharm-install-django.png b/Day41-55/res/pycharm-install-django.png
index 833e539..11d1eaf 100644
Binary files a/Day41-55/res/pycharm-install-django.png and b/Day41-55/res/pycharm-install-django.png differ
diff --git a/Day41-55/res/pycharm-python-manage.png b/Day41-55/res/pycharm-python-manage.png
index c2430e6..ed1b614 100644
Binary files a/Day41-55/res/pycharm-python-manage.png and b/Day41-55/res/pycharm-python-manage.png differ
diff --git a/Day41-55/res/pycharm-vote-project.png b/Day41-55/res/pycharm-vote-project.png
index 13db91a..1a6eaf4 100644
Binary files a/Day41-55/res/pycharm-vote-project.png and b/Day41-55/res/pycharm-vote-project.png differ
diff --git a/Day41-55/res/qiniu-document-python.png b/Day41-55/res/qiniu-document-python.png
new file mode 100644
index 0000000..1b2853e
Binary files /dev/null and b/Day41-55/res/qiniu-document-python.png differ
diff --git a/Day41-55/res/qiniu-file-management.png b/Day41-55/res/qiniu-file-management.png
new file mode 100644
index 0000000..a56244a
Binary files /dev/null and b/Day41-55/res/qiniu-file-management.png differ
diff --git a/Day41-55/res/qiniu-manage-console.png b/Day41-55/res/qiniu-manage-console.png
new file mode 100644
index 0000000..ef69a3e
Binary files /dev/null and b/Day41-55/res/qiniu-manage-console.png differ
diff --git a/Day41-55/res/qiniu-secretkey-management.png b/Day41-55/res/qiniu-secretkey-management.png
new file mode 100644
index 0000000..dc6c006
Binary files /dev/null and b/Day41-55/res/qiniu-secretkey-management.png differ
diff --git a/Day41-55/res/qiniu-storage-create.png b/Day41-55/res/qiniu-storage-create.png
new file mode 100644
index 0000000..6ec4205
Binary files /dev/null and b/Day41-55/res/qiniu-storage-create.png differ
diff --git a/Day41-55/res/qiniu-storage-service.png b/Day41-55/res/qiniu-storage-service.png
new file mode 100644
index 0000000..fbf4c8c
Binary files /dev/null and b/Day41-55/res/qiniu-storage-service.png differ
diff --git a/Day41-55/res/redis-cache-service.png b/Day41-55/res/redis-cache-service.png
new file mode 100644
index 0000000..06a618e
Binary files /dev/null and b/Day41-55/res/redis-cache-service.png differ
diff --git a/Day41-55/res/synchronous-web-request.png b/Day41-55/res/synchronous-web-request.png
index 7c1c0e5..1f5661b 100644
Binary files a/Day41-55/res/synchronous-web-request.png and b/Day41-55/res/synchronous-web-request.png differ
diff --git a/Day61-65/.gitkeep b/Day61-65/.gitkeep
deleted file mode 100644
index e69de29..0000000
diff --git a/Day66-75/66.网络爬虫和相关工具.md b/Day61-65/61.网络爬虫和相关工具.md
similarity index 100%
rename from Day66-75/66.网络爬虫和相关工具.md
rename to Day61-65/61.网络爬虫和相关工具.md
diff --git a/Day61-65/61.预备知识.md b/Day61-65/61.预备知识.md
deleted file mode 100644
index 4a95122..0000000
--- a/Day61-65/61.预备知识.md
+++ /dev/null
@@ -1,140 +0,0 @@
-## 预备知识
-
-### 并发编程
-
-所谓并发编程就是让程序中有多个部分能够并发或同时执行,并发编程带来的好处不言而喻,其中最为关键的两点是提升了执行效率和改善了用户体验。下面简单阐述一下Python中实现并发编程的三种方式:
-
-1. 多线程:Python中通过`threading`模块的`Thread`类并辅以`Lock`、`Condition`、`Event`、`Semaphore`和`Barrier`等类来支持多线程编程。Python解释器通过GIL(全局解释器锁)来防止多个线程同时执行本地字节码,这个锁对于CPython(Python解释器的官方实现)是必须的,因为CPython的内存管理并不是线程安全的。因为GIL的存在,Python的多线程并不能利用CPU的多核特性。
-
-2. 多进程:使用多进程可以有效的解决GIL的问题,Python中的`multiprocessing`模块提供了`Process`类来实现多进程,其他的辅助类跟`threading`模块中的类类似,由于进程间的内存是相互隔离的(操作系统对进程的保护),进程间通信(共享数据)必须使用管道、套接字等方式,这一点从编程的角度来讲是比较麻烦的,为此,Python的`multiprocessing`模块提供了一个名为`Queue`的类,它基于管道和锁机制提供了多个进程共享的队列。
-
- ```Python
- """
- 用下面的命令运行程序并查看执行时间,例如:
- time python3 example06.py
- real 0m20.657s
- user 1m17.749s
- sys 0m0.158s
- 使用多进程后实际执行时间为20.657秒,而用户时间1分17.749秒约为实际执行时间的4倍
- 这就证明我们的程序通过多进程使用了CPU的多核特性,而且这台计算机配置了4核的CPU
- """
- import concurrent.futures
- import math
-
- PRIMES = [
- 1116281,
- 1297337,
- 104395303,
- 472882027,
- 533000389,
- 817504243,
- 982451653,
- 112272535095293,
- 112582705942171,
- 112272535095293,
- 115280095190773,
- 115797848077099,
- 1099726899285419
- ] * 5
-
-
- def is_prime(num):
- """判断素数"""
- assert num > 0
- for i in range(2, int(math.sqrt(num)) + 1):
- if num % i == 0:
- return False
- return num != 1
-
-
- def main():
- """主函数"""
- with concurrent.futures.ProcessPoolExecutor() as executor:
- for number, prime in zip(PRIMES, executor.map(is_prime, PRIMES)):
- print('%d is prime: %s' % (number, prime))
-
-
- if __name__ == '__main__':
- main()
- ```
-
-3. 异步编程(异步I/O):所谓异步编程是通过调度程序从任务队列中挑选任务,调度程序以交叉的形式执行这些任务,我们并不能保证任务将以某种顺序去执行,因为执行顺序取决于队列中的一项任务是否愿意将CPU处理时间让位给另一项任务。异步编程通常通过多任务协作处理的方式来实现,由于执行时间和顺序的不确定,因此需要通过钩子函数(回调函数)或者`Future`对象来获取任务执行的结果。目前我们使用的Python 3通过`asyncio`模块以及`await`和`async`关键字(Python 3.5中引入,Python 3.7中正式成为关键字)提供了对异步I/O的支持。
-
- ```Python
- import asyncio
-
-
- async def fetch(host):
- """从指定的站点抓取信息(协程函数)"""
- print(f'Start fetching {host}\n')
- # 跟服务器建立连接
- reader, writer = await asyncio.open_connection(host, 80)
- # 构造请求行和请求头
- writer.write(b'GET / HTTP/1.1\r\n')
- writer.write(f'Host: {host}\r\n'.encode())
- writer.write(b'\r\n')
- # 清空缓存区(发送请求)
- await writer.drain()
- # 接收服务器的响应(读取响应行和响应头)
- line = await reader.readline()
- while line != b'\r\n':
- print(line.decode().rstrip())
- line = await reader.readline()
- print('\n')
- writer.close()
-
-
- def main():
- """主函数"""
- urls = ('www.sohu.com', 'www.douban.com', 'www.163.com')
- # 获取系统默认的事件循环
- loop = asyncio.get_event_loop()
- # 用生成式语法构造一个包含多个协程对象的列表
- tasks = [fetch(url) for url in urls]
- # 通过asyncio模块的wait函数将协程列表包装成Task(Future子类)并等待其执行完成
- # 通过事件循环的run_until_complete方法运行任务直到Future完成并返回它的结果
- loop.run_until_complete(asyncio.wait(tasks))
- loop.close()
-
-
- if __name__ == '__main__':
- main()
- ```
-
- > 说明:目前大多数网站都要求基于HTTPS通信,因此上面例子中的网络请求不一定能收到正常的响应,也就是说响应状态码不一定是200,有可能是3xx或者4xx。当然我们这里的重点不在于获得网站响应的内容,而是帮助大家理解`asyncio`模块以及`async`和`await`两个关键字的使用。
-
-我们对三种方式的使用场景做一个简单的总结。
-
-以下情况需要使用多线程:
-
-1. 程序需要维护许多共享的状态(尤其是可变状态),Python中的列表、字典、集合都是线程安全的,所以使用线程而不是进程维护共享状态的代价相对较小。
-2. 程序会花费大量时间在I/O操作上,没有太多并行计算的需求且不需占用太多的内存。
-
-以下情况需要使用多进程:
-
-1. 程序执行计算密集型任务(如:字节码操作、数据处理、科学计算)。
-2. 程序的输入可以并行的分成块,并且可以将运算结果合并。
-3. 程序在内存使用方面没有任何限制且不强依赖于I/O操作(如:读写文件、套接字等)。
-
-最后,如果程序不需要真正的并发性或并行性,而是更多的依赖于异步处理和回调时,异步I/O就是一种很好的选择。另一方面,当程序中有大量的等待与休眠时,也应该考虑使用异步I/O。
-
-> 扩展:关于进程,还需要做一些补充说明。首先,为了控制进程的执行,操作系统内核必须有能力挂起正在CPU上运行的进程,并恢复以前挂起的某个进程使之继续执行,这种行为被称为进程切换(也叫调度)。进程切换是比较耗费资源的操作,因为在进行切换时首先要保存当前进程的上下文(内核再次唤醒该进程时所需要的状态,包括:程序计数器、状态寄存器、数据栈等),然后还要恢复准备执行的进程的上下文。正在执行的进程由于期待的某些事件未发生,如请求系统资源失败、等待某个操作完成、新数据尚未到达等原因会主动由运行状态变为阻塞状态,当进程进入阻塞状态,是不占用CPU资源的。这些知识对于理解到底选择哪种方式进行并发编程也是很重要的。
-
-### I/O模式和事件驱动
-
-对于一次I/O操作(以读操作为例),数据会先被拷贝到操作系统内核的缓冲区中,然后从操作系统内核的缓冲区拷贝到应用程序的缓冲区(这种方式称为标准I/O或缓存I/O,大多数文件系统的默认I/O都是这种方式),最后交给进程。所以说,当一个读操作发生时(写操作与之类似),它会经历两个阶段:(1)等待数据准备就绪;(2)将数据从内核拷贝到进程中。
-
-由于存在这两个阶段,因此产生了以下几种I/O模式:
-
-1. 阻塞 I/O(blocking I/O):进程发起读操作,如果内核数据尚未就绪,进程会阻塞等待数据直到内核数据就绪并拷贝到进程的内存中。
-2. 非阻塞 I/O(non-blocking I/O):进程发起读操作,如果内核数据尚未就绪,进程不阻塞而是收到内核返回的错误信息,进程收到错误信息可以再次发起读操作,一旦内核数据准备就绪,就立即将数据拷贝到了用户内存中,然后返回。
-3. 多路I/O复用( I/O multiplexing):监听多个I/O对象,当I/O对象有变化(数据就绪)的时候就通知用户进程。多路I/O复用的优势并不在于单个I/O操作能处理得更快,而是在于能处理更多的I/O操作。
-4. 异步 I/O(asynchronous I/O):进程发起读操作后就可以去做别的事情了,内核收到异步读操作后会立即返回,所以用户进程不阻塞,当内核数据准备就绪时,内核发送一个信号给用户进程,告诉它读操作完成了。
-
-通常,我们编写一个处理用户请求的服务器程序时,有以下三种方式可供选择:
-
-1. 每收到一个请求,创建一个新的进程,来处理该请求;
-2. 每收到一个请求,创建一个新的线程,来处理该请求;
-3. 每收到一个请求,放入一个事件列表,让主进程通过非阻塞I/O方式来处理请求
-
-第1种方式实现比较简单,但由于创建进程开销比较大,会导致服务器性能比较差;第2种方式,由于要涉及到线程的同步,有可能会面临竞争、死锁等问题;第3种方式,就是所谓事件驱动的方式,它利用了多路I/O复用和异步I/O的优点,虽然代码逻辑比前面两种都复杂,但能达到最好的性能,这也是目前大多数网络服务器采用的方式。
diff --git a/Day61-65/62.Tornado入门.md b/Day61-65/62.Tornado入门.md
deleted file mode 100644
index e1249f8..0000000
--- a/Day61-65/62.Tornado入门.md
+++ /dev/null
@@ -1,377 +0,0 @@
-## Tornado入门
-
-### Tornado概述
-
-Python的Web框架种类繁多(比Python语言的关键字还要多),但在众多优秀的Web框架中,Tornado框架最适合用来开发需要处理长连接和应对高并发的Web应用。Tornado框架在设计之初就考虑到性能问题,通过对非阻塞I/O和epoll(Linux 2.5.44内核引入的一种多路I/O复用方式,旨在实现高性能网络服务,在BSD和macOS中是kqueue)的运用,Tornado可以处理大量的并发连接,更轻松的应对C10K(万级并发)问题,是非常理想的实时通信Web框架。
-
-> 扩展:基于线程的Web服务器产品(如:Apache)会维护一个线程池来处理用户请求,当用户请求到达时就为该请求分配一个线程,如果线程池中没有空闲线程了,那么可以通过创建新的线程来应付新的请求,但前提是系统尚有空闲的内存空间,显然这种方式很容易将服务器的空闲内存耗尽(大多数Linux发行版本中,默认的线程栈大小为8M)。想象一下,如果我们要开发一个社交类应用,这类应用中,通常需要显示实时更新的消息、对象状态的变化和各种类型的通知,那也就意味着客户端需要保持请求连接来接收服务器的各种响应,在这种情况下,服务器上的工作线程很容易被耗尽,这也就意味着新的请求很有可能无法得到响应。
-
-Tornado框架源于FriendFeed网站,在FriendFeed网站被Facebook收购之后得以开源,正式发布的日期是2009年9月10日。Tornado能让你能够快速开发高速的Web应用,如果你想编写一个可扩展的社交应用、实时分析引擎,或RESTful API,那么Tornado框架就是很好的选择。Tornado其实不仅仅是一个Web开发的框架,它还是一个高性能的事件驱动网络访问引擎,内置了高性能的HTTP服务器和客户端(支持同步和异步请求),同时还对WebSocket提供了完美的支持。
-
-了解和学习Tornado最好的资料就是它的官方文档,在[tornadoweb.org](http://www.tornadoweb.org)上面有很多不错的例子,你也可以在Github上找到Tornado的源代码和历史版本。
-
-### 5分钟上手Tornado
-
-1. 创建并激活虚拟环境。
-
- ```Shell
- mkdir hello-tornado
- cd hello-tornado
- python3 -m venv venv
- source venv/bin/activate
- ```
-
-2. 安装Tornado。
-
- ```Shell
- pip install tornado
- ```
-
-3. 编写Web应用。
-
- ```Python
- """
- example01.py
- """
- import tornado.ioloop
- import tornado.web
-
-
- class MainHandler(tornado.web.RequestHandler):
-
- def get(self):
- self.write('Hello, world! ')
-
-
- def main():
- app = tornado.web.Application(handlers=[(r'/', MainHandler), ])
- app.listen(8888)
- tornado.ioloop.IOLoop.current().start()
-
-
- if __name__ == '__main__':
- main()
- ```
-
-4. 运行并访问应用。
-
- ```Shell
- python example01.py
- ```
-
- 
-
-在上面的例子中,代码example01.py通过定义一个继承自`RequestHandler`的类(`MainHandler`)来处理用户请求,当请求到达时,Tornado会实例化这个类(创建`MainHandler`对象),并调用与HTTP请求方法(GET、POST等)对应的方法,显然上面的`MainHandler`只能处理GET请求,在收到GET请求时,它会将一段HTML的内容写入到HTTP响应中。`main`函数的第1行代码创建了Tornado框架中`Application`类的实例,它代表了我们的Web应用,而创建该实例最为重要的参数就是`handlers`,该参数告知`Application`对象,当收到一个请求时应该通过哪个类的对象来处理这个请求。在上面的例子中,当通过HTTP的GET请求访问站点根路径时,就会调用`MainHandler`的`get`方法。 `main`函数的第2行代码通过`Application`对象的`listen`方法指定了监听HTTP请求的端口。`main`函数的第3行代码用于获取Tornado框架的`IOLoop`实例并启动它,该实例代表一个条件触发的I/O循环,用于持续的接收来自于客户端的请求。
-
-> 扩展:在Python 3中,`IOLoop`实例的本质就是`asyncio`的事件循环,该事件循环在非Windows系统中就是`SelectorEventLoop`对象,它基于`selectors`模块(高级I/O复用模块),会使用当前操作系统最高效的I/O复用选择器,例如在Linux环境下它使用`EpollSelector`,而在macOS和BSD环境下它使用的是`KqueueSelector`;在Python 2中,`IOLoop`直接使用`select`模块(低级I/O复用模块)的`epoll`或`kqueue`函数,如果这两种方式都不可用,则调用`select`函数实现多路I/O复用。当然,如果要支持高并发,你的系统最好能够支持epoll或者kqueue这两种多路I/O复用方式中的一种。
-
-如果希望通过命令行参数来指定Web应用的监听端口,可以对上面的代码稍作修改。
-
-```Python
-"""
-example01.py
-"""
-import tornado.ioloop
-import tornado.web
-
-from tornado.options import define, options, parse_command_line
-
-
-# 定义默认端口
-define('port', default=8000, type=int)
-
-
-class MainHandler(tornado.web.RequestHandler):
-
- def get(self):
- self.write('Hello, world! ')
-
-
-def main():
- # python example01.py --port=8000
- parse_command_line()
- app = tornado.web.Application(handlers=[(r'/', MainHandler), ])
- app.listen(options.port)
- tornado.ioloop.IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
-```
-
-在启动Web应用时,如果没有指定端口,将使用`define`函数中设置的默认端口8000,如果要指定端口,可以使用下面的方式来启动Web应用。
-
-```Shell
-python example01.py --port=8000
-```
-
-### 路由解析
-
-上面我们曾经提到过创建`Application`实例时需要指定`handlers`参数,这个参数非常重要,它应该是一个元组的列表,元组中的第一个元素是正则表达式,它用于匹配用户请求的资源路径;第二个元素是`RequestHandler`的子类。在刚才的例子中,我们只在`handlers`列表中放置了一个元组,事实上我们可以放置多个元组来匹配不同的请求(资源路径),而且可以使用正则表达式的捕获组来获取匹配的内容并将其作为参数传入到`get`、`post`这些方法中。
-
-```Python
-"""
-example02.py
-"""
-import os
-import random
-
-import tornado.ioloop
-import tornado.web
-
-from tornado.options import define, options, parse_command_line
-
-
-# 定义默认端口
-define('port', default=8000, type=int)
-
-
-class SayingHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def get(self):
- sayings = [
- '世上没有绝望的处境,只有对处境绝望的人',
- '人生的道路在态度的岔口一分为二,从此通向成功或失败',
- '所谓措手不及,不是说没有时间准备,而是有时间的时候没有准备',
- '那些你认为不靠谱的人生里,充满你没有勇气做的事',
- '在自己喜欢的时间里,按照自己喜欢的方式,去做自己喜欢做的事,这便是自由',
- '有些人不属于自己,但是遇见了也弥足珍贵'
- ]
- # 渲染index.html模板页
- self.render('index.html', message=random.choice(sayings))
-
-
-class WeatherHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def get(self, city):
- # Tornado框架会自动处理百分号编码的问题
- weathers = {
- '北京': {'temperature': '-4~4', 'pollution': '195 中度污染'},
- '成都': {'temperature': '3~9', 'pollution': '53 良'},
- '深圳': {'temperature': '20~25', 'pollution': '25 优'},
- '广州': {'temperature': '18~23', 'pollution': '56 良'},
- '上海': {'temperature': '6~8', 'pollution': '65 良'}
- }
- if city in weathers:
- self.render('weather.html', city=city, weather=weathers[city])
- else:
- self.render('index.html', message=f'没有{city}的天气信息')
-
-
-class ErrorHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def get(self):
- # 重定向到指定的路径
- self.redirect('/saying')
-
-
-def main():
- """主函数"""
- parse_command_line()
- app = tornado.web.Application(
- # handlers是按列表中的顺序依次进行匹配的
- handlers=[
- (r'/saying/?', SayingHandler),
- (r'/weather/([^/]{2,})/?', WeatherHandler),
- (r'/.+', ErrorHandler),
- ],
- # 通过template_path参数设置模板页的路径
- template_path=os.path.join(os.path.dirname(__file__), 'templates')
- )
- app.listen(options.port)
- tornado.ioloop.IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
-```
-
-模板页index.html。
-
-```HTML
-
-
-
-
-
- Tornado基础
-
-
- {{message}}
-
-
-```
-
-模板页weather.html。
-
-```HTML
-
-
-
-
-
- Tornado基础
-
-
- {{city}}
-
- 温度:{{weather['temperature']}}摄氏度
- 污染指数:{{weather['pollution']}}
-
-
-```
-
-Tornado的模板语法与其他的Web框架中使用的模板语法并没有什么实质性的区别,而且目前的Web应用开发更倡导使用前端渲染的方式来减轻服务器的负担,所以这里我们并不对模板语法和后端渲染进行深入的讲解。
-
-### 请求处理器
-
-通过上面的代码可以看出,`RequestHandler`是处理用户请求的核心类,通过重写`get`、`post`、`put`、`delete`等方法可以处理不同类型的HTTP请求,除了这些方法之外,`RequestHandler`还实现了很多重要的方法,下面是部分方法的列表:
-
-1. `get_argument` / `get_arguments` / `get_body_argument` / `get_body_arguments` / `get_query_arugment` / `get_query_arguments`:获取请求参数。
-2. `set_status` / `send_error` / `set_header` / `add_header` / `clear_header` / `clear`:操作状态码和响应头。
-3. `write` / `flush` / `finish` / `write_error`:和输出相关的方法。
-4. `render` / `render_string`:渲染模板。
-5. `redirect`:请求重定向。
-6. `get_cookie` / `set_cookie` / `get_secure_cookie` / `set_secure_cookie` / `create_signed_value` / `clear_cookie` / `clear_all_cookies`:操作Cookie。
-
-我们用上面讲到的这些方法来完成下面的需求,访问页面时,如果Cookie中没有读取到用户信息则要求用户填写个人信息,如果从Cookie中读取到用户信息则直接显示用户信息。
-
-```Python
-"""
-example03.py
-"""
-import os
-import re
-
-import tornado.ioloop
-import tornado.web
-
-from tornado.options import define, options, parse_command_line
-
-
-# 定义默认端口
-define('port', default=8000, type=int)
-
-users = {}
-
-
-class User(object):
- """用户"""
-
- def __init__(self, nickname, gender, birthday):
- self.nickname = nickname
- self.gender = gender
- self.birthday = birthday
-
-
-class MainHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def get(self):
- # 从Cookie中读取用户昵称
- nickname = self.get_cookie('nickname')
- if nickname in users:
- self.render('userinfo.html', user=users[nickname])
- else:
- self.render('userform.html', hint='请填写个人信息')
-
-
-class UserHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def post(self):
- # 从表单参数中读取用户昵称、性别和生日信息
- nickname = self.get_body_argument('nickname').strip()
- gender = self.get_body_argument('gender')
- birthday = self.get_body_argument('birthday')
- # 检查用户昵称是否有效
- if not re.fullmatch(r'\w{6,20}', nickname):
- self.render('userform.html', hint='请输入有效的昵称')
- elif nickname in users:
- self.render('userform.html', hint='昵称已经被使用过')
- else:
- users[nickname] = User(nickname, gender, birthday)
- # 将用户昵称写入Cookie并设置有效期为7天
- self.set_cookie('nickname', nickname, expires_days=7)
- self.render('userinfo.html', user=users[nickname])
-
-
-def main():
- """主函数"""
- parse_command_line()
- app = tornado.web.Application(
- handlers=[
- (r'/', MainHandler), (r'/register', UserHandler)
- ],
- template_path=os.path.join(os.path.dirname(__file__), 'templates')
- )
- app.listen(options.port)
- tornado.ioloop.IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
-```
-
-模板页userform.html。
-
-```HTML
-
-
-
-
-
- Tornado基础
-
-
-
- 填写用户信息
-
- {{hint}}
-
-
-
-```
-
-模板页userinfo.html。
-
-```HTML
-
-
-
-
-
- Tornado基础
-
-
- 用户信息
-
- 昵称:{{user.nickname}}
- 性别:{{user.gender}}
- 出生日期:{{user.birthday}}
-
-
-```
diff --git a/Day66-75/67.数据采集和解析.md b/Day61-65/62.数据采集和解析.md
similarity index 100%
rename from Day66-75/67.数据采集和解析.md
rename to Day61-65/62.数据采集和解析.md
diff --git a/Day61-65/63.Tornado中的异步化.md b/Day61-65/63.Tornado中的异步化.md
deleted file mode 100644
index a450534..0000000
--- a/Day61-65/63.Tornado中的异步化.md
+++ /dev/null
@@ -1,152 +0,0 @@
-## Tornado中的异步化
-
-在前面的例子中,我们并没有对`RequestHandler`中的`get`或`post`方法进行异步处理,这就意味着,一旦在`get`或`post`方法中出现了耗时间的操作,不仅仅是当前请求被阻塞,按照Tornado框架的工作模式,其他的请求也会被阻塞,所以我们需要对耗时间的操作进行异步化处理。
-
-在Tornado稍早一些的版本中,可以用装饰器实现请求方法的异步化或协程化来解决这个问题。
-
-- 给`RequestHandler`的请求处理函数添加`@tornado.web.asynchronous`装饰器,如下所示:
-
- ```Python
- class AsyncReqHandler(RequestHandler):
-
- @tornado.web.asynchronous
- def get(self):
- http = httpclient.AsyncHTTPClient()
- http.fetch("http://example.com/", self._on_download)
-
- def _on_download(self, response):
- do_something_with_response(response)
- self.render("template.html")
- ```
-
-- 给`RequestHandler`的请求处理函数添加`@tornado.gen.coroutine`装饰器,如下所示:
-
- ```Python
- class GenAsyncHandler(RequestHandler):
-
- @tornado.gen.coroutine
- def get(self):
- http_client = AsyncHTTPClient()
- response = yield http_client.fetch("http://example.com")
- do_something_with_response(response)
- self.render("template.html")
- ```
-
-- 使用`@return_future`装饰器,如下所示:
-
- ```Python
- @return_future
- def future_func(arg1, arg2, callback):
- # Do stuff (possibly asynchronous)
- callback(result)
-
- async def caller():
- await future_func(arg1, arg2)
- ```
-
-在Tornado 5.x版本中,这几个装饰器都被标记为**deprcated**(过时),我们可以通过Python 3.5中引入的`async`和`await`(在Python 3.7中已经成为正式的关键字)来达到同样的效果。当然,要实现异步化还得靠其他的支持异步操作的三方库来支持,如果请求处理函数中用到了不支持异步操作的三方库,就需要靠自己写包装类来支持异步化。
-
-下面的代码演示了在读写数据库时如何实现请求处理的异步化。我们用到的数据库建表语句如下所示:
-
-```SQL
-create database hrs default charset utf8;
-
-use hrs;
-
-/* 创建部门表 */
-create table tb_dept
-(
- dno int not null comment '部门编号',
- dname varchar(10) not null comment '部门名称',
- dloc varchar(20) not null comment '部门所在地',
- primary key (dno)
-);
-
-insert into tb_dept values
- (10, '会计部', '北京'),
- (20, '研发部', '成都'),
- (30, '销售部', '重庆'),
- (40, '运维部', '深圳');
-```
-
-我们通过下面的代码实现了查询和新增部门两个操作。
-
-```Python
-import json
-
-import aiomysql
-import tornado
-import tornado.web
-
-from tornado.ioloop import IOLoop
-from tornado.options import define, parse_command_line, options
-
-define('port', default=8000, type=int)
-
-
-async def connect_mysql():
- return await aiomysql.connect(
- host='120.77.222.217',
- port=3306,
- db='hrs',
- user='root',
- password='123456',
- )
-
-
-class HomeHandler(tornado.web.RequestHandler):
-
- async def get(self, no):
- async with self.settings['mysql'].cursor(aiomysql.DictCursor) as cursor:
- await cursor.execute("select * from tb_dept where dno=%s", (no, ))
- if cursor.rowcount == 0:
- self.finish(json.dumps({
- 'code': 20001,
- 'mesg': f'没有编号为{no}的部门'
- }))
- return
- row = await cursor.fetchone()
- self.finish(json.dumps(row))
-
- async def post(self, *args, **kwargs):
- no = self.get_argument('no')
- name = self.get_argument('name')
- loc = self.get_argument('loc')
- conn = self.settings['mysql']
- try:
- async with conn.cursor() as cursor:
- await cursor.execute('insert into tb_dept values (%s, %s, %s)',
- (no, name, loc))
- await conn.commit()
- except aiomysql.MySQLError:
- self.finish(json.dumps({
- 'code': 20002,
- 'mesg': '添加部门失败请确认部门信息'
- }))
- else:
- self.set_status(201)
- self.finish()
-
-
-def make_app(config):
- return tornado.web.Application(
- handlers=[(r'/api/depts/(.*)', HomeHandler), ],
- **config
- )
-
-
-def main():
- parse_command_line()
- app = make_app({
- 'debug': True,
- 'mysql': IOLoop.current().run_sync(connect_mysql)
- })
- app.listen(options.port)
- IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
-```
-
-上面的代码中,我们用到了`aiomysql`这个三方库,它基于`pymysql`封装,实现了对MySQL操作的异步化。操作Redis可以使用`aioredis`,访问MongoDB可以使用`motor`,这些都是支持异步操作的三方库。
\ No newline at end of file
diff --git a/Day66-75/68.存储数据.md b/Day61-65/63.存储数据.md
similarity index 100%
rename from Day66-75/68.存储数据.md
rename to Day61-65/63.存储数据.md
diff --git a/Day61-65/64.WebSocket的应用.md b/Day61-65/64.WebSocket的应用.md
deleted file mode 100644
index ef25c9e..0000000
--- a/Day61-65/64.WebSocket的应用.md
+++ /dev/null
@@ -1,228 +0,0 @@
-## WebSocket的应用
-
-Tornado的异步特性使其非常适合处理高并发的业务,同时也适合那些需要在客户端和服务器之间维持长连接的业务。传统的基于HTTP协议的Web应用,服务器和客户端(浏览器)的通信只能由客户端发起,这种单向请求注定了如果服务器有连续的状态变化,客户端(浏览器)是很难得知的。事实上,今天的很多Web应用都需要服务器主动向客户端(浏览器)发送数据,我们将这种通信方式称之为“推送”。过去很长一段时间,程序员都是用定时轮询(Polling)或长轮询(Long Polling)等方式来实现“推送”,但是这些都不是真正意义上的“推送”,而且浪费资源且效率低下。在HTML5时代,可以通过一种名为WebSocket的技术在服务器和客户端(浏览器)之间维持传输数据的长连接,这种方式可以实现真正的“推送”服务。
-
-### WebSocket简介
-
-WebSocket 协议在2008年诞生,2011年成为国际标准([RFC 6455](https://tools.ietf.org/html/rfc6455)),现在的浏览器都能够支持它,它可以实现浏览器和服务器之间的全双工通信。我们之前学习或了解过Python的Socket编程,通过Socket编程,可以基于TCP或UDP进行数据传输;而WebSocket与之类似,只不过它是基于HTTP来实现通信握手,使用TCP来进行数据传输。WebSocket的出现打破了HTTP请求和响应只能一对一通信的模式,也改变了服务器只能被动接受客户端请求的状况。目前有很多Web应用是需要服务器主动向客户端发送信息的,例如股票信息的网站可能需要向浏览器发送股票涨停通知,社交网站可能需要向用户发送好友上线提醒或聊天信息。
-
-
-
-WebSocket的特点如下所示:
-
-1. 建立在TCP协议之上,服务器端的实现比较容易。
-2. 与HTTP协议有着良好的兼容性,默认端口是80(WS)和443(WSS),通信握手阶段采用HTTP协议,能通过各种 HTTP 代理服务器(不容易被防火墙阻拦)。
-3. 数据格式比较轻量,性能开销小,通信高效。
-4. 可以发送文本,也可以发送二进制数据。
-5. 没有同源策略的限制,客户端(浏览器)可以与任意服务器通信。
-
-
-
-### WebSocket服务器端编程
-
-Tornado框架中有一个`tornado.websocket.WebSocketHandler`类专门用于处理来自WebSocket的请求,通过继承该类并重写`open`、`on_message`、`on_close` 等方法来处理WebSocket通信,下面我们对`WebSocketHandler`的核心方法做一个简单的介绍。
-
-1. `open(*args, **kwargs)`方法:建立新的WebSocket连接后,Tornado框架会调用该方法,该方法的参数与`RequestHandler`的`get`方法的参数类似,这也就意味着在`open`方法中可以执行获取请求参数、读取Cookie信息这样的操作。
-
-2. `on_message(message)`方法:建立WebSocket之后,当收到来自客户端的消息时,Tornado框架会调用该方法,这样就可以对收到的消息进行对应的处理,必须重写这个方法。
-
-3. `on_close()`方法:当WebSocket被关闭时,Tornado框架会调用该方法,在该方法中可以通过`close_code`和`close_reason`了解关闭的原因。
-
-4. `write_message(message, binary=False)`方法:将指定的消息通过WebSocket发送给客户端,可以传递utf-8字符序列或者字节序列,如果message是一个字典,将会执行JSON序列化。正常情况下,该方法会返回一个`Future`对象;如果WebSocket被关闭了,将引发`WebSocketClosedError`。
-
-5. `set_nodelay(value)`方法:默认情况下,因为TCP的Nagle算法会导致短小的消息被延迟发送,在考虑到交互性的情况下就要通过将该方法的参数设置为`True`来避免延迟。
-
-6. `close(code=None, reason=None)`方法:主动关闭WebSocket,可以指定状态码(详见[RFC 6455 7.4.1节](https://tools.ietf.org/html/rfc6455#section-7.4.1))和原因。
-
-### WebSocket客户端编程
-
-1. 创建WebSocket对象。
-
- ```JavaScript
- var webSocket = new WebSocket('ws://localhost:8000/ws');
- ```
-
- >说明:webSocket对象的readyState属性表示该对象当前状态,取值为CONNECTING-正在连接,OPEN-连接成功可以通信,CLOSING-正在关闭,CLOSED-已经关闭。
-
-2. 编写回调函数。
-
- ```JavaScript
- webSocket.onopen = function(evt) { webSocket.send('...'); };
- webSocket.onmessage = function(evt) { console.log(evt.data); };
- webSocket.onclose = function(evt) {};
- webSocket.onerror = function(evt) {};
- ```
-
- > 说明:如果要绑定多个事件回调函数,可以用addEventListener方法。另外,通过事件对象的data属性获得的数据可能是字符串,也有可能是二进制数据,可以通过webSocket对象的binaryType属性(blob、arraybuffer)或者通过typeof、instanceof运算符检查类型进行判定。
-
-### 项目:Web聊天室
-
-```Python
-"""
-handlers.py - 用户登录和聊天的处理器
-"""
-import tornado.web
-import tornado.websocket
-
-nicknames = set()
-connections = {}
-
-
-class LoginHandler(tornado.web.RequestHandler):
-
- def get(self):
- self.render('login.html', hint='')
-
- def post(self):
- nickname = self.get_argument('nickname')
- if nickname in nicknames:
- self.render('login.html', hint='昵称已被使用,请更换昵称')
- self.set_secure_cookie('nickname', nickname)
- self.render('chat.html')
-
-
-class ChatHandler(tornado.websocket.WebSocketHandler):
-
- def open(self):
- nickname = self.get_secure_cookie('nickname').decode()
- nicknames.add(nickname)
- for conn in connections.values():
- conn.write_message(f'~~~{nickname}进入了聊天室~~~')
- connections[nickname] = self
-
- def on_message(self, message):
- nickname = self.get_secure_cookie('nickname').decode()
- for conn in connections.values():
- if conn is not self:
- conn.write_message(f'{nickname}说:{message}')
-
- def on_close(self):
- nickname = self.get_secure_cookie('nickname').decode()
- del connections[nickname]
- nicknames.remove(nickname)
- for conn in connections.values():
- conn.write_message(f'~~~{nickname}离开了聊天室~~~')
-
-```
-
-```Python
-"""
-run_chat_server.py - 聊天服务器
-"""
-import os
-
-import tornado.web
-import tornado.ioloop
-
-from handlers import LoginHandler, ChatHandler
-
-
-if __name__ == '__main__':
- app = tornado.web.Application(
- handlers=[(r'/login', LoginHandler), (r'/chat', ChatHandler)],
- template_path=os.path.join(os.path.dirname(__file__), 'templates'),
- static_path=os.path.join(os.path.dirname(__file__), 'static'),
- cookie_secret='MWM2MzEyOWFlOWRiOWM2MGMzZThhYTk0ZDNlMDA0OTU=',
- )
- app.listen(8888)
- tornado.ioloop.IOLoop.current().start()
-```
-
-```HTML
-
-
-
-
-
- Tornado聊天室
-
-
-
-
-
-
-```
-
-```HTML
-
-
-
-
-
- Tornado聊天室
-
-
- 聊天室
-
-
-
-
-
-
-
-
-
- 退出聊天室
-
-
-
-
-
-```
-
diff --git a/Day66-75/69.并发下载.md b/Day61-65/64.并发下载.md
similarity index 100%
rename from Day66-75/69.并发下载.md
rename to Day61-65/64.并发下载.md
diff --git a/Day66-75/70.解析动态内容.md b/Day61-65/65.解析动态内容.md
similarity index 100%
rename from Day66-75/70.解析动态内容.md
rename to Day61-65/65.解析动态内容.md
diff --git a/Day61-65/65.项目实战.md b/Day61-65/65.项目实战.md
deleted file mode 100644
index dbbae84..0000000
--- a/Day61-65/65.项目实战.md
+++ /dev/null
@@ -1,2 +0,0 @@
-## 项目实战
-
diff --git a/Day61-65/code/.gitkeep b/Day61-65/code/.gitkeep
deleted file mode 100644
index e69de29..0000000
diff --git a/Day66-75/code/asyncio01.py b/Day61-65/code/asyncio01.py
similarity index 100%
rename from Day66-75/code/asyncio01.py
rename to Day61-65/code/asyncio01.py
diff --git a/Day66-75/code/asyncio02.py b/Day61-65/code/asyncio02.py
similarity index 100%
rename from Day66-75/code/asyncio02.py
rename to Day61-65/code/asyncio02.py
diff --git a/Day66-75/code/coroutine01.py b/Day61-65/code/coroutine01.py
similarity index 100%
rename from Day66-75/code/coroutine01.py
rename to Day61-65/code/coroutine01.py
diff --git a/Day66-75/code/coroutine02.py b/Day61-65/code/coroutine02.py
similarity index 100%
rename from Day66-75/code/coroutine02.py
rename to Day61-65/code/coroutine02.py
diff --git a/Day61-65/code/project_of_tornado/service/__init__.py b/Day61-65/code/douban/douban/__init__.py
similarity index 100%
rename from Day61-65/code/project_of_tornado/service/__init__.py
rename to Day61-65/code/douban/douban/__init__.py
diff --git a/Day66-75/code/douban/douban/items.py b/Day61-65/code/douban/douban/items.py
similarity index 100%
rename from Day66-75/code/douban/douban/items.py
rename to Day61-65/code/douban/douban/items.py
diff --git a/Day66-75/code/douban/douban/middlewares.py b/Day61-65/code/douban/douban/middlewares.py
similarity index 100%
rename from Day66-75/code/douban/douban/middlewares.py
rename to Day61-65/code/douban/douban/middlewares.py
diff --git a/Day66-75/code/douban/douban/pipelines.py b/Day61-65/code/douban/douban/pipelines.py
similarity index 100%
rename from Day66-75/code/douban/douban/pipelines.py
rename to Day61-65/code/douban/douban/pipelines.py
diff --git a/Day66-75/code/douban/douban/settings.py b/Day61-65/code/douban/douban/settings.py
similarity index 100%
rename from Day66-75/code/douban/douban/settings.py
rename to Day61-65/code/douban/douban/settings.py
diff --git a/Day66-75/code/douban/douban/spiders/__init__.py b/Day61-65/code/douban/douban/spiders/__init__.py
similarity index 100%
rename from Day66-75/code/douban/douban/spiders/__init__.py
rename to Day61-65/code/douban/douban/spiders/__init__.py
diff --git a/Day66-75/code/douban/douban/spiders/movie.py b/Day61-65/code/douban/douban/spiders/movie.py
similarity index 100%
rename from Day66-75/code/douban/douban/spiders/movie.py
rename to Day61-65/code/douban/douban/spiders/movie.py
diff --git a/Day66-75/code/douban/scrapy.cfg b/Day61-65/code/douban/scrapy.cfg
similarity index 100%
rename from Day66-75/code/douban/scrapy.cfg
rename to Day61-65/code/douban/scrapy.cfg
diff --git a/Day66-75/code/example01.py b/Day61-65/code/example01.py
similarity index 100%
rename from Day66-75/code/example01.py
rename to Day61-65/code/example01.py
diff --git a/Day66-75/code/example02.py b/Day61-65/code/example02.py
similarity index 100%
rename from Day66-75/code/example02.py
rename to Day61-65/code/example02.py
diff --git a/Day66-75/code/example03.py b/Day61-65/code/example03.py
similarity index 100%
rename from Day66-75/code/example03.py
rename to Day61-65/code/example03.py
diff --git a/Day66-75/code/example04.py b/Day61-65/code/example04.py
similarity index 100%
rename from Day66-75/code/example04.py
rename to Day61-65/code/example04.py
diff --git a/Day66-75/code/example05.py b/Day61-65/code/example05.py
similarity index 100%
rename from Day66-75/code/example05.py
rename to Day61-65/code/example05.py
diff --git a/Day66-75/code/example06.py b/Day61-65/code/example06.py
similarity index 100%
rename from Day66-75/code/example06.py
rename to Day61-65/code/example06.py
diff --git a/Day66-75/code/example07.py b/Day61-65/code/example07.py
similarity index 100%
rename from Day66-75/code/example07.py
rename to Day61-65/code/example07.py
diff --git a/Day66-75/code/example08.py b/Day61-65/code/example08.py
similarity index 100%
rename from Day66-75/code/example08.py
rename to Day61-65/code/example08.py
diff --git a/Day66-75/code/example09.py b/Day61-65/code/example09.py
similarity index 100%
rename from Day66-75/code/example09.py
rename to Day61-65/code/example09.py
diff --git a/Day66-75/code/example10.py b/Day61-65/code/example10.py
similarity index 100%
rename from Day66-75/code/example10.py
rename to Day61-65/code/example10.py
diff --git a/Day66-75/code/example10a.py b/Day61-65/code/example10a.py
similarity index 100%
rename from Day66-75/code/example10a.py
rename to Day61-65/code/example10a.py
diff --git a/Day66-75/code/example11.py b/Day61-65/code/example11.py
similarity index 100%
rename from Day66-75/code/example11.py
rename to Day61-65/code/example11.py
diff --git a/Day66-75/code/example11a.py b/Day61-65/code/example11a.py
similarity index 100%
rename from Day66-75/code/example11a.py
rename to Day61-65/code/example11a.py
diff --git a/Day66-75/code/example12.py b/Day61-65/code/example12.py
similarity index 100%
rename from Day66-75/code/example12.py
rename to Day61-65/code/example12.py
diff --git a/Day66-75/code/generator01.py b/Day61-65/code/generator01.py
similarity index 100%
rename from Day66-75/code/generator01.py
rename to Day61-65/code/generator01.py
diff --git a/Day66-75/code/generator02.py b/Day61-65/code/generator02.py
similarity index 100%
rename from Day66-75/code/generator02.py
rename to Day61-65/code/generator02.py
diff --git a/Day61-65/code/guido.jpg b/Day61-65/code/guido.jpg
new file mode 100644
index 0000000..a8f217c
Binary files /dev/null and b/Day61-65/code/guido.jpg differ
diff --git a/Day61-65/code/hello-tornado/chat_handlers.py b/Day61-65/code/hello-tornado/chat_handlers.py
deleted file mode 100644
index 528d8a1..0000000
--- a/Day61-65/code/hello-tornado/chat_handlers.py
+++ /dev/null
@@ -1,44 +0,0 @@
-"""
-handlers.py - 用户登录和聊天的处理器
-"""
-import tornado.web
-import tornado.websocket
-
-nicknames = set()
-connections = {}
-
-
-class LoginHandler(tornado.web.RequestHandler):
-
- def get(self):
- self.render('login.html', hint='')
-
- def post(self):
- nickname = self.get_argument('nickname')
- if nickname in nicknames:
- self.render('login.html', hint='昵称已被使用,请更换昵称')
- self.set_secure_cookie('nickname', nickname)
- self.render('chat.html')
-
-
-class ChatHandler(tornado.websocket.WebSocketHandler):
-
- def open(self):
- nickname = self.get_secure_cookie('nickname').decode()
- nicknames.add(nickname)
- for conn in connections.values():
- conn.write_message(f'~~~{nickname}进入了聊天室~~~')
- connections[nickname] = self
-
- def on_message(self, message):
- nickname = self.get_secure_cookie('nickname').decode()
- for conn in connections.values():
- if conn is not self:
- conn.write_message(f'{nickname}说:{message}')
-
- def on_close(self):
- nickname = self.get_secure_cookie('nickname').decode()
- del connections[nickname]
- nicknames.remove(nickname)
- for conn in connections.values():
- conn.write_message(f'~~~{nickname}离开了聊天室~~~')
diff --git a/Day61-65/code/hello-tornado/chat_server.py b/Day61-65/code/hello-tornado/chat_server.py
deleted file mode 100644
index 4985acd..0000000
--- a/Day61-65/code/hello-tornado/chat_server.py
+++ /dev/null
@@ -1,24 +0,0 @@
-"""
-chat_server.py - 聊天服务器
-"""
-import os
-
-import tornado.web
-import tornado.ioloop
-
-from chat_handlers import LoginHandler, ChatHandler
-
-
-def main():
- app = tornado.web.Application(
- handlers=[(r'/login', LoginHandler), (r'/chat', ChatHandler)],
- template_path=os.path.join(os.path.dirname(__file__), 'templates'),
- static_path=os.path.join(os.path.dirname(__file__), 'static'),
- cookie_secret='MWM2MzEyOWFlOWRiOWM2MGMzZThhYTk0ZDNlMDA0OTU=',
- )
- app.listen(8888)
- tornado.ioloop.IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example01.py b/Day61-65/code/hello-tornado/example01.py
deleted file mode 100644
index 6005256..0000000
--- a/Day61-65/code/hello-tornado/example01.py
+++ /dev/null
@@ -1,36 +0,0 @@
-"""
-example01.py - 五分钟上手Tornado
-"""
-import tornado.ioloop
-import tornado.web
-
-from tornado.options import define, options, parse_command_line
-
-# 定义默认端口
-define('port', default=8000, type=int)
-
-
-class MainHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def get(self):
- # 向客户端(浏览器)写入内容
- self.write('Hello, world! ')
-
-
-def main():
- """主函数"""
- # 解析命令行参数,例如:
- # python example01.py --port 8888
- parse_command_line()
- # 创建了Tornado框架中Application类的实例并指定handlers参数
- # Application实例代表了我们的Web应用,handlers代表了路由解析
- app = tornado.web.Application(handlers=[(r'/', MainHandler), ])
- # 指定了监听HTTP请求的TCP端口(默认8000,也可以通过命令行参数指定)
- app.listen(options.port)
- # 获取Tornado框架的IOLoop实例并启动它(默认启动asyncio的事件循环)
- tornado.ioloop.IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example02.py b/Day61-65/code/hello-tornado/example02.py
deleted file mode 100644
index c9ff9c0..0000000
--- a/Day61-65/code/hello-tornado/example02.py
+++ /dev/null
@@ -1,77 +0,0 @@
-"""
-example02.py - 路由解析
-"""
-import os
-import random
-
-import tornado.ioloop
-import tornado.web
-
-from tornado.options import define, options, parse_command_line
-
-
-# 定义默认端口
-define('port', default=8000, type=int)
-
-
-class SayingHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def get(self):
- sayings = [
- '世上没有绝望的处境,只有对处境绝望的人',
- '人生的道路在态度的岔口一分为二,从此通向成功或失败',
- '所谓措手不及,不是说没有时间准备,而是有时间的时候没有准备',
- '那些你认为不靠谱的人生里,充满你没有勇气做的事',
- '在自己喜欢的时间里,按照自己喜欢的方式,去做自己喜欢做的事,这便是自由',
- '有些人不属于自己,但是遇见了也弥足珍贵'
- ]
- # 渲染index.html模板页
- self.render('index.html', message=random.choice(sayings))
-
-
-class WeatherHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def get(self, city):
- # Tornado框架会自动处理百分号编码的问题
- weathers = {
- '北京': {'temperature': '-4~4', 'pollution': '195 中度污染'},
- '成都': {'temperature': '3~9', 'pollution': '53 良'},
- '深圳': {'temperature': '20~25', 'pollution': '25 优'},
- '广州': {'temperature': '18~23', 'pollution': '56 良'},
- '上海': {'temperature': '6~8', 'pollution': '65 良'}
- }
- if city in weathers:
- self.render('weather.html', city=city, weather=weathers[city])
- else:
- self.render('index.html', message=f'没有{city}的天气信息')
-
-
-class ErrorHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def get(self):
- # 重定向到指定的路径
- self.redirect('/saying')
-
-
-def main():
- """主函数"""
- parse_command_line()
- app = tornado.web.Application(
- # handlers是按列表中的顺序依次进行匹配的
- handlers=[
- (r'/saying/?', SayingHandler),
- (r'/weather/([^/]{2,})/?', WeatherHandler),
- (r'/.+', ErrorHandler),
- ],
- # 通过template_path参数设置模板页的路径
- template_path=os.path.join(os.path.dirname(__file__), 'templates')
- )
- app.listen(options.port)
- tornado.ioloop.IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example03.py b/Day61-65/code/hello-tornado/example03.py
deleted file mode 100644
index 16ff8e5..0000000
--- a/Day61-65/code/hello-tornado/example03.py
+++ /dev/null
@@ -1,75 +0,0 @@
-"""
-example03.py - RequestHandler解析
-"""
-import os
-import re
-
-import tornado.ioloop
-import tornado.web
-
-from tornado.options import define, options, parse_command_line
-
-
-# 定义默认端口
-define('port', default=8000, type=int)
-
-users = {}
-
-
-class User(object):
- """用户"""
-
- def __init__(self, nickname, gender, birthday):
- self.nickname = nickname
- self.gender = gender
- self.birthday = birthday
-
-
-class MainHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def get(self):
- # 从Cookie中读取用户昵称
- nickname = self.get_cookie('nickname')
- if nickname in users:
- self.render('userinfo.html', user=users[nickname])
- else:
- self.render('userform.html', hint='请填写个人信息')
-
-
-class UserHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def post(self):
- # 从表单参数中读取用户昵称、性别和生日信息
- nickname = self.get_body_argument('nickname').strip()
- gender = self.get_body_argument('gender')
- birthday = self.get_body_argument('birthday')
- # 检查用户昵称是否有效
- if not re.fullmatch(r'\w{6,20}', nickname):
- self.render('userform.html', hint='请输入有效的昵称')
- elif nickname in users:
- self.render('userform.html', hint='昵称已经被使用过')
- else:
- users[nickname] = User(nickname, gender, birthday)
- # 将用户昵称写入Cookie并设置有效期为7天
- self.set_cookie('nickname', nickname, expires_days=7)
- self.render('userinfo.html', user=users[nickname])
-
-
-def main():
- """主函数"""
- parse_command_line()
- app = tornado.web.Application(
- handlers=[
- (r'/', MainHandler),
- (r'/register', UserHandler),
- ],
- template_path=os.path.join(os.path.dirname(__file__), 'templates'),
- )
- app.listen(options.port)
- tornado.ioloop.IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example04.py b/Day61-65/code/hello-tornado/example04.py
deleted file mode 100644
index 405b00c..0000000
--- a/Day61-65/code/hello-tornado/example04.py
+++ /dev/null
@@ -1,44 +0,0 @@
-"""
-example04.py - 同步请求的例子
-"""
-import json
-import os
-
-import requests
-import tornado.gen
-import tornado.ioloop
-import tornado.web
-import tornado.websocket
-import tornado.httpclient
-from tornado.options import define, options, parse_command_line
-
-define('port', default=8888, type=int)
-
-# 请求天行数据提供的API数据接口
-REQ_URL = 'http://api.tianapi.com/guonei/'
-# 在天行数据网站注册后可以获得API_KEY
-API_KEY = 'your_personal_api_key'
-
-
-class MainHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- def get(self):
- resp = requests.get(f'{REQ_URL}?key={API_KEY}')
- newslist = json.loads(resp.text)['newslist']
- self.render('news.html', newslist=newslist)
-
-
-def main():
- """主函数"""
- parse_command_line()
- app = tornado.web.Application(
- handlers=[(r'/', MainHandler), ],
- template_path=os.path.join(os.path.dirname(__file__), 'templates'),
- )
- app.listen(options.port)
- tornado.ioloop.IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example05.py b/Day61-65/code/hello-tornado/example05.py
deleted file mode 100644
index 5ae1ced..0000000
--- a/Day61-65/code/hello-tornado/example05.py
+++ /dev/null
@@ -1,47 +0,0 @@
-"""
-example05.py - 异步请求的例子
-"""
-import aiohttp
-import json
-import os
-
-import tornado.gen
-import tornado.ioloop
-import tornado.web
-import tornado.websocket
-import tornado.httpclient
-from tornado.options import define, options, parse_command_line
-
-define('port', default=8888, type=int)
-
-# 请求天行数据提供的API数据接口
-REQ_URL = 'http://api.tianapi.com/guonei/'
-# 在天行数据网站注册后可以获得API_KEY
-API_KEY = 'your_personal_api_key'
-
-
-class MainHandler(tornado.web.RequestHandler):
- """自定义请求处理器"""
-
- async def get(self):
- async with aiohttp.ClientSession() as session:
- resp = await session.get(f'{REQ_URL}?key={API_KEY}')
- json_str = await resp.text()
- print(json_str)
- newslist = json.loads(json_str)['newslist']
- self.render('news.html', newslist=newslist)
-
-
-def main():
- """主函数"""
- parse_command_line()
- app = tornado.web.Application(
- handlers=[(r'/', MainHandler), ],
- template_path=os.path.join(os.path.dirname(__file__), 'templates'),
- )
- app.listen(options.port)
- tornado.ioloop.IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example06.py b/Day61-65/code/hello-tornado/example06.py
deleted file mode 100644
index bcb02bf..0000000
--- a/Day61-65/code/hello-tornado/example06.py
+++ /dev/null
@@ -1,80 +0,0 @@
-"""
-example06.py - 异步操作MySQL
-"""
-import json
-
-import aiomysql
-import tornado
-import tornado.web
-
-from tornado.ioloop import IOLoop
-from tornado.options import define, parse_command_line, options
-
-define('port', default=8888, type=int)
-
-
-async def connect_mysql():
- return await aiomysql.connect(
- host='1.2.3.4',
- port=3306,
- db='hrs',
- charset='utf8',
- use_unicode=True,
- user='yourname',
- password='yourpass',
- )
-
-
-class HomeHandler(tornado.web.RequestHandler):
-
- async def get(self, no):
- async with self.settings['mysql'].cursor(aiomysql.DictCursor) as cursor:
- await cursor.execute("select * from tb_dept where dno=%s", (no, ))
- if cursor.rowcount == 0:
- self.finish(json.dumps({
- 'code': 20001,
- 'mesg': f'没有编号为{no}的部门'
- }))
- return
- row = await cursor.fetchone()
- self.finish(json.dumps(row))
-
- async def post(self, *args, **kwargs):
- no = self.get_argument('no')
- name = self.get_argument('name')
- loc = self.get_argument('loc')
- conn = self.settings['mysql']
- try:
- async with conn.cursor() as cursor:
- await cursor.execute('insert into tb_dept values (%s, %s, %s)',
- (no, name, loc))
- await conn.commit()
- except aiomysql.MySQLError:
- self.finish(json.dumps({
- 'code': 20002,
- 'mesg': '添加部门失败请确认部门信息'
- }))
- else:
- self.set_status(201)
- self.finish()
-
-
-def make_app(config):
- return tornado.web.Application(
- handlers=[(r'/api/depts/(.*)', HomeHandler), ],
- **config
- )
-
-
-def main():
- parse_command_line()
- app = make_app({
- 'debug': True,
- 'mysql': IOLoop.current().run_sync(connect_mysql)
- })
- app.listen(options.port)
- IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example07.py b/Day61-65/code/hello-tornado/example07.py
deleted file mode 100644
index df38980..0000000
--- a/Day61-65/code/hello-tornado/example07.py
+++ /dev/null
@@ -1,92 +0,0 @@
-"""
-example07.py - 将非异步的三方库封装为异步调用
-"""
-import asyncio
-import concurrent
-import json
-
-import tornado
-import tornado.web
-import pymysql
-
-from pymysql import connect
-from pymysql.cursors import DictCursor
-
-from tornado.ioloop import IOLoop
-from tornado.options import define, parse_command_line, options
-from tornado.platform.asyncio import AnyThreadEventLoopPolicy
-
-define('port', default=8888, type=int)
-
-
-def get_mysql_connection():
- return connect(
- host='1.2.3.4',
- port=3306,
- db='hrs',
- charset='utf8',
- use_unicode=True,
- user='yourname',
- password='yourpass',
- )
-
-
-class HomeHandler(tornado.web.RequestHandler):
- executor = concurrent.futures.ThreadPoolExecutor(max_workers=10)
-
- async def get(self, no):
- return await self._get(no)
-
- @tornado.concurrent.run_on_executor
- def _get(self, no):
- con = get_mysql_connection()
- try:
- with con.cursor(DictCursor) as cursor:
- cursor.execute("select * from tb_dept where dno=%s", (no, ))
- if cursor.rowcount == 0:
- self.finish(json.dumps({
- 'code': 20001,
- 'mesg': f'没有编号为{no}的部门'
- }))
- return
- row = cursor.fetchone()
- self.finish(json.dumps(row))
- finally:
- con.close()
-
- async def post(self, *args, **kwargs):
- return await self._post(*args, **kwargs)
-
- @tornado.concurrent.run_on_executor
- def _post(self, *args, **kwargs):
- no = self.get_argument('no')
- name = self.get_argument('name')
- loc = self.get_argument('loc')
- conn = get_mysql_connection()
- try:
- with conn.cursor() as cursor:
- cursor.execute('insert into tb_dept values (%s, %s, %s)',
- (no, name, loc))
- conn.commit()
- except pymysql.MySQLError:
- self.finish(json.dumps({
- 'code': 20002,
- 'mesg': '添加部门失败请确认部门信息'
- }))
- else:
- self.set_status(201)
- self.finish()
-
-
-def main():
- asyncio.set_event_loop_policy(AnyThreadEventLoopPolicy())
- parse_command_line()
- app = tornado.web.Application(
- handlers=[(r'/api/depts/(.*)', HomeHandler), ]
- )
- app.listen(options.port)
- IOLoop.current().start()
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example_of_aiohttp.py b/Day61-65/code/hello-tornado/example_of_aiohttp.py
deleted file mode 100644
index 362f6ff..0000000
--- a/Day61-65/code/hello-tornado/example_of_aiohttp.py
+++ /dev/null
@@ -1,30 +0,0 @@
-import asyncio
-import re
-
-import aiohttp
-
-PATTERN = re.compile(r'\(?P.*)\<\/title\>')
-
-
-async def show_title(url):
- async with aiohttp.ClientSession() as session:
- resp = await session.get(url, ssl=False)
- html = await resp.text()
- print(PATTERN.search(html).group('title'))
-
-
-def main():
- urls = ('https://www.python.org/',
- 'https://git-scm.com/',
- 'https://www.jd.com/',
- 'https://www.taobao.com/',
- 'https://www.douban.com/')
- # asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
- # 获取事件循环()
- loop = asyncio.get_event_loop()
- tasks = [show_title(url) for url in urls]
- loop.run_until_complete(asyncio.wait(tasks))
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example_of_asyncio.py b/Day61-65/code/hello-tornado/example_of_asyncio.py
deleted file mode 100644
index 0851f38..0000000
--- a/Day61-65/code/hello-tornado/example_of_asyncio.py
+++ /dev/null
@@ -1,40 +0,0 @@
-import asyncio
-
-
-async def fetch(host):
- """从指定的站点抓取信息(协程函数)"""
- print(f'Start fetching {host}\n')
- # 跟服务器建立连接
- reader, writer = await asyncio.open_connection(host, 80)
- # 构造请求行和请求头
- writer.write(b'GET / HTTP/1.1\r\n')
- writer.write(f'Host: {host}\r\n'.encode())
- writer.write(b'\r\n')
- # 清空缓存区(发送请求)
- await writer.drain()
- # 接收服务器的响应(读取响应行和响应头)
- line = await reader.readline()
- while line != b'\r\n':
- print(line.decode().rstrip())
- line = await reader.readline()
- print('\n')
- writer.close()
-
-
-def main():
- """主函数"""
- urls = ('www.sohu.com', 'www.douban.com', 'www.163.com')
- # 获取系统默认的事件循环
- loop = asyncio.get_event_loop()
- # 用生成式语法构造一个包含多个协程对象的列表
- tasks = [fetch(url) for url in urls]
- # 通过asyncio模块的wait函数将协程列表包装成Task(Future子类)并等待其执行完成
- # 通过事件循环的run_until_complete方法运行任务直到Future完成并返回它的结果
- futures = asyncio.wait(tasks)
- print(futures, type(futures))
- loop.run_until_complete(futures)
- loop.close()
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example_of_coroutine.py b/Day61-65/code/hello-tornado/example_of_coroutine.py
deleted file mode 100644
index 070dad2..0000000
--- a/Day61-65/code/hello-tornado/example_of_coroutine.py
+++ /dev/null
@@ -1,50 +0,0 @@
-"""
-协程(coroutine)- 可以在需要时进行切换的相互协作的子程序
-"""
-import asyncio
-
-from example_of_multiprocess import is_prime
-
-
-def num_generator(m, n):
- """指定范围的数字生成器"""
- for num in range(m, n + 1):
- print(f'generate number: {num}')
- yield num
-
-
-async def prime_filter(m, n):
- """素数过滤器"""
- primes = []
- for i in num_generator(m, n):
- if is_prime(i):
- print('Prime =>', i)
- primes.append(i)
-
- await asyncio.sleep(0.001)
- return tuple(primes)
-
-
-async def square_mapper(m, n):
- """平方映射器"""
- squares = []
- for i in num_generator(m, n):
- print('Square =>', i * i)
- squares.append(i * i)
-
- await asyncio.sleep(0.001)
- return squares
-
-
-def main():
- """主函数"""
- loop = asyncio.get_event_loop()
- start, end = 1, 100
- futures = asyncio.gather(prime_filter(start, end), square_mapper(start, end))
- futures.add_done_callback(lambda x: print(x.result()))
- loop.run_until_complete(futures)
- loop.close()
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/example_of_multiprocess.py b/Day61-65/code/hello-tornado/example_of_multiprocess.py
deleted file mode 100644
index bef4c0f..0000000
--- a/Day61-65/code/hello-tornado/example_of_multiprocess.py
+++ /dev/null
@@ -1,49 +0,0 @@
-"""
-用下面的命令运行程序并查看执行时间,例如:
-time python3 example05.py
-real 0m20.657s
-user 1m17.749s
-sys 0m0.158s
-使用多进程后实际执行时间为20.657秒,而用户时间1分17.749秒约为实际执行时间的4倍
-这就证明我们的程序通过多进程使用了CPU的多核特性,而且这台计算机配置了4核的CPU
-"""
-import concurrent.futures
-import math
-
-PRIMES = [
- 1116281,
- 1297337,
- 104395303,
- 472882027,
- 533000389,
- 817504243,
- 982451653,
- 112272535095293,
- 112582705942171,
- 112272535095293,
- 115280095190773,
- 115797848077099,
- 1099726899285419
-] * 5
-
-
-def is_prime(num):
- """判断素数"""
- assert num > 0
- if num % 2 == 0:
- return False
- for i in range(3, int(math.sqrt(num)) + 1, 2):
- if num % i == 0:
- return False
- return num != 1
-
-
-def main():
- """主函数"""
- with concurrent.futures.ProcessPoolExecutor() as executor:
- for number, prime in zip(PRIMES, executor.map(is_prime, PRIMES)):
- print('%d is prime: %s' % (number, prime))
-
-
-if __name__ == '__main__':
- main()
diff --git a/Day61-65/code/hello-tornado/requirements.txt b/Day61-65/code/hello-tornado/requirements.txt
deleted file mode 100644
index 619660c..0000000
--- a/Day61-65/code/hello-tornado/requirements.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-aiohttp==3.5.4
-aiomysql==0.0.20
-asn1crypto==0.24.0
-async-timeout==3.0.1
-attrs==19.1.0
-certifi==2019.3.9
-cffi==1.12.2
-chardet==3.0.4
-cryptography==2.6.1
-idna==2.8
-multidict==4.5.2
-pycparser==2.19
-PyMySQL==0.9.2
-requests==2.21.0
-six==1.12.0
-tornado==5.1.1
-urllib3==1.24.1
-yarl==1.3.0
diff --git a/Day61-65/code/hello-tornado/templates/chat.html b/Day61-65/code/hello-tornado/templates/chat.html
deleted file mode 100644
index d83fd5c..0000000
--- a/Day61-65/code/hello-tornado/templates/chat.html
+++ /dev/null
@@ -1,67 +0,0 @@
-
-
-
-
-
- Tornado聊天室
-
-
- 聊天室
-
-
-
-
-
-
-
-
-
- 退出聊天室
-
-
-
-
-
diff --git a/Day61-65/code/hello-tornado/templates/login.html b/Day61-65/code/hello-tornado/templates/login.html
deleted file mode 100644
index 69d6c55..0000000
--- a/Day61-65/code/hello-tornado/templates/login.html
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
-
- Tornado聊天室
-
-
-
-
-
-
diff --git a/Day61-65/code/hello-tornado/templates/news.html b/Day61-65/code/hello-tornado/templates/news.html
deleted file mode 100644
index 9665d6b..0000000
--- a/Day61-65/code/hello-tornado/templates/news.html
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
- 新闻列表
-
-
- 新闻列表
-
- {% for news in newslist %}
-
-
-
{{news['title']}}
-
- {% end %}
-
-
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/service/handlers/__init__.py b/Day61-65/code/image360/image360/__init__.py
similarity index 100%
rename from Day61-65/code/project_of_tornado/service/handlers/__init__.py
rename to Day61-65/code/image360/image360/__init__.py
diff --git a/Day66-75/code/image360/image360/items.py b/Day61-65/code/image360/image360/items.py
similarity index 100%
rename from Day66-75/code/image360/image360/items.py
rename to Day61-65/code/image360/image360/items.py
diff --git a/Day66-75/code/image360/image360/middlewares.py b/Day61-65/code/image360/image360/middlewares.py
similarity index 100%
rename from Day66-75/code/image360/image360/middlewares.py
rename to Day61-65/code/image360/image360/middlewares.py
diff --git a/Day66-75/code/image360/image360/pipelines.py b/Day61-65/code/image360/image360/pipelines.py
similarity index 100%
rename from Day66-75/code/image360/image360/pipelines.py
rename to Day61-65/code/image360/image360/pipelines.py
diff --git a/Day66-75/code/image360/image360/settings.py b/Day61-65/code/image360/image360/settings.py
similarity index 100%
rename from Day66-75/code/image360/image360/settings.py
rename to Day61-65/code/image360/image360/settings.py
diff --git a/Day66-75/code/image360/image360/spiders/__init__.py b/Day61-65/code/image360/image360/spiders/__init__.py
similarity index 100%
rename from Day66-75/code/image360/image360/spiders/__init__.py
rename to Day61-65/code/image360/image360/spiders/__init__.py
diff --git a/Day66-75/code/image360/image360/spiders/image.py b/Day61-65/code/image360/image360/spiders/image.py
similarity index 100%
rename from Day66-75/code/image360/image360/spiders/image.py
rename to Day61-65/code/image360/image360/spiders/image.py
diff --git a/Day66-75/code/image360/image360/spiders/taobao.py b/Day61-65/code/image360/image360/spiders/taobao.py
similarity index 100%
rename from Day66-75/code/image360/image360/spiders/taobao.py
rename to Day61-65/code/image360/image360/spiders/taobao.py
diff --git a/Day66-75/code/image360/scrapy.cfg b/Day61-65/code/image360/scrapy.cfg
similarity index 100%
rename from Day66-75/code/image360/scrapy.cfg
rename to Day61-65/code/image360/scrapy.cfg
diff --git a/Day66-75/code/main.py b/Day61-65/code/main.py
similarity index 100%
rename from Day66-75/code/main.py
rename to Day61-65/code/main.py
diff --git a/Day66-75/code/main_redis.py b/Day61-65/code/main_redis.py
similarity index 100%
rename from Day66-75/code/main_redis.py
rename to Day61-65/code/main_redis.py
diff --git a/Day66-75/code/myutils.py b/Day61-65/code/myutils.py
similarity index 100%
rename from Day66-75/code/myutils.py
rename to Day61-65/code/myutils.py
diff --git a/Day61-65/code/project_of_tornado/assets/css/admin.css b/Day61-65/code/project_of_tornado/assets/css/admin.css
deleted file mode 100644
index 3fd52e0..0000000
--- a/Day61-65/code/project_of_tornado/assets/css/admin.css
+++ /dev/null
@@ -1,373 +0,0 @@
-/**
- * admin.css
- */
-
-
-/*
- fixed-layout 固定头部和边栏布局
-*/
-
-html,
-body {
- height: 100%;
- overflow: hidden;
-}
-
-ul {
- margin-top: 0;
-}
-
-.admin-icon-yellow {
- color: #ffbe40;
-}
-
-.admin-header {
- position: fixed;
- top: 0;
- left: 0;
- right: 0;
- z-index: 1500;
- font-size: 1.4rem;
- margin-bottom: 0;
-}
-
-.admin-header-list a:hover :after {
- content: none;
-}
-
-.admin-main {
- position: relative;
- height: 100%;
- padding-top: 51px;
- background: #f3f3f3;
-}
-
-.admin-menu {
- position: fixed;
- z-index: 10;
- bottom: 30px;
- right: 20px;
-}
-
-.admin-sidebar {
- width: 260px;
- min-height: 100%;
- float: left;
- border-right: 1px solid #cecece;
-}
-
-.admin-sidebar.am-active {
- z-index: 1600;
-}
-
-.admin-sidebar-list {
- margin-bottom: 0;
-}
-
-.admin-sidebar-list li a {
- color: #5c5c5c;
- padding-left: 24px;
-}
-
-.admin-sidebar-list li:first-child {
- border-top: none;
-}
-
-.admin-sidebar-sub {
- margin-top: 0;
- margin-bottom: 0;
- box-shadow: 0 16px 8px -15px #e2e2e2 inset;
- background: #ececec;
- padding-left: 24px;
-}
-
-.admin-sidebar-sub li:first-child {
- border-top: 1px solid #dedede;
-}
-
-.admin-sidebar-panel {
- margin: 10px;
-}
-
-.admin-content {
- display: -webkit-box;
- display: -webkit-flex;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-orient: vertical;
- -webkit-box-direction: normal;
- -webkit-flex-direction: column;
- -ms-flex-direction: column;
- flex-direction: column;
- background: #fff;
-}
-
-.admin-content,
-.admin-sidebar {
- height: 100%;
- overflow-x: hidden;
- overflow-y: scroll;
- -webkit-overflow-scrolling: touch;
-}
-
-.admin-content-body {
- -webkit-box-flex: 1;
- -webkit-flex: 1 0 auto;
- -ms-flex: 1 0 auto;
- flex: 1 0 auto;
-}
-
-.admin-content-footer {
- font-size: 85%;
- color: #777;
-}
-
-.admin-content-list {
- border: 1px solid #e9ecf1;
- margin-top: 0;
-}
-
-.admin-content-list li {
- border: 1px solid #e9ecf1;
- border-width: 0 1px;
- margin-left: -1px;
-}
-
-.admin-content-list li:first-child {
- border-left: none;
-}
-
-.admin-content-list li:last-child {
- border-right: none;
-}
-
-.admin-content-table a {
- color: #535353;
-}
-.admin-content-file {
- margin-bottom: 0;
- color: #666;
-}
-
-.admin-content-file p {
- margin: 0 0 5px 0;
- font-size: 1.4rem;
-}
-
-.admin-content-file li {
- padding: 10px 0;
-}
-
-.admin-content-file li:first-child {
- border-top: none;
-}
-
-.admin-content-file li:last-child {
- border-bottom: none;
-}
-
-.admin-content-file li .am-progress {
- margin-bottom: 4px;
-}
-
-.admin-content-file li .am-progress-bar {
- line-height: 14px;
-}
-
-.admin-content-task {
- margin-bottom: 0;
-}
-
-.admin-content-task li {
- padding: 5px 0;
- border-color: #eee;
-}
-
-.admin-content-task li:first-child {
- border-top: none;
-}
-
-.admin-content-task li:last-child {
- border-bottom: none;
-}
-
-.admin-task-meta {
- font-size: 1.2rem;
- color: #999;
-}
-
-.admin-task-bd {
- font-size: 1.4rem;
- margin-bottom: 5px;
-}
-
-.admin-content-comment {
- margin-bottom: 0;
-}
-
-.admin-content-comment .am-comment-bd {
- font-size: 1.4rem;
-}
-
-.admin-content-pagination {
- margin-bottom: 0;
-}
-.admin-content-pagination li a {
- padding: 4px 8px;
-}
-
-@media only screen and (min-width: 641px) {
- .admin-sidebar {
- display: block;
- position: static;
- background: none;
- }
-
- .admin-offcanvas-bar {
- position: static;
- width: auto;
- background: none;
- -webkit-transform: translate3d(0, 0, 0);
- -ms-transform: translate3d(0, 0, 0);
- transform: translate3d(0, 0, 0);
- overflow-y: visible;
- min-height: 100%;
- }
- .admin-offcanvas-bar:after {
- content: none;
- }
-}
-
-@media only screen and (max-width: 640px) {
- .admin-sidebar {
- width: inherit;
- }
-
- .admin-offcanvas-bar {
- background: #f3f3f3;
- }
-
- .admin-offcanvas-bar:after {
- background: #BABABA;
- }
-
- .admin-sidebar-list a:hover, .admin-sidebar-list a:active{
- -webkit-transition: background-color .3s ease;
- -moz-transition: background-color .3s ease;
- -ms-transition: background-color .3s ease;
- -o-transition: background-color .3s ease;
- transition: background-color .3s ease;
- background: #E4E4E4;
- }
-
- .admin-content-list li {
- padding: 10px;
- border-width: 1px 0;
- margin-top: -1px;
- }
-
- .admin-content-list li:first-child {
- border-top: none;
- }
-
- .admin-content-list li:last-child {
- border-bottom: none;
- }
-
- .admin-form-text {
- text-align: left !important;
- }
-
-}
-
-/*
-* user.html css
-*/
-.user-info {
- margin-bottom: 15px;
-}
-
-.user-info .am-progress {
- margin-bottom: 4px;
-}
-
-.user-info p {
- margin: 5px;
-}
-
-.user-info-order {
- font-size: 1.4rem;
-}
-
-/*
-* errorLog.html css
-*/
-
-.error-log .am-pre-scrollable {
- max-height: 40rem;
-}
-
-/*
-* table.html css
-*/
-
-.table-main {
- font-size: 1.4rem;
- padding: .5rem;
-}
-
-.table-main button {
- background: #fff;
-}
-
-.table-check {
- width: 30px;
-}
-
-.table-id {
- width: 50px;
-}
-
-@media only screen and (max-width: 640px) {
- .table-select {
- margin-top: 10px;
- margin-left: 5px;
- }
-}
-
-/*
-gallery.html css
-*/
-
-.gallery-list li {
- padding: 10px;
-}
-
-.gallery-list a {
- color: #666;
-}
-
-.gallery-list a:hover {
- color: #3bb4f2;
-}
-
-.gallery-title {
- margin-top: 6px;
- font-size: 1.4rem;
-}
-
-.gallery-desc {
- font-size: 1.2rem;
- margin-top: 4px;
-}
-
-/*
- 404.html css
-*/
-
-.page-404 {
- background: #fff;
- border: none;
- width: 200px;
- margin: 0 auto;
-}
diff --git a/Day61-65/code/project_of_tornado/assets/css/amazeui.datatables.min.css b/Day61-65/code/project_of_tornado/assets/css/amazeui.datatables.min.css
deleted file mode 100644
index f579a99..0000000
--- a/Day61-65/code/project_of_tornado/assets/css/amazeui.datatables.min.css
+++ /dev/null
@@ -1 +0,0 @@
-.am-datatable-hd{margin-bottom:10px}.am-datatable-hd label{font-weight:400}.am-datatable-filter{text-align:right}.am-datatable-filter input{margin-left:.5em}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.dataTable thead .sorting:after{position:absolute;top:50%;margin-top:-12px;right:8px;display:block;font-weight:400}table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_desc:after{position:absolute;top:50%;margin-top:-12px;right:8px;display:block;opacity:.5;font-weight:400}table.dataTable thead .sorting:after{opacity:.2;content:"\f0dc"}table.dataTable thead .sorting_asc:after{content:"\f15d"}table.dataTable thead .sorting_desc:after{content:"\f15e"}div.DTFC_LeftBodyWrapper table.dataTable thead .sorting:after,div.DTFC_LeftBodyWrapper table.dataTable thead .sorting_asc:after,div.DTFC_LeftBodyWrapper table.dataTable thead .sorting_desc:after,div.DTFC_RightBodyWrapper table.dataTable thead .sorting:after,div.DTFC_RightBodyWrapper table.dataTable thead .sorting_asc:after,div.DTFC_RightBodyWrapper table.dataTable thead .sorting_desc:after,div.dataTables_scrollBody table.dataTable thead .sorting:after,div.dataTables_scrollBody table.dataTable thead .sorting_asc:after,div.dataTables_scrollBody table.dataTable thead .sorting_desc:after{display:none}table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:after{color:#eee}table.dataTable thead>tr>th{padding-right:30px}table.dataTable th:active{outline:none}table.dataTable.table-condensed thead>tr>th{padding-right:20px}table.dataTable.table-condensed thead .sorting:after,table.dataTable.table-condensed thead .sorting_asc:after,table.dataTable.table-condensed thead .sorting_desc:after{top:6px;right:6px}div.dataTables_scrollHead table{margin-bottom:0!important;border-bottom-left-radius:0;border-bottom-right-radius:0}div.DTFC_LeftHeadWrapper table thead tr:last-child td:first-child,div.DTFC_LeftHeadWrapper table thead tr:last-child th:first-child,div.DTFC_RightHeadWrapper table thead tr:last-child td:first-child,div.DTFC_RightHeadWrapper table thead tr:last-child th:first-child,div.dataTables_scrollHead table thead tr:last-child td:first-child,div.dataTables_scrollHead table thead tr:last-child th:first-child{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}div.dataTables_scrollBody table{border-top:none;margin-top:0!important;margin-bottom:0!important}div.DTFC_LeftBodyWrapper tbody tr:first-child td,div.DTFC_LeftBodyWrapper tbody tr:first-child th,div.DTFC_RightBodyWrapper tbody tr:first-child td,div.DTFC_RightBodyWrapper tbody tr:first-child th,div.dataTables_scrollBody tbody tr:first-child td,div.dataTables_scrollBody tbody tr:first-child th{border-top:none}div.dataTables_scrollFoot table{margin-top:0!important;border-top:none}table.table-bordered.dataTable{border-collapse:separate!important}table.table-bordered thead td,table.table-bordered thead th{border-left-width:0;border-top-width:0}table.table-bordered tbody td,table.table-bordered tbody th,table.table-bordered tfoot td,table.table-bordered tfoot th{border-left-width:0;border-bottom-width:0}table.table-bordered td:last-child,table.table-bordered th:last-child{border-right-width:0}div.dataTables_scrollHead table.table-bordered{border-bottom-width:0}.table.dataTable tbody tr.active td,.table.dataTable tbody tr.active th{background-color:#08c;color:#fff}.table.dataTable tbody tr.active:hover td,.table.dataTable tbody tr.active:hover th{background-color:#0075b0!important}.table.dataTable tbody tr.active td>a,.table.dataTable tbody tr.active th>a{color:#fff}.table-striped.dataTable tbody tr.active:nth-child(odd) td,.table-striped.dataTable tbody tr.active:nth-child(odd) th{background-color:#017ebc}table.DTTT_selectable tbody tr{cursor:pointer}div.DTTT .btn:hover{text-decoration:none!important}ul.DTTT_dropdown.dropdown-menu{z-index:2003}ul.DTTT_dropdown.dropdown-menu a{color:#333!important}ul.DTTT_dropdown.dropdown-menu li{position:relative}ul.DTTT_dropdown.dropdown-menu li:hover a{background-color:#08c;color:#fff!important}div.DTTT_collection_background{z-index:2002}div.DTTT_print_info,div.dataTables_processing{top:50%;left:50%;text-align:center;background-color:#fff}div.DTTT_print_info{color:#333;padding:10px 30px;opacity:.95;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 7px rgba(0,0,0,.5);box-shadow:0 3px 7px rgba(0,0,0,.5);position:fixed;width:400px;height:150px;margin-left:-200px;margin-top:-75px}div.DTTT_print_info h6{font-weight:400;font-size:28px;line-height:28px;margin:1em}div.DTTT_print_info p{font-size:14px;line-height:20px}div.dataTables_processing{position:absolute;width:100%;height:60px;margin-left:-50%;margin-top:-25px;padding-top:20px;padding-bottom:20px;font-size:1.2em;background:-webkit-gradient(linear,left top,right top,color-stop(0%,rgba(255,255,255,0)),color-stop(25%,rgba(255,255,255,.9)),color-stop(75%,rgba(255,255,255,.9)),color-stop(100%,rgba(255,255,255,0)));background:-webkit-linear-gradient(left,rgba(255,255,255,0) 0%,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%);background:-webkit-gradient(linear,left top,right top,from(rgba(255,255,255,0)),color-stop(25%,rgba(255,255,255,.9)),color-stop(75%,rgba(255,255,255,.9)),to(rgba(255,255,255,0)));background:linear-gradient(to right,rgba(255,255,255,0) 0%,rgba(255,255,255,.9) 25%,rgba(255,255,255,.9) 75%,rgba(255,255,255,0) 100%)}div.DTFC_LeftHeadWrapper table{background-color:#fff}div.DTFC_LeftFootWrapper table{background-color:#fff;margin-bottom:0}div.DTFC_RightHeadWrapper table{background-color:#fff}div.DTFC_RightFootWrapper table,table.DTFC_Cloned tr.even{background-color:#fff;margin-bottom:0}div.DTFC_LeftHeadWrapper table,div.DTFC_RightHeadWrapper table{border-bottom:none!important;margin-bottom:0!important;border-top-right-radius:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}div.DTFC_LeftBodyWrapper table,div.DTFC_RightBodyWrapper table{border-top:none;margin:0!important}div.DTFC_LeftFootWrapper table,div.DTFC_RightFootWrapper table{border-top:none;margin-top:0!important}div.FixedHeader_Cloned table{margin:0!important}.am-datatable-pager{margin-top:0;margin-bottom:0}.am-datatable-info{padding-top:6px;color:#555;font-size:1.4rem}table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child,table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child{position:relative;padding-left:30px;cursor:pointer}table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child:before,table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child:before{top:8px;left:4px;height:16px;width:16px;display:block;position:absolute;color:#fff;border:2px solid #fff;border-radius:16px;text-align:center;line-height:14px;-webkit-box-shadow:0 0 3px #444;box-shadow:0 0 3px #444;-webkit-box-sizing:content-box;box-sizing:content-box;content:'+';background-color:#31b131}table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child.dataTables_empty:before,table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child.dataTables_empty:before{display:none}table.dataTable.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before,table.dataTable.dtr-inline.collapsed>tbody>tr.parent>th:first-child:before{content:'-';background-color:#d33333}table.dataTable.dtr-inline.collapsed>tbody>tr.child td:before{display:none}table.dataTable.dtr-inline.collapsed.compact>tbody>tr>td:first-child,table.dataTable.dtr-inline.collapsed.compact>tbody>tr>th:first-child{padding-left:27px}table.dataTable.dtr-inline.collapsed.compact>tbody>tr>td:first-child:before,table.dataTable.dtr-inline.collapsed.compact>tbody>tr>th:first-child:before{top:5px;left:4px;height:14px;width:14px;border-radius:14px;line-height:12px}table.dataTable.dtr-column>tbody>tr>td.control,table.dataTable.dtr-column>tbody>tr>th.control{position:relative;cursor:pointer}table.dataTable.dtr-column>tbody>tr>td.control:before,table.dataTable.dtr-column>tbody>tr>th.control:before{top:50%;left:50%;height:16px;width:16px;margin-top:-10px;margin-left:-10px;display:block;position:absolute;color:#fff;border:2px solid #fff;border-radius:16px;text-align:center;line-height:14px;-webkit-box-shadow:0 0 3px #666;box-shadow:0 0 3px #666;-webkit-box-sizing:content-box;box-sizing:content-box;content:'+';background-color:#5eb95e}table.dataTable.dtr-column>tbody>tr.parent td.control:before,table.dataTable.dtr-column>tbody>tr.parent th.control:before{content:'-';background-color:#dd514c}table.dataTable>tbody>tr.child{padding:.5em 1em}table.dataTable>tbody>tr.child:hover{background:0 0!important}table.dataTable>tbody>tr.child ul{display:inline-block;list-style-type:none;margin:0;padding:0}table.dataTable>tbody>tr.child ul li{border-bottom:1px solid #efefef;padding:.5em 0}table.dataTable>tbody>tr.child ul li:first-child{padding-top:0}table.dataTable>tbody>tr.child ul li:last-child{border-bottom:none}table.dataTable>tbody>tr.child span.dtr-title{display:inline-block;min-width:75px;font-weight:700}
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/css/amazeui.min.css b/Day61-65/code/project_of_tornado/assets/css/amazeui.min.css
deleted file mode 100644
index 39263eb..0000000
--- a/Day61-65/code/project_of_tornado/assets/css/amazeui.min.css
+++ /dev/null
@@ -1 +0,0 @@
-/*! Amaze UI v2.7.2 | by Amaze UI Team | (c) 2016 AllMobilize, Inc. | Licensed under MIT | 2016-08-17T16:17:24+0800 */*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box}body,html{min-height:100%}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],script,template{display:none}a{background-color:transparent}a:focus{outline:thin dotted}a:active,a:hover{outline:0}a,ins{text-decoration:none}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{-webkit-box-sizing:border-box;box-sizing:border-box;vertical-align:middle;border:0}svg:not(:root){overflow:hidden}figure{margin:0}code,kbd,pre,samp{font-family:Monaco,Menlo,Consolas,"Courier New",FontAwesome,monospace;font-size:1em}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,input{line-height:normal}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}input[type=checkbox],input[type=radio]{cursor:pointer;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top;resize:vertical}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{position:relative;background:#fff;font-family:"Segoe UI","Lucida Grande",Helvetica,Arial,"Microsoft YaHei",FreeSans,Arimo,"Droid Sans","wenquanyi micro hei","Hiragino Sans GB","Hiragino Sans GB W3",FontAwesome,sans-serif;font-weight:400;line-height:1.6;color:#333;font-size:1.6rem}body,button,input,select,textarea{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-font-feature-settings:"liga","kern"}@media only screen and (max-width:640px){body{word-wrap:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;-moz-hyphens:auto;hyphens:auto}}a{color:#0e90d2}a:focus,a:hover{color:#095f8a}a:focus{outline:thin dotted;outline:1px auto -webkit-focus-ring-color;outline-offset:-2px}ins{background:#ffa;color:#333}mark{background:#ffa;color:#333}abbr[title],dfn[title]{cursor:help}dfn[title]{border-bottom:1px dotted;font-style:normal}address,blockquote,dl,fieldset,figure,hr,ol,p,pre,ul{margin:0 0 1.6rem 0}*+address,*+blockquote,*+dl,*+fieldset,*+figure,*+hr,*+ol,*+p,*+pre,*+ul{margin-top:1.6rem}h1,h2,h3,h4,h5,h6{margin:0 0 1.6rem 0;font-weight:600;font-size:100%}h1{font-size:1.5em}h2{font-size:1.25em}*+h1,*+h2,*+h3,*+h4,*+h5,*+h6{margin-top:2em}ol,ul{padding-left:2em}ol>li>ol,ol>li>ul,ul>li>ol,ul>li>ul{margin:1em 0}dt{font-weight:700}dt+dd{margin-top:.5em}dd{margin-left:0}dd+dt{margin-top:1em}hr{display:block;padding:0;border:0;height:0;border-top:1px solid #eee;-webkit-box-sizing:content-box;box-sizing:content-box}address{font-style:normal}blockquote{padding-top:5px;padding-bottom:5px;padding-left:15px;border-left:4px solid #ddd;font-family:Georgia,"Times New Roman",Times,Kai,"Kaiti SC",KaiTi,BiauKai,FontAwesome,serif}blockquote small{display:block;color:#999;font-family:"Segoe UI","Lucida Grande",Helvetica,Arial,"Microsoft YaHei",FreeSans,Arimo,"Droid Sans","wenquanyi micro hei","Hiragino Sans GB","Hiragino Sans GB W3",FontAwesome,sans-serif;text-align:right}blockquote p:last-of-type{margin-bottom:0}iframe{border:0}button,input:not([type=radio]):not([type=checkbox]),select{vertical-align:middle}.am-scrollbar-measure{width:100px;height:100px;overflow:scroll;position:absolute;top:-9999px}.am-container{-webkit-box-sizing:border-box;box-sizing:border-box;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem;width:100%;max-width:1000px}.am-container:after,.am-container:before{content:" ";display:table}.am-container:after{clear:both}@media only screen and (min-width:641px){.am-container{padding-left:1.5rem;padding-right:1.5rem}}.am-container>.am-g{width:auto;margin-left:-1rem;margin-right:-1rem}@media only screen and (min-width:641px){.am-container>.am-g{margin-left:-1.5rem;margin-right:-1.5rem}}.am-g{margin:0 auto;width:100%}.am-g:after,.am-g:before{content:" ";display:table}.am-g:after{clear:both}.am-g .am-g{margin-left:-1rem;margin-right:-1rem;width:auto}.am-g .am-g.am-g-collapse{margin-left:0;margin-right:0;width:auto}@media only screen and (min-width:641px){.am-g .am-g{margin-left:-1.5rem;margin-right:-1.5rem}}.am-g.am-g-collapse .am-g{margin-left:0;margin-right:0}.am-g-collapse [class*=am-u-]{padding-left:0;padding-right:0}.am-g-fixed{max-width:1000px}[class*=am-u-]{width:100%;padding-left:1rem;padding-right:1rem;float:left;position:relative}[class*=am-u-]+[class*=am-u-]:last-child{float:right}[class*=am-u-]+[class*=am-u-].am-u-end{float:left}@media only screen and (min-width:641px){[class*=am-u-]{padding-left:1.5rem;padding-right:1.5rem}}[class*=am-u-pull-]{left:auto}[class*=am-u-push-]{right:auto}@media only screen{.am-u-sm-1{width:8.33333333%}.am-u-sm-2{width:16.66666667%}.am-u-sm-3{width:25%}.am-u-sm-4{width:33.33333333%}.am-u-sm-5{width:41.66666667%}.am-u-sm-6{width:50%}.am-u-sm-7{width:58.33333333%}.am-u-sm-8{width:66.66666667%}.am-u-sm-9{width:75%}.am-u-sm-10{width:83.33333333%}.am-u-sm-11{width:91.66666667%}.am-u-sm-12{width:100%}.am-u-sm-pull-0{right:0}.am-u-sm-pull-1{right:8.33333333%}.am-u-sm-pull-2{right:16.66666667%}.am-u-sm-pull-3{right:25%}.am-u-sm-pull-4{right:33.33333333%}.am-u-sm-pull-5{right:41.66666667%}.am-u-sm-pull-6{right:50%}.am-u-sm-pull-7{right:58.33333333%}.am-u-sm-pull-8{right:66.66666667%}.am-u-sm-pull-9{right:75%}.am-u-sm-pull-10{right:83.33333333%}.am-u-sm-pull-11{right:91.66666667%}.am-u-sm-push-0{left:0}.am-u-sm-push-1{left:8.33333333%}.am-u-sm-push-2{left:16.66666667%}.am-u-sm-push-3{left:25%}.am-u-sm-push-4{left:33.33333333%}.am-u-sm-push-5{left:41.66666667%}.am-u-sm-push-6{left:50%}.am-u-sm-push-7{left:58.33333333%}.am-u-sm-push-8{left:66.66666667%}.am-u-sm-push-9{left:75%}.am-u-sm-push-10{left:83.33333333%}.am-u-sm-push-11{left:91.66666667%}.am-u-sm-offset-0{margin-left:0}.am-u-sm-offset-1{margin-left:8.33333333%}.am-u-sm-offset-2{margin-left:16.66666667%}.am-u-sm-offset-3{margin-left:25%}.am-u-sm-offset-4{margin-left:33.33333333%}.am-u-sm-offset-5{margin-left:41.66666667%}.am-u-sm-offset-6{margin-left:50%}.am-u-sm-offset-7{margin-left:58.33333333%}.am-u-sm-offset-8{margin-left:66.66666667%}.am-u-sm-offset-9{margin-left:75%}.am-u-sm-offset-10{margin-left:83.33333333%}.am-u-sm-offset-11{margin-left:91.66666667%}.am-u-sm-reset-order{margin-left:0;margin-right:0;left:auto;right:auto;float:left}[class*=am-u-].am-u-sm-centered{margin-left:auto;margin-right:auto;float:none}[class*=am-u-].am-u-sm-centered:last-child{float:none}[class*=am-u-].am-u-sm-uncentered{margin-left:0;margin-right:0;float:left}[class*=am-u-].am-u-sm-uncentered:last-child{float:left}}@media only screen and (min-width:641px){.am-u-md-1{width:8.33333333%}.am-u-md-2{width:16.66666667%}.am-u-md-3{width:25%}.am-u-md-4{width:33.33333333%}.am-u-md-5{width:41.66666667%}.am-u-md-6{width:50%}.am-u-md-7{width:58.33333333%}.am-u-md-8{width:66.66666667%}.am-u-md-9{width:75%}.am-u-md-10{width:83.33333333%}.am-u-md-11{width:91.66666667%}.am-u-md-12{width:100%}.am-u-md-pull-0{right:0}.am-u-md-pull-1{right:8.33333333%}.am-u-md-pull-2{right:16.66666667%}.am-u-md-pull-3{right:25%}.am-u-md-pull-4{right:33.33333333%}.am-u-md-pull-5{right:41.66666667%}.am-u-md-pull-6{right:50%}.am-u-md-pull-7{right:58.33333333%}.am-u-md-pull-8{right:66.66666667%}.am-u-md-pull-9{right:75%}.am-u-md-pull-10{right:83.33333333%}.am-u-md-pull-11{right:91.66666667%}.am-u-md-push-0{left:0}.am-u-md-push-1{left:8.33333333%}.am-u-md-push-2{left:16.66666667%}.am-u-md-push-3{left:25%}.am-u-md-push-4{left:33.33333333%}.am-u-md-push-5{left:41.66666667%}.am-u-md-push-6{left:50%}.am-u-md-push-7{left:58.33333333%}.am-u-md-push-8{left:66.66666667%}.am-u-md-push-9{left:75%}.am-u-md-push-10{left:83.33333333%}.am-u-md-push-11{left:91.66666667%}.am-u-md-offset-0{margin-left:0}.am-u-md-offset-1{margin-left:8.33333333%}.am-u-md-offset-2{margin-left:16.66666667%}.am-u-md-offset-3{margin-left:25%}.am-u-md-offset-4{margin-left:33.33333333%}.am-u-md-offset-5{margin-left:41.66666667%}.am-u-md-offset-6{margin-left:50%}.am-u-md-offset-7{margin-left:58.33333333%}.am-u-md-offset-8{margin-left:66.66666667%}.am-u-md-offset-9{margin-left:75%}.am-u-md-offset-10{margin-left:83.33333333%}.am-u-md-offset-11{margin-left:91.66666667%}.am-u-md-reset-order{margin-left:0;margin-right:0;left:auto;right:auto;float:left}[class*=am-u-].am-u-md-centered{margin-left:auto;margin-right:auto;float:none}[class*=am-u-].am-u-md-centered:last-child{float:none}[class*=am-u-].am-u-md-uncentered{margin-left:0;margin-right:0;float:left}[class*=am-u-].am-u-md-uncentered:last-child{float:left}}@media only screen and (min-width:1025px){.am-u-lg-1{width:8.33333333%}.am-u-lg-2{width:16.66666667%}.am-u-lg-3{width:25%}.am-u-lg-4{width:33.33333333%}.am-u-lg-5{width:41.66666667%}.am-u-lg-6{width:50%}.am-u-lg-7{width:58.33333333%}.am-u-lg-8{width:66.66666667%}.am-u-lg-9{width:75%}.am-u-lg-10{width:83.33333333%}.am-u-lg-11{width:91.66666667%}.am-u-lg-12{width:100%}.am-u-lg-pull-0{right:0}.am-u-lg-pull-1{right:8.33333333%}.am-u-lg-pull-2{right:16.66666667%}.am-u-lg-pull-3{right:25%}.am-u-lg-pull-4{right:33.33333333%}.am-u-lg-pull-5{right:41.66666667%}.am-u-lg-pull-6{right:50%}.am-u-lg-pull-7{right:58.33333333%}.am-u-lg-pull-8{right:66.66666667%}.am-u-lg-pull-9{right:75%}.am-u-lg-pull-10{right:83.33333333%}.am-u-lg-pull-11{right:91.66666667%}.am-u-lg-push-0{left:0}.am-u-lg-push-1{left:8.33333333%}.am-u-lg-push-2{left:16.66666667%}.am-u-lg-push-3{left:25%}.am-u-lg-push-4{left:33.33333333%}.am-u-lg-push-5{left:41.66666667%}.am-u-lg-push-6{left:50%}.am-u-lg-push-7{left:58.33333333%}.am-u-lg-push-8{left:66.66666667%}.am-u-lg-push-9{left:75%}.am-u-lg-push-10{left:83.33333333%}.am-u-lg-push-11{left:91.66666667%}.am-u-lg-offset-0{margin-left:0}.am-u-lg-offset-1{margin-left:8.33333333%}.am-u-lg-offset-2{margin-left:16.66666667%}.am-u-lg-offset-3{margin-left:25%}.am-u-lg-offset-4{margin-left:33.33333333%}.am-u-lg-offset-5{margin-left:41.66666667%}.am-u-lg-offset-6{margin-left:50%}.am-u-lg-offset-7{margin-left:58.33333333%}.am-u-lg-offset-8{margin-left:66.66666667%}.am-u-lg-offset-9{margin-left:75%}.am-u-lg-offset-10{margin-left:83.33333333%}.am-u-lg-offset-11{margin-left:91.66666667%}.am-u-lg-reset-order{margin-left:0;margin-right:0;left:auto;right:auto;float:left}[class*=am-u-].am-u-lg-centered{margin-left:auto;margin-right:auto;float:none}[class*=am-u-].am-u-lg-centered:last-child{float:none}[class*=am-u-].am-u-lg-uncentered{margin-left:0;margin-right:0;float:left}[class*=am-u-].am-u-lg-uncentered:last-child{float:left}}[class*=am-avg-]{display:block;padding:0;margin:0;list-style:none}[class*=am-avg-]:after,[class*=am-avg-]:before{content:" ";display:table}[class*=am-avg-]:after{clear:both}[class*=am-avg-]>li{display:block;height:auto;float:left}@media only screen{.am-avg-sm-1>li{width:100%}.am-avg-sm-1>li:nth-of-type(n){clear:none}.am-avg-sm-1>li:nth-of-type(1n+1){clear:both}.am-avg-sm-2>li{width:50%}.am-avg-sm-2>li:nth-of-type(n){clear:none}.am-avg-sm-2>li:nth-of-type(2n+1){clear:both}.am-avg-sm-3>li{width:33.33333333%}.am-avg-sm-3>li:nth-of-type(n){clear:none}.am-avg-sm-3>li:nth-of-type(3n+1){clear:both}.am-avg-sm-4>li{width:25%}.am-avg-sm-4>li:nth-of-type(n){clear:none}.am-avg-sm-4>li:nth-of-type(4n+1){clear:both}.am-avg-sm-5>li{width:20%}.am-avg-sm-5>li:nth-of-type(n){clear:none}.am-avg-sm-5>li:nth-of-type(5n+1){clear:both}.am-avg-sm-6>li{width:16.66666667%}.am-avg-sm-6>li:nth-of-type(n){clear:none}.am-avg-sm-6>li:nth-of-type(6n+1){clear:both}.am-avg-sm-7>li{width:14.28571429%}.am-avg-sm-7>li:nth-of-type(n){clear:none}.am-avg-sm-7>li:nth-of-type(7n+1){clear:both}.am-avg-sm-8>li{width:12.5%}.am-avg-sm-8>li:nth-of-type(n){clear:none}.am-avg-sm-8>li:nth-of-type(8n+1){clear:both}.am-avg-sm-9>li{width:11.11111111%}.am-avg-sm-9>li:nth-of-type(n){clear:none}.am-avg-sm-9>li:nth-of-type(9n+1){clear:both}.am-avg-sm-10>li{width:10%}.am-avg-sm-10>li:nth-of-type(n){clear:none}.am-avg-sm-10>li:nth-of-type(10n+1){clear:both}.am-avg-sm-11>li{width:9.09090909%}.am-avg-sm-11>li:nth-of-type(n){clear:none}.am-avg-sm-11>li:nth-of-type(11n+1){clear:both}.am-avg-sm-12>li{width:8.33333333%}.am-avg-sm-12>li:nth-of-type(n){clear:none}.am-avg-sm-12>li:nth-of-type(12n+1){clear:both}}@media only screen and (min-width:641px){.am-avg-md-1>li{width:100%}.am-avg-md-1>li:nth-of-type(n){clear:none}.am-avg-md-1>li:nth-of-type(1n+1){clear:both}.am-avg-md-2>li{width:50%}.am-avg-md-2>li:nth-of-type(n){clear:none}.am-avg-md-2>li:nth-of-type(2n+1){clear:both}.am-avg-md-3>li{width:33.33333333%}.am-avg-md-3>li:nth-of-type(n){clear:none}.am-avg-md-3>li:nth-of-type(3n+1){clear:both}.am-avg-md-4>li{width:25%}.am-avg-md-4>li:nth-of-type(n){clear:none}.am-avg-md-4>li:nth-of-type(4n+1){clear:both}.am-avg-md-5>li{width:20%}.am-avg-md-5>li:nth-of-type(n){clear:none}.am-avg-md-5>li:nth-of-type(5n+1){clear:both}.am-avg-md-6>li{width:16.66666667%}.am-avg-md-6>li:nth-of-type(n){clear:none}.am-avg-md-6>li:nth-of-type(6n+1){clear:both}.am-avg-md-7>li{width:14.28571429%}.am-avg-md-7>li:nth-of-type(n){clear:none}.am-avg-md-7>li:nth-of-type(7n+1){clear:both}.am-avg-md-8>li{width:12.5%}.am-avg-md-8>li:nth-of-type(n){clear:none}.am-avg-md-8>li:nth-of-type(8n+1){clear:both}.am-avg-md-9>li{width:11.11111111%}.am-avg-md-9>li:nth-of-type(n){clear:none}.am-avg-md-9>li:nth-of-type(9n+1){clear:both}.am-avg-md-10>li{width:10%}.am-avg-md-10>li:nth-of-type(n){clear:none}.am-avg-md-10>li:nth-of-type(10n+1){clear:both}.am-avg-md-11>li{width:9.09090909%}.am-avg-md-11>li:nth-of-type(n){clear:none}.am-avg-md-11>li:nth-of-type(11n+1){clear:both}.am-avg-md-12>li{width:8.33333333%}.am-avg-md-12>li:nth-of-type(n){clear:none}.am-avg-md-12>li:nth-of-type(12n+1){clear:both}}@media only screen and (min-width:1025px){.am-avg-lg-1>li{width:100%}.am-avg-lg-1>li:nth-of-type(n){clear:none}.am-avg-lg-1>li:nth-of-type(1n+1){clear:both}.am-avg-lg-2>li{width:50%}.am-avg-lg-2>li:nth-of-type(n){clear:none}.am-avg-lg-2>li:nth-of-type(2n+1){clear:both}.am-avg-lg-3>li{width:33.33333333%}.am-avg-lg-3>li:nth-of-type(n){clear:none}.am-avg-lg-3>li:nth-of-type(3n+1){clear:both}.am-avg-lg-4>li{width:25%}.am-avg-lg-4>li:nth-of-type(n){clear:none}.am-avg-lg-4>li:nth-of-type(4n+1){clear:both}.am-avg-lg-5>li{width:20%}.am-avg-lg-5>li:nth-of-type(n){clear:none}.am-avg-lg-5>li:nth-of-type(5n+1){clear:both}.am-avg-lg-6>li{width:16.66666667%}.am-avg-lg-6>li:nth-of-type(n){clear:none}.am-avg-lg-6>li:nth-of-type(6n+1){clear:both}.am-avg-lg-7>li{width:14.28571429%}.am-avg-lg-7>li:nth-of-type(n){clear:none}.am-avg-lg-7>li:nth-of-type(7n+1){clear:both}.am-avg-lg-8>li{width:12.5%}.am-avg-lg-8>li:nth-of-type(n){clear:none}.am-avg-lg-8>li:nth-of-type(8n+1){clear:both}.am-avg-lg-9>li{width:11.11111111%}.am-avg-lg-9>li:nth-of-type(n){clear:none}.am-avg-lg-9>li:nth-of-type(9n+1){clear:both}.am-avg-lg-10>li{width:10%}.am-avg-lg-10>li:nth-of-type(n){clear:none}.am-avg-lg-10>li:nth-of-type(10n+1){clear:both}.am-avg-lg-11>li{width:9.09090909%}.am-avg-lg-11>li:nth-of-type(n){clear:none}.am-avg-lg-11>li:nth-of-type(11n+1){clear:both}.am-avg-lg-12>li{width:8.33333333%}.am-avg-lg-12>li:nth-of-type(n){clear:none}.am-avg-lg-12>li:nth-of-type(12n+1){clear:both}}code,kbd,pre,samp{font-family:Monaco,Menlo,Consolas,"Courier New",FontAwesome,monospace}code{padding:2px 4px;font-size:1.3rem;color:#c7254e;background-color:#f8f8f8;white-space:nowrap;border-radius:0}pre{display:block;padding:1rem;margin:1rem 0;font-size:1.3rem;line-height:1.6;word-break:break-all;word-wrap:break-word;color:#555;background-color:#f8f8f8;border:1px solid #dedede;border-radius:0}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.am-pre-scrollable{max-height:24rem;overflow-y:scroll}.am-btn{display:inline-block;margin-bottom:0;padding:.5em 1em;vertical-align:middle;font-size:1.6rem;font-weight:400;line-height:1.2;text-align:center;white-space:nowrap;background-image:none;border:1px solid transparent;border-radius:0;cursor:pointer;outline:0;-webkit-appearance:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:background-color .3s ease-out,border-color .3s ease-out;transition:background-color .3s ease-out,border-color .3s ease-out}.am-btn:active:focus,.am-btn:focus{outline:thin dotted;outline:1px auto -webkit-focus-ring-color;outline-offset:-2px}.am-btn:focus,.am-btn:hover{color:#444;text-decoration:none}.am-btn.am-active,.am-btn:active{background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.15);box-shadow:inset 0 3px 5px rgba(0,0,0,.15)}.am-btn.am-disabled,.am-btn[disabled],fieldset[disabled] .am-btn{pointer-events:none;border-color:transparent;cursor:not-allowed;opacity:.45;-webkit-box-shadow:none;box-shadow:none}.am-btn.am-round{border-radius:1000px}.am-btn.am-radius{border-radius:2px}.am-btn-default{color:#444;background-color:#e6e6e6;border-color:#e6e6e6}a.am-btn-default:visited{color:#444}.am-btn-default.am-active,.am-btn-default:active,.am-btn-default:focus,.am-btn-default:hover,.am-dropdown.am-active .am-btn-default.am-dropdown-toggle{color:#444;border-color:#c7c7c7}.am-btn-default:focus,.am-btn-default:hover{background-color:#d4d4d4}.am-btn-default.am-active,.am-btn-default:active,.am-dropdown.am-active .am-btn-default.am-dropdown-toggle{background-image:none;background-color:#c2c2c2}.am-btn-default.am-disabled,.am-btn-default.am-disabled.am-active,.am-btn-default.am-disabled:active,.am-btn-default.am-disabled:focus,.am-btn-default.am-disabled:hover,.am-btn-default[disabled],.am-btn-default[disabled].am-active,.am-btn-default[disabled]:active,.am-btn-default[disabled]:focus,.am-btn-default[disabled]:hover,fieldset[disabled] .am-btn-default,fieldset[disabled] .am-btn-default.am-active,fieldset[disabled] .am-btn-default:active,fieldset[disabled] .am-btn-default:focus,fieldset[disabled] .am-btn-default:hover{background-color:#e6e6e6;border-color:#e6e6e6}.am-btn-group .am-btn-default,.am-btn-group-stacked .am-btn-default{border-color:#d9d9d9}.am-btn-primary{color:#fff;background-color:#0e90d2;border-color:#0e90d2}a.am-btn-primary:visited{color:#fff}.am-btn-primary.am-active,.am-btn-primary:active,.am-btn-primary:focus,.am-btn-primary:hover,.am-dropdown.am-active .am-btn-primary.am-dropdown-toggle{color:#fff;border-color:#0a6999}.am-btn-primary:focus,.am-btn-primary:hover{background-color:#0c79b1}.am-btn-primary.am-active,.am-btn-primary:active,.am-dropdown.am-active .am-btn-primary.am-dropdown-toggle{background-image:none;background-color:#0a628f}.am-btn-primary.am-disabled,.am-btn-primary.am-disabled.am-active,.am-btn-primary.am-disabled:active,.am-btn-primary.am-disabled:focus,.am-btn-primary.am-disabled:hover,.am-btn-primary[disabled],.am-btn-primary[disabled].am-active,.am-btn-primary[disabled]:active,.am-btn-primary[disabled]:focus,.am-btn-primary[disabled]:hover,fieldset[disabled] .am-btn-primary,fieldset[disabled] .am-btn-primary.am-active,fieldset[disabled] .am-btn-primary:active,fieldset[disabled] .am-btn-primary:focus,fieldset[disabled] .am-btn-primary:hover{background-color:#0e90d2;border-color:#0e90d2}.am-btn-group .am-btn-primary,.am-btn-group-stacked .am-btn-primary{border-color:#0c80ba}.am-btn-secondary{color:#fff;background-color:#3bb4f2;border-color:#3bb4f2}a.am-btn-secondary:visited{color:#fff}.am-btn-secondary.am-active,.am-btn-secondary:active,.am-btn-secondary:focus,.am-btn-secondary:hover,.am-dropdown.am-active .am-btn-secondary.am-dropdown-toggle{color:#fff;border-color:#0f9ae0}.am-btn-secondary:focus,.am-btn-secondary:hover{background-color:#19a7f0}.am-btn-secondary.am-active,.am-btn-secondary:active,.am-dropdown.am-active .am-btn-secondary.am-dropdown-toggle{background-image:none;background-color:#0e93d7}.am-btn-secondary.am-disabled,.am-btn-secondary.am-disabled.am-active,.am-btn-secondary.am-disabled:active,.am-btn-secondary.am-disabled:focus,.am-btn-secondary.am-disabled:hover,.am-btn-secondary[disabled],.am-btn-secondary[disabled].am-active,.am-btn-secondary[disabled]:active,.am-btn-secondary[disabled]:focus,.am-btn-secondary[disabled]:hover,fieldset[disabled] .am-btn-secondary,fieldset[disabled] .am-btn-secondary.am-active,fieldset[disabled] .am-btn-secondary:active,fieldset[disabled] .am-btn-secondary:focus,fieldset[disabled] .am-btn-secondary:hover{background-color:#3bb4f2;border-color:#3bb4f2}.am-btn-group .am-btn-secondary,.am-btn-group-stacked .am-btn-secondary{border-color:#23abf0}.am-btn-warning{color:#fff;background-color:#F37B1D;border-color:#F37B1D}a.am-btn-warning:visited{color:#fff}.am-btn-warning.am-active,.am-btn-warning:active,.am-btn-warning:focus,.am-btn-warning:hover,.am-dropdown.am-active .am-btn-warning.am-dropdown-toggle{color:#fff;border-color:#c85e0b}.am-btn-warning:focus,.am-btn-warning:hover{background-color:#e0690c}.am-btn-warning.am-active,.am-btn-warning:active,.am-dropdown.am-active .am-btn-warning.am-dropdown-toggle{background-image:none;background-color:#be590a}.am-btn-warning.am-disabled,.am-btn-warning.am-disabled.am-active,.am-btn-warning.am-disabled:active,.am-btn-warning.am-disabled:focus,.am-btn-warning.am-disabled:hover,.am-btn-warning[disabled],.am-btn-warning[disabled].am-active,.am-btn-warning[disabled]:active,.am-btn-warning[disabled]:focus,.am-btn-warning[disabled]:hover,fieldset[disabled] .am-btn-warning,fieldset[disabled] .am-btn-warning.am-active,fieldset[disabled] .am-btn-warning:active,fieldset[disabled] .am-btn-warning:focus,fieldset[disabled] .am-btn-warning:hover{background-color:#F37B1D;border-color:#F37B1D}.am-btn-group .am-btn-warning,.am-btn-group-stacked .am-btn-warning{border-color:#ea6e0c}.am-btn-danger{color:#fff;background-color:#dd514c;border-color:#dd514c}a.am-btn-danger:visited{color:#fff}.am-btn-danger.am-active,.am-btn-danger:active,.am-btn-danger:focus,.am-btn-danger:hover,.am-dropdown.am-active .am-btn-danger.am-dropdown-toggle{color:#fff;border-color:#c62b26}.am-btn-danger:focus,.am-btn-danger:hover{background-color:#d7342e}.am-btn-danger.am-active,.am-btn-danger:active,.am-dropdown.am-active .am-btn-danger.am-dropdown-toggle{background-image:none;background-color:#be2924}.am-btn-danger.am-disabled,.am-btn-danger.am-disabled.am-active,.am-btn-danger.am-disabled:active,.am-btn-danger.am-disabled:focus,.am-btn-danger.am-disabled:hover,.am-btn-danger[disabled],.am-btn-danger[disabled].am-active,.am-btn-danger[disabled]:active,.am-btn-danger[disabled]:focus,.am-btn-danger[disabled]:hover,fieldset[disabled] .am-btn-danger,fieldset[disabled] .am-btn-danger.am-active,fieldset[disabled] .am-btn-danger:active,fieldset[disabled] .am-btn-danger:focus,fieldset[disabled] .am-btn-danger:hover{background-color:#dd514c;border-color:#dd514c}.am-btn-group .am-btn-danger,.am-btn-group-stacked .am-btn-danger{border-color:#d93c37}.am-btn-success{color:#fff;background-color:#5eb95e;border-color:#5eb95e}a.am-btn-success:visited{color:#fff}.am-btn-success.am-active,.am-btn-success:active,.am-btn-success:focus,.am-btn-success:hover,.am-dropdown.am-active .am-btn-success.am-dropdown-toggle{color:#fff;border-color:#429842}.am-btn-success:focus,.am-btn-success:hover{background-color:#4aaa4a}.am-btn-success.am-active,.am-btn-success:active,.am-dropdown.am-active .am-btn-success.am-dropdown-toggle{background-image:none;background-color:#3f913f}.am-btn-success.am-disabled,.am-btn-success.am-disabled.am-active,.am-btn-success.am-disabled:active,.am-btn-success.am-disabled:focus,.am-btn-success.am-disabled:hover,.am-btn-success[disabled],.am-btn-success[disabled].am-active,.am-btn-success[disabled]:active,.am-btn-success[disabled]:focus,.am-btn-success[disabled]:hover,fieldset[disabled] .am-btn-success,fieldset[disabled] .am-btn-success.am-active,fieldset[disabled] .am-btn-success:active,fieldset[disabled] .am-btn-success:focus,fieldset[disabled] .am-btn-success:hover{background-color:#5eb95e;border-color:#5eb95e}.am-btn-group .am-btn-success,.am-btn-group-stacked .am-btn-success{border-color:#4db14d}.am-btn-link{color:#0e90d2;font-weight:400;cursor:pointer;border-radius:0}.am-btn-link,.am-btn-link:active,.am-btn-link[disabled],fieldset[disabled] .am-btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.am-btn-link,.am-btn-link:active,.am-btn-link:focus,.am-btn-link:hover{border-color:transparent}.am-btn-link:focus,.am-btn-link:hover{color:#095f8a;text-decoration:underline;background-color:transparent}.am-btn-link[disabled]:focus,.am-btn-link[disabled]:hover,fieldset[disabled] .am-btn-link:focus,fieldset[disabled] .am-btn-link:hover{color:#999;text-decoration:none}.am-btn-xs{font-size:1.2rem}.am-btn-sm{font-size:1.4rem}.am-btn-lg{font-size:1.8rem}.am-btn-xl{font-size:2rem}.am-btn-block{display:block;width:100%;padding-left:0;padding-right:0}.am-btn-block+.am-btn-block{margin-top:5px}input[type=button].am-btn-block,input[type=reset].am-btn-block,input[type=submit].am-btn-block{width:100%}.am-btn.am-btn-loading .am-icon-spin{margin-right:5px}table{max-width:100%;background-color:transparent;empty-cells:show}table code{white-space:normal}th{text-align:left}.am-table{width:100%;margin-bottom:1.6rem;border-spacing:0;border-collapse:separate}.am-table>tbody>tr>td,.am-table>tbody>tr>th,.am-table>tfoot>tr>td,.am-table>tfoot>tr>th,.am-table>thead>tr>td,.am-table>thead>tr>th{padding:.7rem;line-height:1.6;vertical-align:top;border-top:1px solid #ddd}.am-table>thead>tr>th{vertical-align:bottom;border-bottom:1px solid #ddd}.am-table>caption+thead>tr:first-child>td,.am-table>caption+thead>tr:first-child>th,.am-table>colgroup+thead>tr:first-child>td,.am-table>colgroup+thead>tr:first-child>th,.am-table>thead:first-child>tr:first-child>td,.am-table>thead:first-child>tr:first-child>th{border-top:0}.am-table>tbody+tbody tr:first-child td{border-top:2px solid #ddd}.am-table-bordered{border:1px solid #ddd;border-left:none}.am-table-bordered>tbody>tr>td,.am-table-bordered>tbody>tr>th,.am-table-bordered>tfoot>tr>td,.am-table-bordered>tfoot>tr>th,.am-table-bordered>thead>tr>td,.am-table-bordered>thead>tr>th{border-left:1px solid #ddd}.am-table-bordered>tbody>tr:first-child>td,.am-table-bordered>tbody>tr:first-child>th{border-top:none}.am-table-bordered>thead+tbody>tr:first-child>td,.am-table-bordered>thead+tbody>tr:first-child>th{border-top:1px solid #ddd}.am-table-radius{border:1px solid #ddd;border-radius:2px}.am-table-radius>thead>tr:first-child>td:first-child,.am-table-radius>thead>tr:first-child>th:first-child{border-top-left-radius:2px;border-left:none}.am-table-radius>thead>tr:first-child>td:last-child,.am-table-radius>thead>tr:first-child>th:last-child{border-top-right-radius:2px;border-right:none}.am-table-radius>tbody>tr>td:first-child,.am-table-radius>tbody>tr>th:first-child{border-left:none}.am-table-radius>tbody>tr>td:last-child,.am-table-radius>tbody>tr>th:last-child{border-right:none}.am-table-radius>tbody>tr:last-child>td,.am-table-radius>tbody>tr:last-child>th{border-bottom:none}.am-table-radius>tbody>tr:last-child>td:first-child,.am-table-radius>tbody>tr:last-child>th:first-child{border-bottom-left-radius:2px}.am-table-radius>tbody>tr:last-child>td:last-child,.am-table-radius>tbody>tr:last-child>th:last-child{border-bottom-right-radius:2px}.am-table-striped>tbody>tr:nth-child(odd)>td,.am-table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.am-table-hover>tbody>tr:hover>td,.am-table-hover>tbody>tr:hover>th{background-color:#e9e9e9}.am-table-compact>tbody>tr>td,.am-table-compact>tbody>tr>th,.am-table-compact>tfoot>tr>td,.am-table-compact>tfoot>tr>th,.am-table-compact>thead>tr>td,.am-table-compact>thead>tr>th{padding:.4rem}.am-table-centered>tbody>tr>td,.am-table-centered>tbody>tr>th,.am-table-centered>tfoot>tr>td,.am-table-centered>tfoot>tr>th,.am-table-centered>thead>tr>td,.am-table-centered>thead>tr>th{text-align:center}.am-table>tbody>tr.am-active>td,.am-table>tbody>tr.am-active>th,.am-table>tbody>tr>td.am-active,.am-table>tbody>tr>th.am-active,.am-table>tfoot>tr.am-active>td,.am-table>tfoot>tr.am-active>th,.am-table>tfoot>tr>td.am-active,.am-table>tfoot>tr>th.am-active,.am-table>thead>tr.am-active>td,.am-table>thead>tr.am-active>th,.am-table>thead>tr>td.am-active,.am-table>thead>tr>th.am-active{background-color:#ffd}.am-table>tbody>tr.am-disabled>td,.am-table>tbody>tr.am-disabled>th,.am-table>tbody>tr>td.am-disabled,.am-table>tbody>tr>th.am-disabled,.am-table>tfoot>tr.am-disabled>td,.am-table>tfoot>tr.am-disabled>th,.am-table>tfoot>tr>td.am-disabled,.am-table>tfoot>tr>th.am-disabled,.am-table>thead>tr.am-disabled>td,.am-table>thead>tr.am-disabled>th,.am-table>thead>tr>td.am-disabled,.am-table>thead>tr>th.am-disabled{color:#999}.am-table>tbody>tr.am-primary>td,.am-table>tbody>tr.am-primary>th,.am-table>tbody>tr>td.am-primary,.am-table>tbody>tr>th.am-primary,.am-table>tfoot>tr.am-primary>td,.am-table>tfoot>tr.am-primary>th,.am-table>tfoot>tr>td.am-primary,.am-table>tfoot>tr>th.am-primary,.am-table>thead>tr.am-primary>td,.am-table>thead>tr.am-primary>th,.am-table>thead>tr>td.am-primary,.am-table>thead>tr>th.am-primary{color:#0b76ac;background-color:rgba(14,144,210,.115)}.am-table>tbody>tr.am-success>td,.am-table>tbody>tr.am-success>th,.am-table>tbody>tr>td.am-success,.am-table>tbody>tr>th.am-success,.am-table>tfoot>tr.am-success>td,.am-table>tfoot>tr.am-success>th,.am-table>tfoot>tr>td.am-success,.am-table>tfoot>tr>th.am-success,.am-table>thead>tr.am-success>td,.am-table>thead>tr.am-success>th,.am-table>thead>tr>td.am-success,.am-table>thead>tr>th.am-success{color:#5eb95e;background-color:rgba(94,185,94,.115)}.am-table>tbody>tr.am-warning>td,.am-table>tbody>tr.am-warning>th,.am-table>tbody>tr>td.am-warning,.am-table>tbody>tr>th.am-warning,.am-table>tfoot>tr.am-warning>td,.am-table>tfoot>tr.am-warning>th,.am-table>tfoot>tr>td.am-warning,.am-table>tfoot>tr>th.am-warning,.am-table>thead>tr.am-warning>td,.am-table>thead>tr.am-warning>th,.am-table>thead>tr>td.am-warning,.am-table>thead>tr>th.am-warning{color:#F37B1D;background-color:rgba(243,123,29,.115)}.am-table>tbody>tr.am-danger>td,.am-table>tbody>tr.am-danger>th,.am-table>tbody>tr>td.am-danger,.am-table>tbody>tr>th.am-danger,.am-table>tfoot>tr.am-danger>td,.am-table>tfoot>tr.am-danger>th,.am-table>tfoot>tr>td.am-danger,.am-table>tfoot>tr>th.am-danger,.am-table>thead>tr.am-danger>td,.am-table>thead>tr.am-danger>th,.am-table>thead>tr>td.am-danger,.am-table>thead>tr>th.am-danger{color:#dd514c;background-color:rgba(221,81,76,.115)}fieldset{border:none}legend{display:block;width:100%;margin-bottom:2rem;font-size:2rem;line-height:inherit;color:#333;border-bottom:1px solid #e5e5e5;padding-bottom:.5rem}label{display:inline-block;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}input[type=file]{display:block}select[multiple],select[size]{height:auto}select optgroup{font-size:inherit;font-style:inherit;font-family:inherit}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:thin dotted;outline:1px auto -webkit-focus-ring-color;outline-offset:-2px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}output{display:block;padding-top:1.6rem;font-size:1.6rem;line-height:1.6;color:#555;vertical-align:middle}.am-form input[type=number],.am-form input[type=search],.am-form input[type=text],.am-form input[type=password],.am-form input[type=datetime],.am-form input[type=datetime-local],.am-form input[type=date],.am-form input[type=month],.am-form input[type=time],.am-form input[type=week],.am-form input[type=email],.am-form input[type=url],.am-form input[type=tel],.am-form input[type=color],.am-form select,.am-form textarea,.am-form-field{display:block;width:100%;padding:.5em;font-size:1.6rem;line-height:1.2;color:#555;vertical-align:middle;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:0;-webkit-appearance:none;-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}.am-form input[type=number]:focus,.am-form input[type=search]:focus,.am-form input[type=text]:focus,.am-form input[type=password]:focus,.am-form input[type=datetime]:focus,.am-form input[type=datetime-local]:focus,.am-form input[type=date]:focus,.am-form input[type=month]:focus,.am-form input[type=time]:focus,.am-form input[type=week]:focus,.am-form input[type=email]:focus,.am-form input[type=url]:focus,.am-form input[type=tel]:focus,.am-form input[type=color]:focus,.am-form select:focus,.am-form textarea:focus,.am-form-field:focus{outline:0}.am-form input[type=number]:focus,.am-form input[type=search]:focus,.am-form input[type=text]:focus,.am-form input[type=password]:focus,.am-form input[type=datetime]:focus,.am-form input[type=datetime-local]:focus,.am-form input[type=date]:focus,.am-form input[type=month]:focus,.am-form input[type=time]:focus,.am-form input[type=week]:focus,.am-form input[type=email]:focus,.am-form input[type=url]:focus,.am-form input[type=tel]:focus,.am-form input[type=color]:focus,.am-form select:focus,.am-form textarea:focus,.am-form-field:focus{background-color:#fefffe;border-color:#3bb4f2;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 5px rgba(59,180,242,.3);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 5px rgba(59,180,242,.3)}.am-form input[type=number]::-webkit-input-placeholder,.am-form input[type=search]::-webkit-input-placeholder,.am-form input[type=text]::-webkit-input-placeholder,.am-form input[type=password]::-webkit-input-placeholder,.am-form input[type=datetime]::-webkit-input-placeholder,.am-form input[type=datetime-local]::-webkit-input-placeholder,.am-form input[type=date]::-webkit-input-placeholder,.am-form input[type=month]::-webkit-input-placeholder,.am-form input[type=time]::-webkit-input-placeholder,.am-form input[type=week]::-webkit-input-placeholder,.am-form input[type=email]::-webkit-input-placeholder,.am-form input[type=url]::-webkit-input-placeholder,.am-form input[type=tel]::-webkit-input-placeholder,.am-form input[type=color]::-webkit-input-placeholder,.am-form select::-webkit-input-placeholder,.am-form textarea::-webkit-input-placeholder,.am-form-field::-webkit-input-placeholder{color:#999}.am-form input[type=number]::-moz-placeholder,.am-form input[type=search]::-moz-placeholder,.am-form input[type=text]::-moz-placeholder,.am-form input[type=password]::-moz-placeholder,.am-form input[type=datetime]::-moz-placeholder,.am-form input[type=datetime-local]::-moz-placeholder,.am-form input[type=date]::-moz-placeholder,.am-form input[type=month]::-moz-placeholder,.am-form input[type=time]::-moz-placeholder,.am-form input[type=week]::-moz-placeholder,.am-form input[type=email]::-moz-placeholder,.am-form input[type=url]::-moz-placeholder,.am-form input[type=tel]::-moz-placeholder,.am-form input[type=color]::-moz-placeholder,.am-form select::-moz-placeholder,.am-form textarea::-moz-placeholder,.am-form-field::-moz-placeholder{color:#999}.am-form input[type=number]:-ms-input-placeholder,.am-form input[type=search]:-ms-input-placeholder,.am-form input[type=text]:-ms-input-placeholder,.am-form input[type=password]:-ms-input-placeholder,.am-form input[type=datetime]:-ms-input-placeholder,.am-form input[type=datetime-local]:-ms-input-placeholder,.am-form input[type=date]:-ms-input-placeholder,.am-form input[type=month]:-ms-input-placeholder,.am-form input[type=time]:-ms-input-placeholder,.am-form input[type=week]:-ms-input-placeholder,.am-form input[type=email]:-ms-input-placeholder,.am-form input[type=url]:-ms-input-placeholder,.am-form input[type=tel]:-ms-input-placeholder,.am-form input[type=color]:-ms-input-placeholder,.am-form select:-ms-input-placeholder,.am-form textarea:-ms-input-placeholder,.am-form-field:-ms-input-placeholder{color:#999}.am-form input[type=number]::placeholder,.am-form input[type=search]::placeholder,.am-form input[type=text]::placeholder,.am-form input[type=password]::placeholder,.am-form input[type=datetime]::placeholder,.am-form input[type=datetime-local]::placeholder,.am-form input[type=date]::placeholder,.am-form input[type=month]::placeholder,.am-form input[type=time]::placeholder,.am-form input[type=week]::placeholder,.am-form input[type=email]::placeholder,.am-form input[type=url]::placeholder,.am-form input[type=tel]::placeholder,.am-form input[type=color]::placeholder,.am-form select::placeholder,.am-form textarea::placeholder,.am-form-field::placeholder{color:#999}.am-form input[type=number]::-moz-placeholder,.am-form input[type=search]::-moz-placeholder,.am-form input[type=text]::-moz-placeholder,.am-form input[type=password]::-moz-placeholder,.am-form input[type=datetime]::-moz-placeholder,.am-form input[type=datetime-local]::-moz-placeholder,.am-form input[type=date]::-moz-placeholder,.am-form input[type=month]::-moz-placeholder,.am-form input[type=time]::-moz-placeholder,.am-form input[type=week]::-moz-placeholder,.am-form input[type=email]::-moz-placeholder,.am-form input[type=url]::-moz-placeholder,.am-form input[type=tel]::-moz-placeholder,.am-form input[type=color]::-moz-placeholder,.am-form select::-moz-placeholder,.am-form textarea::-moz-placeholder,.am-form-field::-moz-placeholder{opacity:1}.am-form input[type=number][disabled],.am-form input[type=number][readonly],.am-form input[type=search][disabled],.am-form input[type=search][readonly],.am-form input[type=text][disabled],.am-form input[type=text][readonly],.am-form input[type=password][disabled],.am-form input[type=password][readonly],.am-form input[type=datetime][disabled],.am-form input[type=datetime][readonly],.am-form input[type=datetime-local][disabled],.am-form input[type=datetime-local][readonly],.am-form input[type=date][disabled],.am-form input[type=date][readonly],.am-form input[type=month][disabled],.am-form input[type=month][readonly],.am-form input[type=time][disabled],.am-form input[type=time][readonly],.am-form input[type=week][disabled],.am-form input[type=week][readonly],.am-form input[type=email][disabled],.am-form input[type=email][readonly],.am-form input[type=url][disabled],.am-form input[type=url][readonly],.am-form input[type=tel][disabled],.am-form input[type=tel][readonly],.am-form input[type=color][disabled],.am-form input[type=color][readonly],.am-form select[disabled],.am-form select[readonly],.am-form textarea[disabled],.am-form textarea[readonly],.am-form-field[disabled],.am-form-field[readonly],fieldset[disabled] .am-form input[type=number],fieldset[disabled] .am-form input[type=search],fieldset[disabled] .am-form input[type=text],fieldset[disabled] .am-form input[type=password],fieldset[disabled] .am-form input[type=datetime],fieldset[disabled] .am-form input[type=datetime-local],fieldset[disabled] .am-form input[type=date],fieldset[disabled] .am-form input[type=month],fieldset[disabled] .am-form input[type=time],fieldset[disabled] .am-form input[type=week],fieldset[disabled] .am-form input[type=email],fieldset[disabled] .am-form input[type=url],fieldset[disabled] .am-form input[type=tel],fieldset[disabled] .am-form input[type=color],fieldset[disabled] .am-form select,fieldset[disabled] .am-form textarea,fieldset[disabled] .am-form-field{cursor:not-allowed;background-color:#eee}.am-form input[type=number].am-radius,.am-form input[type=search].am-radius,.am-form input[type=text].am-radius,.am-form input[type=password].am-radius,.am-form input[type=datetime].am-radius,.am-form input[type=datetime-local].am-radius,.am-form input[type=date].am-radius,.am-form input[type=month].am-radius,.am-form input[type=time].am-radius,.am-form input[type=week].am-radius,.am-form input[type=email].am-radius,.am-form input[type=url].am-radius,.am-form input[type=tel].am-radius,.am-form input[type=color].am-radius,.am-form select.am-radius,.am-form textarea.am-radius,.am-form-field.am-radius{border-radius:2px}.am-form input[type=number].am-round,.am-form input[type=search].am-round,.am-form input[type=text].am-round,.am-form input[type=password].am-round,.am-form input[type=datetime].am-round,.am-form input[type=datetime-local].am-round,.am-form input[type=date].am-round,.am-form input[type=month].am-round,.am-form input[type=time].am-round,.am-form input[type=week].am-round,.am-form input[type=email].am-round,.am-form input[type=url].am-round,.am-form input[type=tel].am-round,.am-form input[type=color].am-round,.am-form select.am-round,.am-form textarea.am-round,.am-form-field.am-round{border-radius:1000px}.am-form select[multiple],.am-form select[size],.am-form textarea{height:auto}.am-form select{-webkit-appearance:none!important;-moz-appearance:none!important;-webkit-border-radius:0;background:#fff url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+) no-repeat 100% center}.am-form select[multiple=multiple]{background-image:none}.am-form input[type=datetime-local],.am-form input[type=date],input[type=datetime-local].am-form-field,input[type=date].am-form-field{height:37px}.am-form input[type=datetime-local].am-input-sm,.am-form input[type=date].am-input-sm,input[type=datetime-local].am-form-field.am-input-sm,input[type=date].am-form-field.am-input-sm{height:32px}.am-form input[type=datetime-local] .am-input-lg,.am-form input[type=date] .am-input-lg,input[type=datetime-local].am-form-field .am-input-lg,input[type=date].am-form-field .am-input-lg{height:41px}.am-form-help{display:block;margin-top:5px;margin-bottom:10px;color:#999;font-size:1.3rem}.am-form-group{margin-bottom:1.5rem}.am-form-file{position:relative;overflow:hidden}.am-form-file input[type=file]{position:absolute;left:0;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;font-size:50rem}.am-checkbox,.am-radio{display:block;min-height:1.92rem;margin-top:10px;margin-bottom:10px;padding-left:20px;vertical-align:middle}.am-checkbox label,.am-radio label{display:inline;margin-bottom:0;font-weight:400;cursor:pointer}.am-checkbox input[type=checkbox],.am-checkbox-inline input[type=checkbox],.am-radio input[type=radio],.am-radio-inline input[type=radio]{float:left;margin-left:-20px;outline:0}.am-checkbox+.am-checkbox,.am-radio+.am-radio{margin-top:-5px}.am-checkbox-inline,.am-radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.am-checkbox-inline+.am-checkbox-inline,.am-radio-inline+.am-radio-inline{margin-top:0;margin-left:10px}.am-checkbox-inline[disabled],.am-checkbox[disabled],.am-radio-inline[disabled],.am-radio[disabled],fieldset[disabled] .am-checkbox,fieldset[disabled] .am-checkbox-inline,fieldset[disabled] .am-radio,fieldset[disabled] .am-radio-inline,fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox][disabled],input[type=radio][disabled]{cursor:not-allowed}.am-form-warning .am-checkbox,.am-form-warning .am-checkbox-inline,.am-form-warning .am-form-help,.am-form-warning .am-form-label,.am-form-warning .am-radio,.am-form-warning .am-radio-inline,.am-form-warning label{color:#F37B1D}.am-form-warning [class*=icon-]{color:#F37B1D}.am-form-warning .am-form-field{border-color:#F37B1D!important;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.am-form-warning .am-form-field:focus{background-color:#fefffe;border-color:#d2620b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 5px #f8b47e!important;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 5px #f8b47e!important}.am-form-error .am-checkbox,.am-form-error .am-checkbox-inline,.am-form-error .am-form-help,.am-form-error .am-form-label,.am-form-error .am-radio,.am-form-error .am-radio-inline,.am-form-error label{color:#dd514c}.am-form-error [class*=icon-]{color:#dd514c}.am-field-error,.am-form-error .am-form-field{border-color:#dd514c!important;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.am-field-error:focus,.am-form-error .am-form-field:focus{background-color:#fefffe;border-color:#cf2d27;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 5px #eda4a2!important;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 5px #eda4a2!important}.am-form-success .am-checkbox,.am-form-success .am-checkbox-inline,.am-form-success .am-form-help,.am-form-success .am-form-label,.am-form-success .am-radio,.am-form-success .am-radio-inline,.am-form-success label{color:#5eb95e}.am-form-success [class*=icon-]{color:#5eb95e}.am-field-valid,.am-form-success .am-form-field{border-color:#5eb95e!important;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.am-field-valid:focus,.am-form-success .am-form-field:focus{background-color:#fefffe;border-color:#459f45;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 5px #a5d8a5!important;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 5px #a5d8a5!important}.am-form-horizontal .am-checkbox,.am-form-horizontal .am-checkbox-inline,.am-form-horizontal .am-form-label,.am-form-horizontal .am-radio,.am-form-horizontal .am-radio-inline{margin-top:0;margin-bottom:0;padding-top:.6em}.am-form-horizontal .am-form-group:after,.am-form-horizontal .am-form-group:before{content:" ";display:table}.am-form-horizontal .am-form-group:after{clear:both}@media only screen and (min-width:641px){.am-form-horizontal .am-form-label{text-align:right}}@media only screen and (min-width:641px){.am-form-inline .am-form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.am-form-inline .am-form-field{display:inline-block;width:auto;vertical-align:middle}.am-form-inline .am-input-group{display:inline-table;vertical-align:middle}.am-form-inline .am-input-group .am-form-label,.am-form-inline .am-input-group .am-input-group-btn,.am-form-inline .am-input-group .am-input-group-label{width:auto}.am-form-inline .am-input-group>.am-form-field{width:100%}.am-form-inline .am-form-label{margin-bottom:0;vertical-align:middle}.am-form-inline .am-checkbox,.am-form-inline .am-radio{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.am-form-inline .am-checkbox input[type=checkbox],.am-form-inline .am-radio input[type=radio]{float:none;margin-left:0}}.am-input-sm{font-size:1.4rem!important}.am-input-lg{font-size:1.8rem!important}.am-form-group-sm .am-checkbox,.am-form-group-sm .am-form-field,.am-form-group-sm .am-form-label,.am-form-group-sm .am-radio{font-size:1.4rem!important}.am-form-group-lg .am-checkbox,.am-form-group-lg .am-form-field,.am-form-group-lg .am-form-label,.am-form-group-lg .am-radio{font-size:1.8rem!important}.am-form-group-lg input[type=checkbox],.am-form-group-lg input[type=radio]{margin-top:7px}.am-form-icon{position:relative}.am-form-icon .am-form-field{padding-left:1.75em!important}.am-form-icon [class*=am-icon-]{position:absolute;left:.5em;top:50%;display:block;margin-top:-.5em;line-height:1;z-index:2}.am-form-icon label~[class*=am-icon-]{top:70%}.am-form-feedback{position:relative}.am-form-feedback .am-form-field{padding-left:.5em!important;padding-right:1.75em!important}.am-form-feedback [class*=am-icon-]{right:.5em;left:auto}.am-form-horizontal .am-form-feedback [class*=am-icon-]{right:1.6em}.am-form-set{margin-bottom:1.5rem;padding:0}.am-form-set>input{position:relative;top:-1px;border-radius:0!important}.am-form-set>input:focus{z-index:2}.am-form-set>input:first-child{top:1px;border-top-right-radius:0!important;border-top-left-radius:0!important}.am-form-set>input:last-child{top:-2px;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.am-img-thumbnail{display:inline-block;max-width:100%;height:auto;padding:2px;line-height:1.6;background-color:#fff;border:1px solid #ddd;border-radius:0;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.am-img-thumbnail.am-radius{border-radius:2px}.am-img-responsive{display:block;max-width:100%;height:auto}.am-nav{margin-bottom:0;padding:0;list-style:none}.am-nav:after,.am-nav:before{content:" ";display:table}.am-nav:after{clear:both}.am-nav>li{position:relative;display:block}.am-nav>li+li{margin-top:5px}.am-nav>li+.am-nav-header{margin-top:1em}.am-nav>li>a{position:relative;display:block;padding:.4em 1em;border-radius:0}.am-nav>li>a:focus,.am-nav>li>a:hover{text-decoration:none;background-color:#eee}.am-nav>li.am-active>a,.am-nav>li.am-active>a:focus,.am-nav>li.am-active>a:hover{color:#fff;background-color:#0e90d2;cursor:default}.am-nav>li.am-disabled>a{color:#999}.am-nav>li.am-disabled>a:focus,.am-nav>li.am-disabled>a:hover{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.am-nav-header{padding:.4em 1em;text-transform:uppercase;font-weight:700;font-size:100%;color:#555}.am-nav-divider{margin:15px 1em!important;border-top:1px solid #ddd;-webkit-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff}.am-nav-pills>li{float:left}.am-nav-pills>li+li{margin-left:5px;margin-top:0}.am-nav-tabs{border-bottom:1px solid #ddd}.am-nav-tabs>li{float:left;margin-bottom:-1px}.am-nav-tabs>li+li{margin-top:0}.am-nav-tabs>li>a{margin-right:5px;line-height:1.6;border:1px solid transparent;border-radius:0}.am-nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.am-nav-tabs>li.am-active>a,.am-nav-tabs>li.am-active>a:focus,.am-nav-tabs>li.am-active>a:hover{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.am-nav-tabs.am-nav-justify{border-bottom:0}.am-nav-tabs.am-nav-justify>li>a{margin-right:0;border-bottom:1px solid #ddd;border-radius:0}.am-nav-tabs.am-nav-justify>.am-active>a,.am-nav-tabs.am-nav-justify>.am-active>a:focus,.am-nav-tabs.am-nav-justify>.am-active>a:hover{border-bottom-color:#fff}.am-nav-justify{width:100%}.am-nav-justify>li{float:none;display:table-cell;width:1%}.am-nav-justify>li>a{text-align:center;margin-bottom:0}.lte9 .am-nav-justify>li{display:table-cell;width:1%}.am-topbar{position:relative;min-height:50px;margin-bottom:1.6rem;background:#f8f8f8;border-width:0 0 1px;border-style:solid;border-color:#ddd;color:#666}.am-topbar:after,.am-topbar:before{content:" ";display:table}.am-topbar:after{clear:both}.am-topbar a{color:#666}.am-topbar-brand{margin:0}@media only screen and (min-width:641px){.am-topbar-brand{float:left}}.am-topbar-brand a:hover{color:#4d4d4d}.am-topbar-collapse{width:100%;overflow-x:visible;padding:10px;clear:both;-webkit-overflow-scrolling:touch}.am-topbar-collapse:after,.am-topbar-collapse:before{content:" ";display:table}.am-topbar-collapse:after{clear:both}.am-topbar-collapse.am-in{overflow-y:auto}@media only screen and (min-width:641px){.am-topbar-collapse{margin-top:0;padding:0;width:auto;clear:none}.am-topbar-collapse.am-collapse{display:block!important;height:auto!important;padding:0;overflow:visible!important}.am-topbar-collapse.am-in{overflow-y:visible}}.am-topbar-brand{padding:0 10px;float:left;font-size:1.8rem;height:50px;line-height:50px}.am-topbar-toggle{position:relative;float:right;margin-right:10px}@media only screen and (min-width:641px){.am-topbar-toggle{display:none}}@media only screen and (max-width:640px){.am-topbar-nav{margin-bottom:8px}.am-topbar-nav>li{float:none}}@media only screen and (max-width:640px){.am-topbar-nav>li+li{margin-left:0;margin-top:5px}}@media only screen and (min-width:641px){.am-topbar-nav{float:left}.am-topbar-nav>li>a{position:relative;line-height:50px;padding:0 10px}.am-topbar-nav>li>a:after{position:absolute;left:50%;margin-left:-7px;bottom:-1px;content:"";display:inline-block;width:0;height:0;vertical-align:middle;border-bottom:7px solid #f8f8f8;border-right:7px solid transparent;border-left:7px solid transparent;border-top:0 dotted;-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);opacity:0;-webkit-transition:opacity .1s;transition:opacity .1s}.am-topbar-nav>li>a:hover:after{opacity:1;border-bottom-color:#666}.am-topbar-nav>li.am-dropdown>a:after{display:none}.am-topbar-nav>li.am-active>a,.am-topbar-nav>li.am-active>a:focus,.am-topbar-nav>li.am-active>a:hover{border-radius:0;color:#0e90d2;background:0 0}.am-topbar-nav>li.am-active>a:after{opacity:1;border-bottom-color:#0e90d2}}@media only screen and (max-width:640px){.am-topbar-collapse .am-dropdown.am-active .am-dropdown-content{float:none;position:relative;width:100%}}@media only screen and (min-width:641px){.am-topbar-left{float:left}.am-topbar-right{float:right;margin-right:10px}}@media only screen and (max-width:640px){.am-topbar-form .am-form-group{margin-bottom:5px}}@media only screen and (min-width:641px){.am-topbar-form{padding:0 10px;margin-top:8px}.am-topbar-form .am-form-group+.am-btn{margin-left:5px}}.am-topbar-btn{margin-top:8px}@media only screen and (max-width:640px){.am-topbar-collapse .am-btn,.am-topbar-collapse .am-topbar-btn{display:block;width:100%}}.am-topbar-inverse{background-color:#0e90d2;border-color:#0b6fa2;color:#eee}.am-topbar-inverse a{color:#eee}.am-topbar-inverse .am-topbar-brand a{color:#fff}.am-topbar-inverse .am-topbar-brand a:focus,.am-topbar-inverse .am-topbar-brand a:hover{color:#fff;background-color:transparent}.am-topbar-inverse .am-topbar-nav>li>a{color:#eee}.am-topbar-inverse .am-topbar-nav>li>a:focus,.am-topbar-inverse .am-topbar-nav>li>a:hover{color:#fff;background-color:rgba(0,0,0,.05)}.am-topbar-inverse .am-topbar-nav>li>a:focus:after,.am-topbar-inverse .am-topbar-nav>li>a:hover:after{border-bottom-color:#0b6fa2}.am-topbar-inverse .am-topbar-nav>li>a:after{border-bottom-color:#0e90d2}.am-topbar-inverse .am-topbar-nav>li.am-active>a,.am-topbar-inverse .am-topbar-nav>li.am-active>a:focus,.am-topbar-inverse .am-topbar-nav>li.am-active>a:hover{color:#fff;background-color:rgba(0,0,0,.1)}.am-topbar-inverse .am-topbar-nav>li.am-active>a:after,.am-topbar-inverse .am-topbar-nav>li.am-active>a:focus:after,.am-topbar-inverse .am-topbar-nav>li.am-active>a:hover:after{border-bottom-color:#fff}.am-topbar-inverse .am-topbar-nav>li .disabled>a,.am-topbar-inverse .am-topbar-nav>li .disabled>a:focus,.am-topbar-inverse .am-topbar-nav>li .disabled>a:hover{color:#444;background-color:transparent}.am-topbar-fixed-bottom,.am-topbar-fixed-top{position:fixed;right:0;left:0;z-index:1000;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.am-topbar-fixed-top{top:0}.am-topbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.am-with-topbar-fixed-top{padding-top:51px}.am-with-topbar-fixed-bottom{padding-bottom:51px}@media only screen and (max-width:640px){.am-topbar-fixed-bottom .am-topbar-collapse{position:absolute;bottom:100%;margin-bottom:1px;background-color:#f8f8f8}.am-topbar-fixed-bottom .am-topbar-collapse .am-dropdown-content:after,.am-topbar-fixed-bottom .am-topbar-collapse .am-dropdown-content:before{display:none}.am-topbar-fixed-bottom.am-topbar-inverse .am-topbar-collapse{background-color:#0e90d2}}.am-breadcrumb{padding:.7em .5em;margin-bottom:2rem;list-style:none;background-color:transparent;border-radius:0;font-size:85%}.am-breadcrumb>li{display:inline-block}.am-breadcrumb>li [class*=am-icon-]:before{color:#999;margin-right:5px}.am-breadcrumb>li+li:before{content:"\00bb\00a0";padding:0 8px;color:#ccc}.am-breadcrumb>.am-active{color:#999}.am-breadcrumb-slash>li+li:before{content:"/\00a0"}.am-pagination{padding-left:0;margin:1.5rem 0;list-style:none;color:#999;text-align:left}.am-pagination:after,.am-pagination:before{content:" ";display:table}.am-pagination:after{clear:both}.am-pagination>li{display:inline-block}.am-pagination>li>a,.am-pagination>li>span{position:relative;display:block;padding:.5em 1em;text-decoration:none;line-height:1.2;background-color:#fff;border:1px solid #ddd;border-radius:0;margin-bottom:5px;margin-right:5px}.am-pagination>li:last-child>a,.am-pagination>li:last-child>span{margin-right:0}.am-pagination>li>a:focus,.am-pagination>li>a:hover,.am-pagination>li>span:focus,.am-pagination>li>span:hover{background-color:#eee}.am-pagination>.am-active>a,.am-pagination>.am-active>a:focus,.am-pagination>.am-active>a:hover,.am-pagination>.am-active>span,.am-pagination>.am-active>span:focus,.am-pagination>.am-active>span:hover{z-index:2;color:#fff;background-color:#0e90d2;border-color:#0e90d2;cursor:default}.am-pagination>.am-disabled>a,.am-pagination>.am-disabled>a:focus,.am-pagination>.am-disabled>a:hover,.am-pagination>.am-disabled>span,.am-pagination>.am-disabled>span:focus,.am-pagination>.am-disabled>span:hover{color:#999;background-color:#fff;border-color:#ddd;cursor:not-allowed;pointer-events:none}.am-pagination .am-pagination-prev{float:left}.am-pagination .am-pagination-prev a{border-radius:0}.am-pagination .am-pagination-next{float:right}.am-pagination .am-pagination-next a{border-radius:0}.am-pagination-centered{text-align:center}.am-pagination-right{text-align:right}[class*=am-animation-]{-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out;-webkit-animation-fill-mode:both;animation-fill-mode:both}@media screen{.cssanimations [data-am-scrollspy*=animation]{opacity:0}}.am-animation-fade{-webkit-animation-name:am-fade;animation-name:am-fade;-webkit-animation-duration:.8s;animation-duration:.8s;-webkit-animation-timing-function:linear;animation-timing-function:linear}.am-animation-scale-up{-webkit-animation-name:am-scale-up;animation-name:am-scale-up}.am-animation-scale-down{-webkit-animation-name:am-scale-down;animation-name:am-scale-down}.am-animation-slide-top{-webkit-animation-name:am-slide-top;animation-name:am-slide-top}.am-animation-slide-bottom{-webkit-animation-name:am-slide-bottom;animation-name:am-slide-bottom}.am-animation-slide-left{-webkit-animation-name:am-slide-left;animation-name:am-slide-left}.am-animation-slide-right{-webkit-animation-name:am-slide-right;animation-name:am-slide-right}.am-animation-slide-top-fixed{-webkit-animation-name:am-slide-top-fixed;animation-name:am-slide-top-fixed}.am-animation-shake{-webkit-animation-name:am-shake;animation-name:am-shake}.am-animation-spin{-webkit-animation:am-spin 2s infinite linear;animation:am-spin 2s infinite linear}.am-animation-left-spring{-webkit-animation:am-left-spring .3s ease-in-out;animation:am-left-spring .3s ease-in-out}.am-animation-right-spring{-webkit-animation:am-right-spring .3s ease-in-out;animation:am-right-spring .3s ease-in-out}.am-animation-reverse{-webkit-animation-direction:reverse;animation-direction:reverse}.am-animation-paused{-webkit-animation-play-state:paused!important;animation-play-state:paused!important}.am-animation-delay-1{-webkit-animation-delay:1s;animation-delay:1s}.am-animation-delay-2{-webkit-animation-delay:2s;animation-delay:2s}.am-animation-delay-3{-webkit-animation-delay:3s;animation-delay:3s}.am-animation-delay-4{-webkit-animation-delay:4s;animation-delay:4s}.am-animation-delay-5{-webkit-animation-delay:5s;animation-delay:5s}.am-animation-delay-6{-webkit-animation-delay:6s;animation-delay:6s}@-webkit-keyframes am-fade{0%{opacity:0}100%{opacity:1}}@keyframes am-fade{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes am-scale-up{0%{opacity:0;-webkit-transform:scale(.2);transform:scale(.2)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes am-scale-up{0%{opacity:0;-webkit-transform:scale(.2);transform:scale(.2)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes am-scale-down{0%{opacity:0;-webkit-transform:scale(1.8);transform:scale(1.8)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes am-scale-down{0%{opacity:0;-webkit-transform:scale(1.8);transform:scale(1.8)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes am-slide-top{0%{opacity:0;-webkit-transform:translateY(-100%);transform:translateY(-100%)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes am-slide-top{0%{opacity:0;-webkit-transform:translateY(-100%);transform:translateY(-100%)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes am-slide-bottom{0%{opacity:0;-webkit-transform:translateY(100%);transform:translateY(100%)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes am-slide-bottom{0%{opacity:0;-webkit-transform:translateY(100%);transform:translateY(100%)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes am-slide-left{0%{opacity:0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes am-slide-left{0%{opacity:0;-webkit-transform:translateX(-100%);transform:translateX(-100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes am-slide-right{0%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes am-slide-right{0%{opacity:0;-webkit-transform:translateX(100%);transform:translateX(100%)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes am-shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%{-webkit-transform:translateX(-9px);transform:translateX(-9px)}20%{-webkit-transform:translateX(8px);transform:translateX(8px)}30%{-webkit-transform:translateX(-7px);transform:translateX(-7px)}40%{-webkit-transform:translateX(6px);transform:translateX(6px)}50%{-webkit-transform:translateX(-5px);transform:translateX(-5px)}60%{-webkit-transform:translateX(4px);transform:translateX(4px)}70%{-webkit-transform:translateX(-3px);transform:translateX(-3px)}80%{-webkit-transform:translateX(2px);transform:translateX(2px)}90%{-webkit-transform:translateX(-1px);transform:translateX(-1px)}}@keyframes am-shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%{-webkit-transform:translateX(-9px);transform:translateX(-9px)}20%{-webkit-transform:translateX(8px);transform:translateX(8px)}30%{-webkit-transform:translateX(-7px);transform:translateX(-7px)}40%{-webkit-transform:translateX(6px);transform:translateX(6px)}50%{-webkit-transform:translateX(-5px);transform:translateX(-5px)}60%{-webkit-transform:translateX(4px);transform:translateX(4px)}70%{-webkit-transform:translateX(-3px);transform:translateX(-3px)}80%{-webkit-transform:translateX(2px);transform:translateX(2px)}90%{-webkit-transform:translateX(-1px);transform:translateX(-1px)}}@-webkit-keyframes am-slide-top-fixed{0%{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes am-slide-top-fixed{0%{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes am-slide-bottom-fixed{0%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes am-slide-bottom-fixed{0%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes am-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes am-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@-webkit-keyframes am-right-spring{0%{-webkit-transform:translateX(0);transform:translateX(0)}50%{-webkit-transform:translateX(-20%);transform:translateX(-20%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes am-right-spring{0%{-webkit-transform:translateX(0);transform:translateX(0)}50%{-webkit-transform:translateX(-20%);transform:translateX(-20%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes am-left-spring{0%{-webkit-transform:translateX(0);transform:translateX(0)}50%{-webkit-transform:translateX(20%);transform:translateX(20%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes am-left-spring{0%{-webkit-transform:translateX(0);transform:translateX(0)}50%{-webkit-transform:translateX(20%);transform:translateX(20%)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}.am-article:after,.am-article:before{content:" ";display:table}.am-article:after{clear:both}.am-article>:last-child{margin-bottom:0}.am-article+.am-article{margin-top:2.4rem}.am-article-title{font-size:2.8rem;line-height:1.15;font-weight:400}.am-article-title a{color:inherit;text-decoration:none}.am-article-meta{font-size:1.2rem;line-height:1.5;color:#999}.am-article-lead{color:#666;font-size:1.4rem;line-height:1.5;border:1px solid #dedede;border-radius:2px;background:#f9f9f9;padding:10px}.am-article-divider{margin-bottom:2.4rem;border-color:#eee}*+.am-article-divider{margin-top:2.4rem}.am-article-bd blockquote{font-family:Georgia,"Times New Roman",Times,Kai,"Kaiti SC",KaiTi,BiauKai,FontAwesome,serif}.am-article-bd img{display:block;max-width:100%}.am-badge{display:inline-block;min-width:10px;padding:.25em .625em;font-size:1.2rem;font-weight:700;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#999;border-radius:0}.am-badge:empty{display:none}.am-badge.am-square{border-radius:0}.am-badge.am-radius{border-radius:2px}.am-badge.am-round{border-radius:1000px}a.am-badge:focus,a.am-badge:hover{color:#fff;text-decoration:none;cursor:pointer}.am-badge-primary{background-color:#0e90d2}.am-badge-secondary{background-color:#3bb4f2}.am-badge-success{background-color:#5eb95e}.am-badge-warning{background-color:#F37B1D}.am-badge-danger{background-color:#dd514c}.am-comment:after,.am-comment:before{content:" ";display:table}.am-comment:after{clear:both}.am-comment-avatar{float:left;width:32px;height:32px;border-radius:50%;border:1px solid transparent}@media only screen and (min-width:641px){.am-comment-avatar{width:48px;height:48px}}.am-comment-main{position:relative;margin-left:42px;border:1px solid #dedede;border-radius:0}.am-comment-main:after,.am-comment-main:before{position:absolute;top:10px;left:-8px;right:100%;width:0;height:0;display:block;content:" ";border-color:transparent;border-style:solid solid outset;border-width:8px 8px 8px 0;pointer-events:none}.am-comment-main:before{border-right-color:#dedede;z-index:1}.am-comment-main:after{border-right-color:#f8f8f8;margin-left:1px;z-index:2}@media only screen and (min-width:641px){.am-comment-main{margin-left:63px}}.am-comment-hd{background:#f8f8f8;border-bottom:1px solid #eee;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.am-comment-title{margin:0 0 8px 0;font-size:1.6rem;line-height:1.2}.am-comment-meta{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;padding:10px 15px;font-size:13px;color:#999;line-height:1.2;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.am-comment-meta a{color:#999}.am-comment-author{font-weight:700;color:#999}.am-comment-bd{padding:15px;overflow:hidden}.am-comment-bd>:last-child{margin-bottom:0}.am-comment-footer{padding:0 15px 5px}.am-comment-footer .am-comment-actions a+a{margin-left:5px}.am-comment-actions{font-size:13px;color:#999}.am-comment-actions a{display:inline-block;padding:10px 5px;line-height:1;color:#999;opacity:.7}.am-comment-actions a:hover{color:#0e90d2;opacity:1}.am-comment-hd .am-comment-actions{padding-right:.5rem}.am-comment-flip .am-comment-avatar{float:right}.am-comment-flip .am-comment-main{margin-left:auto;margin-right:42px}@media only screen and (min-width:641px){.am-comment-flip .am-comment-main{margin-right:63px}}.am-comment-flip .am-comment-main:after,.am-comment-flip .am-comment-main:before{left:auto;right:-8px;border-width:8px 0 8px 8px}.am-comment-flip .am-comment-main:before{border-left-color:#dedede}.am-comment-flip .am-comment-main:after{border-left-color:#f8f8f8;margin-right:1px;margin-left:auto}.am-comment-primary .am-comment-avatar{border-color:#0e90d2}.am-comment-primary .am-comment-main{border-color:#0e90d2}.am-comment-primary .am-comment-main:before{border-right-color:#0e90d2}.am-comment-primary.am-comment-flip .am-comment-main:before{border-left-color:#0e90d2;border-right-color:transparent}.am-comment-primary.am-comment-flip .am-comment-main:after{border-left-color:#f8f8f8}.am-comment-highlight .am-comment-avatar,.am-comment-secondary .am-comment-avatar{border-color:#3bb4f2}.am-comment-highlight .am-comment-main,.am-comment-secondary .am-comment-main{border-color:#3bb4f2}.am-comment-highlight .am-comment-main:before,.am-comment-secondary .am-comment-main:before{border-right-color:#3bb4f2}.am-comment-highlight.am-comment-flip .am-comment-main:before,.am-comment-secondary.am-comment-flip .am-comment-main:before{border-left-color:#3bb4f2;border-right-color:transparent}.am-comment-highlight.am-comment-flip .am-comment-main:after,.am-comment-secondary.am-comment-flip .am-comment-main:after{border-left-color:#f8f8f8}.am-comment-success .am-comment-avatar{border-color:#5eb95e}.am-comment-success .am-comment-main{border-color:#5eb95e}.am-comment-success .am-comment-main:before{border-right-color:#5eb95e}.am-comment-success.am-comment-flip .am-comment-main:before{border-left-color:#5eb95e;border-right-color:transparent}.am-comment-success.am-comment-flip .am-comment-main:after{border-left-color:#f8f8f8}.am-comment-warning .am-comment-avatar{border-color:#F37B1D}.am-comment-warning .am-comment-main{border-color:#F37B1D}.am-comment-warning .am-comment-main:before{border-right-color:#F37B1D}.am-comment-warning.am-comment-flip .am-comment-main:before{border-left-color:#F37B1D;border-right-color:transparent}.am-comment-warning.am-comment-flip .am-comment-main:after{border-left-color:#f8f8f8}.am-comment-danger .am-comment-avatar{border-color:#dd514c}.am-comment-danger .am-comment-main{border-color:#dd514c}.am-comment-danger .am-comment-main:before{border-right-color:#dd514c}.am-comment-danger.am-comment-flip .am-comment-main:before{border-left-color:#dd514c;border-right-color:transparent}.am-comment-danger.am-comment-flip .am-comment-main:after{border-left-color:#f8f8f8}.am-comments-list{padding:0;list-style:none}.am-comments-list .am-comment{margin:1.6rem 0 0 0;list-style:none}@media only screen and (min-width:641px){.am-comments-list-flip .am-comment-main{margin-right:64px}.am-comments-list-flip .am-comment-flip .am-comment-main{margin-left:64px}}.am-btn-group,.am-btn-group-stacked{position:relative;display:inline-block;vertical-align:middle}.am-btn-group-stacked>.am-btn,.am-btn-group>.am-btn{position:relative;float:left}.am-btn-group-stacked>.am-btn.active,.am-btn-group-stacked>.am-btn:active,.am-btn-group-stacked>.am-btn:focus,.am-btn-group-stacked>.am-btn:hover,.am-btn-group>.am-btn.active,.am-btn-group>.am-btn:active,.am-btn-group>.am-btn:focus,.am-btn-group>.am-btn:hover{z-index:2}.am-btn-group-stacked>.am-btn:focus,.am-btn-group>.am-btn:focus{outline:0}.am-btn-group .am-btn+.am-btn,.am-btn-group .am-btn+.am-btn-group,.am-btn-group .am-btn-group+.am-btn,.am-btn-group .am-btn-group+.am-btn-group{margin-left:-1px}.am-btn-toolbar{margin-left:-5px}.am-btn-toolbar:after,.am-btn-toolbar:before{content:" ";display:table}.am-btn-toolbar:after{clear:both}.am-btn-toolbar .am-btn-group,.am-btn-toolbar .am-input-group{float:left}.am-btn-toolbar>.am-btn,.am-btn-toolbar>.am-btn-group,.am-btn-toolbar>.am-input-group{margin-left:5px}.am-btn-group>.am-btn:not(:first-child):not(:last-child):not(.am-dropdown-toggle){border-radius:0}.am-btn-group>.am-btn:first-child{margin-left:0}.am-btn-group>.am-btn:first-child:not(:last-child):not(.am-dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.am-btn-group>.am-btn:last-child:not(:first-child),.am-btn-group>.am-dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.am-btn-group>.am-btn-group{float:left}.am-btn-group>.am-btn-group:not(:first-child):not(:last-child)>.am-btn{border-radius:0}.am-btn-group>.am-btn-group:first-child>.am-btn:last-child,.am-btn-group>.am-btn-group:first-child>.am-dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.am-btn-group>.am-btn-group:last-child>.am-btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.am-btn-group-xs>.am-btn{font-size:1.2rem}.am-btn-group-sm>.am-btn{font-size:1.4rem}.am-btn-group-lg>.am-btn{font-size:1.8rem}.am-btn-group-stacked>.am-btn,.am-btn-group-stacked>.am-btn-group,.am-btn-group-stacked>.am-btn-group>.am-btn{display:block;float:none;width:100%;max-width:100%}.am-btn-group-stacked>.am-btn-group:after,.am-btn-group-stacked>.am-btn-group:before{content:" ";display:table}.am-btn-group-stacked>.am-btn-group:after{clear:both}.am-btn-group-stacked>.am-btn-group>.am-btn{float:none}.am-btn-group-stacked>.am-btn+.am-btn,.am-btn-group-stacked>.am-btn+.am-btn-group,.am-btn-group-stacked>.am-btn-group+.am-btn,.am-btn-group-stacked>.am-btn-group+.am-btn-group{margin-top:-1px;margin-left:0}.am-btn-group-stacked>.am-btn:not(:first-child):not(:last-child){border-radius:0}.am-btn-group-stacked>.am-btn:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.am-btn-group-stacked>.am-btn:last-child:not(:first-child){border-bottom-left-radius:0;border-top-right-radius:0;border-top-left-radius:0}.am-btn-group-stacked>.am-btn-group:not(:first-child):not(:last-child)>.am-btn{border-radius:0}.am-btn-group-stacked>.am-btn-group:first-child:not(:last-child)>.am-btn:last-child,.am-btn-group-stacked>.am-btn-group:first-child:not(:last-child)>.am-dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.am-btn-group-stacked>.am-btn-group:last-child:not(:first-child)>.am-btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.am-btn-group-justify{display:table;table-layout:fixed;border-collapse:separate;width:100%}.am-btn-group-justify>.am-btn,.am-btn-group-justify>.am-btn-group{float:none;display:table-cell;width:1%}.am-btn-group-justify>.am-btn-group .am-btn{width:100%}.lte9 .am-btn-group-justify{display:table;table-layout:fixed;border-collapse:separate}.lte9 .am-btn-group-justify>.am-btn,.lte9 .am-btn-group-justify>.am-btn-group{float:none;display:table-cell;width:1%}.am-btn-group .am-dropdown{float:left;margin-left:-1px}.am-btn-group .am-dropdown>.am-btn{border-bottom-left-radius:0;border-top-left-radius:0}.am-btn-group .am-active .am-dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.am-btn-group .am-active .am-dropdown-toggle.am-btn-link{-webkit-box-shadow:none;box-shadow:none}.am-btn-group .am-active .am-dropdown-toggle,.am-btn-group .am-dropdown-toggle:active{outline:0}.am-btn-group-check>.am-btn>input[type=checkbox],.am-btn-group-check>.am-btn>input[type=radio],[data-am-button]>.am-btn>input[type=checkbox],[data-am-button]>.am-btn>input[type=radio]{position:absolute;z-index:-1;opacity:0}.am-close{display:inline-block;text-align:center;width:24px;font-size:20px;font-weight:700;line-height:24px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;-webkit-transition:all .3s;transition:all .3s}.am-close:focus,.am-close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;outline:0}.am-close[class*=am-icon-]{font-size:16px}button.am-close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}a.am-close:hover{color:inherit;text-decoration:none;cursor:pointer}.am-close-alt{border-radius:50%;background:#eee;opacity:.7;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.25);box-shadow:0 0 0 1px rgba(0,0,0,.25)}.am-close-alt:focus,.am-close-alt:hover{opacity:1}.am-close-spin:hover{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}@font-face{font-family:FontAwesome;src:url(../fonts/fontawesome-webfont.eot?v=4.6.3);src:url(../fonts/fontawesome-webfont.eot?#iefix&v=4.6.3) format('embedded-opentype'),url(../fonts/fontawesome-webfont.woff2?v=4.6.3) format('woff2'),url(../fonts/fontawesome-webfont.woff?v=4.6.3) format('woff'),url(../fonts/fontawesome-webfont.ttf?v=4.6.3) format('truetype');font-weight:400;font-style:normal}[class*=am-icon-]{display:inline-block;font-style:normal}[class*=am-icon-]:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.am-icon-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}[class*=am-icon-].am-fl{margin-right:.3em}[class*=am-icon-].am-fr{margin-left:.3em}.am-icon-sm:before{font-size:150%;vertical-align:-10%}.am-icon-md:before{font-size:200%;vertical-align:-16%}.am-icon-lg:before{font-size:250%;vertical-align:-22%}.am-icon-btn{-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;width:48px;height:48px;font-size:24px;line-height:48px;border-radius:50%;background-color:#eee;color:#555;text-align:center}.am-icon-btn:focus,.am-icon-btn:hover{background-color:#f5f5f5;color:#333;text-decoration:none;outline:0}.am-icon-btn:active{background-color:#ddd;color:#333}.am-icon-btn.am-danger,.am-icon-btn.am-primary,.am-icon-btn.am-secondary,.am-icon-btn.am-success,.am-icon-btn.am-warning{color:#fff}.am-icon-btn.am-primary{background-color:#0e90d2}.am-icon-btn.am-secondary{background-color:#3bb4f2}.am-icon-btn.am-success{background-color:#5eb95e}.am-icon-btn.am-warning{background-color:#F37B1D}.am-icon-btn.am-danger{background-color:#dd514c}.am-icon-btn-sm{width:32px;height:32px;font-size:16px;line-height:32px}.am-icon-btn-lg{width:64px;height:64px;font-size:28px;line-height:64px}.am-icon-fw{width:1.25em;text-align:center}.am-icon-glass:before{content:"\f000"}.am-icon-music:before{content:"\f001"}.am-icon-search:before{content:"\f002"}.am-icon-envelope-o:before{content:"\f003"}.am-icon-heart:before{content:"\f004"}.am-icon-star:before{content:"\f005"}.am-icon-star-o:before{content:"\f006"}.am-icon-user:before{content:"\f007"}.am-icon-film:before{content:"\f008"}.am-icon-th-large:before{content:"\f009"}.am-icon-th:before{content:"\f00a"}.am-icon-th-list:before{content:"\f00b"}.am-icon-check:before{content:"\f00c"}.am-icon-close:before,.am-icon-remove:before,.am-icon-times:before{content:"\f00d"}.am-icon-search-plus:before{content:"\f00e"}.am-icon-search-minus:before{content:"\f010"}.am-icon-power-off:before{content:"\f011"}.am-icon-signal:before{content:"\f012"}.am-icon-cog:before,.am-icon-gear:before{content:"\f013"}.am-icon-trash-o:before{content:"\f014"}.am-icon-home:before{content:"\f015"}.am-icon-file-o:before{content:"\f016"}.am-icon-clock-o:before{content:"\f017"}.am-icon-road:before{content:"\f018"}.am-icon-download:before{content:"\f019"}.am-icon-arrow-circle-o-down:before{content:"\f01a"}.am-icon-arrow-circle-o-up:before{content:"\f01b"}.am-icon-inbox:before{content:"\f01c"}.am-icon-play-circle-o:before{content:"\f01d"}.am-icon-repeat:before,.am-icon-rotate-right:before{content:"\f01e"}.am-icon-refresh:before{content:"\f021"}.am-icon-list-alt:before{content:"\f022"}.am-icon-lock:before{content:"\f023"}.am-icon-flag:before{content:"\f024"}.am-icon-headphones:before{content:"\f025"}.am-icon-volume-off:before{content:"\f026"}.am-icon-volume-down:before{content:"\f027"}.am-icon-volume-up:before{content:"\f028"}.am-icon-qrcode:before{content:"\f029"}.am-icon-barcode:before{content:"\f02a"}.am-icon-tag:before{content:"\f02b"}.am-icon-tags:before{content:"\f02c"}.am-icon-book:before{content:"\f02d"}.am-icon-bookmark:before{content:"\f02e"}.am-icon-print:before{content:"\f02f"}.am-icon-camera:before{content:"\f030"}.am-icon-font:before{content:"\f031"}.am-icon-bold:before{content:"\f032"}.am-icon-italic:before{content:"\f033"}.am-icon-text-height:before{content:"\f034"}.am-icon-text-width:before{content:"\f035"}.am-icon-align-left:before{content:"\f036"}.am-icon-align-center:before{content:"\f037"}.am-icon-align-right:before{content:"\f038"}.am-icon-align-justify:before{content:"\f039"}.am-icon-list:before{content:"\f03a"}.am-icon-dedent:before,.am-icon-outdent:before{content:"\f03b"}.am-icon-indent:before{content:"\f03c"}.am-icon-video-camera:before{content:"\f03d"}.am-icon-image:before,.am-icon-photo:before,.am-icon-picture-o:before{content:"\f03e"}.am-icon-pencil:before{content:"\f040"}.am-icon-map-marker:before{content:"\f041"}.am-icon-adjust:before{content:"\f042"}.am-icon-tint:before{content:"\f043"}.am-icon-edit:before,.am-icon-pencil-square-o:before{content:"\f044"}.am-icon-share-square-o:before{content:"\f045"}.am-icon-check-square-o:before{content:"\f046"}.am-icon-arrows:before{content:"\f047"}.am-icon-step-backward:before{content:"\f048"}.am-icon-fast-backward:before{content:"\f049"}.am-icon-backward:before{content:"\f04a"}.am-icon-play:before{content:"\f04b"}.am-icon-pause:before{content:"\f04c"}.am-icon-stop:before{content:"\f04d"}.am-icon-forward:before{content:"\f04e"}.am-icon-fast-forward:before{content:"\f050"}.am-icon-step-forward:before{content:"\f051"}.am-icon-eject:before{content:"\f052"}.am-icon-chevron-left:before{content:"\f053"}.am-icon-chevron-right:before{content:"\f054"}.am-icon-plus-circle:before{content:"\f055"}.am-icon-minus-circle:before{content:"\f056"}.am-icon-times-circle:before{content:"\f057"}.am-icon-check-circle:before{content:"\f058"}.am-icon-question-circle:before{content:"\f059"}.am-icon-info-circle:before{content:"\f05a"}.am-icon-crosshairs:before{content:"\f05b"}.am-icon-times-circle-o:before{content:"\f05c"}.am-icon-check-circle-o:before{content:"\f05d"}.am-icon-ban:before{content:"\f05e"}.am-icon-arrow-left:before{content:"\f060"}.am-icon-arrow-right:before{content:"\f061"}.am-icon-arrow-up:before{content:"\f062"}.am-icon-arrow-down:before{content:"\f063"}.am-icon-mail-forward:before,.am-icon-share:before{content:"\f064"}.am-icon-expand:before{content:"\f065"}.am-icon-compress:before{content:"\f066"}.am-icon-plus:before{content:"\f067"}.am-icon-minus:before{content:"\f068"}.am-icon-asterisk:before{content:"\f069"}.am-icon-exclamation-circle:before{content:"\f06a"}.am-icon-gift:before{content:"\f06b"}.am-icon-leaf:before{content:"\f06c"}.am-icon-fire:before{content:"\f06d"}.am-icon-eye:before{content:"\f06e"}.am-icon-eye-slash:before{content:"\f070"}.am-icon-exclamation-triangle:before,.am-icon-warning:before{content:"\f071"}.am-icon-plane:before{content:"\f072"}.am-icon-calendar:before{content:"\f073"}.am-icon-random:before{content:"\f074"}.am-icon-comment:before{content:"\f075"}.am-icon-magnet:before{content:"\f076"}.am-icon-chevron-up:before{content:"\f077"}.am-icon-chevron-down:before{content:"\f078"}.am-icon-retweet:before{content:"\f079"}.am-icon-shopping-cart:before{content:"\f07a"}.am-icon-folder:before{content:"\f07b"}.am-icon-folder-open:before{content:"\f07c"}.am-icon-arrows-v:before{content:"\f07d"}.am-icon-arrows-h:before{content:"\f07e"}.am-icon-bar-chart-o:before,.am-icon-bar-chart:before{content:"\f080"}.am-icon-twitter-square:before{content:"\f081"}.am-icon-facebook-square:before{content:"\f082"}.am-icon-camera-retro:before{content:"\f083"}.am-icon-key:before{content:"\f084"}.am-icon-cogs:before,.am-icon-gears:before{content:"\f085"}.am-icon-comments:before{content:"\f086"}.am-icon-thumbs-o-up:before{content:"\f087"}.am-icon-thumbs-o-down:before{content:"\f088"}.am-icon-star-half:before{content:"\f089"}.am-icon-heart-o:before{content:"\f08a"}.am-icon-sign-out:before{content:"\f08b"}.am-icon-linkedin-square:before{content:"\f08c"}.am-icon-thumb-tack:before{content:"\f08d"}.am-icon-external-link:before{content:"\f08e"}.am-icon-sign-in:before{content:"\f090"}.am-icon-trophy:before{content:"\f091"}.am-icon-github-square:before{content:"\f092"}.am-icon-upload:before{content:"\f093"}.am-icon-lemon-o:before{content:"\f094"}.am-icon-phone:before{content:"\f095"}.am-icon-square-o:before{content:"\f096"}.am-icon-bookmark-o:before{content:"\f097"}.am-icon-phone-square:before{content:"\f098"}.am-icon-twitter:before{content:"\f099"}.am-icon-facebook-f:before,.am-icon-facebook:before{content:"\f09a"}.am-icon-github:before{content:"\f09b"}.am-icon-unlock:before{content:"\f09c"}.am-icon-credit-card:before{content:"\f09d"}.am-icon-feed:before,.am-icon-rss:before{content:"\f09e"}.am-icon-hdd-o:before{content:"\f0a0"}.am-icon-bullhorn:before{content:"\f0a1"}.am-icon-bell:before{content:"\f0f3"}.am-icon-certificate:before{content:"\f0a3"}.am-icon-hand-o-right:before{content:"\f0a4"}.am-icon-hand-o-left:before{content:"\f0a5"}.am-icon-hand-o-up:before{content:"\f0a6"}.am-icon-hand-o-down:before{content:"\f0a7"}.am-icon-arrow-circle-left:before{content:"\f0a8"}.am-icon-arrow-circle-right:before{content:"\f0a9"}.am-icon-arrow-circle-up:before{content:"\f0aa"}.am-icon-arrow-circle-down:before{content:"\f0ab"}.am-icon-globe:before{content:"\f0ac"}.am-icon-wrench:before{content:"\f0ad"}.am-icon-tasks:before{content:"\f0ae"}.am-icon-filter:before{content:"\f0b0"}.am-icon-briefcase:before{content:"\f0b1"}.am-icon-arrows-alt:before{content:"\f0b2"}.am-icon-group:before,.am-icon-users:before{content:"\f0c0"}.am-icon-chain:before,.am-icon-link:before{content:"\f0c1"}.am-icon-cloud:before{content:"\f0c2"}.am-icon-flask:before{content:"\f0c3"}.am-icon-cut:before,.am-icon-scissors:before{content:"\f0c4"}.am-icon-copy:before,.am-icon-files-o:before{content:"\f0c5"}.am-icon-paperclip:before{content:"\f0c6"}.am-icon-floppy-o:before,.am-icon-save:before{content:"\f0c7"}.am-icon-square:before{content:"\f0c8"}.am-icon-bars:before,.am-icon-navicon:before,.am-icon-reorder:before{content:"\f0c9"}.am-icon-list-ul:before{content:"\f0ca"}.am-icon-list-ol:before{content:"\f0cb"}.am-icon-strikethrough:before{content:"\f0cc"}.am-icon-underline:before{content:"\f0cd"}.am-icon-table:before{content:"\f0ce"}.am-icon-magic:before{content:"\f0d0"}.am-icon-truck:before{content:"\f0d1"}.am-icon-pinterest:before{content:"\f0d2"}.am-icon-pinterest-square:before{content:"\f0d3"}.am-icon-google-plus-square:before{content:"\f0d4"}.am-icon-google-plus:before{content:"\f0d5"}.am-icon-money:before{content:"\f0d6"}.am-icon-caret-down:before{content:"\f0d7"}.am-icon-caret-up:before{content:"\f0d8"}.am-icon-caret-left:before{content:"\f0d9"}.am-icon-caret-right:before{content:"\f0da"}.am-icon-columns:before{content:"\f0db"}.am-icon-sort:before,.am-icon-unsorted:before{content:"\f0dc"}.am-icon-sort-desc:before,.am-icon-sort-down:before{content:"\f0dd"}.am-icon-sort-asc:before,.am-icon-sort-up:before{content:"\f0de"}.am-icon-envelope:before{content:"\f0e0"}.am-icon-linkedin:before{content:"\f0e1"}.am-icon-rotate-left:before,.am-icon-undo:before{content:"\f0e2"}.am-icon-gavel:before,.am-icon-legal:before{content:"\f0e3"}.am-icon-dashboard:before,.am-icon-tachometer:before{content:"\f0e4"}.am-icon-comment-o:before{content:"\f0e5"}.am-icon-comments-o:before{content:"\f0e6"}.am-icon-bolt:before,.am-icon-flash:before{content:"\f0e7"}.am-icon-sitemap:before{content:"\f0e8"}.am-icon-umbrella:before{content:"\f0e9"}.am-icon-clipboard:before,.am-icon-paste:before{content:"\f0ea"}.am-icon-lightbulb-o:before{content:"\f0eb"}.am-icon-exchange:before{content:"\f0ec"}.am-icon-cloud-download:before{content:"\f0ed"}.am-icon-cloud-upload:before{content:"\f0ee"}.am-icon-user-md:before{content:"\f0f0"}.am-icon-stethoscope:before{content:"\f0f1"}.am-icon-suitcase:before{content:"\f0f2"}.am-icon-bell-o:before{content:"\f0a2"}.am-icon-coffee:before{content:"\f0f4"}.am-icon-cutlery:before{content:"\f0f5"}.am-icon-file-text-o:before{content:"\f0f6"}.am-icon-building-o:before{content:"\f0f7"}.am-icon-hospital-o:before{content:"\f0f8"}.am-icon-ambulance:before{content:"\f0f9"}.am-icon-medkit:before{content:"\f0fa"}.am-icon-fighter-jet:before{content:"\f0fb"}.am-icon-beer:before{content:"\f0fc"}.am-icon-h-square:before{content:"\f0fd"}.am-icon-plus-square:before{content:"\f0fe"}.am-icon-angle-double-left:before{content:"\f100"}.am-icon-angle-double-right:before{content:"\f101"}.am-icon-angle-double-up:before{content:"\f102"}.am-icon-angle-double-down:before{content:"\f103"}.am-icon-angle-left:before{content:"\f104"}.am-icon-angle-right:before{content:"\f105"}.am-icon-angle-up:before{content:"\f106"}.am-icon-angle-down:before{content:"\f107"}.am-icon-desktop:before{content:"\f108"}.am-icon-laptop:before{content:"\f109"}.am-icon-tablet:before{content:"\f10a"}.am-icon-mobile-phone:before,.am-icon-mobile:before{content:"\f10b"}.am-icon-circle-o:before{content:"\f10c"}.am-icon-quote-left:before{content:"\f10d"}.am-icon-quote-right:before{content:"\f10e"}.am-icon-spinner:before{content:"\f110"}.am-icon-circle:before{content:"\f111"}.am-icon-mail-reply:before,.am-icon-reply:before{content:"\f112"}.am-icon-github-alt:before{content:"\f113"}.am-icon-folder-o:before{content:"\f114"}.am-icon-folder-open-o:before{content:"\f115"}.am-icon-smile-o:before{content:"\f118"}.am-icon-frown-o:before{content:"\f119"}.am-icon-meh-o:before{content:"\f11a"}.am-icon-gamepad:before{content:"\f11b"}.am-icon-keyboard-o:before{content:"\f11c"}.am-icon-flag-o:before{content:"\f11d"}.am-icon-flag-checkered:before{content:"\f11e"}.am-icon-terminal:before{content:"\f120"}.am-icon-code:before{content:"\f121"}.am-icon-mail-reply-all:before,.am-icon-reply-all:before{content:"\f122"}.am-icon-star-half-empty:before,.am-icon-star-half-full:before,.am-icon-star-half-o:before{content:"\f123"}.am-icon-location-arrow:before{content:"\f124"}.am-icon-crop:before{content:"\f125"}.am-icon-code-fork:before{content:"\f126"}.am-icon-chain-broken:before,.am-icon-unlink:before{content:"\f127"}.am-icon-question:before{content:"\f128"}.am-icon-info:before{content:"\f129"}.am-icon-exclamation:before{content:"\f12a"}.am-icon-superscript:before{content:"\f12b"}.am-icon-subscript:before{content:"\f12c"}.am-icon-eraser:before{content:"\f12d"}.am-icon-puzzle-piece:before{content:"\f12e"}.am-icon-microphone:before{content:"\f130"}.am-icon-microphone-slash:before{content:"\f131"}.am-icon-shield:before{content:"\f132"}.am-icon-calendar-o:before{content:"\f133"}.am-icon-fire-extinguisher:before{content:"\f134"}.am-icon-rocket:before{content:"\f135"}.am-icon-maxcdn:before{content:"\f136"}.am-icon-chevron-circle-left:before{content:"\f137"}.am-icon-chevron-circle-right:before{content:"\f138"}.am-icon-chevron-circle-up:before{content:"\f139"}.am-icon-chevron-circle-down:before{content:"\f13a"}.am-icon-html5:before{content:"\f13b"}.am-icon-css3:before{content:"\f13c"}.am-icon-anchor:before{content:"\f13d"}.am-icon-unlock-alt:before{content:"\f13e"}.am-icon-bullseye:before{content:"\f140"}.am-icon-ellipsis-h:before{content:"\f141"}.am-icon-ellipsis-v:before{content:"\f142"}.am-icon-rss-square:before{content:"\f143"}.am-icon-play-circle:before{content:"\f144"}.am-icon-ticket:before{content:"\f145"}.am-icon-minus-square:before{content:"\f146"}.am-icon-minus-square-o:before{content:"\f147"}.am-icon-level-up:before{content:"\f148"}.am-icon-level-down:before{content:"\f149"}.am-icon-check-square:before{content:"\f14a"}.am-icon-pencil-square:before{content:"\f14b"}.am-icon-external-link-square:before{content:"\f14c"}.am-icon-share-square:before{content:"\f14d"}.am-icon-compass:before{content:"\f14e"}.am-icon-caret-square-o-down:before,.am-icon-toggle-down:before{content:"\f150"}.am-icon-caret-square-o-up:before,.am-icon-toggle-up:before{content:"\f151"}.am-icon-caret-square-o-right:before,.am-icon-toggle-right:before{content:"\f152"}.am-icon-eur:before,.am-icon-euro:before{content:"\f153"}.am-icon-gbp:before{content:"\f154"}.am-icon-dollar:before,.am-icon-usd:before{content:"\f155"}.am-icon-inr:before,.am-icon-rupee:before{content:"\f156"}.am-icon-cny:before,.am-icon-jpy:before,.am-icon-rmb:before,.am-icon-yen:before{content:"\f157"}.am-icon-rouble:before,.am-icon-rub:before,.am-icon-ruble:before{content:"\f158"}.am-icon-krw:before,.am-icon-won:before{content:"\f159"}.am-icon-bitcoin:before,.am-icon-btc:before{content:"\f15a"}.am-icon-file:before{content:"\f15b"}.am-icon-file-text:before{content:"\f15c"}.am-icon-sort-alpha-asc:before{content:"\f15d"}.am-icon-sort-alpha-desc:before{content:"\f15e"}.am-icon-sort-amount-asc:before{content:"\f160"}.am-icon-sort-amount-desc:before{content:"\f161"}.am-icon-sort-numeric-asc:before{content:"\f162"}.am-icon-sort-numeric-desc:before{content:"\f163"}.am-icon-thumbs-up:before{content:"\f164"}.am-icon-thumbs-down:before{content:"\f165"}.am-icon-youtube-square:before{content:"\f166"}.am-icon-youtube:before{content:"\f167"}.am-icon-xing:before{content:"\f168"}.am-icon-xing-square:before{content:"\f169"}.am-icon-youtube-play:before{content:"\f16a"}.am-icon-dropbox:before{content:"\f16b"}.am-icon-stack-overflow:before{content:"\f16c"}.am-icon-instagram:before{content:"\f16d"}.am-icon-flickr:before{content:"\f16e"}.am-icon-adn:before{content:"\f170"}.am-icon-bitbucket:before{content:"\f171"}.am-icon-bitbucket-square:before{content:"\f172"}.am-icon-tumblr:before{content:"\f173"}.am-icon-tumblr-square:before{content:"\f174"}.am-icon-long-arrow-down:before{content:"\f175"}.am-icon-long-arrow-up:before{content:"\f176"}.am-icon-long-arrow-left:before{content:"\f177"}.am-icon-long-arrow-right:before{content:"\f178"}.am-icon-apple:before{content:"\f179"}.am-icon-windows:before{content:"\f17a"}.am-icon-android:before{content:"\f17b"}.am-icon-linux:before{content:"\f17c"}.am-icon-dribbble:before{content:"\f17d"}.am-icon-skype:before{content:"\f17e"}.am-icon-foursquare:before{content:"\f180"}.am-icon-trello:before{content:"\f181"}.am-icon-female:before{content:"\f182"}.am-icon-male:before{content:"\f183"}.am-icon-gittip:before,.am-icon-gratipay:before{content:"\f184"}.am-icon-sun-o:before{content:"\f185"}.am-icon-moon-o:before{content:"\f186"}.am-icon-archive:before{content:"\f187"}.am-icon-bug:before{content:"\f188"}.am-icon-vk:before{content:"\f189"}.am-icon-weibo:before{content:"\f18a"}.am-icon-renren:before{content:"\f18b"}.am-icon-pagelines:before{content:"\f18c"}.am-icon-stack-exchange:before{content:"\f18d"}.am-icon-arrow-circle-o-right:before{content:"\f18e"}.am-icon-arrow-circle-o-left:before{content:"\f190"}.am-icon-caret-square-o-left:before,.am-icon-toggle-left:before{content:"\f191"}.am-icon-dot-circle-o:before{content:"\f192"}.am-icon-wheelchair:before{content:"\f193"}.am-icon-vimeo-square:before{content:"\f194"}.am-icon-try:before,.am-icon-turkish-lira:before{content:"\f195"}.am-icon-plus-square-o:before{content:"\f196"}.am-icon-space-shuttle:before{content:"\f197"}.am-icon-slack:before{content:"\f198"}.am-icon-envelope-square:before{content:"\f199"}.am-icon-wordpress:before{content:"\f19a"}.am-icon-openid:before{content:"\f19b"}.am-icon-bank:before,.am-icon-institution:before,.am-icon-university:before{content:"\f19c"}.am-icon-graduation-cap:before,.am-icon-mortar-board:before{content:"\f19d"}.am-icon-yahoo:before{content:"\f19e"}.am-icon-google:before{content:"\f1a0"}.am-icon-reddit:before{content:"\f1a1"}.am-icon-reddit-square:before{content:"\f1a2"}.am-icon-stumbleupon-circle:before{content:"\f1a3"}.am-icon-stumbleupon:before{content:"\f1a4"}.am-icon-delicious:before{content:"\f1a5"}.am-icon-digg:before{content:"\f1a6"}.am-icon-pied-piper-pp:before{content:"\f1a7"}.am-icon-pied-piper-alt:before{content:"\f1a8"}.am-icon-drupal:before{content:"\f1a9"}.am-icon-joomla:before{content:"\f1aa"}.am-icon-language:before{content:"\f1ab"}.am-icon-fax:before{content:"\f1ac"}.am-icon-building:before{content:"\f1ad"}.am-icon-child:before{content:"\f1ae"}.am-icon-paw:before{content:"\f1b0"}.am-icon-spoon:before{content:"\f1b1"}.am-icon-cube:before{content:"\f1b2"}.am-icon-cubes:before{content:"\f1b3"}.am-icon-behance:before{content:"\f1b4"}.am-icon-behance-square:before{content:"\f1b5"}.am-icon-steam:before{content:"\f1b6"}.am-icon-steam-square:before{content:"\f1b7"}.am-icon-recycle:before{content:"\f1b8"}.am-icon-automobile:before,.am-icon-car:before{content:"\f1b9"}.am-icon-cab:before,.am-icon-taxi:before{content:"\f1ba"}.am-icon-tree:before{content:"\f1bb"}.am-icon-spotify:before{content:"\f1bc"}.am-icon-deviantart:before{content:"\f1bd"}.am-icon-soundcloud:before{content:"\f1be"}.am-icon-database:before{content:"\f1c0"}.am-icon-file-pdf-o:before{content:"\f1c1"}.am-icon-file-word-o:before{content:"\f1c2"}.am-icon-file-excel-o:before{content:"\f1c3"}.am-icon-file-powerpoint-o:before{content:"\f1c4"}.am-icon-file-image-o:before,.am-icon-file-photo-o:before,.am-icon-file-picture-o:before{content:"\f1c5"}.am-icon-file-archive-o:before,.am-icon-file-zip-o:before{content:"\f1c6"}.am-icon-file-audio-o:before,.am-icon-file-sound-o:before{content:"\f1c7"}.am-icon-file-movie-o:before,.am-icon-file-video-o:before{content:"\f1c8"}.am-icon-file-code-o:before{content:"\f1c9"}.am-icon-vine:before{content:"\f1ca"}.am-icon-codepen:before{content:"\f1cb"}.am-icon-jsfiddle:before{content:"\f1cc"}.am-icon-life-bouy:before,.am-icon-life-buoy:before,.am-icon-life-ring:before,.am-icon-life-saver:before,.am-icon-support:before{content:"\f1cd"}.am-icon-circle-o-notch:before{content:"\f1ce"}.am-icon-ra:before,.am-icon-rebel:before,.am-icon-resistance:before{content:"\f1d0"}.am-icon-empire:before,.am-icon-ge:before{content:"\f1d1"}.am-icon-git-square:before{content:"\f1d2"}.am-icon-git:before{content:"\f1d3"}.am-icon-hacker-news:before,.am-icon-y-combinator-square:before,.am-icon-yc-square:before{content:"\f1d4"}.am-icon-tencent-weibo:before{content:"\f1d5"}.am-icon-qq:before{content:"\f1d6"}.am-icon-wechat:before,.am-icon-weixin:before{content:"\f1d7"}.am-icon-paper-plane:before,.am-icon-send:before{content:"\f1d8"}.am-icon-paper-plane-o:before,.am-icon-send-o:before{content:"\f1d9"}.am-icon-history:before{content:"\f1da"}.am-icon-circle-thin:before{content:"\f1db"}.am-icon-header:before{content:"\f1dc"}.am-icon-paragraph:before{content:"\f1dd"}.am-icon-sliders:before{content:"\f1de"}.am-icon-share-alt:before{content:"\f1e0"}.am-icon-share-alt-square:before{content:"\f1e1"}.am-icon-bomb:before{content:"\f1e2"}.am-icon-futbol-o:before,.am-icon-soccer-ball-o:before{content:"\f1e3"}.am-icon-tty:before{content:"\f1e4"}.am-icon-binoculars:before{content:"\f1e5"}.am-icon-plug:before{content:"\f1e6"}.am-icon-slideshare:before{content:"\f1e7"}.am-icon-twitch:before{content:"\f1e8"}.am-icon-yelp:before{content:"\f1e9"}.am-icon-newspaper-o:before{content:"\f1ea"}.am-icon-wifi:before{content:"\f1eb"}.am-icon-calculator:before{content:"\f1ec"}.am-icon-paypal:before{content:"\f1ed"}.am-icon-google-wallet:before{content:"\f1ee"}.am-icon-cc-visa:before{content:"\f1f0"}.am-icon-cc-mastercard:before{content:"\f1f1"}.am-icon-cc-discover:before{content:"\f1f2"}.am-icon-cc-amex:before{content:"\f1f3"}.am-icon-cc-paypal:before{content:"\f1f4"}.am-icon-cc-stripe:before{content:"\f1f5"}.am-icon-bell-slash:before{content:"\f1f6"}.am-icon-bell-slash-o:before{content:"\f1f7"}.am-icon-trash:before{content:"\f1f8"}.am-icon-copyright:before{content:"\f1f9"}.am-icon-at:before{content:"\f1fa"}.am-icon-eyedropper:before{content:"\f1fb"}.am-icon-paint-brush:before{content:"\f1fc"}.am-icon-birthday-cake:before{content:"\f1fd"}.am-icon-area-chart:before{content:"\f1fe"}.am-icon-pie-chart:before{content:"\f200"}.am-icon-line-chart:before{content:"\f201"}.am-icon-lastfm:before{content:"\f202"}.am-icon-lastfm-square:before{content:"\f203"}.am-icon-toggle-off:before{content:"\f204"}.am-icon-toggle-on:before{content:"\f205"}.am-icon-bicycle:before{content:"\f206"}.am-icon-bus:before{content:"\f207"}.am-icon-ioxhost:before{content:"\f208"}.am-icon-angellist:before{content:"\f209"}.am-icon-cc:before{content:"\f20a"}.am-icon-ils:before,.am-icon-shekel:before,.am-icon-sheqel:before{content:"\f20b"}.am-icon-meanpath:before{content:"\f20c"}.am-icon-buysellads:before{content:"\f20d"}.am-icon-connectdevelop:before{content:"\f20e"}.am-icon-dashcube:before{content:"\f210"}.am-icon-forumbee:before{content:"\f211"}.am-icon-leanpub:before{content:"\f212"}.am-icon-sellsy:before{content:"\f213"}.am-icon-shirtsinbulk:before{content:"\f214"}.am-icon-simplybuilt:before{content:"\f215"}.am-icon-skyatlas:before{content:"\f216"}.am-icon-cart-plus:before{content:"\f217"}.am-icon-cart-arrow-down:before{content:"\f218"}.am-icon-diamond:before{content:"\f219"}.am-icon-ship:before{content:"\f21a"}.am-icon-user-secret:before{content:"\f21b"}.am-icon-motorcycle:before{content:"\f21c"}.am-icon-street-view:before{content:"\f21d"}.am-icon-heartbeat:before{content:"\f21e"}.am-icon-venus:before{content:"\f221"}.am-icon-mars:before{content:"\f222"}.am-icon-mercury:before{content:"\f223"}.am-icon-intersex:before,.am-icon-transgender:before{content:"\f224"}.am-icon-transgender-alt:before{content:"\f225"}.am-icon-venus-double:before{content:"\f226"}.am-icon-mars-double:before{content:"\f227"}.am-icon-venus-mars:before{content:"\f228"}.am-icon-mars-stroke:before{content:"\f229"}.am-icon-mars-stroke-v:before{content:"\f22a"}.am-icon-mars-stroke-h:before{content:"\f22b"}.am-icon-neuter:before{content:"\f22c"}.am-icon-genderless:before{content:"\f22d"}.am-icon-facebook-official:before{content:"\f230"}.am-icon-pinterest-p:before{content:"\f231"}.am-icon-whatsapp:before{content:"\f232"}.am-icon-server:before{content:"\f233"}.am-icon-user-plus:before{content:"\f234"}.am-icon-user-times:before{content:"\f235"}.am-icon-bed:before,.am-icon-hotel:before{content:"\f236"}.am-icon-viacoin:before{content:"\f237"}.am-icon-train:before{content:"\f238"}.am-icon-subway:before{content:"\f239"}.am-icon-medium:before{content:"\f23a"}.am-icon-y-combinator:before,.am-icon-yc:before{content:"\f23b"}.am-icon-optin-monster:before{content:"\f23c"}.am-icon-opencart:before{content:"\f23d"}.am-icon-expeditedssl:before{content:"\f23e"}.am-icon-battery-4:before,.am-icon-battery-full:before{content:"\f240"}.am-icon-battery-3:before,.am-icon-battery-three-quarters:before{content:"\f241"}.am-icon-battery-2:before,.am-icon-battery-half:before{content:"\f242"}.am-icon-battery-1:before,.am-icon-battery-quarter:before{content:"\f243"}.am-icon-battery-0:before,.am-icon-battery-empty:before{content:"\f244"}.am-icon-mouse-pointer:before{content:"\f245"}.am-icon-i-cursor:before{content:"\f246"}.am-icon-object-group:before{content:"\f247"}.am-icon-object-ungroup:before{content:"\f248"}.am-icon-sticky-note:before{content:"\f249"}.am-icon-sticky-note-o:before{content:"\f24a"}.am-icon-cc-jcb:before{content:"\f24b"}.am-icon-cc-diners-club:before{content:"\f24c"}.am-icon-clone:before{content:"\f24d"}.am-icon-balance-scale:before{content:"\f24e"}.am-icon-hourglass-o:before{content:"\f250"}.am-icon-hourglass-1:before,.am-icon-hourglass-start:before{content:"\f251"}.am-icon-hourglass-2:before,.am-icon-hourglass-half:before{content:"\f252"}.am-icon-hourglass-3:before,.am-icon-hourglass-end:before{content:"\f253"}.am-icon-hourglass:before{content:"\f254"}.am-icon-hand-grab-o:before,.am-icon-hand-rock-o:before{content:"\f255"}.am-icon-hand-paper-o:before,.am-icon-hand-stop-o:before{content:"\f256"}.am-icon-hand-scissors-o:before{content:"\f257"}.am-icon-hand-lizard-o:before{content:"\f258"}.am-icon-hand-spock-o:before{content:"\f259"}.am-icon-hand-pointer-o:before{content:"\f25a"}.am-icon-hand-peace-o:before{content:"\f25b"}.am-icon-trademark:before{content:"\f25c"}.am-icon-registered:before{content:"\f25d"}.am-icon-creative-commons:before{content:"\f25e"}.am-icon-gg:before{content:"\f260"}.am-icon-gg-circle:before{content:"\f261"}.am-icon-tripadvisor:before{content:"\f262"}.am-icon-odnoklassniki:before{content:"\f263"}.am-icon-odnoklassniki-square:before{content:"\f264"}.am-icon-get-pocket:before{content:"\f265"}.am-icon-wikipedia-w:before{content:"\f266"}.am-icon-safari:before{content:"\f267"}.am-icon-chrome:before{content:"\f268"}.am-icon-firefox:before{content:"\f269"}.am-icon-opera:before{content:"\f26a"}.am-icon-internet-explorer:before{content:"\f26b"}.am-icon-television:before,.am-icon-tv:before{content:"\f26c"}.am-icon-contao:before{content:"\f26d"}.am-icon-500px:before{content:"\f26e"}.am-icon-amazon:before{content:"\f270"}.am-icon-calendar-plus-o:before{content:"\f271"}.am-icon-calendar-minus-o:before{content:"\f272"}.am-icon-calendar-times-o:before{content:"\f273"}.am-icon-calendar-check-o:before{content:"\f274"}.am-icon-industry:before{content:"\f275"}.am-icon-map-pin:before{content:"\f276"}.am-icon-map-signs:before{content:"\f277"}.am-icon-map-o:before{content:"\f278"}.am-icon-map:before{content:"\f279"}.am-icon-commenting:before{content:"\f27a"}.am-icon-commenting-o:before{content:"\f27b"}.am-icon-houzz:before{content:"\f27c"}.am-icon-vimeo:before{content:"\f27d"}.am-icon-black-tie:before{content:"\f27e"}.am-icon-fonticons:before{content:"\f280"}.am-icon-reddit-alien:before{content:"\f281"}.am-icon-edge:before{content:"\f282"}.am-icon-credit-card-alt:before{content:"\f283"}.am-icon-codiepie:before{content:"\f284"}.am-icon-modx:before{content:"\f285"}.am-icon-fort-awesome:before{content:"\f286"}.am-icon-usb:before{content:"\f287"}.am-icon-product-hunt:before{content:"\f288"}.am-icon-mixcloud:before{content:"\f289"}.am-icon-scribd:before{content:"\f28a"}.am-icon-pause-circle:before{content:"\f28b"}.am-icon-pause-circle-o:before{content:"\f28c"}.am-icon-stop-circle:before{content:"\f28d"}.am-icon-stop-circle-o:before{content:"\f28e"}.am-icon-shopping-bag:before{content:"\f290"}.am-icon-shopping-basket:before{content:"\f291"}.am-icon-hashtag:before{content:"\f292"}.am-icon-bluetooth:before{content:"\f293"}.am-icon-bluetooth-b:before{content:"\f294"}.am-icon-percent:before{content:"\f295"}.am-icon-gitlab:before{content:"\f296"}.am-icon-wpbeginner:before{content:"\f297"}.am-icon-wpforms:before{content:"\f298"}.am-icon-envira:before{content:"\f299"}.am-icon-universal-access:before{content:"\f29a"}.am-icon-wheelchair-alt:before{content:"\f29b"}.am-icon-question-circle-o:before{content:"\f29c"}.am-icon-blind:before{content:"\f29d"}.am-icon-audio-description:before{content:"\f29e"}.am-icon-volume-control-phone:before{content:"\f2a0"}.am-icon-braille:before{content:"\f2a1"}.am-icon-assistive-listening-systems:before{content:"\f2a2"}.am-icon-american-sign-language-interpreting:before,.am-icon-asl-interpreting:before{content:"\f2a3"}.am-icon-deaf:before,.am-icon-deafness:before,.am-icon-hard-of-hearing:before{content:"\f2a4"}.am-icon-glide:before{content:"\f2a5"}.am-icon-glide-g:before{content:"\f2a6"}.am-icon-sign-language:before,.am-icon-signing:before{content:"\f2a7"}.am-icon-low-vision:before{content:"\f2a8"}.am-icon-viadeo:before{content:"\f2a9"}.am-icon-viadeo-square:before{content:"\f2aa"}.am-icon-snapchat:before{content:"\f2ab"}.am-icon-snapchat-ghost:before{content:"\f2ac"}.am-icon-snapchat-square:before{content:"\f2ad"}.am-icon-pied-piper:before{content:"\f2ae"}.am-icon-first-order:before{content:"\f2b0"}.am-icon-yoast:before{content:"\f2b1"}.am-icon-themeisle:before{content:"\f2b2"}.am-icon-google-plus-circle:before,.am-icon-google-plus-official:before{content:"\f2b3"}.am-icon-fa:before,.am-icon-font-awesome:before{content:"\f2b4"}@-webkit-keyframes icon-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes icon-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.am-icon-spin{-webkit-animation:icon-spin 2s infinite linear;animation:icon-spin 2s infinite linear}.am-icon-pulse{-webkit-animation:icon-spin 1s infinite steps(8);animation:icon-spin 1s infinite steps(8)}.am-icon-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.am-icon-ul>li{position:relative}.am-icon-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.am-input-group{position:relative;display:table;border-collapse:separate}.am-input-group .am-form-field{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.am-input-group .am-form-field,.am-input-group-btn,.am-input-group-label{display:table-cell}.am-input-group .am-form-field:not(:first-child):not(:last-child),.am-input-group-btn:not(:first-child):not(:last-child),.am-input-group-label:not(:first-child):not(:last-child){border-radius:0}.am-input-group-btn,.am-input-group-label{width:1%;white-space:nowrap;vertical-align:middle}.am-input-group-label{height:38px;padding:0 1em;font-size:1.6rem;font-weight:400;line-height:36px;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:0}.am-input-group-label input[type=checkbox],.am-input-group-label input[type=radio]{margin-top:0}.am-input-group .am-form-field:first-child,.am-input-group-btn:first-child>.am-btn,.am-input-group-btn:first-child>.am-btn-group>.am-btn,.am-input-group-btn:first-child>.am-dropdown-toggle,.am-input-group-btn:last-child>.am-btn-group:not(:last-child)>.am-btn,.am-input-group-btn:last-child>.am-btn:not(:last-child):not(.dropdown-toggle),.am-input-group-label:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.am-input-group-label:first-child{border-right:0}.am-input-group .am-form-field:last-child,.am-input-group-btn:first-child>.am-btn-group:not(:first-child)>.am-btn,.am-input-group-btn:first-child>.am-btn:not(:first-child),.am-input-group-btn:last-child>.am-btn,.am-input-group-btn:last-child>.am-btn-group>.am-btn,.am-input-group-btn:last-child>.am-dropdown-toggle,.am-input-group-label:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.am-input-group-label:last-child{border-left:0}.am-input-group-btn{position:relative;font-size:0;white-space:nowrap}.am-input-group-btn>.am-btn{position:relative;border-color:#ccc}.am-input-group-btn>.am-btn+.am-btn{margin-left:-1px}.am-input-group-btn>.am-btn:active,.am-input-group-btn>.am-btn:focus,.am-input-group-btn>.am-btn:hover{z-index:2}.am-input-group-btn:first-child>.am-btn,.am-input-group-btn:first-child>.am-btn-group{margin-right:-2px}.am-input-group-btn:last-child>.am-btn,.am-input-group-btn:last-child>.am-btn-group{margin-left:-1px}.am-input-group .am-form-field,.am-input-group-btn>.am-btn{height:38px;padding-bottom:auto}.am-input-group-lg>.am-form-field,.am-input-group-lg>.am-input-group-btn>.am-btn,.am-input-group-lg>.am-input-group-label{height:42px;font-size:1.8rem!important}.am-input-group-lg>.am-input-group-label{line-height:40px}.am-input-group-sm>.am-form-field,.am-input-group-sm>.am-input-group-btn>.am-btn,.am-input-group-sm>.am-input-group-label{height:33px;font-size:1.4rem!important}.am-input-group-sm>.am-input-group-label{line-height:31px}.am-input-group-primary .am-input-group-label{background:#0e90d2;color:#fff}.am-input-group-primary .am-input-group-btn>.am-btn,.am-input-group-primary .am-input-group-label,.am-input-group-primary.am-input-group .am-form-field{border-color:#0e90d2}.am-input-group-secondary .am-input-group-label{background:#3bb4f2;color:#fff}.am-input-group-secondary .am-input-group-btn>.am-btn,.am-input-group-secondary .am-input-group-label,.am-input-group-secondary.am-input-group .am-form-field{border-color:#3bb4f2}.am-input-group-success .am-input-group-label{background:#5eb95e;color:#fff}.am-input-group-success .am-input-group-btn>.am-btn,.am-input-group-success .am-input-group-label,.am-input-group-success.am-input-group .am-form-field{border-color:#5eb95e}.am-input-group-warning .am-input-group-label{background:#F37B1D;color:#fff}.am-input-group-warning .am-input-group-btn>.am-btn,.am-input-group-warning .am-input-group-label,.am-input-group-warning.am-input-group .am-form-field{border-color:#F37B1D}.am-input-group-danger .am-input-group-label{background:#dd514c;color:#fff}.am-input-group-danger .am-input-group-btn>.am-btn,.am-input-group-danger .am-input-group-label,.am-input-group-danger.am-input-group .am-form-field{border-color:#dd514c}.am-list{margin-bottom:1.6rem;padding-left:0}.am-list>li{position:relative;display:block;margin-bottom:-1px;background-color:#fff;border:1px solid #dedede;border-width:1px 0}.am-list>li>a{display:block;padding:1rem 0}.am-list>li>a.am-active,.am-list>li>a.am-active:focus,.am-list>li>a.am-active:hover{z-index:2;color:#fff;background-color:#0e90d2;border-color:#0e90d2}.am-list>li>a.am-active .am-list-item-heading,.am-list>li>a.am-active:focus .am-list-item-heading,.am-list>li>a.am-active:hover .am-list-item-heading{color:inherit}.am-list>li>a.am-active .am-list-item-text,.am-list>li>a.am-active:focus .am-list-item-text,.am-list>li>a.am-active:hover .am-list-item-text{color:#b2e2fa}.am-list>li>.am-badge{float:right}.am-list>li>.am-badge+.am-badge{margin-right:5px}.am-list-static>li{padding:.8rem .2rem}.am-list-static.am-list-border>li{padding:1rem}.am-list-border>li,.am-list-bordered>li{border-width:1px}.am-list-border>li:first-child,.am-list-border>li:first-child>a,.am-list-bordered>li:first-child,.am-list-bordered>li:first-child>a{border-top-right-radius:0;border-top-left-radius:0}.am-list-border>li:last-child,.am-list-border>li:last-child>a,.am-list-bordered>li:last-child,.am-list-bordered>li:last-child>a{margin-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.am-list-border>li>a,.am-list-bordered>li>a{padding:1rem}.am-list-border>li>a:focus,.am-list-border>li>a:hover,.am-list-bordered>li>a:focus,.am-list-bordered>li>a:hover{background-color:#f5f5f5}.am-list-striped>li:nth-of-type(even){background:#f5f5f5}.am-list-item-hd{margin-top:0}.am-list-item-text{line-height:1.4;font-size:1.3rem;color:#999;margin:0}.am-panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:0;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.am-panel-hd{padding:.6rem 1.25rem;border-bottom:1px solid transparent;border-top-right-radius:0;border-top-left-radius:0}.am-panel-bd{padding:1.25rem}.am-panel-title{margin:0;font-size:100%;color:inherit}.am-panel-title>a{color:inherit}.am-panel-footer{padding:.6rem 1.25rem;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:0;border-bottom-left-radius:0}.am-panel-default{border-color:#ddd}.am-panel-default>.am-panel-hd{color:#444;background-color:#f5f5f5;border-color:#ddd}.am-panel-default>.am-panel-hd+.am-panel-collapse>.am-panel-bd{border-top-color:#ddd}.am-panel-default>.am-panel-footer+.am-panel-collapse>.am-panel-bd{border-bottom-color:#ddd}.am-panel-primary{border-color:#10a0ea}.am-panel-primary>.am-panel-hd{color:#fff;background-color:#0e90d2;border-color:#10a0ea}.am-panel-primary>.am-panel-hd+.am-panel-collapse>.am-panel-bd{border-top-color:#10a0ea}.am-panel-primary>.am-panel-footer+.am-panel-collapse>.am-panel-bd{border-bottom-color:#10a0ea}.am-panel-secondary{border-color:#caebfb}.am-panel-secondary>.am-panel-hd{color:#14a6ef;background-color:rgba(59,180,242,.15);border-color:#caebfb}.am-panel-secondary>.am-panel-hd+.am-panel-collapse>.am-panel-bd{border-top-color:#caebfb}.am-panel-secondary>.am-panel-footer+.am-panel-collapse>.am-panel-bd{border-bottom-color:#caebfb}.am-panel-success{border-color:#c9e7c9}.am-panel-success>.am-panel-hd{color:#5eb95e;background-color:rgba(94,185,94,.15);border-color:#c9e7c9}.am-panel-success>.am-panel-hd+.am-panel-collapse>.am-panel-bd{border-top-color:#c9e7c9}.am-panel-success>.am-panel-footer+.am-panel-collapse>.am-panel-bd{border-bottom-color:#c9e7c9}.am-panel-warning{border-color:#fbd0ae}.am-panel-warning>.am-panel-hd{color:#F37B1D;background-color:rgba(243,123,29,.15);border-color:#fbd0ae}.am-panel-warning>.am-panel-hd+.am-panel-collapse>.am-panel-bd{border-top-color:#fbd0ae}.am-panel-warning>.am-panel-footer+.am-panel-collapse>.am-panel-bd{border-bottom-color:#fbd0ae}.am-panel-danger{border-color:#f5cecd}.am-panel-danger>.am-panel-hd{color:#dd514c;background-color:rgba(221,81,76,.15);border-color:#f5cecd}.am-panel-danger>.am-panel-hd+.am-panel-collapse>.am-panel-bd{border-top-color:#f5cecd}.am-panel-danger>.am-panel-footer+.am-panel-collapse>.am-panel-bd{border-bottom-color:#f5cecd}.am-panel>.am-table{margin-bottom:0}.am-panel>.am-table:first-child{border-top-right-radius:0;border-top-left-radius:0}.am-panel>.am-table:first-child>tbody:first-child>tr:first-child td:first-child,.am-panel>.am-table:first-child>tbody:first-child>tr:first-child th:first-child,.am-panel>.am-table:first-child>thead:first-child>tr:first-child td:first-child,.am-panel>.am-table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:0}.am-panel>.am-table:first-child>tbody:first-child>tr:first-child td:last-child,.am-panel>.am-table:first-child>tbody:first-child>tr:first-child th:last-child,.am-panel>.am-table:first-child>thead:first-child>tr:first-child td:last-child,.am-panel>.am-table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:0}.am-panel>.am-table:last-child{border-bottom-right-radius:0;border-bottom-left-radius:0}.am-panel>.am-table:last-child>tbody:last-child>tr:last-child td:first-child,.am-panel>.am-table:last-child>tbody:last-child>tr:last-child th:first-child,.am-panel>.am-table:last-child>tfoot:last-child>tr:last-child td:first-child,.am-panel>.am-table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:0}.am-panel>.am-table:last-child>tbody:last-child>tr:last-child td:last-child,.am-panel>.am-table:last-child>tbody:last-child>tr:last-child th:last-child,.am-panel>.am-table:last-child>tfoot:last-child>tr:last-child td:last-child,.am-panel>.am-table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:0}.am-panel>.am-panel-bd+.am-table{border-top:1px solid #ddd}.am-panel>.am-table>tbody:first-child>tr:first-child td,.am-panel>.am-table>tbody:first-child>tr:first-child th{border-top:0}.am-panel>.am-table-bd{border:0}.am-panel>.am-table-bd>tbody>tr>td:first-child,.am-panel>.am-table-bd>tbody>tr>th:first-child,.am-panel>.am-table-bd>tfoot>tr>td:first-child,.am-panel>.am-table-bd>tfoot>tr>th:first-child,.am-panel>.am-table-bd>thead>tr>td:first-child,.am-panel>.am-table-bd>thead>tr>th:first-child{border-left:0}.am-panel>.am-table-bd>tbody>tr>td:last-child,.am-panel>.am-table-bd>tbody>tr>th:last-child,.am-panel>.am-table-bd>tfoot>tr>td:last-child,.am-panel>.am-table-bd>tfoot>tr>th:last-child,.am-panel>.am-table-bd>thead>tr>td:last-child,.am-panel>.am-table-bd>thead>tr>th:last-child{border-right:0}.am-panel>.am-table-bd>tbody>tr:first-child>td,.am-panel>.am-table-bd>tbody>tr:first-child>th,.am-panel>.am-table-bd>thead>tr:first-child>td,.am-panel>.am-table-bd>thead>tr:first-child>th{border-bottom:0}.am-panel>.am-table-bd>tbody>tr:last-child>td,.am-panel>.am-table-bd>tbody>tr:last-child>th,.am-panel>.am-table-bd>tfoot>tr:last-child>td,.am-panel>.am-table-bd>tfoot>tr:last-child>th{border-bottom:0}.am-panel>.am-list{margin:0}.am-panel>.am-list>li>a{padding-left:1rem;padding-right:1rem}.am-panel>.am-list-static li{padding-left:1rem;padding-right:1rem}.am-panel-group{margin-bottom:2rem}.am-panel-group .am-panel{margin-bottom:0;border-radius:0}.am-panel-group .am-panel+.am-panel{margin-top:6px}.am-panel-group .am-panel-hd{border-bottom:0}.am-panel-group .am-panel-hd+.am-panel-collapse .am-panel-bd{border-top:1px solid #ddd}.am-panel-group .am-panel-footer{border-top:0}.am-panel-group .am-panel-footer+.am-panel-collapse .am-panel-bd{border-bottom:1px solid #ddd}@-webkit-keyframes progress-bar-stripes{from{background-position:36px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:36px 0}to{background-position:0 0}}.am-progress{overflow:hidden;height:2rem;margin-bottom:2rem;background-color:#f5f5f5;border-radius:0;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.am-progress-bar{float:left;width:0;height:100%;font-size:1.2rem;line-height:2rem;color:#fff;text-align:center;background-color:#0e90d2;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.am-progress-striped .am-progress-bar{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(.25,rgba(255,255,255,.15)),color-stop(.25,transparent),color-stop(.5,transparent),color-stop(.5,rgba(255,255,255,.15)),color-stop(.75,rgba(255,255,255,.15)),color-stop(.75,transparent),to(transparent));background-image:-webkit-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-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);-webkit-background-size:36px 36px;background-size:36px 36px}.am-progress.am-active .am-progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.am-progress-bar[aria-valuenow="1"],.am-progress-bar[aria-valuenow="2"]{min-width:30px}.am-progress-bar[aria-valuenow="0"]{color:#999;min-width:30px;background:0 0;-webkit-box-shadow:none;box-shadow:none}.am-progress-bar-secondary{background-color:#3bb4f2}.am-progress-striped .am-progress-bar-secondary{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(.25,rgba(255,255,255,.15)),color-stop(.25,transparent),color-stop(.5,transparent),color-stop(.5,rgba(255,255,255,.15)),color-stop(.75,rgba(255,255,255,.15)),color-stop(.75,transparent),to(transparent));background-image:-webkit-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-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)}.am-progress-bar-success{background-color:#5eb95e}.am-progress-striped .am-progress-bar-success{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(.25,rgba(255,255,255,.15)),color-stop(.25,transparent),color-stop(.5,transparent),color-stop(.5,rgba(255,255,255,.15)),color-stop(.75,rgba(255,255,255,.15)),color-stop(.75,transparent),to(transparent));background-image:-webkit-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-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)}.am-progress-bar-warning{background-color:#F37B1D}.am-progress-striped .am-progress-bar-warning{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(.25,rgba(255,255,255,.15)),color-stop(.25,transparent),color-stop(.5,transparent),color-stop(.5,rgba(255,255,255,.15)),color-stop(.75,rgba(255,255,255,.15)),color-stop(.75,transparent),to(transparent));background-image:-webkit-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-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)}.am-progress-bar-danger{background-color:#dd514c}.am-progress-striped .am-progress-bar-danger{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(.25,rgba(255,255,255,.15)),color-stop(.25,transparent),color-stop(.5,transparent),color-stop(.5,rgba(255,255,255,.15)),color-stop(.75,rgba(255,255,255,.15)),color-stop(.75,transparent),to(transparent));background-image:-webkit-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-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)}.am-progress-xs{height:.6rem}.am-progress-sm{height:1.2rem}.am-thumbnail{display:block;padding:2px;margin-bottom:2rem;background-color:#fff;border:1px solid #ddd;border-radius:0;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.am-thumbnail a>img,.am-thumbnail>img{margin-left:auto;margin-right:auto;display:block}.am-thumbnail a.am-thumbnail.active,.am-thumbnail a.am-thumbnail:focus,.am-thumbnail a.am-thumbnail:hover{border-color:#0e90d2;background-color:#fff}.am-thumbnail a>img,.am-thumbnail>img,img.am-thumbnail{max-width:100%;height:auto}.am-thumbnail-caption{margin:0;padding:.8rem;color:#333;font-weight:400}.am-thumbnail-caption :last-child{margin-bottom:0}.am-thumbnails{margin-left:-.5rem;margin-right:-.5rem}.am-thumbnails>li{padding:0 .5rem 1rem .5rem}.am-scrollable-horizontal{width:100%;overflow-y:hidden;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.am-scrollable-vertical{height:240px;overflow-y:scroll;-webkit-overflow-scrolling:touch;resize:vertical}.am-square{border-radius:0}.am-radius{border-radius:2px}.am-round{border-radius:1000px}.am-circle{border-radius:50%}.am-cf:after,.am-cf:before{content:" ";display:table}.am-cf:after{clear:both}.am-fl{float:left}.am-fr{float:right}.am-nbfc{overflow:hidden}.am-center{display:block;margin-left:auto;margin-right:auto}.am-block{display:block!important}.am-inline{display:inline!important}.am-inline-block{display:inline-block!important}.am-hide{display:none!important;visibility:hidden!important}.am-vertical-align{font-size:0}.am-vertical-align:before{content:'';display:inline-block;height:100%;vertical-align:middle}.am-vertical-align-bottom,.am-vertical-align-middle{display:inline-block;font-size:1.6rem;max-width:100%}.am-vertical-align-middle{vertical-align:middle}.am-vertical-align-bottom{vertical-align:bottom}.am-responsive-width{-webkit-box-sizing:border-box;box-sizing:border-box;max-width:100%;height:auto}.am-margin{margin:1.6rem}.am-margin-0{margin:0!important}.am-margin-xs{margin:.5rem}.am-margin-sm{margin:1rem}.am-margin-lg{margin:2.4rem}.am-margin-xl{margin:3.2rem}.am-margin-horizontal{margin-left:1.6rem;margin-right:1.6rem}.am-margin-horizontal-0{margin-left:0!important;margin-right:0!important}.am-margin-horizontal-xs{margin-left:.5rem;margin-right:.5rem}.am-margin-horizontal-sm{margin-left:1rem;margin-right:1rem}.am-margin-horizontal-lg{margin-left:2.4rem;margin-right:2.4rem}.am-margin-horizontal-xl{margin-left:3.2rem;margin-right:3.2rem}.am-margin-vertical{margin-top:1.6rem;margin-bottom:1.6rem}.am-margin-vertical-0{margin-top:0!important;margin-bottom:0!important}.am-margin-vertical-xs{margin-top:.5rem;margin-bottom:.5rem}.am-margin-vertical-sm{margin-top:1rem;margin-bottom:1rem}.am-margin-vertical-lg{margin-top:2.4rem;margin-bottom:2.4rem}.am-margin-vertical-xl{margin-top:3.2rem;margin-bottom:3.2rem}.am-margin-top{margin-top:1.6rem}.am-margin-top-0{margin-top:0!important}.am-margin-top-xs{margin-top:.5rem}.am-margin-top-sm{margin-top:1rem}.am-margin-top-lg{margin-top:2.4rem}.am-margin-top-xl{margin-top:3.2rem}.am-margin-bottom{margin-bottom:1.6rem}.am-margin-bottom-0{margin-bottom:0!important}.am-margin-bottom-xs{margin-bottom:.5rem}.am-margin-bottom-sm{margin-bottom:1rem}.am-margin-bottom-lg{margin-bottom:2.4rem}.am-margin-bottom-xl{margin-bottom:3.2rem}.am-margin-left{margin-left:1.6rem}.am-margin-left-0{margin-left:0!important}.am-margin-left-xs{margin-left:.5rem}.am-margin-left-sm{margin-left:1rem}.am-margin-left-lg{margin-left:2.4rem}.am-margin-left-xl{margin-left:3.2rem}.am-margin-right{margin-right:1.6rem}.am-margin-right-0{margin-right:0!important}.am-margin-right-xs{margin-right:.5rem}.am-margin-right-sm{margin-right:1rem}.am-margin-right-lg{margin-right:2.4rem}.am-margin-right-xl{margin-right:3.2rem}.am-padding{padding:1.6rem}.am-padding-0{padding:0!important}.am-padding-xs{padding:.5rem}.am-padding-sm{padding:1rem}.am-padding-lg{padding:2.4rem}.am-padding-xl{padding:3.2rem}.am-padding-horizontal{padding-left:1.6rem;padding-right:1.6rem}.am-padding-horizontal-0{padding-left:0!important;padding-right:0!important}.am-padding-horizontal-xs{padding-left:.5rem;padding-right:.5rem}.am-padding-horizontal-sm{padding-left:1rem;padding-right:1rem}.am-padding-horizontal-lg{padding-left:2.4rem;padding-right:2.4rem}.am-padding-horizontal-xl{padding-left:3.2rem;padding-right:3.2rem}.am-padding-vertical{padding-top:1.6rem;padding-bottom:1.6rem}.am-padding-vertical-0{padding-top:0!important;padding-bottom:0!important}.am-padding-vertical-xs{padding-top:.5rem;padding-bottom:.5rem}.am-padding-vertical-sm{padding-top:1rem;padding-bottom:1rem}.am-padding-vertical-lg{padding-top:2.4rem;padding-bottom:2.4rem}.am-padding-vertical-xl{padding-top:3.2rem;padding-bottom:3.2rem}.am-padding-top{padding-top:1.6rem}.am-padding-top-0{padding-top:0!important}.am-padding-top-xs{padding-top:.5rem}.am-padding-top-sm{padding-top:1rem}.am-padding-top-lg{padding-top:2.4rem}.am-padding-top-xl{padding-top:3.2rem}.am-padding-bottom{padding-bottom:1.6rem}.am-padding-bottom-0{padding-bottom:0!important}.am-padding-bottom-xs{padding-bottom:.5rem}.am-padding-bottom-sm{padding-bottom:1rem}.am-padding-bottom-lg{padding-bottom:2.4rem}.am-padding-bottom-xl{padding-bottom:3.2rem}.am-padding-left{padding-left:1.6rem}.am-padding-left-0{padding-left:0!important}.am-padding-left-xs{padding-left:.5rem}.am-padding-left-sm{padding-left:1rem}.am-padding-left-lg{padding-left:2.4rem}.am-padding-left-xl{padding-left:3.2rem}.am-padding-right{padding-right:1.6rem}.am-padding-right-0{padding-right:0!important}.am-padding-right-xs{padding-right:.5rem}.am-padding-right-sm{padding-right:1rem}.am-padding-right-lg{padding-right:2.4rem}.am-padding-right-xl{padding-right:3.2rem}@media only screen{.am-hide-lg,.am-hide-lg-only,.am-hide-lg-up,.am-hide-md,.am-hide-md-only,.am-hide-md-up,.am-show-lg-down,.am-show-md-down,.am-show-sm,.am-show-sm-down,.am-show-sm-only,.am-show-sm-up{display:inherit!important}.am-hide-lg-down,.am-hide-md-down,.am-hide-sm,.am-hide-sm-down,.am-hide-sm-only,.am-hide-sm-up,.am-show-lg,.am-show-lg-only,.am-show-lg-up,.am-show-md,.am-show-md-only,.am-show-md-up{display:none!important}table.am-hide-lg,table.am-hide-lg-only,table.am-hide-lg-up,table.am-hide-md,table.am-hide-md-only,table.am-hide-md-up,table.am-show-lg-down,table.am-show-md-down,table.am-show-sm,table.am-show-sm-down,table.am-show-sm-only,table.am-show-sm-up{display:table!important}thead.am-hide-lg,thead.am-hide-lg-only,thead.am-hide-lg-up,thead.am-hide-md,thead.am-hide-md-only,thead.am-hide-md-up,thead.am-show-lg-down,thead.am-show-md-down,thead.am-show-sm,thead.am-show-sm-down,thead.am-show-sm-only,thead.am-show-sm-up{display:table-header-group!important}tbody.am-hide-lg,tbody.am-hide-lg-only,tbody.am-hide-lg-up,tbody.am-hide-md,tbody.am-hide-md-only,tbody.am-hide-md-up,tbody.am-show-lg-down,tbody.am-show-md-down,tbody.am-show-sm,tbody.am-show-sm-down,tbody.am-show-sm-only,tbody.am-show-sm-up{display:table-row-group!important}tr.am-hide-lg,tr.am-hide-lg-only,tr.am-hide-lg-up,tr.am-hide-md,tr.am-hide-md-only,tr.am-hide-md-up,tr.am-show-lg-down,tr.am-show-md-down,tr.am-show-sm,tr.am-show-sm-down,tr.am-show-sm-only,tr.am-show-sm-up{display:table-row!important}td.am-hide-lg,td.am-hide-lg-only,td.am-hide-lg-up,td.am-hide-md,td.am-hide-md-only,td.am-hide-md-up,td.am-show-lg-down,td.am-show-md-down,td.am-show-sm,td.am-show-sm-down,td.am-show-sm-only,td.am-show-sm-up,th.am-hide-lg,th.am-hide-lg-only,th.am-hide-lg-up,th.am-hide-md,th.am-hide-md-only,th.am-hide-md-up,th.am-show-lg-down,th.am-show-md-down,th.am-show-sm,th.am-show-sm-down,th.am-show-sm-only,th.am-show-sm-up{display:table-cell!important}}@media only screen and (min-width:641px){.am-hide-lg,.am-hide-lg-only,.am-hide-lg-up,.am-hide-sm,.am-hide-sm-down,.am-hide-sm-only,.am-show-lg-down,.am-show-md,.am-show-md-down,.am-show-md-only,.am-show-md-up,.am-show-sm-up{display:inherit!important}.am-hide-lg-down,.am-hide-md,.am-hide-md-down,.am-hide-md-only,.am-hide-md-up,.am-hide-sm-up,.am-show-lg,.am-show-lg-only,.am-show-lg-up,.am-show-sm,.am-show-sm-down,.am-show-sm-only{display:none!important}table.am-hide-lg,table.am-hide-lg-only,table.am-hide-lg-up,table.am-hide-sm,table.am-hide-sm-down,table.am-hide-sm-only,table.am-show-lg-down,table.am-show-md,table.am-show-md-down,table.am-show-md-only,table.am-show-md-up,table.am-show-sm-up{display:table!important}thead.am-hide-lg,thead.am-hide-lg-only,thead.am-hide-lg-up,thead.am-hide-sm,thead.am-hide-sm-down,thead.am-hide-sm-only,thead.am-show-lg-down,thead.am-show-md,thead.am-show-md-down,thead.am-show-md-only,thead.am-show-md-up,thead.am-show-sm-up{display:table-header-group!important}tbody.am-hide-lg,tbody.am-hide-lg-only,tbody.am-hide-lg-up,tbody.am-hide-sm,tbody.am-hide-sm-down,tbody.am-hide-sm-only,tbody.am-show-lg-down,tbody.am-show-md,tbody.am-show-md-down,tbody.am-show-md-only,tbody.am-show-md-up,tbody.am-show-sm-up{display:table-row-group!important}tr.am-hide-lg,tr.am-hide-lg-only,tr.am-hide-lg-up,tr.am-hide-sm,tr.am-hide-sm-down,tr.am-hide-sm-only,tr.am-show-lg-down,tr.am-show-md,tr.am-show-md-down,tr.am-show-md-only,tr.am-show-md-up,tr.am-show-sm-up{display:table-row!important}td.am-hide-lg,td.am-hide-lg-only,td.am-hide-lg-up,td.am-hide-sm,td.am-hide-sm-down,td.am-hide-sm-only,td.am-show-lg-down,td.am-show-md,td.am-show-md-down,td.am-show-md-only,td.am-show-md-up,td.am-show-sm-up,th.am-hide-lg,th.am-hide-lg-only,th.am-hide-lg-up,th.am-hide-sm,th.am-hide-sm-down,th.am-hide-sm-only,th.am-show-lg-down,th.am-show-md,th.am-show-md-down,th.am-show-md-only,th.am-show-md-up,th.am-show-sm-up{display:table-cell!important}}@media only screen and (min-width:1025px){.am-hide-md,.am-hide-md-down,.am-hide-md-only,.am-hide-sm,.am-hide-sm-down,.am-hide-sm-only,.am-show-lg,.am-show-lg-down,.am-show-lg-only,.am-show-lg-up,.am-show-md-up,.am-show-sm-up{display:inherit!important}.am-hide-lg,.am-hide-lg-down,.am-hide-lg-only,.am-hide-lg-up,.am-hide-md-up,.am-hide-sm-up,.am-show-md,.am-show-md-down,.am-show-md-only,.am-show-sm,.am-show-sm-down,.am-show-sm-only{display:none!important}table.am-hide-md,table.am-hide-md-down,table.am-hide-md-only,table.am-hide-sm,table.am-hide-sm-down,table.am-hide-sm-only,table.am-show-lg,table.am-show-lg-down,table.am-show-lg-only,table.am-show-lg-up,table.am-show-md-up,table.am-show-sm-up{display:table!important}thead.am-hide-md,thead.am-hide-md-down,thead.am-hide-md-only,thead.am-hide-sm,thead.am-hide-sm-down,thead.am-hide-sm-only,thead.am-show-lg,thead.am-show-lg-down,thead.am-show-lg-only,thead.am-show-lg-up,thead.am-show-md-up,thead.am-show-sm-up{display:table-header-group!important}tbody.am-hide-md,tbody.am-hide-md-down,tbody.am-hide-md-only,tbody.am-hide-sm,tbody.am-hide-sm-down,tbody.am-hide-sm-only,tbody.am-show-lg,tbody.am-show-lg-down,tbody.am-show-lg-only,tbody.am-show-lg-up,tbody.am-show-md-up,tbody.am-show-sm-up{display:table-row-group!important}tr.am-hide-md,tr.am-hide-md-down,tr.am-hide-md-only,tr.am-hide-sm,tr.am-hide-sm-down,tr.am-hide-sm-only,tr.am-show-lg,tr.am-show-lg-down,tr.am-show-lg-only,tr.am-show-lg-up,tr.am-show-md-up,tr.am-show-sm-up{display:table-row!important}td.am-hide-md,td.am-hide-md-down,td.am-hide-md-only,td.am-hide-sm,td.am-hide-sm-down,td.am-hide-sm-only,td.am-show-lg,td.am-show-lg-down,td.am-show-lg-only,td.am-show-lg-up,td.am-show-md-up,td.am-show-sm-up,th.am-hide-md,th.am-hide-md-down,th.am-hide-md-only,th.am-hide-sm,th.am-hide-sm-down,th.am-hide-sm-only,th.am-show-lg,th.am-show-lg-down,th.am-show-lg-only,th.am-show-lg-up,th.am-show-md-up,th.am-show-sm-up{display:table-cell!important}}@media only screen and (orientation:landscape){.am-hide-portrait,.am-show-landscape{display:inherit!important}.am-hide-landscape,.am-show-portrait{display:none!important}}@media only screen and (orientation:portrait){.am-hide-landscape,.am-show-portrait{display:inherit!important}.am-hide-portrait,.am-show-landscape{display:none!important}}.am-sans-serif{font-family:"Segoe UI","Lucida Grande",Helvetica,Arial,"Microsoft YaHei",FreeSans,Arimo,"Droid Sans","wenquanyi micro hei","Hiragino Sans GB","Hiragino Sans GB W3",FontAwesome,sans-serif}.am-serif{font-family:Georgia,"Times New Roman",Times,SimSun,FontAwesome,serif}.am-kai{font-family:Georgia,"Times New Roman",Times,Kai,"Kaiti SC",KaiTi,BiauKai,FontAwesome,serif}.am-monospace{font-family:Monaco,Menlo,Consolas,"Courier New",FontAwesome,monospace}.am-text-primary{color:#0e90d2}.am-text-secondary{color:#3bb4f2}.am-text-success{color:#5eb95e}.am-text-warning{color:#F37B1D}.am-text-danger{color:#dd514c}.am-link-muted{color:#666}.am-link-muted a{color:#666}.am-link-muted a:hover,.am-link-muted:hover{color:#555}.am-text-default{font-size:1.6rem}.am-text-xs{font-size:1.2rem}.am-text-sm{font-size:1.4rem}.am-text-lg{font-size:1.8rem}.am-text-xl{font-size:2.4rem}.am-text-xxl{font-size:3.2rem}.am-text-xxxl{font-size:4.2rem}.am-ellipsis,.am-text-truncate{word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-text-break{word-wrap:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;-moz-hyphens:auto;hyphens:auto}.am-text-nowrap{white-space:nowrap}[class*=am-align-]{margin-bottom:1rem}.am-align-left{margin-right:1rem;float:left}.am-align-right{margin-left:1rem;float:right}.am-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.am-text-ir{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}@media only screen{.am-text-left{text-align:left!important}.am-text-right{text-align:right!important}.am-text-center{text-align:center!important}.am-text-justify{text-align:justify!important}}@media only screen and (max-width:640px){.am-sm-only-text-left{text-align:left!important}.am-sm-only-text-right{text-align:right!important}.am-sm-only-text-center{text-align:center!important}.am-sm-only-text-justify{text-align:justify!important}}@media only screen and (min-width:641px) and (max-width:1024px){.am-md-only-text-left{text-align:left!important}.am-md-only-text-right{text-align:right!important}.am-md-only-text-center{text-align:center!important}.am-md-only-text-justify{text-align:justify!important}}@media only screen and (min-width:641px){.am-md-text-left{text-align:left!important}.am-md-text-right{text-align:right!important}.am-md-text-center{text-align:center!important}.am-md-text-justify{text-align:justify!important}}@media only screen and (min-width:1025px){.am-lg-text-left{text-align:left!important}.am-lg-text-right{text-align:right!important}.am-lg-text-center{text-align:center!important}.am-lg-text-justify{text-align:justify!important}}.am-text-top{vertical-align:top!important}.am-text-middle{vertical-align:middle!important}.am-text-bottom{vertical-align:bottom!important}.am-angle{position:absolute}.am-angle:after,.am-angle:before{position:absolute;display:block;content:"";width:0;height:0;border:8px dashed transparent;z-index:1}.am-angle-up{top:0}.am-angle-up:after,.am-angle-up:before{border-bottom-style:solid;border-width:0 8px 8px}.am-angle-up:before{border-bottom-color:#ddd;bottom:0}.am-angle-up:after{border-bottom-color:#fff;bottom:-1px}.am-angle-down{bottom:-9px}.am-angle-down:after,.am-angle-down:before{border-top-style:solid;border-width:8px 8px 0}.am-angle-down:before{border-top-color:#ddd;bottom:0}.am-angle-down:after{border-top-color:#fff;bottom:1px}.am-angle-left{left:-9px}.am-angle-left:after,.am-angle-left:before{border-right-style:solid;border-width:8px 8px 8px 0}.am-angle-left:before{border-right-color:#ddd;left:0}.am-angle-left:after{border-right-color:#fff;left:1px}.am-angle-right{right:0}.am-angle-right:after,.am-angle-right:before{border-left-style:solid;border-width:8px 0 8px 8px}.am-angle-right:before{border-left-color:#ddd;left:0}.am-angle-right:after{border-left-color:#fff;left:-1px}.am-alert{margin-bottom:1em;padding:.625em;background:#0e90d2;color:#fff;border:1px solid #0c7cb5;border-radius:0}.am-alert a{color:#fff}.am-alert h1,.am-alert h2,.am-alert h3,.am-alert h4,.am-alert h5,.am-alert h6{color:inherit}.am-alert .am-close{opacity:.4}.am-alert .am-close:hover{opacity:.6}*+.am-alert{margin-top:1em}.am-alert>:last-child{margin-bottom:0}.am-form-group .am-alert{margin:5px 0 0;padding:.25em .625em;font-size:1.3rem}.am-alert>.am-close:first-child{float:right;height:auto;margin:-3px -5px auto auto}.am-alert>.am-close:first-child+*{margin-top:0}.am-alert-secondary{background-color:#eee;border-color:#dfdfdf;color:#555}.am-alert-success{background-color:#5eb95e;border-color:#4bad4b;color:#fff}.am-alert-warning{background-color:#F37B1D;border-color:#e56c0c;color:#fff}.am-alert-danger{background-color:#dd514c;border-color:#d83832;color:#fff}.am-dropdown{position:relative;display:inline-block}.am-dropdown-toggle:focus{outline:0}.am-dropdown-content{position:absolute;top:100%;left:0;z-index:1020;display:none;float:left;min-width:160px;padding:15px;margin:9px 0 0;text-align:left;line-height:1.6;background-color:#fff;border:1px solid #ddd;border-radius:0;-webkit-background-clip:padding-box;background-clip:padding-box;-webkit-animation-duration:.15s;animation-duration:.15s}.am-dropdown-content:after,.am-dropdown-content:before{position:absolute;display:block;content:"";width:0;height:0;border:8px dashed transparent;z-index:1}.am-dropdown-content:after,.am-dropdown-content:before{border-bottom-style:solid;border-width:0 8px 8px}.am-dropdown-content:before{border-bottom-color:#ddd;bottom:0}.am-dropdown-content:after{border-bottom-color:#fff;bottom:-1px}.am-dropdown-content:after,.am-dropdown-content:before{left:10px;top:-8px;pointer-events:none}.am-dropdown-content:after{top:-7px}.am-active>.am-dropdown-content{display:block}.am-dropdown-content :first-child{margin-top:0}.am-dropdown-up .am-dropdown-content{top:auto;bottom:100%;margin:0 0 9px}.am-dropdown-up .am-dropdown-content:after,.am-dropdown-up .am-dropdown-content:before{border-bottom:none;border-top:8px solid #ddd;top:auto;bottom:-8px}.am-dropdown-up .am-dropdown-content:after{bottom:-7px;border-top-color:#fff}.am-dropdown-flip .am-dropdown-content{left:auto;right:0}.am-dropdown-flip .am-dropdown-content:after,.am-dropdown-flip .am-dropdown-content:before{left:auto;right:10px}ul.am-dropdown-content{list-style:none;padding:5px 0}ul.am-dropdown-content.am-fr{right:0;left:auto}ul.am-dropdown-content .am-divider{height:1px;margin:0rem 0;overflow:hidden;background-color:#e5e5e5}ul.am-dropdown-content>li>a{display:block;padding:6px 20px;clear:both;font-weight:400;color:#333;white-space:nowrap}ul.am-dropdown-content>li>a:focus,ul.am-dropdown-content>li>a:hover{text-decoration:none;color:#262626;background-color:#f5f5f5}ul.am-dropdown-content>.am-active>a,ul.am-dropdown-content>.am-active>a:focus,ul.am-dropdown-content>.am-active>a:hover{color:#fff;text-decoration:none;outline:0;background-color:#0e90d2}ul.am-dropdown-content>.am-disabled>a,ul.am-dropdown-content>.am-disabled>a:focus,ul.am-dropdown-content>.am-disabled>a:hover{color:#999}ul.am-dropdown-content>.am-disabled>a:focus,ul.am-dropdown-content>.am-disabled>a:hover{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.am-dropdown-header{display:block;padding:6px 20px;font-size:1.2rem;color:#999}.am-fr>.am-dropdown-content{right:0;left:auto}.am-fr>.am-dropdown-content:before{right:10px;left:auto}.am-dropdown-animation{-webkit-animation:am-dropdown-animation .15s ease-out;animation:am-dropdown-animation .15s ease-out}@-webkit-keyframes am-dropdown-animation{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}}@keyframes am-dropdown-animation{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}}.am-slider a:focus,.am-slider a:hover{outline:0}.am-control-nav,.am-direction-nav,.am-slides{margin:0;padding:0;list-style:none}.am-slider{margin:0;padding:0}.am-slider .am-slides:after,.am-slider .am-slides:before{content:" ";display:table}.am-slider .am-slides:after{clear:both}.am-slider .am-slides>li{display:none;-webkit-backface-visibility:hidden;position:relative}.no-js .am-slider .am-slides>li:first-child{display:block}.am-slider .am-slides img{width:100%;display:block}.am-pauseplay span{text-transform:capitalize}.am-slider{position:relative}.am-viewport{-webkit-transition:all 1s ease;transition:all 1s ease}.am-slider-carousel li{margin-right:5px}.am-control-nav{position:absolute}.am-control-nav li{display:inline-block}.am-control-thumbs{position:static;overflow:hidden}.am-control-thumbs img{-webkit-transition:all 1s ease;transition:all 1s ease}.am-slider-slide .am-slides>li{display:none;position:relative}@media all and (transform-3d),(-webkit-transform-3d){.am-slider-slide .am-slides>li{-webkit-transition:-webkit-transform .6s ease-in-out;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.am-slider-slide .am-slides>li.active.right,.am-slider-slide .am-slides>li.next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);left:0}.am-slider-slide .am-slides>li.active.left,.am-slider-slide .am-slides>li.prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);left:0}.am-slider-slide .am-slides>li.active,.am-slider-slide .am-slides>li.next.left,.am-slider-slide .am-slides>li.prev.right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);left:0}}.am-slider-slide .am-slides>.active,.am-slider-slide .am-slides>.next,.am-slider-slide .am-slides>.prev{display:block}.am-slider-slide .am-slides>.active{left:0}.am-slider-slide .am-slides>.next,.am-slider-slide .am-slides>.prev{position:absolute;top:0;width:100%}.am-slider-slide .am-slides>.next{left:100%}.am-slider-slide .am-slides>.prev{left:-100%}.am-slider-slide .am-slides>.next.left,.am-slider-slide .am-slides>.prev.right{left:0}.am-slider-slide .am-slides>.active.left{left:-100%}.am-slider-slide .am-slides>.active.right{left:100%}.am-slider-default{margin:0 0 20px;background-color:#fff;border-radius:2px;-webkit-box-shadow:0 0 2px rgba(0,0,0,.15);box-shadow:0 0 2px rgba(0,0,0,.15)}.am-slider-default .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-default .am-viewport{max-height:300px}.am-slider-default .carousel li{margin-right:5px}.am-slider-default .am-direction-nav a{position:absolute;top:50%;z-index:10;display:block;width:36px;height:36px;margin:-18px 0 0;overflow:hidden;opacity:.45;cursor:pointer;color:rgba(0,0,0,.65);-webkit-transition:all .3s ease;transition:all .3s ease}.am-slider-default .am-direction-nav a:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);width:100%;color:#333;content:"\f137";font-size:24px!important;text-align:center;line-height:36px!important;height:36px}.am-slider-default .am-direction-nav a.am-next:before{content:"\f138"}.am-slider-default .am-direction-nav .am-prev{left:10px}.am-slider-default .am-direction-nav .am-next{right:10px;text-align:right}.am-slider-default .am-direction-nav .am-disabled{opacity:0!important;cursor:default}.am-slider-default:hover .am-prev{opacity:.7;left:10px}.am-slider-default:hover .am-prev:hover{opacity:1}.am-slider-default:hover .am-next{opacity:.7;right:10px}.am-slider-default:hover .am-next:hover{opacity:1}.am-slider-default .am-pauseplay a{display:block;width:20px;height:20px;position:absolute;bottom:5px;left:10px;opacity:.8;z-index:10;overflow:hidden;cursor:pointer;color:#000}.am-slider-default .am-pauseplay a::before{font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);font-size:20px;display:inline-block;content:"\f04c"}.am-slider-default .am-pauseplay a:hover{opacity:1}.am-slider-default .am-pauseplay a.am-play::before{content:"\f04b"}.am-slider-default .am-slider-desc{background-color:rgba(0,0,0,.7);position:absolute;bottom:0;padding:10px;width:100%;color:#fff}.am-slider-default .am-control-nav{width:100%;position:absolute;bottom:-15px;text-align:center}.am-slider-default .am-control-nav li{margin:0 6px;display:inline-block}.am-slider-default .am-control-nav li a{width:8px;height:8px;display:block;background-color:#666;background-color:rgba(0,0,0,.5);line-height:0;font-size:0;cursor:pointer;text-indent:-9999px;border-radius:20px;-webkit-box-shadow:inset 0 0 3px rgba(0,0,0,.3);box-shadow:inset 0 0 3px rgba(0,0,0,.3)}.am-slider-default .am-control-nav li a:hover{background-color:#333;background-color:rgba(0,0,0,.7)}.am-slider-default .am-control-nav li a.am-active{background-color:#000;background-color:#0e90d2;cursor:default}.am-slider-default .am-control-thumbs{margin:5px 0 0;position:static;overflow:hidden}.am-slider-default .am-control-thumbs li{width:25%;float:left;margin:0}.am-slider-default .am-control-thumbs img{width:100%;height:auto;display:block;opacity:.7;cursor:pointer}.am-slider-default .am-control-thumbs img:hover{opacity:1}.am-slider-default .am-control-thumbs .am-active{opacity:1;cursor:default}.am-slider-default .am-control-thumbs i{position:absolute}.am-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1110;display:none;opacity:0;outline:0;text-align:center;-webkit-transform:scale(1.185);-ms-transform:scale(1.185);transform:scale(1.185);-webkit-transition-property:opacity,-webkit-transform;transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.am-modal:focus{outline:0}.am-modal.am-modal-active{opacity:1;-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);overflow-x:hidden;overflow-y:auto}.am-modal.am-modal-out{opacity:0;z-index:1109;-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transform:scale(.815);-ms-transform:scale(.815);transform:scale(.815)}.am-modal:before{content:"\200B";display:inline-block;height:100%;vertical-align:middle}.am-modal-dialog{position:relative;display:inline-block;vertical-align:middle;margin-left:auto;margin-right:auto;width:270px;max-width:100%;border-radius:0;background:#f8f8f8}@media only screen and (min-width:641px){.am-modal-dialog{width:540px}}.am-modal-hd{padding:15px 10px 5px 10px;font-size:1.8rem;font-weight:500}.am-modal-hd+.am-modal-bd{padding-top:0}.am-modal-hd .am-close{position:absolute;top:4px;right:4px}.am-modal-bd{padding:15px 10px;text-align:center;border-bottom:1px solid #dedede;border-radius:2px 2px 0 0}.am-modal-bd+.am-modal-bd{margin-top:5px}.am-modal-prompt-input{display:block;margin:5px auto 0 auto;border-radius:0;padding:5px;line-height:1.8rem;width:80%;border:1px solid #dedede;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none}.am-modal-prompt-input:focus{outline:0;border-color:#d6d6d6}.am-modal-footer{height:44px;overflow:hidden;display:table;width:100%;border-collapse:collapse}.am-modal-btn{display:table-cell!important;padding:0 5px;height:44px;-webkit-box-sizing:border-box!important;box-sizing:border-box!important;font-size:1.6rem;line-height:44px;text-align:center;color:#0e90d2;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;cursor:pointer;border-right:1px solid #dedede}.am-modal-btn:first-child{border-radius:0}.am-modal-btn:last-child{border-right:none;border-radius:0}.am-modal-btn:first-child:last-child{border-radius:0}.am-modal-btn.am-modal-btn-bold{font-weight:500}.am-modal-btn:active{background:#d4d4d4}.am-modal-btn+.am-modal-btn{border-left:1px solid #dedede}.am-modal-no-btn .am-modal-dialog{border-radius:0;border-bottom:none}.am-modal-no-btn .am-modal-bd{border-bottom:none}.am-modal-no-btn .am-modal-footer{display:none}.am-modal-loading .am-modal-bd{border-bottom:none}.am-modal-loading .am-icon-spin{display:inline-block;font-size:2.4rem}.am-modal-loading .am-modal-footer{display:none}.am-modal-actions{position:fixed;left:0;bottom:0;z-index:1110;width:100%;max-height:100%;overflow-x:hidden;overflow-y:auto;text-align:center;border-radius:0;-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%);-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.am-modal-actions.am-modal-active{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.am-modal-actions.am-modal-out{z-index:1109;-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}.am-modal-actions-group{margin:10px}.am-modal-actions-group .am-list{margin:0;border-radius:0}.am-modal-actions-group .am-list>li{margin-bottom:0;border-bottom:none;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,.015);box-shadow:inset 0 1px 0 rgba(0,0,0,.015)}.am-modal-actions-group .am-list>li>a{padding:1rem;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-modal-actions-group .am-list>li:first-child{border-top:none;border-top-right-radius:0;border-top-left-radius:0}.am-modal-actions-group .am-list>li:last-child{border-bottom:none;border-bottom-right-radius:0;border-bottom-left-radius:0}.am-modal-actions-header{padding:1rem;color:#999;font-size:1.4rem}.am-modal-actions-danger{color:#dd514c}.am-modal-actions-danger a{color:inherit}.am-popup{position:fixed;left:0;top:0;width:100%;height:100%;z-index:1110;background:#fff;display:none;overflow:hidden;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}.am-popup.am-modal-active,.am-popup.am-modal-out{-webkit-transition-duration:.3s;transition-duration:.3s}.am-popup.am-modal-active{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.am-popup.am-modal-out{-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}@media all and (min-width:630px) and (min-height:630px){.am-popup{width:630px;height:630px;left:50%;top:50%;margin-left:-315px;margin-top:-315px;-webkit-transform:translateY(1024px);-ms-transform:translateY(1024px);transform:translateY(1024px)}.am-popup.am-modal-active{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.am-popup.am-modal-out{-webkit-transform:translateY(1024px);-ms-transform:translateY(1024px);transform:translateY(1024px)}}.am-popup-inner{padding-top:44px;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.am-popup-hd{position:absolute;top:0;z-index:1000;width:100%;height:43px;border-bottom:1px solid #dedede;background-color:#fff}.am-popup-hd .am-popup-title{font-size:1.8rem;font-weight:700;line-height:43px;text-align:center;margin:0 30px;color:#333;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-popup-hd .am-close{position:absolute;right:10px;top:8px;cursor:pointer;-webkit-transition:all .3s;transition:all .3s;color:#999}.am-popup-hd .am-close:hover{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);color:#555}.am-popup-bd{padding:15px;background:#f8f8f8;color:#555}.am-offcanvas{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1090;background:rgba(0,0,0,.15)}.am-offcanvas.am-active{display:block}.am-offcanvas-page{position:fixed;-webkit-transition:margin-left .3s ease-in-out;transition:margin-left .3s ease-in-out}.am-offcanvas-bar{position:fixed;top:0;bottom:0;left:0;z-index:1091;width:270px;max-width:100%;background:#333;overflow-y:auto;-webkit-overflow-scrolling:touch;-webkit-transition:-webkit-transform .3s ease-in-out;transition:-webkit-transform .3s ease-in-out;transition:transform .3s ease-in-out;transition:transform .3s ease-in-out,-webkit-transform .3s ease-in-out;-webkit-transform:translateX(-100%);-ms-transform:translateX(-100%);transform:translateX(-100%)}.am-offcanvas-bar:after{content:"";display:block;position:absolute;top:0;bottom:0;right:0;width:1px;background:#262626}.am-offcanvas.am-active .am-offcanvas-bar.am-offcanvas-bar-active{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}.am-offcanvas-bar-flip{left:auto;right:0;-webkit-transform:translateX(100%);-ms-transform:translateX(100%);transform:translateX(100%)}.am-offcanvas-bar-flip:after{right:auto;left:0}.am-offcanvas-content{padding:15px;color:#999}.am-offcanvas-content a{color:#ccc}.am-popover{position:absolute;top:0;left:0;margin:0;border-radius:0;background:#333;color:#fff;border:1px solid #333;display:none;font-size:1.6rem;z-index:1150;opacity:0;-webkit-transition:opacity .3s;transition:opacity .3s}.am-popover.am-active{display:block!important;opacity:1}.am-popover-inner{position:relative;background:#333;padding:8px;z-index:110}.am-popover-caret{position:absolute;top:0;z-index:100;display:inline-block;width:0;height:0;vertical-align:middle;border-bottom:8px solid #333;border-right:8px solid transparent;border-left:8px solid transparent;border-top:0 dotted;-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);overflow:hidden}.am-popover-top .am-popover-caret{top:auto;bottom:-8px;-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.am-popover-bottom .am-popover-caret{top:-8px}.am-popover-bottom .am-popover-caret,.am-popover-top .am-popover-caret{left:50%;margin-left:-8px}.am-popover-left .am-popover-caret{top:auto;left:auto;right:-12px;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.am-popover-right .am-popover-caret{right:auto;left:-12px;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.am-popover-left .am-popover-caret,.am-popover-right .am-popover-caret{top:50%;margin-top:-4px}.am-popover-sm{font-size:1.4rem}.am-popover-sm .am-popover-inner{padding:5px}.am-popover-lg{font-size:1.8rem}.am-popover-primary{border-color:#0e90d2}.am-popover-primary .am-popover-inner{background:#0e90d2}.am-popover-primary .am-popover-caret{border-bottom-color:#0e90d2}.am-popover-secondary{border-color:#3bb4f2}.am-popover-secondary .am-popover-inner{background:#3bb4f2}.am-popover-secondary .am-popover-caret{border-bottom-color:#3bb4f2}.am-popover-success{border-color:#5eb95e}.am-popover-success .am-popover-inner{background:#5eb95e}.am-popover-success .am-popover-caret{border-bottom-color:#5eb95e}.am-popover-warning{border-color:#F37B1D}.am-popover-warning .am-popover-inner{background:#F37B1D}.am-popover-warning .am-popover-caret{border-bottom-color:#F37B1D}.am-popover-danger{border-color:#dd514c}.am-popover-danger .am-popover-inner{background:#dd514c}.am-popover-danger .am-popover-caret{border-bottom-color:#dd514c}#nprogress{pointer-events:none}#nprogress .nprogress-bar{position:fixed;top:0;left:0;z-index:2000;width:100%;height:2px;background:#5eb95e}#nprogress .nprogress-peg{display:block;position:absolute;right:0;width:100px;height:100%;-webkit-box-shadow:0 0 10px #5eb95e,0 0 5px #5eb95e;box-shadow:0 0 10px #5eb95e,0 0 5px #5eb95e;opacity:1;-webkit-transform:rotate(3deg) translate(0,-4px);-ms-transform:rotate(3deg) translate(0,-4px);transform:rotate(3deg) translate(0,-4px)}#nprogress .nprogress-spinner{position:fixed;top:15px;right:15px;z-index:2000;display:block}#nprogress .nprogress-spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border:solid 2px transparent;border-top-color:#5eb95e;border-left-color:#5eb95e;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes nprogress-spinner{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.am-tabs-bd{position:relative;overflow:hidden;border:1px solid #ddd;border-top:none;z-index:100;-webkit-transition:height .3s;transition:height .3s}.am-tabs-bd:after,.am-tabs-bd:before{content:" ";display:table}.am-tabs-bd:after{clear:both}.am-tabs-bd .am-tab-panel{position:absolute;top:0;z-index:99;float:left;width:100%;padding:10px 10px 15px;visibility:hidden;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;-webkit-transform:translateX(-100%);-ms-transform:translateX(-100%);transform:translateX(-100%)}.am-tabs-bd .am-tab-panel *{-webkit-user-drag:none}.am-tabs-bd .am-tab-panel.am-active{position:relative;z-index:100;visibility:visible;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}.am-tabs-bd .am-tab-panel.am-active~.am-tab-panel{-webkit-transform:translateX(100%);-ms-transform:translateX(100%);transform:translateX(100%)}.am-tabs-bd .am-tabs-bd{border:none}.am-tabs-bd-ofv{overflow:visible}.am-tabs-bd-ofv>.am-tab-panel{display:none}.am-tabs-bd-ofv>.am-tab-panel.am-active{display:block}.am-tabs-fade .am-tab-panel{opacity:0;-webkit-transition:opacity .25s linear;transition:opacity .25s linear}.am-tabs-fade .am-tab-panel.am-in{opacity:1}.am-share{font-size:14px}.am-share-title{padding:10px 0 0;margin:0 10px;font-weight:400;text-align:center;color:#555;background-color:#f8f8f8;border-bottom:1px solid #fff;border-top-right-radius:2px;border-top-left-radius:2px}.am-share-title:after{content:"";display:block;width:100%;height:0;margin-top:10px;border-bottom:1px solid #dfdfdf}.am-share-sns{margin:0 10px;padding-top:15px;background-color:#f8f8f8;border-bottom-right-radius:2px;border-bottom-left-radius:2px}.am-share-sns li{margin-bottom:15px}.am-share-sns a{display:block;color:#555}.am-share-sns span{display:block}.am-share-sns [class*=am-icon]{background-color:#3bb4f2;border-radius:50%;width:36px;height:36px;line-height:36px;color:#fff;margin-bottom:5px;font-size:18px}.am-share-sns .am-icon-weibo{background-color:#ea1328}.am-share-sns .am-icon-qq{background-color:#009cda}.am-share-sns .am-icon-star{background-color:#ffc028}.am-share-sns .am-icon-tencent-weibo{background-color:#23ccfe}.am-share-sns .am-icon-wechat,.am-share-sns .am-icon-weixin{background-color:#44b549}.am-share-sns .am-icon-renren{background-color:#105ba3}.am-share-sns .am-icon-comment{background-color:#5eb95e}.am-share-footer{margin:10px}.am-share-footer .am-btn{color:#555}.am-share-wechat-qr{font-size:14px;color:#777}.am-share-wechat-qr .am-modal-dialog{background-color:#fff;border:1px solid #dedede}.am-share-wechat-qr .am-modal-hd{padding-top:10px;text-align:left;margin-bottom:10px}.am-share-wechat-qr .am-share-wx-qr{margin-bottom:10px}.am-share-wechat-qr .am-share-wechat-tip{text-align:left}.am-share-wechat-qr .am-share-wechat-tip em{color:#dd514c;font-weight:700;font-style:normal;margin-left:3px;margin-right:3px}.am-pureview{position:fixed;left:0;top:0;bottom:0;right:0;z-index:1120;width:100%;height:100%;background:rgba(0,0,0,.95);display:none;overflow:hidden;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;-webkit-transform:translate(0,100%);-ms-transform:translate(0,100%);transform:translate(0,100%)}.am-pureview.am-active{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.am-pureview ol,.am-pureview ul{list-style:none;padding:0;margin:0;width:100%}.am-pureview-slider{overflow:hidden;height:100%}.am-pureview-slider li{position:absolute;width:100%;height:100%;top:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;vertical-align:middle;-webkit-transition:all .3s linear;transition:all .3s linear;z-index:100;visibility:hidden}.am-pureview-slider li.am-pureview-slide-prev{-webkit-transform:translate(-100%,0);-ms-transform:translate(-100%,0);transform:translate(-100%,0);z-index:109}.am-pureview-slider li.am-pureview-slide-next{-webkit-transform:translate(100%,0);-ms-transform:translate(100%,0);transform:translate(100%,0);z-index:109}.am-pureview-slider li.am-active{position:relative;z-index:110;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);visibility:visible}.am-pureview-slider .pinch-zoom-container{width:100%;z-index:1121}.am-pureview-slider .am-pinch-zoom{position:relative;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.am-pureview-slider .am-pinch-zoom:after{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f110";-webkit-animation:icon-spin 2s infinite linear;animation:icon-spin 2s infinite linear;font-size:24px;line-height:24px;color:#eee;position:absolute;top:50%;left:50%;margin-left:-12px;margin-top:-12px;z-index:1}.am-pureview-slider .am-pinch-zoom.am-pureview-loaded:after{display:none}.am-pureview-slider img{position:relative;display:block;max-width:100%;max-height:100%;opacity:0;z-index:200;-webkit-user-drag:none;-webkit-transition:opacity .2s ease-in;transition:opacity .2s ease-in}.am-pureview-slider img.am-img-loaded{opacity:1}.am-pureview-direction{position:absolute;top:50%;width:100%;margin-top:-18px!important;z-index:1122}.am-pureview-only .am-pureview-direction,.am-touch .am-pureview-direction{display:none}.am-pureview-direction li{position:absolute;width:36px;height:36px}.am-pureview-direction a{display:block;height:36px;border:none;color:#ccc;opacity:.5;cursor:pointer;text-align:center;z-index:1125}.am-pureview-direction a:before{content:"\f137";line-height:36px;font-size:24px}.am-pureview-direction a:hover{opacity:1}.am-pureview-direction .am-pureview-prev{left:15px}.am-pureview-direction .am-pureview-next{right:15px}.am-pureview-direction .am-pureview-next a:before{content:"\f138"}.am-pureview-bar{position:absolute;bottom:0;height:45px;width:100%;background-color:rgba(0,0,0,.35);color:#eee;line-height:45px;padding:0 10px;font-size:14px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.am-pureview-bar .am-pureview-title{display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;margin-left:6px;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.am-pureview-bar .am-pureview-total{font-size:10px;line-height:48px}.am-pureview-actions{position:absolute;z-index:1130;left:0;right:0;top:0;height:45px;background-color:rgba(0,0,0,.35)}.am-pureview-actions a{position:absolute;left:10px;color:#ccc;display:block;width:45px;line-height:45px;text-align:left;font-size:16px}.am-pureview-actions a:hover{color:#fff}.am-pureview-actions [data-am-toggle=share]{left:auto;right:10px}.am-pureview-actions,.am-pureview-bar{opacity:0;-webkit-transition:all .15s;transition:all .15s;z-index:1130}.am-pureview-bar-active .am-pureview-actions,.am-pureview-bar-active .am-pureview-bar{opacity:1}.am-pureview-nav{position:absolute;bottom:15px;left:0;right:0;text-align:center;z-index:1131}.am-pureview-bar-active .am-pureview-nav{display:none}.am-pureview-nav li{display:inline-block;background:#ccc;background:rgba(255,255,255,.5);width:8px;height:8px;margin:0 3px;border-radius:50%;text-indent:-9999px;overflow:hidden;cursor:pointer}.am-pureview-nav .am-active{background:#fff;background:rgba(255,255,255,.9)}[data-am-pureview] img{cursor:pointer}.am-pureview-active{overflow:hidden}.ath-viewport *{-webkit-box-sizing:border-box;box-sizing:border-box}.ath-viewport{position:relative;z-index:2147483641;pointer-events:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-text-size-adjust:none;-ms-text-size-adjust:none;text-size-adjust:none}.ath-modal{pointer-events:auto!important;background:rgba(0,0,0,.6)}.ath-mandatory{background:#000}.ath-container{pointer-events:auto!important;position:absolute;z-index:2147483641;padding:.7em .6em;width:18em;background:#eee;-webkit-background-size:100% auto;background-size:100% auto;-webkit-box-shadow:0 .2em 0 #d1d1d1;box-shadow:0 .2em 0 #d1d1d1;font-family:sans-serif;font-size:15px;line-height:1.5em;text-align:center}.ath-container small{font-size:.8em;line-height:1.3em;display:block;margin-top:.5em}.ath-ios.ath-phone{bottom:1.8em;left:50%;margin-left:-9em}.ath-ios6.ath-tablet{left:5em;top:1.8em}.ath-ios7.ath-tablet{left:.7em;top:1.8em}.ath-ios8.ath-tablet{right:.4em;top:1.8em}.ath-android{bottom:1.8em;left:50%;margin-left:-9em}.ath-container:before{content:'';position:relative;display:block;float:right;margin:-.7em -.6em 0 .5em;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIQAAACECAMAAABmmnOVAAAAdVBMVEUAAAA5OTkzMzM7Ozs3NzdBQUFAQEA/Pz8+Pj5BQUFAQEA/Pz8+Pj5BQUFAQEA/Pz9BQUE+Pj4/Pz8/Pz8+Pj4/Pz8/Pz8/Pz8+Pj4/Pz8+Pj4/Pz8/Pz8/Pz8/Pz8/Pz8+Pj4/Pz8/Pz8/Pz8/Pz9AQEA/Pz+fdCaPAAAAJnRSTlMACQoNDjM4OTo7PEFCQ0RFS6ytsbS1tru8vcTFxu7x8vX19vf4+C5yomAAAAJESURBVHgBvdzLTsJAGEfxr4C2KBcVkQsIDsK8/yPaqIsPzVlyzrKrX/5p0kkXEz81L23otc9NpIbbWia2YVLqdnhlqFlhGWpSDHe1aopsSIpRb8gK0dC3G30b9rVmhWZIimTICsvQtx/FsuYOrWHoDjX3Gu31gzJxdki934WrAIOsAIOsAIOiAMPhPsJTgKGN0BVsYIVsYIVpYIVpYIVpYIVpYIVpYIVpYIVpYIVlAIVgEBRs8BRs8BRs8BRs8BRs8BRs8BRs8BRTNmgKNngKNngKNngKNngKNhiKGxgiOlZoBlaYBlaYBlaYBlaYBlaYBlaYBlaYBlZIBlBMfQMrVAMr2KAqBENSHFHhGEABhi5CV6gGUKgGUKgGUKgGUFwuqgEUvoEVsoEVpoEUpgEUggF+gKTKY+h1fxSlC7/Z+RrxOQ3fcEoAPPHZBlaYBlaYBlaYBlZYBlYIhvLBCstw7PgM7hkiWOEZWGEaWGEaWGEaIsakEAysmHkGVpxmvoEVqoEVpoEVpoEVpoEVpoEVpoEVkoEVgkFQsEFSsEFQsGEcoSvY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnY4CnmbNAUT2c2WAo2eAo2eAo2eAo2eAo2eArNEPFACjZ4CjZ4CjZ4CjaIird/rBvFH6llNCvewdli1URWCIakSIZesUaDoFg36dKFWk9zCZDei3TtwmCj7pC22AwikiIZPEU29IpFNliKxa/hC9DFITjQPYhcAAAAAElFTkSuQmCC);background-color:rgba(255,255,255,.8);-webkit-background-size:50% 50%;background-size:50%;background-repeat:no-repeat;background-position:50%;width:2.7em;height:2.7em;text-align:center;overflow:hidden;color:#a33;z-index:2147483642}.ath-container.ath-icon:before{position:absolute;top:0;right:0;margin:0;float:none}.ath-mandatory .ath-container:before{display:none}.ath-container.ath-android:before{float:left;margin:-.7em .5em 0 -.6em}.ath-container.ath-android.ath-icon:before{position:absolute;right:auto;left:0;margin:0;float:none}.ath-action-icon{display:inline-block;vertical-align:middle;background-position:50%;background-repeat:no-repeat;text-indent:-9999em;overflow:hidden}.ath-ios7 .ath-action-icon,.ath-ios8 .ath-action-icon{width:1.6em;height:1.6em;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAACtCAYAAAB7l7tOAAAF6UlEQVR4AezZWWxUZRiH8VcQEdxZEFFiUZBFUCIa1ABBDARDcCciYGKMqTEGww3SOcNSAwQTjOBiiIpEhRjAhRgXRC8MFxojEhAFZUGttVhaoSxlaW3n8W3yXZxm6vTrOMM5Q98n+V9MMu1pvl++uZhKuypghu49KaaTWGdZSYoVN6VD95nMpLNYZ9XNbdQR2od2k88O3Gm6Bh0t7H0p5Vwp2Ax3ajpu2tYbciFWwkTFO63DY6+JcI4USFaSyYpWp8N7SVZJKR3EinkBk9JxvZFXxhnZSjBaoWp1ZL0ES8WKYXMZp0AndORgy8WKFe5Yf1zvvSBWDEpys2LU6MjD5kmEWQlGKsJRHXlcqUSQVcItEnDEA6gAb7LhjvD9WO6yIEfICQI5A1nzGCYB1T4og5bBiFcyv2f6ujYhl4iVxwKG6qp8MK55HsqPwK0rMr9v/yEo3uCPrJstVh5KMER30Aeh31Ioq0FrHfjXw9CYghnrvYFTuqfEymFzGSwBlT4ARYr7u+K6GLmCVGvAGg2NMG0d/sgJnpScZLjXSkC5z8H3eQ72/k24Q8NfzvwFyK4qtuJSZKaubRPyE/K/Mtx+EvCHL+7uasId1t10w0scz/RzSzYzAfgKV30D3LPaG7lRkR8RK4tKKJKAMp+D7r0EfmmOe0x3m2itAc/ZxBjgAt1mXHWKPPkdb+QGSTJdrDaU5EoJ2OtzwD0WwY7KNNzbRfMFFg24WPdtGHnS221Cflgsj56hjwTs8TnY7oq7/QDhjutGicsb2AVcovsO18l6uPPNNiE/JFaGAq7Q7fY50G4LYVtz3FrdaNGyBXbIl+q24DqhyHes9EaulwR3SwtZs+ktAT/7HORliru1gnCndONFyx44Dfn7MPLYN7yR6yTJZAllJeguAT/4HOBFz8I3ZWm4E0TLFbBD7qn7EVdtHYx53R9ZN0ksrZRuErDN5+AuLIWvm+Oe1k0ULdfADrmX7idcR0/DyBXeyCdlLuMMOGCBz4F1ng+f7yFcve5e0fIFHELeiav6BAx70Rt5p0yhY3u/wR0kyarW/uX35b403PtFyzewQ75ctwtXzSkY8WqruHslSV8RscrL6TJ1bcvfWJ0/HzbtIdw/ugdFyzdwOOAq3T6fmzxwGQ3vbmO8iFioIWqYSsHMj9M/ljfuTsOdItoZBXYBfXX7cVXVwvXLm/8+fU3lcdCqdEMNGBbgUmRmfQISQKd5sGEn4VK6YtEiAXYBA3QVuA4q8hCHrDcafR1ul65jewfuovsCl7vJrNlOuEbdo6JFCuwCrtb9hqusBu56Cw4cI1y1briIWEBn3Ue0XKPuMdGiBg4H9NdV0HJ/6QZLOEPmPN0GmpfSPS5arIBdwHUtIFfoBsl/ZsgfhHCfFi2WwC5goO4AmvanbqBkzJA76tboZokWa2AXMEi3RTdAvDLkDqJFAhzB32xFD2wZsGXA0WfAlgFbBmwZsGXAlgFbBpzk04JaKb0iA9ZnF9x5SQAFtRKKIgPWZxfaeRmwAZ/BGbAB37eaG6MCbnq2Aed5czYyKirgpmcbsAHHZAZswN0Wwo7KeG1fFf2jAm56dtzOQ42yB+65mDhWFBUwUETMUiMDNmADbp/APRaTAh6I2bpGCNw1bufRZJQ1cPdF/NueHZsgDEBBGLbMGoIu4AZu5gLOZeEaYmEXeznF3jRPyEv4frgJvvJe3qTefY0AAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwYMGDBgwIABAwb8rwADBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgz4/sz1Nia/9hizA7zgklwy3RYwYMBzBRjw4bPjxAbAAizAAtwgwAIswAIswAIMGDBgARZgARZgAS4FWIAFWIAFWIABAwYswAIswAIswIUAC7AAC7AACzBgwIAFWIAFWIAFuBBgARZgARZgAQYMGPApQ99ZCdgWtzqwATbABtgAG2DbnxNb7zbRimsMLMACrDf2wMWI/WasfQAAAABJRU5ErkJggg==);margin-top:-.3em;-webkit-background-size:auto 100%;background-size:auto 100%}.ath-ios6 .ath-action-icon{width:1.8em;height:1.8em;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAAB0CAQAAADAmnOnAAAAAnNCSVQICFXsRgQAAAAJcEhZcwAAWwEAAFsBAXkZiFwAAAAZdEVYdFNvZnR3YXJlAHd3dy5pbmtzY2FwZS5vcmeb7jwaAAAF4klEQVR4Ae3a/a+XdR3H8ec5HM45HDmKICoVohkZsxESRRCzcZM/2JKkdGR5MrSkleA0Pd00O4u5IVuNM2yYc6XSzCExU4oUNRPCJFdMUAhsYZpUGhscOHA4N8/WZzsL6HBxvofvdV3fa3yer//gsV3vH659KHzncBsJxUYhDzOEhCKQbORs+ip2wzgM+wvj+P9i35qAGLaHGcQSgKSTrxBLABJppZpYApCspoFYApBsZjSxBCD5OxOJJQBJG1cQSwCSLpqJJQCJ3MvgCGTinuSMCJS8LZwfgZL3FtMiUPIOcU0ESl4PLRHoRPsJtREoeRsYGYGS9yrvo6RmpbLaigWSfzOdErLs6+bLUMFA0sF1+QF1cz1UNlBYK9V5AHXyWSgEkKyiIWOgGh829Ki1lLcaxjCVK7mJRSxjBY+zgRf/u9pXcMB7jhEZAg32EUP3O6hMKOP5Iq2sZQeHMZXt5KKMgOpcY+iHVnFyjeQKlrCBdsxge5ieAVC9vzLUelI8H+A7bKIHM10H81IGGuKvDf1ggDxVTKOV1zG3/Yia1ICG+ltD32MgNTKfP2HuW0VDKkCNrjfUTOm9i6XswwrZJkaVHeh0f2fodkrtfO6jAytqrzG+rEDDfVG1x1sprZEs5RBW4PZxeT+Bbrf5hPu9arfzKaU6WjiAFbseWvoF1GW/6vYGSmkyW7Dit4xB5QHq9Br6Xx2t9GAhtp6zkoHsfNp1J9wX6H+jeR4LtJc4LxGopZZyNpN/YcG2mw9nBTSPLizgOmjKAujGgvJID3ekD7QYi7nGzkvmQtpA38Vi7iJf0TedlC7QTVjMfcY2QyvSBPpUMW/PIBfbo9pls1XpAX2EdizeznStob3OJpQO0DB2YfE21q2GtnghpAm0Gou3T9tm6BGHQppA12HRVt17eboNlydNoLHsx2JtmL801OYcQmkC/QKLtQt9ydBW3wNpA30ci7Ur3WdolUMhbaBqNhf/8qQJ9Hkszs5wjaH9XkUobaAqtmFRdoGbDb3sWMgG6DIs5852knO82RaXer+P+qyb3eWeo7ZNBrRZvm1otY2QFdBjeHIb6hTne49Put12+9ObMoDdYmfy5UkF6AK6cCCr9aM2u9IddptcOYCG+FNDB5xLKCugO7G01TndFp/xgAntdYvrfdwVLnORt3q9Vx25F27DUjbGPxr6qxMgW6Cd2N+d6wLXedA+6nKbK73Lr/pJxzusvE/wZrvX0FOOgGyBxmF/dprXutYOj6nNdS6xyYnWp/dGcaGdhr5vDWQN9E1MXrUzfcA2j2qPj/l1J1uT9iPOeh8w1O7nCGUN9HzyGZ7ndo9qp0ucanU2r1xH+wdDu5wIeQDVVx0+/kd1i697RNv8thdn+Qz4Uv9p6DeOhHyApmBfq3OBu+3Nfd7nVELZAX3Nw4ZarYG8gG7GY1dlk6/Zm3/2Rk8jlB1QvT82dNAmQjkBVf8Mj957fdrefM7ZVhPKEuidvmDob06CXIGGbsX/bZDf8KAhfdbJhLIGmuZuQ084HHIGatiLvRvrRkP6qldbBXkAzbfD0N0OhryBGqrEMOd50FC7d1hPKGugBh8ydMh5hPIGGouI1d5lj6F1vptQ9kDvcKOhN5wMlQH0QcRGnzC03yZCeQDN9G1D6xwBFQI07FI8x02GdjgB8gJqttPQcmuhYoAumzvG7YZWejrkA1TrPYYO+SVCFQO0aM4bqj0uJJQH0LluSP7PkyeQU9QOmyAvoBm+Zegpz4LKA/qYB/wE5AXUe3m81zqoRKAPOYWcuvP9dxvqcD6h7IAKkaNU3eUlHLcI9EzS5YlAi62h/zUy89QCqqKUmvgHywsJlEHnsQYxAvXVIJo5gIhnPhiBju1iNmLvLn85Ah1ZPYs5jBGo72awEzEC9dVwHqQHI9DxWoAYgSLQQKteGIESu/qhCJTYtT+PQBEoAkWgCBSBkotAEehUWwSKQBEoAkWg/BeBIlAEikARKAJFoFmealu4gVLy1Gt5dkARKAL9BzujPSurTmu/AAAAAElFTkSuQmCC);margin-bottom:.4em;-webkit-background-size:100% auto;background-size:100% auto}.ath-android .ath-action-icon{width:1.4em;height:1.4em;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAANlBMVEVmZmb///9mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZW6fJrAAAAEXRSTlMAAAYHG21ub8fLz9DR8/T4+RrZ9owAAAB3SURBVHja7dNLDoAgDATQWv4gKve/rEajJOJiWLgg6WzpSyB0aHqHiNj6nL1lovb4C+hYzkSNAT7mryQFAVOeGAj4CjwEtgrWXpD/uZKtwEJApXt+Vn0flzRhgNiFZQkOXY0aADQZCOCPlsZJ46Rx0jhp3IiN2wGDHhxtldrlwQAAAABJRU5ErkJggg==);-webkit-background-size:100% auto;background-size:100% auto}.ath-container p{margin:0;padding:0;position:relative;z-index:2147483642;text-shadow:0 .1em 0 #fff;font-size:1.1em}.ath-ios.ath-phone:after{content:'';background:#eee;position:absolute;width:2em;height:2em;bottom:-.9em;left:50%;margin-left:-1em;-webkit-transform:scaleX(.9) rotate(45deg);-ms-transform:scaleX(.9) rotate(45deg);transform:scaleX(.9) rotate(45deg);-webkit-box-shadow:.2em .2em 0 #d1d1d1;box-shadow:.2em .2em 0 #d1d1d1}.ath-ios.ath-tablet:after{content:'';background:#eee;position:absolute;width:2em;height:2em;top:-.9em;left:50%;margin-left:-1em;-webkit-transform:scaleX(.9) rotate(45deg);-ms-transform:scaleX(.9) rotate(45deg);transform:scaleX(.9) rotate(45deg);z-index:2147483641}.ath-application-icon{position:relative;padding:0;border:0;margin:0 auto .2em auto;height:6em;width:6em;z-index:2147483642}.ath-container.ath-ios .ath-application-icon{border-radius:1em;-webkit-box-shadow:0 .2em .4em rgba(0,0,0,.3),inset 0 .07em 0 rgba(255,255,255,.5);box-shadow:0 .2em .4em rgba(0,0,0,.3),inset 0 .07em 0 rgba(255,255,255,.5);margin:0 auto .4em auto}@media only screen and (orientation:landscape){.ath-container.ath-phone{width:24em}.ath-android.ath-phone{margin-left:-12em}.ath-ios.ath-phone{margin-left:-12em}.ath-ios6:after{left:39%}.ath-ios8.ath-phone{left:auto;bottom:auto;right:.4em;top:1.8em}.ath-ios8.ath-phone:after{bottom:auto;top:-.9em;left:68%;z-index:2147483641;-webkit-box-shadow:none;box-shadow:none}}.am-checkbox,.am-checkbox-inline,.am-radio,.am-radio-inline{padding-left:22px;position:relative;-webkit-transition:color .25s linear;transition:color .25s linear;font-size:14px;line-height:1.5}label.am-checkbox,label.am-radio{font-weight:400}.am-ucheck-icons{color:#999;display:block;height:20px;top:0;left:0;position:absolute;width:20px;text-align:center;line-height:21px;font-size:18px;cursor:pointer}.am-checkbox .am-icon-checked,.am-checkbox .am-icon-unchecked,.am-checkbox-inline .am-icon-checked,.am-checkbox-inline .am-icon-unchecked,.am-radio .am-icon-checked,.am-radio .am-icon-unchecked,.am-radio-inline .am-icon-checked,.am-radio-inline .am-icon-unchecked{position:absolute;left:0;top:0;display:inline-table;margin:0;background-color:transparent;-webkit-transition:color .25s linear;transition:color .25s linear}.am-checkbox .am-icon-checked:before,.am-checkbox .am-icon-unchecked:before,.am-checkbox-inline .am-icon-checked:before,.am-checkbox-inline .am-icon-unchecked:before,.am-radio .am-icon-checked:before,.am-radio .am-icon-unchecked:before,.am-radio-inline .am-icon-checked:before,.am-radio-inline .am-icon-unchecked:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.am-checkbox .am-icon-checked,.am-checkbox-inline .am-icon-checked,.am-radio .am-icon-checked,.am-radio-inline .am-icon-checked{opacity:0}.am-checkbox .am-icon-checked:before,.am-checkbox-inline .am-icon-checked:before{content:"\f046"}.am-checkbox .am-icon-unchecked:before,.am-checkbox-inline .am-icon-unchecked:before{content:"\f096"}.am-radio .am-icon-checked:before,.am-radio-inline .am-icon-checked:before{content:"\f192"}.am-radio .am-icon-unchecked:before,.am-radio-inline .am-icon-unchecked:before{content:"\f10c"}.am-ucheck-checkbox,.am-ucheck-radio{position:absolute;left:0;top:0;margin:0;padding:0;width:20px;height:20px;opacity:0;outline:0!important}.am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons{color:#0e90d2}.am-ucheck-checkbox:checked+.am-ucheck-icons,.am-ucheck-radio:checked+.am-ucheck-icons{color:#0e90d2}.am-ucheck-checkbox:checked+.am-ucheck-icons .am-icon-unchecked,.am-ucheck-radio:checked+.am-ucheck-icons .am-icon-unchecked{opacity:0}.am-ucheck-checkbox:checked+.am-ucheck-icons .am-icon-checked,.am-ucheck-radio:checked+.am-ucheck-icons .am-icon-checked{opacity:1}.am-ucheck-checkbox:disabled+.am-ucheck-icons,.am-ucheck-radio:disabled+.am-ucheck-icons{cursor:default;color:#d8d8d8}.am-ucheck-checkbox:disabled:checked+.am-ucheck-icons .am-icon-unchecked,.am-ucheck-radio:disabled:checked+.am-ucheck-icons .am-icon-unchecked{opacity:0}.am-ucheck-checkbox:disabled:checked+.am-ucheck-icons .am-icon-checked,.am-ucheck-radio:disabled:checked+.am-ucheck-icons .am-icon-checked{opacity:1;color:#d8d8d8}.am-checkbox-inline.am-secondary .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox-inline.am-secondary .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox.am-secondary .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox.am-secondary .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio-inline.am-secondary .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio-inline.am-secondary .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio.am-secondary .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio.am-secondary .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons{color:#3bb4f2}.am-checkbox-inline.am-secondary .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-checkbox-inline.am-secondary .am-ucheck-radio:checked+.am-ucheck-icons,.am-checkbox.am-secondary .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-checkbox.am-secondary .am-ucheck-radio:checked+.am-ucheck-icons,.am-radio-inline.am-secondary .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-radio-inline.am-secondary .am-ucheck-radio:checked+.am-ucheck-icons,.am-radio.am-secondary .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-radio.am-secondary .am-ucheck-radio:checked+.am-ucheck-icons{color:#3bb4f2}.am-checkbox-inline.am-success .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox-inline.am-success .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox.am-success .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox.am-success .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio-inline.am-success .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio-inline.am-success .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio.am-success .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio.am-success .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons{color:#5eb95e}.am-checkbox-inline.am-success .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-checkbox-inline.am-success .am-ucheck-radio:checked+.am-ucheck-icons,.am-checkbox.am-success .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-checkbox.am-success .am-ucheck-radio:checked+.am-ucheck-icons,.am-radio-inline.am-success .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-radio-inline.am-success .am-ucheck-radio:checked+.am-ucheck-icons,.am-radio.am-success .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-radio.am-success .am-ucheck-radio:checked+.am-ucheck-icons{color:#5eb95e}.am-checkbox-inline.am-warning .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox-inline.am-warning .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox.am-warning .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox.am-warning .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio-inline.am-warning .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio-inline.am-warning .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio.am-warning .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio.am-warning .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons{color:#F37B1D}.am-checkbox-inline.am-warning .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-checkbox-inline.am-warning .am-ucheck-radio:checked+.am-ucheck-icons,.am-checkbox.am-warning .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-checkbox.am-warning .am-ucheck-radio:checked+.am-ucheck-icons,.am-radio-inline.am-warning .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-radio-inline.am-warning .am-ucheck-radio:checked+.am-ucheck-icons,.am-radio.am-warning .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-radio.am-warning .am-ucheck-radio:checked+.am-ucheck-icons{color:#F37B1D}.am-checkbox-inline.am-danger .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox-inline.am-danger .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox.am-danger .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-checkbox.am-danger .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio-inline.am-danger .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio-inline.am-danger .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio.am-danger .am-ucheck-checkbox:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons,.am-radio.am-danger .am-ucheck-radio:hover:not(.am-nohover):not(:disabled)+.am-ucheck-icons{color:#dd514c}.am-checkbox-inline.am-danger .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-checkbox-inline.am-danger .am-ucheck-radio:checked+.am-ucheck-icons,.am-checkbox.am-danger .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-checkbox.am-danger .am-ucheck-radio:checked+.am-ucheck-icons,.am-radio-inline.am-danger .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-radio-inline.am-danger .am-ucheck-radio:checked+.am-ucheck-icons,.am-radio.am-danger .am-ucheck-checkbox:checked+.am-ucheck-icons,.am-radio.am-danger .am-ucheck-radio:checked+.am-ucheck-icons{color:#dd514c}.am-field-error+.am-ucheck-icons{color:#dd514c}.am-field-valid+.am-ucheck-icons{color:#5eb95e}.am-selected{width:200px}.am-selected-btn{width:100%;padding-left:10px;text-align:right}.am-selected-btn.am-btn-default{background:0 0}.am-invalid .am-selected-btn{border-color:#dd514c}.am-selected-header{height:45px;background-color:#f2f2f2;border-bottom:1px solid #ddd;display:none}.am-selected-status{text-align:left;width:100%;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-selected-content{padding:10px 0}.am-selected-search{padding:0 10px 10px}.am-selected-search .am-form-field{padding:.5em}.am-selected-list{margin:0;padding:0;list-style:none;font-size:1.5rem}.am-selected-list li{position:relative;cursor:pointer;padding:5px 10px;-webkit-transition:background-color .15s;transition:background-color .15s}.am-selected-list li:hover{background-color:#f8f8f8}.am-selected-list li:hover .am-icon-check{opacity:.6}.am-selected-list li.am-checked .am-icon-check{opacity:1;color:#0e90d2}.am-selected-list li.am-disabled{opacity:.5;pointer-events:none;cursor:not-allowed}.am-selected-list .am-selected-list-header{margin-top:8px;font-size:1.3rem;color:#999;border-bottom:1px solid #e5e5e5;cursor:default}.am-selected-list .am-selected-list-header:hover{background:0 0}.am-selected-list .am-selected-list-header:first-child{margin-top:0}.am-selected-list .am-selected-text{display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;margin-right:30px}.am-selected-list .am-icon-check{position:absolute;right:8px;top:5px;color:#999;opacity:0;-webkit-transition:opacity .15s;transition:opacity .15s}.am-selected-hint{line-height:1.2;color:#dd514c}.am-selected-hint:not(:empty){margin-top:10px;border-top:1px solid #e5e5e5;padding:10px 10px 0}.am-selected-placeholder{opacity:.65}.am-fade{opacity:0;-webkit-transition:opacity .2s linear;transition:opacity .2s linear}.am-fade.am-in{opacity:1}.am-collapse{display:none}.am-collapse.am-in{display:block}tr.am-collapse.am-in{display:table-row}tbody.am-collapse.am-in{display:table-row-group}.am-collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .3s ease;transition:height .3s ease}.am-sticky{position:fixed!important;z-index:1010;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}[data-am-sticky][class*=am-animation-]{-webkit-animation-duration:.2s;animation-duration:.2s}.am-dimmer-active{overflow:hidden}.am-dimmer{position:fixed;top:0;right:0;bottom:0;left:0;display:none;width:100%;height:100%;background-color:rgba(0,0,0,.6);z-index:1100;opacity:0}.am-dimmer.am-active{opacity:1}[data-am-collapse]{cursor:pointer}.am-datepicker{top:0;left:0;border-radius:0;background:#fff;-webkit-box-shadow:0 0 10px #ccc;box-shadow:0 0 10px #ccc;padding-bottom:10px;margin-top:10px;width:238px;color:#555;display:none}.am-datepicker>div{display:none}.am-datepicker table{width:100%}.am-datepicker tr.am-datepicker-header{font-size:1.6rem;color:#fff;background:#3bb4f2}.am-datepicker td,.am-datepicker th{text-align:center;font-weight:400;cursor:pointer}.am-datepicker th{height:48px}.am-datepicker td{font-size:1.4rem}.am-datepicker td.am-datepicker-day{height:34px;width:34px}.am-datepicker td.am-datepicker-day:hover{background:#F0F0F0;height:34px;width:34px}.am-datepicker td.am-datepicker-day.am-disabled{cursor:no-drop;color:#999;background:#fafafa}.am-datepicker td.am-datepicker-new,.am-datepicker td.am-datepicker-old{color:#89d7ff}.am-datepicker td.am-active,.am-datepicker td.am-active:hover{border-radius:0;color:#0084c7;background:#F0F0F0}.am-datepicker td span{display:block;width:79.33px;height:40px;line-height:40px;float:left;cursor:pointer}.am-datepicker td span:hover{background:#F0F0F0}.am-datepicker td span.am-active{color:#0084c7;background:#F0F0F0}.am-datepicker td span.am-disabled{cursor:no-drop;color:#999;background:#fafafa}.am-datepicker td span.am-datepicker-old{color:#89d7ff}.am-datepicker .am-datepicker-dow{height:40px;color:#0c80ba}.am-datepicker-caret{display:block!important;display:inline-block;width:0;height:0;vertical-align:middle;border-bottom:7px solid #3bb4f2;border-right:7px solid transparent;border-left:7px solid transparent;border-top:0 dotted;-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);position:absolute;top:-7px;left:6px}.am-datepicker-right .am-datepicker-caret{left:auto;right:7px}.am-datepicker-up .am-datepicker-caret{top:auto;bottom:-7px;display:inline-block;width:0;height:0;vertical-align:middle;border-top:7px solid #fff;border-right:7px solid transparent;border-left:7px solid transparent;border-bottom:0 dotted;-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}.am-datepicker-select{height:34px;line-height:34px;text-align:center;-webkit-transition:background-color .3s ease-out;transition:background-color .3s ease-out}.am-datepicker-select:hover{background:rgba(154,217,248,.5);color:#0c80ba}.am-datepicker-next,.am-datepicker-prev{width:34px;height:34px}.am-datepicker-next-icon,.am-datepicker-prev-icon{width:34px;height:34px;line-height:34px;display:inline-block;-webkit-transition:background-color .3s ease-out;transition:background-color .3s ease-out}.am-datepicker-next-icon:hover,.am-datepicker-prev-icon:hover{background:rgba(154,217,248,.5);color:#0c80ba}.am-datepicker-prev-icon:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f053"}.am-datepicker-next-icon:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f054"}.am-datepicker-dropdown{position:absolute;z-index:1120}@media only screen and (max-width:640px){.am-datepicker{width:100%}.am-datepicker td span{width:33.33%}.am-datepicker-caret{display:none!important}.am-datepicker-next,.am-datepicker-prev{width:44px;height:44px}}.am-datepicker-success tr.am-datepicker-header{background:#5eb95e}.am-datepicker-success td.am-datepicker-day.am-disabled{color:#999}.am-datepicker-success td.am-datepicker-new,.am-datepicker-success td.am-datepicker-old{color:#94df94}.am-datepicker-success td.am-active,.am-datepicker-success td.am-active:hover{color:#1b961b}.am-datepicker-success td span.am-datepicker-old{color:#94df94}.am-datepicker-success td span.am-active{color:#1b961b}.am-datepicker-success .am-datepicker-caret{border-bottom-color:#5eb95e}.am-datepicker-success .am-datepicker-dow{color:#367b36}.am-datepicker-success .am-datepicker-next-icon:hover,.am-datepicker-success .am-datepicker-prev-icon:hover,.am-datepicker-success .am-datepicker-select:hover{background:rgba(165,216,165,.5);color:#367b36}.am-datepicker-danger tr.am-datepicker-header{background:#dd514c}.am-datepicker-danger td.am-datepicker-day.am-disabled{color:#999}.am-datepicker-danger td.am-datepicker-new,.am-datepicker-danger td.am-datepicker-old{color:#f59490}.am-datepicker-danger td.am-active,.am-datepicker-danger td.am-active:hover{color:#c10802}.am-datepicker-danger td span.am-datepicker-old{color:#f59490}.am-datepicker-danger td span.am-active{color:#c10802}.am-datepicker-danger .am-datepicker-caret{border-bottom-color:#dd514c}.am-datepicker-danger .am-datepicker-dow{color:#a4241f}.am-datepicker-danger .am-datepicker-next-icon:hover,.am-datepicker-danger .am-datepicker-prev-icon:hover,.am-datepicker-danger .am-datepicker-select:hover{background:rgba(237,164,162,.5);color:#a4241f}.am-datepicker-warning tr.am-datepicker-header{background:#F37B1D}.am-datepicker-warning td.am-datepicker-day.am-disabled{color:#999}.am-datepicker-warning td.am-datepicker-new,.am-datepicker-warning td.am-datepicker-old{color:#ffad6d}.am-datepicker-warning td.am-active,.am-datepicker-warning td.am-active:hover{color:#aa4b00}.am-datepicker-warning td span.am-datepicker-old{color:#ffad6d}.am-datepicker-warning td span.am-active{color:#aa4b00}.am-datepicker-warning .am-datepicker-caret{border-bottom-color:#F37B1D}.am-datepicker-warning .am-datepicker-dow{color:#a14c09}.am-datepicker-warning .am-datepicker-next-icon:hover,.am-datepicker-warning .am-datepicker-prev-icon:hover,.am-datepicker-warning .am-datepicker-select:hover{background:rgba(248,180,126,.5);color:#a14c09}.am-datepicker>div{display:block}.am-datepicker>div span.am-datepicker-hour{width:59.5px}.am-datepicker-date{display:block}.am-datepicker-date.am-input-group{display:table}.am-datepicker-time-box{padding:30px 0 30px 0}.am-datepicker-time-box strong{font-size:5.2rem;display:inline-block;height:70px;width:70px;line-height:70px;font-weight:400}.am-datepicker-time-box strong:hover{border-radius:4px;background:#ECECEC}.am-datepicker-time-box em{display:inline-block;height:70px;width:20px;line-height:70px;font-size:5.2rem;font-style:normal}.am-datepicker-toggle{text-align:center;cursor:pointer;padding:10px 0}.am-datepicker-toggle:hover{background:#f0f0f0}@media print{*,:after,:before{background:0 0!important;color:#000!important;-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" [" attr(title) "] "}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{margin:.5cm}select{background:#fff!important}.am-topbar{display:none}.am-table td,.am-table th{background-color:#fff!important}.am-table{border-collapse:collapse!important}.am-table-bordered td,.am-table-bordered th{border:1px solid #ddd!important}}.am-print-block{display:none!important}@media print{.am-print-block{display:block!important}}.am-print-inline{display:none!important}@media print{.am-print-inline{display:inline!important}}.am-print-inline-block{display:none!important}@media print{.am-print-inline-block{display:inline-block!important}}@media print{.am-print-hide{display:none!important}}.lte9 #nprogress .nprogress-spinner{display:none!important}.lte8 .am-dimmer{background-color:#000;filter:alpha(opacity=60)}.lte8 .am-modal-actions{display:none}.lte8 .am-modal-actions.am-modal-active{display:block}.lte8 .am-offcanvas.am-active{background:#000}.lte8 .am-popover .am-popover-caret{border:8px solid transparent}.lte8 .am-popover-top .am-popover-caret{border-top:8px solid #333;border-bottom:none}.lte8 .am-popover-left .am-popover-caret{right:-8px;margin-top:-6px;border-left:8px solid #333;border-right:none}.lte8 .am-popover-right .am-popover-caret{left:-8px;margin-top:-6px;border-right:8px solid #333;border-left:none}.am-accordion-item{margin:0}.am-accordion-title{font-weight:400;cursor:pointer}.am-accordion-item.am-disabled .am-accordion-title{cursor:default;pointer-events:none}.am-accordion-bd{margin:0!important;padding:0!important;border:none!important}.am-accordion-content{margin-top:0;padding:.8rem 1rem 1.2rem;font-size:1.4rem}.am-accordion-default{margin:1rem;border-radius:2px;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1)}.am-accordion-default .am-accordion-item{border-top:1px solid rgba(0,0,0,.05)}.am-accordion-default .am-accordion-item:first-child{border-top:none}.am-accordion-default .am-accordion-title{color:rgba(0,0,0,.6);-webkit-transition:background-color .2s ease-out;transition:background-color .2s ease-out;padding:.8rem 1rem}.am-accordion-default .am-accordion-title:before{content:"\f0da";display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease,-webkit-transform .2s ease;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);margin-right:5px}.am-accordion-default .am-accordion-title:hover{color:#0e90d2}.am-accordion-default .am-accordion-content{color:#666}.am-accordion-default .am-active .am-accordion-title{background-color:#eee;color:#0e90d2}.am-accordion-default .am-active .am-accordion-title:before{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.am-accordion-basic{margin:1rem}.am-accordion-basic .am-accordion-title{color:#333;-webkit-transition:background-color .2s ease-out;transition:background-color .2s ease-out;padding:.8rem 0 0}.am-accordion-basic .am-accordion-title:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f0da";-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease,-webkit-transform .2s ease;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);margin-right:.5rem}.am-accordion-basic .am-accordion-content{color:#666}.am-accordion-basic .am-active .am-accordion-title{color:#0e90d2}.am-accordion-basic .am-active .am-accordion-title:before{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.am-accordion-gapped{margin:.5rem 1rem}.am-accordion-gapped .am-accordion-item{border:1px solid #dedede;border-bottom:none;margin:.5rem 0}.am-accordion-gapped .am-accordion-item.am-active{border-bottom:1px solid #dedede}.am-accordion-gapped .am-accordion-title{color:rgba(0,0,0,.6);-webkit-transition:background-color .15s ease-out;transition:background-color .15s ease-out;border-bottom:1px solid #dedede;padding:.8rem 2rem .8rem 1rem;position:relative}.am-accordion-gapped .am-accordion-title:after{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f105";-webkit-transition:-webkit-transform .2s linear;transition:-webkit-transform .2s linear;transition:transform .2s linear;transition:transform .2s linear,-webkit-transform .2s linear;position:absolute;right:10px;top:50%;margin-top:-.8rem}.am-accordion-gapped .am-accordion-title:hover{color:rgba(0,0,0,.8)}.am-accordion-gapped .am-accordion-content{color:#666}.am-accordion-gapped .am-active .am-accordion-title{background-color:#f5f5f5;color:rgba(0,0,0,.8)}.am-accordion-gapped .am-active .am-accordion-title:after{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.am-divider{height:0;margin:1.5rem auto;overflow:hidden;clear:both}.am-divider-default{border-top:1px solid #ddd}.am-divider-dotted{border-top:1px dotted #ccc}.am-divider-dashed{border-top:1px dashed #ccc}.am-figure-zoomable{position:relative;cursor:pointer}.am-figure-zoomable:after{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f00e";position:absolute;top:1rem;right:1rem;color:#999;font-size:1.6rem;-webkit-transition:all .2s;transition:all .2s;pointer-events:none}.am-figure-zoomable:hover:after{color:#eee}.am-figure-default{margin:10px}.am-figure-default img{display:block;max-width:100%;height:auto;padding:2px;border:1px solid #eee;margin:10px auto}.am-figure-default figcaption{text-align:center;font-size:1.4rem;margin-bottom:15px;color:#333}.am-footer{text-align:center;padding:1em 0;font-size:1.6rem}.am-footer .am-switch-mode-ysp{cursor:pointer}.am-footer .am-footer-text{margin-top:10px;font-size:14px}.am-footer .am-footer-text-left{text-align:left;padding-left:10px}.am-modal-footer-hd{padding-bottom:10px}.am-footer-default{background-color:#fff}.am-footer-default a{color:#555}.am-footer-default .am-footer-switch{margin-bottom:10px;font-weight:700}.am-footer-default .am-footer-ysp{color:#555;cursor:pointer}.am-footer-default .am-footer-divider{color:#ccc}.am-footer-default .am-footer-desktop{color:#0e90d2}.am-footer-default .am-footer-miscs{color:#999;font-size:13px}.am-footer-default .am-footer-miscs p{margin:5px 0}@media only screen and (min-width:641px){.am-footer-default .am-footer-miscs p{display:inline-block;margin:5px}}.am-gallery{padding:5px 5px 0 5px;list-style:none}.am-gallery h3{margin:0}[data-am-gallery*=pureview] img{cursor:pointer}.am-gallery-default>li{padding:5px}.am-gallery-default .am-gallery-item img{width:100%;height:auto}.am-gallery-default .am-gallery-title{margin-top:10px;font-weight:400;font-size:1.4rem;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:#555}.am-gallery-default .am-gallery-desc{color:#999;font-size:1.2rem}.am-gallery-overlay>li{padding:5px}.am-gallery-overlay .am-gallery-item{position:relative}.am-gallery-overlay .am-gallery-item img{width:100%;height:auto}.am-gallery-overlay .am-gallery-title{font-weight:400;font-size:1.4rem;color:#FFF;position:absolute;bottom:0;width:100%;background-color:rgba(0,0,0,.5);text-indent:5px;height:30px;line-height:30px;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-gallery-overlay .am-gallery-desc{display:none}.am-gallery-bordered>li{padding:5px}.am-gallery-bordered .am-gallery-item{-webkit-box-shadow:0 0 3px rgba(0,0,0,.35);box-shadow:0 0 3px rgba(0,0,0,.35);padding:5px}.am-gallery-bordered .am-gallery-item img{width:100%;height:auto}.am-gallery-bordered .am-gallery-title{margin-top:10px;font-weight:400;font-size:1.4rem;color:#555;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-gallery-bordered .am-gallery-desc{color:#999;font-size:1.2rem}.am-gallery-imgbordered>li{padding:5px}.am-gallery-imgbordered .am-gallery-item img{width:100%;height:auto;border:3px solid #FFF;-webkit-box-shadow:0 0 3px rgba(0,0,0,.35);box-shadow:0 0 3px rgba(0,0,0,.35)}.am-gallery-imgbordered .am-gallery-title{margin-top:10px;font-weight:400;font-size:1.4rem;color:#555;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-gallery-imgbordered .am-gallery-desc{color:#999;font-size:1.2rem}.am-gotop a{display:inline-block;text-decoration:none}.am-gotop-default{text-align:center;margin:10px 0}.am-gotop-default a{background-color:#0e90d2;padding:.5em 1.5em;border-radius:0;color:#fff}.am-gotop-default a img{display:none}.am-gotop-fixed{position:fixed;right:10px;bottom:10px;z-index:1010;opacity:0;width:32px;min-height:32px;overflow:hidden;border-radius:0;text-align:center}.am-gotop-fixed.am-active{opacity:.9}.am-gotop-fixed.am-active:hover{opacity:1}.am-gotop-fixed a{display:block}.am-gotop-fixed .am-gotop-title{display:none}.am-gotop-fixed .am-gotop-icon-custom{display:inline-block;max-width:30px;vertical-align:middle}.am-gotop-fixed .am-gotop-icon{width:100%;line-height:32px;background-color:#555;vertical-align:middle;color:#ddd}.am-gotop-fixed .am-gotop-icon:hover{color:#fff}.am-with-fixed-navbar .am-gotop-fixed{bottom:60px}.am-header{position:relative;width:100%;height:49px;line-height:49px;padding:0 10px}.am-header h1{margin-top:0;margin-bottom:0}.am-header .am-header-title{margin:0 30%;font-size:2rem;font-weight:400;text-align:center;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-header .am-header-title img{margin-top:12px;height:25px;vertical-align:top}.am-header .am-header-nav{position:absolute;top:0}.am-header .am-header-nav img{height:16px;width:auto;vertical-align:middle}.am-header .am-header-left{left:10px}.am-header .am-header-right{right:10px}.am-header-fixed{position:fixed;top:0;left:0;right:0;width:100%;z-index:1010}.am-with-fixed-header{padding-top:49px}.am-header-default{background-color:#0e90d2}.am-header-default .am-header-title{color:#fff}.am-header-default .am-header-title a{color:#fff}.am-header-default .am-header-icon{font-size:20px}.am-header-default .am-header-nav{color:#eee}.am-header-default .am-header-nav>a{display:inline-block;min-width:36px;text-align:center;color:#eee}.am-header-default .am-header-nav>a+a{margin-left:5px}.am-header-default .am-header-nav .am-btn{margin-top:9px;height:31px;padding:0 .5em;line-height:30px;font-size:14px;vertical-align:top}.am-header-default .am-header-nav .am-btn .am-header-icon{font-size:inherit}.am-header-default .am-header-nav .am-btn-default{color:#999}.am-header-default .am-header-nav-title,.am-header-default .am-header-nav-title+.am-header-icon{font-size:14px}.am-intro{position:relative}.am-intro img{max-width:100%}.am-intro-hd{position:relative;height:45px;line-height:45px}.am-intro-title{font-size:18px;margin:0;font-weight:700}.am-intro-more-top{position:absolute;right:10px;top:0;font-size:1.4rem}.am-intro-bd{padding-top:15px;padding-bottom:15px;font-size:1.4rem}.am-intro-bd p:last-child{margin-bottom:0}.am-intro-more-bottom{clear:both;text-align:center}.am-intro-more-bottom .am-btn{font-size:14px}.am-intro-default .am-intro-hd{background-color:#0e90d2;color:#fff;padding:0 10px}.am-intro-default .am-intro-hd a{color:#eee}.am-intro-default .am-intro-right{padding-left:0}.am-list-news-hd{padding-top:1.2rem;padding-bottom:.8rem}.am-list-news-hd a{display:block}.am-list-news-hd h2{font-size:1.6rem;float:left;margin:0;height:2rem;line-height:2rem}.am-list-news-hd h3{margin:0}.am-list-news-hd .am-list-news-more{font-size:1.3rem;height:2rem;line-height:2rem}.am-list .am-list-item-dated a{padding-right:80px;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-list .am-list-item-dated a::after{display:none}.am-list .am-list-item-desced a,.am-list .am-list-item-thumbed a{padding-right:0}.am-list-news .am-list-item-hd{margin:0}.am-list-date{position:absolute;right:5px;font-size:1.3rem;top:1.3rem}.am-list-item-desced{padding-bottom:1rem}.am-list-item-desced>a{padding:1rem 0}.am-list-item-desced .am-list-date{position:static}.am-list-item-thumbed{padding-top:1em}.am-list-news-ft{text-align:center}.am-list-news .am-titlebar{margin-left:0;margin-right:0}.am-list-news .am-titlebar~.am-list-news-bd .am-list>li:first-child{border-top:none}.am-list-news-default{margin:10px}.am-list-news-default .am-g{margin-left:auto;margin-right:auto}.am-list-news-default .am-list-item-hd{font-weight:400}.am-list-news-default .am-list-date{color:#999}.am-list-news-default .am-list>li{border-color:#dedede}.am-list-news-default .am-list .am-list-item-desced{padding-top:1rem;padding-bottom:1rem}.am-list-news-default .am-list .am-list-item-desced>a{padding:0}.am-list-news-default .am-list .am-list-item-desced .am-list-item-text{margin-top:.5rem;color:#757575}.am-list-news-default .am-list .am-list-item-text{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;line-height:1.3em;-webkit-line-clamp:2;max-height:2.6em}.am-list-news-default .am-list .am-list-item-thumb-top .am-list-thumb{padding:0;margin-bottom:.8rem}.am-list-news-default .am-list .am-list-item-thumb-top .am-list-main{padding:0}.am-list-news-default .am-list .am-list-item-thumb-left .am-list-thumb{padding-left:0}.am-list-news-default .am-list .am-list-item-desced .am-list-main{padding:0}.am-list-news-default .am-list .am-list-item-thumb-right .am-list-thumb{padding-right:0}.am-list-news-default .am-list .am-list-item-thumb-bottom-left .am-list-item-hd{clear:both;padding-bottom:.5rem}.am-list-news-default .am-list .am-list-item-thumb-bottom-left .am-list-thumb{padding-left:0}.am-list-news-default .am-list .am-list-item-thumb-bottom-right .am-list-item-hd{clear:both;padding-bottom:.5rem}.am-list-news-default .am-list .am-list-item-thumb-bottom-right .am-list-thumb{padding-right:0}.am-list-news-default .am-list .am-list-thumb img{width:100%;display:block}@media only screen and (max-width:640px){.am-list-news-default .am-list-item-thumb-left .am-list-thumb,.am-list-news-default .am-list-item-thumb-right .am-list-thumb{max-height:80px;overflow:hidden}.am-list-news-default .am-list-item-thumb-bottom-left .am-list-item-text,.am-list-news-default .am-list-item-thumb-bottom-right .am-list-item-text{-webkit-line-clamp:3;max-height:3.9em}.am-list-news-default .am-list-item-thumb-bottom-left .am-list-thumb,.am-list-news-default .am-list-item-thumb-bottom-right .am-list-thumb{max-height:60px;overflow:hidden}}.am-map{width:100%;height:300px}.am-map-default #bd-map{width:100%;height:100%;overflow:hidden;margin:0;font-size:14px;line-height:1.4!important}.am-map-default .BMap_bubble_title{font-weight:700}.am-map-default #BMap_mask{width:100%}.am-mechat{margin:1rem}.am-mechat .section-cbox-wap .cbox-post-wap .post-action-wap .action-function-wap .function-list-wap .list-upload-wap .upload-mutual-wap{-webkit-box-sizing:content-box;box-sizing:content-box}.am-menu{position:relative;padding:0;margin:0}.am-menu ul{padding:0;margin:0}.am-menu li{list-style:none}.am-menu a:after,.am-menu a:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.am-menu-sub{z-index:1050}.am-menu-toggle{display:none;z-index:1015}.am-menu-toggle img{display:inline-block;height:16px;width:auto;vertical-align:middle}.am-menu-nav a{display:block;padding:.8rem 0;-webkit-transition:all .45s;transition:all .45s}.am-menu-default .am-menu-nav{padding-top:8px;padding-bottom:8px}.am-menu-default .am-menu-nav a{text-align:center;height:36px;line-height:36px;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding:0;color:#0e90d2}.am-menu-default .am-menu-nav>.am-parent>a{position:relative;-webkit-transition:.15s;transition:.15s}.am-menu-default .am-menu-nav>.am-parent>a:after{content:"\f107";margin-left:5px;-webkit-transition:.15s;transition:.15s}.am-menu-default .am-menu-nav>.am-parent>a:before{position:absolute;top:100%;margin-top:-16px;left:50%;margin-left:-12px;content:"\f0d8";display:none;color:#f1f1f1;font-size:24px}.am-menu-default .am-menu-nav>.am-parent.am-open>a{color:#095f8a}.am-menu-default .am-menu-nav>.am-parent.am-open>a:before{display:block}.am-menu-default .am-menu-nav>.am-parent.am-open>a:after{-webkit-transform:rotate(-180deg);-ms-transform:rotate(-180deg);transform:rotate(-180deg)}.am-menu-default .am-menu-sub{position:absolute;left:5px;right:5px;background-color:#f1f1f1;border-radius:0;padding-top:8px;padding-bottom:8px}.am-menu-default .am-menu-sub>li>a{color:#555}@media only screen and (min-width:641px){.am-menu-default .am-menu-nav li{width:auto;float:left;clear:none;display:inline}.am-menu-default .am-menu-nav a{padding-left:1.5rem;padding-right:.5rem}}.am-menu-dropdown1{position:relative}.am-menu-dropdown1 .am-menu-toggle{position:absolute;right:5px;top:-47px;display:block;width:44px;height:44px;line-height:44px;text-align:center;color:#fff}.am-menu-dropdown1 a{-webkit-transition:all .4s;transition:all .4s;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-menu-dropdown1 .am-menu-nav{position:absolute;left:0;right:0;z-index:1050}.am-menu-dropdown1 .am-menu-nav a{padding:.8rem}.am-menu-dropdown1 .am-menu-nav>li{width:100%}.am-menu-dropdown1 .am-menu-nav>li.am-parent>a{position:relative}.am-menu-dropdown1 .am-menu-nav>li.am-parent>a::before{content:"\f067";position:absolute;right:1rem;top:1.4rem}.am-menu-dropdown1 .am-menu-nav>li.am-parent.am-open>a{background-color:#0c80ba;border-bottom:none;color:#fff}.am-menu-dropdown1 .am-menu-nav>li.am-parent.am-open>a:before{content:"\f068"}.am-menu-dropdown1 .am-menu-nav>li.am-parent.am-open>a:after{content:"";display:inline-block;width:0;height:0;vertical-align:middle;border-top:8px solid #0c80ba;border-right:8px solid transparent;border-left:8px solid transparent;border-bottom:0 dotted;-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);position:absolute;top:100%;left:50%;margin-left:-4px}.am-menu-dropdown1 .am-menu-nav>li>a{border-bottom:1px solid #0b76ac;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);background-color:#0e90d2;color:#fff;height:49px;line-height:49px;padding:0;text-indent:10px}.am-menu-dropdown1 .am-menu-sub{background-color:#fff}.am-menu-dropdown1 .am-menu-sub a{color:#555;height:44px;line-height:44px;text-indent:5px;padding:0}.am-menu-dropdown1 .am-menu-sub a:before{content:"\f105";color:#aaa;font-size:16px;margin-right:5px}.am-menu-dropdown2 .am-menu-toggle{position:absolute;right:5px;top:-47px;display:block;width:44px;height:44px;line-height:44px;text-align:center;color:#fff}.am-menu-dropdown2 .am-menu-nav{position:absolute;left:0;right:0;background-color:#f5f5f5;-webkit-box-shadow:0 0 5px rgba(0,0,0,.2);box-shadow:0 0 5px rgba(0,0,0,.2);z-index:1050;padding-top:8px;padding-bottom:8px}.am-menu-dropdown2 .am-menu-nav a{height:38px;line-height:38px;padding:0;text-align:center}.am-menu-dropdown2 .am-menu-nav>li>a{color:#333}.am-menu-dropdown2 .am-menu-nav>li.am-parent>a{position:relative}.am-menu-dropdown2 .am-menu-nav>li.am-parent>a:after{content:"\f107";margin-left:5px;-webkit-transition:-webkit-transform .2s;transition:-webkit-transform .2s;transition:transform .2s;transition:transform .2s,-webkit-transform .2s}.am-menu-dropdown2 .am-menu-nav>li.am-parent.am-open>a{position:relative}.am-menu-dropdown2 .am-menu-nav>li.am-parent.am-open>a:after{color:#0e90d2;-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.am-menu-dropdown2 .am-menu-nav>li.am-parent.am-open>a:before{position:absolute;top:100%;margin-top:-16px;left:50%;margin-left:-12px;font-size:24px;content:"\f0d8";color:rgba(0,0,0,.2)}.am-menu-dropdown2 .am-menu-sub{position:absolute;left:5px;right:5px;padding:8px 0;border-radius:2px;-webkit-box-shadow:0 0 3px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.15);background-color:#fff;z-index:1055}.am-menu-dropdown2 .am-menu-sub a{padding:0;height:35px;color:#555;line-height:35px}@media only screen and (min-width:641px){.am-menu-dropdown2 .am-menu-toggle{display:none!important}.am-menu-dropdown2 .am-menu-nav{position:static;display:block}.am-menu-dropdown2 .am-menu-nav>li{float:none;width:auto;display:inline-block}.am-menu-dropdown2 .am-menu-nav>li a{padding-left:1.5rem;padding-right:1.5rem}.am-menu-dropdown2 .am-menu-sub{left:auto;right:auto}.am-menu-dropdown2 .am-menu-sub>li{float:none;width:auto}.am-menu-dropdown2 .am-menu-sub a{padding-left:2rem;padding-right:2rem}}.am-menu-slide1 .am-menu-toggle{position:absolute;right:5px;top:-47px;display:block;width:44px;height:44px;line-height:44px;text-align:center;color:#fff}.am-menu-slide1 .am-menu-nav{background-color:#f5f5f5;padding-top:8px;padding-bottom:8px}.am-menu-slide1 .am-menu-nav.am-in:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f0d8";font-size:24px;color:#f5f5f5;position:absolute;right:16px;top:-16px}.am-menu-slide1 .am-menu-nav a{line-height:38px;height:38px;display:block;padding:0;text-align:center}.am-menu-slide1 .am-menu-nav>li>a{color:#333;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-menu-slide1 .am-menu-nav>.am-parent>a{position:relative;-webkit-transition:.15s;transition:.15s}.am-menu-slide1 .am-menu-nav>.am-parent>a:after{content:"\f107";margin-left:5px;-webkit-transition:.15s;transition:.15s}.am-menu-slide1 .am-menu-nav>.am-parent>a:before{position:absolute;top:100%;margin-top:-16px;left:50%;margin-left:-12px;content:"\f0d8";display:none;color:#0e90d2;font-size:24px}.am-menu-slide1 .am-menu-nav>.am-parent.am-open>a{color:#0e90d2}.am-menu-slide1 .am-menu-nav>.am-parent.am-open>a:before{display:block}.am-menu-slide1 .am-menu-nav>.am-parent.am-open>a:after{-webkit-transform:rotate(-180deg);-ms-transform:rotate(-180deg);transform:rotate(-180deg)}.am-menu-slide1 .am-menu-sub{position:absolute;left:5px;right:5px;background-color:#0e90d2;border-radius:0;padding-top:8px;padding-bottom:8px}.am-menu-slide1 .am-menu-sub>li>a{color:#fff}@media only screen and (min-width:641px){.am-menu-slide1 .am-menu-toggle{display:none!important}.am-menu-slide1 .am-menu-nav{background-color:#f5f5f5;display:block}.am-menu-slide1 .am-menu-nav.am-in:before{display:none}.am-menu-slide1 .am-menu-nav li{width:auto;clear:none}.am-menu-slide1 .am-menu-nav li a{padding-left:1.5rem;padding-right:1.5rem}}.am-menu-offcanvas1 .am-menu-toggle{position:absolute;right:5px;top:-47px;display:block;width:44px;height:44px;line-height:44px;text-align:center;color:#fff}.am-menu-offcanvas1 .am-menu-nav{border-bottom:1px solid rgba(0,0,0,.3);-webkit-box-shadow:0 1px 0 rgba(255,255,255,.05);box-shadow:0 1px 0 rgba(255,255,255,.05)}.am-menu-offcanvas1 .am-menu-nav>li>a{height:44px;line-height:44px;text-indent:15px;padding:0;position:relative;color:#ccc;border-top:1px solid rgba(0,0,0,.3);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);text-shadow:0 1px 0 rgba(0,0,0,.5)}.am-menu-offcanvas1 .am-menu-nav>.am-open>a,.am-menu-offcanvas1 .am-menu-nav>li>a:focus,.am-menu-offcanvas1 .am-menu-nav>li>a:hover{background-color:#474747;color:#fff;outline:0}.am-menu-offcanvas1 .am-menu-nav>.am-active>a{background-color:#1a1a1a;color:#fff}.am-menu-offcanvas1 .am-menu-nav>.am-parent>a{-webkit-transition:all .3s;transition:all .3s}.am-menu-offcanvas1 .am-menu-nav>.am-parent>a:after{content:"\f104";position:absolute;right:1.5rem;top:1.3rem}.am-menu-offcanvas1 .am-menu-nav>.am-parent.am-open>a:after{content:"\f107"}.am-menu-offcanvas1 .am-menu-sub{border-top:1px solid rgba(0,0,0,.3);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);padding:5px 0 5px 15px;background-color:#1a1a1a;font-size:1.4rem}.am-menu-offcanvas1 .am-menu-sub a{color:#eee}.am-menu-offcanvas1 .am-menu-sub a:hover{color:#fff}.am-menu-offcanvas1 .am-nav-divider{border-top:1px solid #1a1a1a}.am-menu-offcanvas2 .am-menu-toggle{position:absolute;right:5px;top:-47px;display:block;width:44px;height:44px;line-height:44px;text-align:center;color:#fff}.am-menu-offcanvas2 .am-menu-nav{padding:10px 5px}.am-menu-offcanvas2 .am-menu-nav>li{padding:5px}.am-menu-offcanvas2 .am-menu-nav>li>a{-webkit-transition:all .3s;transition:all .3s;background-color:#404040;color:#ccc;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;border:1px solid rgba(0,0,0,.3);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);text-shadow:0 1px 0 rgba(0,0,0,.5);height:44px;line-height:44px;padding:0;text-align:center}.am-menu-offcanvas2 .am-menu-nav>li>a:focus,.am-menu-offcanvas2 .am-menu-nav>li>a:hover{background-color:#262626;color:#fff;outline:0}.am-menu-offcanvas2 .am-menu-nav>.am-active>a{background-color:#262626;color:#fff}.am-menu-stack .am-menu-nav{border-bottom:1px solid #dedede;-webkit-box-shadow:0 1px 0 rgba(255,255,255,.05);box-shadow:0 1px 0 rgba(255,255,255,.05)}.am-menu-stack .am-menu-nav>.am-parent>a{-webkit-transition:all .3s;transition:all .3s}.am-menu-stack .am-menu-nav>.am-parent>a:after{content:"\f105";position:absolute;right:1.5rem;top:1.3rem;-webkit-transition:all .15s;transition:all .15s}.am-menu-stack .am-menu-nav>.am-parent.am-open>a:after{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.am-menu-stack .am-menu-nav>li>a{position:relative;color:#333;background-color:#f5f5f5;border-top:1px solid #dedede;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);height:49px;line-height:49px;text-indent:10px;padding:0}.am-menu-stack .am-menu-nav>.am-open>a,.am-menu-stack .am-menu-nav>li>a:focus,.am-menu-stack .am-menu-nav>li>a:hover{background-color:#e5e5e5;color:#222;outline:0}.am-menu-stack .am-menu-sub{padding:0;font-size:1.4rem;border-top:1px solid #dedede}.am-menu-stack .am-menu-sub a{border-bottom:1px solid #dedede;padding-left:2rem;color:#444}.am-menu-stack .am-menu-sub a:hover{color:#333}.am-menu-stack .am-menu-sub li:last-child a{border-bottom:none}.am-menu-stack .am-menu-sub>li>a{height:44px;line-height:44px;text-indent:15px;padding:0}@media only screen and (min-width:641px){.am-menu-stack .am-menu-nav{background-color:#f5f5f5}.am-menu-stack .am-menu-nav>li{float:left;width:auto;clear:none!important;display:inline-block}.am-menu-stack .am-menu-nav>li a{padding-left:1.5rem;padding-right:1.5rem}.am-menu-stack .am-menu-nav>li.am-parent>a:after{position:static;content:"\f107"}.am-menu-stack .am-menu-nav>li.am-parent.am-open a{border-bottom:none}.am-menu-stack .am-menu-nav>li.am-parent.am-open a:after{-webkit-transform:rotateX(-180deg);transform:rotateX(-180deg)}.am-menu-stack .am-menu-nav>li.am-parent.am-open .am-menu-sub{background-color:#e5e5e5}.am-menu-stack .am-menu-sub{position:absolute;left:0;right:0;background-color:#ddd;border-top:none}.am-menu-stack .am-menu-sub li{width:auto;float:left;clear:none}}.am-navbar{position:fixed;left:0;bottom:0;width:100%;height:49px;line-height:49px;z-index:1010}.am-navbar ul{padding-left:0;margin:0;list-style:none;width:100%}.am-navbar .am-navbar-nav{padding-left:8px;padding-right:8px;text-align:center;overflow:hidden}.am-navbar .am-navbar-nav li{display:table-cell;width:1%;float:none}.am-navbar-nav{position:relative;z-index:1015}.am-navbar-nav a{display:inline-block;width:100%;height:49px;line-height:20px}.am-navbar-nav a img{display:block;vertical-align:middle;height:24px;width:24px;margin:4px auto 0}.am-navbar-nav a [class*=am-icon]{width:24px;height:24px;margin:4px auto 0;display:block;line-height:24px}.am-navbar-nav a [class*=am-icon]:before{font-size:22px;vertical-align:middle}.am-navbar-nav a .am-navbar-label{padding-top:2px;line-height:1;font-size:12px;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-navbar-more [class*=am-icon-]{-webkit-transition:.15s;transition:.15s}.am-navbar-more.am-active [class*=am-icon-]{-webkit-transform:rotateX(-180deg);transform:rotateX(-180deg)}.am-navbar-actions{position:absolute;bottom:49px;right:0;left:0;z-index:1009;opacity:0;-webkit-transition:.3s;transition:.3s;-webkit-transform:translate(0,100%);-ms-transform:translate(0,100%);transform:translate(0,100%)}.am-navbar-actions.am-active{opacity:1;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.am-navbar-actions li{line-height:42px;position:relative}.am-navbar-actions li a{display:block;width:100%;height:40px;-webkit-box-shadow:inset 0 1px rgba(220,220,220,.25);box-shadow:inset 0 1px rgba(220,220,220,.25);padding-left:20px;padding-right:36px}.am-navbar-actions li a :after{font-family:FontAwesome,sans-serif;content:"\f105";display:inline-block;position:absolute;top:0;right:20px}.am-navbar-actions li a img{vertical-align:middle;height:20px;width:20px;display:inline}#am-navbar-qrcode{width:220px;height:220px;margin-left:-110px}#am-navbar-qrcode .am-modal-bd{padding:10px}#am-navbar-qrcode canvas{display:block;width:200px;height:200px}.am-with-fixed-navbar{padding-bottom:54px}.am-navbar-default a{color:#fff}.am-navbar-default .am-navbar-nav{background-color:#0e90d2}.am-navbar-default .am-navbar-actions{background-color:#0d86c4}.am-navbar-default .am-navbar-actions a{border-bottom:1px solid #0b6fa2}.am-pagination{position:relative}.am-pagination-default{margin-left:10px;margin-right:10px;font-size:1.6rem}.am-pagination-default .am-pagination-next,.am-pagination-default .am-pagination-prev{float:none}.am-pagination-select{margin-left:10px;margin-right:10px;font-size:1.6rem}.am-pagination-select>li>a{line-height:36px;background-color:#eee;padding:0 15px;border:0;color:#555}.am-pagination-select .am-pagination-select{position:absolute;top:0;left:50%;margin-left:-35px;width:70px;height:36px;text-align:center;border-radius:0}.am-pagination-select .am-pagination-select select{display:block;border:0;line-height:36px;width:70px;height:36px;border-radius:0;color:#555;background-color:#eee;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-left:18px}.am-paragraph p{margin:10px 0}.am-paragraph img{max-width:100%}.am-paragraph h1,.am-paragraph h2,.am-paragraph h3,.am-paragraph h4,.am-paragraph h5,.am-paragraph h6{color:#222}.am-paragraph table{max-width:none}.am-paragraph-table-container{overflow:hidden;background:#eee;max-width:none}.am-paragraph-table-container table{width:100%;max-width:none}.am-paragraph-table-container table th{background:#bce5fb;height:40px;border:1px solid #999;text-align:center}.am-paragraph-table-container table td{border:1px solid #999;text-align:center;vertical-align:middle;background:#fff}.am-paragraph-table-container table td p{text-indent:0;font-size:1.4rem}.am-paragraph-table-container table td a{font-size:1.4rem}.am-paragraph-default{margin:0 10px;color:#333;background-color:transparent}.am-paragraph-default p{font-size:1.4rem}.am-paragraph-default img{max-width:98%;display:block;margin:5px auto;border:1px solid #eee;padding:2px}.am-paragraph-default a{color:#0e90d2}.am-slider-a1{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-a1 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-a1 .am-viewport{max-height:300px}.am-slider-a1 .am-control-nav{width:100%;position:absolute;bottom:5px;text-align:center;line-height:0}.am-slider-a1 .am-control-nav li{margin:0 6px;display:inline-block}.am-slider-a1 .am-control-nav li a{width:8px;height:8px;display:block;background-color:rgba(0,0,0,.5);cursor:pointer;text-indent:-9999px;border-radius:50%;-webkit-box-shadow:inset 0 0 3px rgba(0,0,0,.3);box-shadow:inset 0 0 3px rgba(0,0,0,.3)}.am-slider-a1 .am-control-nav li a:hover{background-color:rgba(0,0,0,.7)}.am-slider-a1 .am-control-nav li a.am-active{background-color:#0e90d2;cursor:default}.am-slider-a1 .am-direction-nav,.am-slider-a1 .am-pauseplay{display:none}.am-slider-a2{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-a2 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-a2 .am-viewport{max-height:300px}.am-slider-a2 .am-control-nav{width:100%;position:absolute;bottom:5px;text-align:center;line-height:0}.am-slider-a2 .am-control-nav li{margin:0 6px;display:inline-block}.am-slider-a2 .am-control-nav li a{width:8px;height:8px;display:block;background-color:rgba(0,0,0,.5);cursor:pointer;text-indent:-9999px;-webkit-box-shadow:inset 0 0 3px rgba(0,0,0,.3);box-shadow:inset 0 0 3px rgba(0,0,0,.3)}.am-slider-a2 .am-control-nav li a:hover{background-color:rgba(0,0,0,.7)}.am-slider-a2 .am-control-nav li a.am-active{background:#0e93d7;cursor:default}.am-slider-a2 .am-direction-nav,.am-slider-a2 .am-pauseplay{display:none}.am-slider-a3{margin-bottom:20px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-a3 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-a3 .am-viewport{max-height:300px}.am-slider-a3 .am-control-nav{width:100%;position:absolute;bottom:-20px;text-align:center;height:20px;background-color:#000;padding-top:5px;line-height:0}.am-slider-a3 .am-control-nav li{margin:0 6px;display:inline-block}.am-slider-a3 .am-control-nav li a{width:8px;height:8px;display:block;background-color:rgba(0,0,0,.5);cursor:pointer;text-indent:-9999px;border-radius:50%;-webkit-box-shadow:inset 0 0 3px rgba(200,200,200,.3);box-shadow:inset 0 0 3px rgba(200,200,200,.3)}.am-slider-a3 .am-control-nav li a:hover{background-color:rgba(0,0,0,.7)}.am-slider-a3 .am-control-nav li a.am-active{background:#0e90d2;cursor:default}.am-slider-a3 .am-direction-nav,.am-slider-a3 .am-pauseplay{display:none}.am-slider-a4{margin-bottom:30px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-a4 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-a4 .am-viewport{max-height:300px}.am-slider-a4 .am-control-nav{width:100%;position:absolute;bottom:-15px;text-align:center;line-height:0}.am-slider-a4 .am-control-nav li{margin:0 6px;display:inline-block}.am-slider-a4 .am-control-nav li a{width:8px;height:8px;display:block;background-color:rgba(0,0,0,.5);cursor:pointer;text-indent:-9999px;border-radius:50%;-webkit-box-shadow:inset 0 0 3px rgba(0,0,0,.3);box-shadow:inset 0 0 3px rgba(0,0,0,.3)}.am-slider-a4 .am-control-nav li a:hover{background-color:rgba(0,0,0,.7)}.am-slider-a4 .am-control-nav li a.am-active{background-color:#0e90d2;cursor:default}.am-slider-a4 .am-direction-nav,.am-slider-a4 .am-pauseplay{display:none}.am-slider-a5{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-a5 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-a5 .am-viewport{max-height:300px}.am-slider-a5 .am-control-nav{width:100%;position:absolute;text-align:center;height:6px;display:table;bottom:0;font-size:0;line-height:0}.am-slider-a5 .am-control-nav li{display:table-cell}.am-slider-a5 .am-control-nav li a{width:100%;height:6px;display:block;background-color:rgba(0,0,0,.5);cursor:pointer;text-indent:-9999px}.am-slider-a5 .am-control-nav li a:hover{background-color:rgba(0,0,0,.7)}.am-slider-a5 .am-control-nav li a.am-active{background-color:#0e90d2;cursor:default}.am-slider-a5 .am-direction-nav,.am-slider-a5 .am-pauseplay{display:none}.am-slider-b1{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-b1 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-b1 .am-viewport{max-height:300px}.am-slider-b1 .am-direction-nav a{-webkit-box-sizing:content-box;box-sizing:content-box;display:block;width:24px;height:24px;padding:8px 0;margin:-20px 0 0;position:absolute;top:50%;z-index:10;overflow:hidden;opacity:.45;cursor:pointer;color:#fff;text-shadow:1px 1px 0 rgba(255,255,255,.3);background-color:rgba(0,0,0,.5);font-size:0;text-align:center;-webkit-transition:all .3s ease;transition:all .3s ease}.am-slider-b1 .am-direction-nav a:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f053";font-size:24px}.am-slider-b1 .am-direction-nav a.am-prev{left:0;padding-right:5px;border-bottom-right-radius:5px;border-top-right-radius:5px}.am-slider-b1 .am-direction-nav a.am-next{right:0;padding-left:5px;border-bottom-left-radius:5px;border-top-left-radius:5px}.am-slider-b1 .am-direction-nav a.am-next:before{content:"\f054"}.am-slider-b1 .am-direction-nav .am-disabled{opacity:0!important;cursor:default}.am-slider-b1:hover .am-prev{opacity:.7}.am-slider-b1:hover .am-prev:hover{opacity:1}.am-slider-b1:hover .am-next{opacity:.7}.am-slider-b1:hover .am-next:hover{opacity:1}.am-slider-b1 .am-control-nav,.am-slider-b1 .am-pauseplay{display:none}.am-slider-b2{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-b2 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-b2 .am-viewport{max-height:300px}.am-slider-b2 .am-direction-nav a{-webkit-box-sizing:content-box;box-sizing:content-box;display:block;width:24px;height:24px;padding:4px;margin:-16px 0 0;position:absolute;top:50%;z-index:10;overflow:hidden;opacity:.45;cursor:pointer;color:#fff;text-shadow:1px 1px 0 rgba(255,255,255,.3);background-color:rgba(0,0,0,.5);font-size:0;text-align:center;border-radius:50%;-webkit-transition:all .3s ease;transition:all .3s ease}.am-slider-b2 .am-direction-nav a:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f053";font-size:16px;line-height:24px}.am-slider-b2 .am-direction-nav a.am-prev{left:5px}.am-slider-b2 .am-direction-nav a.am-next{right:5px}.am-slider-b2 .am-direction-nav a.am-next:before{content:"\f054"}.am-slider-b2 .am-direction-nav .am-disabled{opacity:0!important;cursor:default}.am-slider-b2:hover .am-prev{opacity:.7}.am-slider-b2:hover .am-prev:hover{opacity:1}.am-slider-b2:hover .am-next{opacity:.7}.am-slider-b2:hover .am-next:hover{opacity:1}.am-slider-b2 .am-control-nav,.am-slider-b2 .am-pauseplay{display:none}.am-slider-b3{margin:15px 30px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-b3 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-b3 .am-viewport{max-height:300px}.am-slider-b3 .am-direction-nav a{-webkit-box-sizing:content-box;box-sizing:content-box;display:block;width:24px;height:24px;padding:4px;margin:-16px 0 0;position:absolute;top:50%;z-index:10;overflow:hidden;opacity:.45;cursor:pointer;color:#333;text-shadow:1px 1px 0 rgba(255,255,255,.3);font-size:0;-webkit-transition:all .3s ease;transition:all .3s ease}.am-slider-b3 .am-direction-nav a:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f053";font-size:24px}.am-slider-b3 .am-direction-nav a.am-prev{left:-25px}.am-slider-b3 .am-direction-nav a.am-next{right:-25px;text-align:right}.am-slider-b3 .am-direction-nav a.am-next:before{content:"\f054"}.am-slider-b3 .am-direction-nav .am-disabled{opacity:0!important;cursor:default}.am-slider-b3:hover .am-prev{opacity:.7}.am-slider-b3:hover .am-prev:hover{opacity:1}.am-slider-b3:hover .am-next{opacity:.7}.am-slider-b3:hover .am-next:hover{opacity:1}.am-slider-b3 .am-control-nav,.am-slider-b3 .am-pauseplay{display:none}.am-slider-b4{margin:15px 20px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-b4 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-b4 .am-viewport{max-height:300px}.am-slider-b4 .am-direction-nav a{position:absolute;top:50%;z-index:10;display:block;-webkit-box-sizing:content-box;box-sizing:content-box;width:24px;height:24px;margin:-16px 0 0;padding:4px;overflow:hidden;opacity:.45;background-color:rgba(0,0,0,.8);cursor:pointer;text-shadow:1px 1px 0 rgba(255,255,255,.3);font-size:0;border-radius:50%;text-align:center;color:#fff;-webkit-transition:all .3s ease;transition:all .3s ease}.am-slider-b4 .am-direction-nav a:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f053";font-size:20px;line-height:24px}.am-slider-b4 .am-direction-nav a.am-prev{left:-15px}.am-slider-b4 .am-direction-nav a.am-next{right:-15px}.am-slider-b4 .am-direction-nav a.am-next:before{content:"\f054"}.am-slider-b4 .am-direction-nav .am-disabled{opacity:0!important;cursor:default}.am-slider-b4:hover .am-prev{opacity:.7}.am-slider-b4:hover .am-prev:hover{opacity:.9}.am-slider-b4:hover .am-next{opacity:.7}.am-slider-b4:hover .am-next:hover{opacity:.9}.am-slider-b4 .am-control-nav,.am-slider-b4 .am-pauseplay{display:none}.am-slider-c1{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-c1 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-c1 .am-viewport{max-height:300px}.am-slider-c1 .am-control-nav{position:absolute;bottom:0;display:table;width:100%;height:6px;font-size:0;line-height:0;text-align:center}.am-slider-c1 .am-control-nav li{display:table-cell;width:1%}.am-slider-c1 .am-control-nav li a{width:100%;height:6px;display:block;background-color:rgba(0,0,0,.7);cursor:pointer;text-indent:-9999px}.am-slider-c1 .am-control-nav li a:hover{background:rgba(0,0,0,.8)}.am-slider-c1 .am-control-nav li a.am-active{background-color:#0e90d2;cursor:default}.am-slider-c1 .am-slider-desc{background-color:rgba(0,0,0,.6);position:absolute;bottom:6px;padding:8px;width:100%;color:#fff;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-slider-c1 .am-direction-nav,.am-slider-c1 .am-pauseplay{display:none}.am-slider-c2{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-c2 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-c2 .am-viewport{max-height:300px}.am-slider-c2 .am-control-nav{position:absolute;bottom:15px;right:0;height:6px;text-align:center;font-size:0;line-height:0}.am-slider-c2 .am-control-nav li{display:inline-block;margin-right:6px}.am-slider-c2 .am-control-nav li a{width:6px;height:6px;display:block;background-color:rgba(255,255,255,.4);cursor:pointer;text-indent:-9999px}.am-slider-c2 .am-control-nav li a:hover{background:rgba(230,230,230,.4)}.am-slider-c2 .am-control-nav li a.am-active{background-color:#0e90d2;cursor:default}.am-slider-c2 .am-slider-desc{background-color:rgba(0,0,0,.6);position:absolute;bottom:0;padding:8px 60px 8px 8px;width:100%;color:#fff;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-slider-c2 .am-direction-nav,.am-slider-c2 .am-pauseplay{display:none}.am-slider-c3{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-c3 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-c3 .am-viewport{max-height:300px}.am-slider-c3 .am-slider-desc{background-color:rgba(0,0,0,.6);position:absolute;bottom:10px;right:60px;height:30px;left:0;padding-right:5px;color:#fff;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-slider-c3 .am-slider-counter{margin-right:5px;display:inline-block;height:30px;background-color:#0e90d2;width:40px;text-align:center;line-height:30px;color:#eee;font-size:1rem}.am-slider-c3 .am-slider-counter .am-active{font-size:1.8rem;font-weight:700;color:#fff}.am-slider-c3 .am-direction-nav a{-webkit-box-sizing:content-box;box-sizing:content-box;display:block;width:24px;height:24px;padding:4px 0;margin:-16px 0 0;position:absolute;top:50%;z-index:10;overflow:hidden;opacity:.45;cursor:pointer;color:#fff;text-shadow:1px 1px 0 rgba(255,255,255,.3);background-color:rgba(0,0,0,.5);font-size:0;text-align:center;-webkit-transition:all .3s ease;transition:all .3s ease}.am-slider-c3 .am-direction-nav a:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f053";font-size:16px;line-height:24px}.am-slider-c3 .am-direction-nav a.am-prev{left:0;padding-right:5px}.am-slider-c3 .am-direction-nav a.am-next{right:0;padding-left:5px}.am-slider-c3 .am-direction-nav a.am-next:before{content:"\f054"}.am-slider-c3 .am-direction-nav .am-disabled{opacity:0!important;cursor:default}.am-slider-c3:hover .am-prev{opacity:.7}.am-slider-c3:hover .am-prev:hover{opacity:1}.am-slider-c3:hover .am-next{opacity:.7}.am-slider-c3:hover .am-next:hover{opacity:1}.am-slider-c3 .am-control-nav,.am-slider-c3 .am-pauseplay{display:none}.am-slider-c4{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-c4 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-c4 .am-viewport{max-height:300px}.am-slider-c4 .am-slider-desc{width:100%;background-color:rgba(0,0,0,.6);position:absolute;bottom:0;right:0;left:0;padding:8px 40px;color:#fff;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-slider-c4 .am-direction-nav a{-webkit-box-sizing:content-box;box-sizing:content-box;display:block;width:24px;height:24px;padding:4px 0;margin:0;position:absolute;bottom:4px;z-index:10;overflow:hidden;opacity:.45;cursor:pointer;text-shadow:1px 1px 0 rgba(255,255,255,.3);font-size:0;text-align:center;color:rgba(0,0,0,.7);-webkit-transition:all .3s ease;transition:all .3s ease}.am-slider-c4 .am-direction-nav a:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f053";font-size:24px}.am-slider-c4 .am-direction-nav a.am-prev{left:0;padding-right:5px}.am-slider-c4 .am-direction-nav a.am-next{right:0;padding-left:5px}.am-slider-c4 .am-direction-nav a.am-next:before{content:"\f054"}.am-slider-c4 .am-direction-nav .am-disabled{opacity:0!important;cursor:default}.am-slider-c4:hover .am-prev{opacity:.7}.am-slider-c4:hover .am-prev:hover{opacity:1}.am-slider-c4:hover .am-next{opacity:.7}.am-slider-c4:hover .am-next:hover{opacity:1}.am-slider-c4 .am-control-nav,.am-slider-c4 .am-pauseplay{display:none}.am-slider-d1{-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-d1 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-d1 .am-viewport{max-height:300px}.am-slider-d1 .am-slider-desc{padding:8px 35px;width:100%;color:#fff;background-color:#0e90d2}.am-slider-d1 .am-slider-title{font-weight:400;margin-bottom:2px;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-slider-d1 .am-slider-more{color:#eee;font-size:1.3rem}.am-slider-d1 .am-direction-nav a{-webkit-box-sizing:content-box;box-sizing:content-box;display:block;width:24px;height:24px;margin:0;position:absolute;bottom:18px;z-index:10;overflow:hidden;opacity:.45;cursor:pointer;text-shadow:1px 1px 0 rgba(255,255,255,.3);font-size:0;text-align:center;border:1px solid rgba(255,255,255,.9);color:rgba(255,255,255,.9);border-radius:50%;-webkit-transition:all 3s ease;transition:all 3s ease}.am-slider-d1 .am-direction-nav a:before{display:inline-block;font:normal normal normal 1.6rem/1 FontAwesome,sans-serif;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0);content:"\f053";font-size:16px;line-height:24px}.am-slider-d1 .am-direction-nav a.am-prev{left:5px}.am-slider-d1 .am-direction-nav a.am-next{right:5px}.am-slider-d1 .am-direction-nav a.am-next:before{content:"\f054"}.am-slider-d1 .am-direction-nav .am-disabled{opacity:0!important;cursor:default}.am-slider-d1:hover .am-prev{opacity:.7}.am-slider-d1:hover .am-prev:hover{opacity:1}.am-slider-d1:hover .am-next{opacity:.7}.am-slider-d1:hover .am-next:hover{opacity:1}.am-slider-d1 .am-control-nav,.am-slider-d1 .am-pauseplay{display:none}.am-slider-d2{margin-bottom:20px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-d2 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-d2 .am-viewport{max-height:300px}.am-slider-d2 .am-slider-desc{position:absolute;left:10px;bottom:20px;right:50px;color:#fff}.am-slider-d2 .am-slider-content{background-color:rgba(0,0,0,.7);padding:10px 6px;margin-bottom:10px}.am-slider-d2 .am-slider-content p{margin:0;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:1.4rem}.am-slider-d2 .am-slider-title{font-weight:400;margin-bottom:5px;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-slider-d2 .am-slider-more{color:#eee;font-size:1.3rem;background-color:#0e90d2;padding:2px 10px}.am-slider-d2 .am-control-nav{width:100%;position:absolute;bottom:-15px;text-align:center}.am-slider-d2 .am-control-nav li{margin:0 6px;display:inline-block}.am-slider-d2 .am-control-nav li a{width:8px;height:8px;display:block;background-color:rgba(0,0,0,.5);cursor:pointer;text-indent:-9999px;border-radius:50%;font-size:0;line-height:0;-webkit-box-shadow:inset 0 0 3px rgba(0,0,0,.3);box-shadow:inset 0 0 3px rgba(0,0,0,.3)}.am-slider-d2 .am-control-nav li a:hover{background:rgba(0,0,0,.5)}.am-slider-d2 .am-control-nav li a.am-active{background:#0e90d2;cursor:default}.am-slider-d2 .am-direction-nav,.am-slider-d2 .am-pauseplay{display:none}.am-slider-d3{margin-bottom:10px;-webkit-box-shadow:0 1px 4px rgba(0,0,0,.2);box-shadow:0 1px 4px rgba(0,0,0,.2)}.am-slider-d3 .am-viewport{max-height:2000px;-webkit-transition:all 1s ease;transition:all 1s ease}.loading .am-slider-d3 .am-viewport{max-height:300px}.am-slider-d3 .am-slider-desc{position:absolute;bottom:0;color:#fff;width:100%;background-color:rgba(0,0,0,.7);padding:8px 5px}.am-slider-d3 .am-slider-desc p{margin:0;font-size:1.3rem;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-slider-d3 .am-slider-title{font-weight:400;margin-bottom:5px;display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-slider-d3 .am-control-thumbs{position:static;overflow:hidden}.am-slider-d3 .am-control-thumbs li{padding:12px 4px 4px;position:relative}.am-slider-d3 .am-control-thumbs img{width:100%;display:block;opacity:.85;cursor:pointer}.am-slider-d3 .am-control-thumbs img:hover{opacity:1}.am-slider-d3 .am-control-thumbs .am-active{opacity:1;cursor:default}.am-slider-d3 .am-control-thumbs .am-active+i{position:absolute;top:0;left:50%;content:"";display:inline-block;width:0;height:0;vertical-align:middle;border-top:8px solid rgba(0,0,0,.7);border-right:8px solid transparent;border-left:8px solid transparent;border-bottom:0 dotted;-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);margin-left:-4px;-webkit-transition:all .2s;transition:all .2s}.am-slider-d3 .am-direction-nav,.am-slider-d3 .am-pauseplay{display:none}.am-slider-d3 .am-control-thumbs{display:table}.am-slider-d3 .am-control-thumbs li{display:table-cell;width:1%}[data-am-widget=tabs]{margin:10px}[data-am-widget=tabs] .am-tabs-nav{width:100%;padding:0;margin:0;list-style:none;text-align:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}[data-am-widget=tabs] .am-tabs-nav li{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}[data-am-widget=tabs] .am-tabs-nav a{display:block;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.am-tabs-default .am-tabs-nav{line-height:40px;background-color:#eee}.am-tabs-default .am-tabs-nav a{color:#222;line-height:42px}.am-tabs-default .am-tabs-nav>.am-active a{background-color:#0e90d2;color:#fff}.am-tabs-d2 .am-tabs-nav{background-color:#eee}.am-tabs-d2 .am-tabs-nav li{height:42px}.am-tabs-d2 .am-tabs-nav a{color:#222;line-height:42px}.am-tabs-d2 .am-tabs-nav>.am-active{position:relative;background-color:#fcfcfc;border-bottom:2px solid #0e90d2}.am-tabs-d2 .am-tabs-nav>.am-active a{line-height:40px;color:#0e90d2}.am-tabs-d2 .am-tabs-nav>.am-active:after{position:absolute;width:0;height:0;bottom:0;left:50%;margin-left:-5px;border:6px rgba(0,0,0,0) solid;content:"";z-index:1;border-bottom-color:#0e90d2}.am-titlebar{margin-top:20px;height:45px;font-size:100%}.am-titlebar h2{margin-top:0;margin-bottom:0;font-size:1.6rem}.am-titlebar .am-titlebar-title img{height:24px;width:auto}.am-titlebar-default{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:10px;margin-right:10px;background-color:transparent;border-bottom:1px solid #dedede;line-height:44px}.am-titlebar-default a{color:#0e90d2}.am-titlebar-default .am-titlebar-title{position:relative;padding-left:12px;color:#0e90d2;font-size:1.8rem;text-align:left;font-weight:700}.am-titlebar-default .am-titlebar-title:before{content:"";position:absolute;left:2px;top:8px;bottom:8px;border-left:3px solid #0e90d2}.am-titlebar-default .am-titlebar-nav{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;text-align:right}.am-titlebar-default .am-titlebar-nav a{margin-right:10px}.am-titlebar-default .am-titlebar-nav a:last-child{margin-right:5px}.am-titlebar-multi{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background-color:#f5f5f5;border-top:2px solid #3bb4f2;border-bottom:1px solid #e8e8e8}.am-titlebar-multi a{color:#0e90d2}.am-titlebar-multi .am-titlebar-title{padding-left:10px;color:#0e90d2;font-size:1.8rem;text-align:left;font-weight:700;line-height:42px}.am-titlebar-multi .am-titlebar-nav{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;text-align:right;line-height:42px}.am-titlebar-multi .am-titlebar-nav a{margin-right:10px}.am-titlebar-cols{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding-left:10px;background-color:#f5f5f5;color:#555;font-size:18px;border-top:2px solid #e1e1e1;line-height:41px}.am-titlebar-cols a{color:#555}.am-titlebar-cols .am-titlebar-title{color:#0e90d2;margin-right:15px;border-bottom:2px solid #0e90d2;font-weight:700}.am-titlebar-cols .am-titlebar-title a{color:#0e90d2}.am-titlebar-cols .am-titlebar-nav{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.am-titlebar-cols .am-titlebar-nav a{display:inline-block;margin-right:15px;line-height:41px;border-bottom:2px solid transparent}.am-titlebar-cols .am-titlebar-nav a:hover{color:#3c3c3c;border-bottom-color:#0e90d2}.am-titlebar-cols .am-titlebar-nav a:last-child{margin-right:10px}.am-wechatpay .am-wechatpay-btn{margin-top:1rem;margin-bottom:1rem}
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/css/app.css b/Day61-65/code/project_of_tornado/assets/css/app.css
deleted file mode 100644
index 8b52e27..0000000
--- a/Day61-65/code/project_of_tornado/assets/css/app.css
+++ /dev/null
@@ -1,1912 +0,0 @@
-ul,
-li {
- list-style: none;
- padding: 0;
- margin: 0;
-}
-header {
- z-index: 1200;
- position: relative;
-}
-.tpl-header-logo {
- width: 240px;
- height: 57px;
- display: table;
- text-align: center;
- position: relative;
- z-index: 1300;
-}
-.tpl-header-logo a {
- display: table-cell;
- vertical-align: middle;
-}
-.tpl-header-logo img {
- width: 170px;
-}
-.tpl-header-fluid {
- margin-left: 240px;
- height: 56px;
- padding-left: 20px;
- padding-right: 20px;
-}
-.tpl-header-switch-button {
- margin-top: 0px;
- margin-bottom: 0px;
- float: left;
- color: #cfcfcf;
- margin-left: -20px;
- margin-right: 0;
- border: 0;
- border-radius: 0;
- padding: 0px 22px;
- font-size: 22px;
- line-height: 55px;
-}
-.tpl-header-switch-button:hover {
- outline: none;
-}
-.tpl-header-search-form {
- height: 54px;
- line-height: 52px;
- margin-left: 10px;
-}
-.tpl-header-search-box,
-.tpl-header-search-btn {
- transition: all 0.4s ease-in-out;
- color: #848c90;
- background: none;
- border: none;
- outline: none;
-}
-.tpl-header-search-box {
- font-size: 14px;
-}
-.tpl-header-search-box:hover,
-.tpl-header-search-box:active {
- color: #fff;
-}
-.tpl-header-search-btn {
- font-size: 15px;
-}
-.tpl-header-search-btn:hover,
-.tpl-header-search-btn:active {
- color: #fff;
-}
-.tpl-header-navbar {
- color: #fff;
-}
-.tpl-header-navbar li {
- float: left;
-}
-.tpl-header-navbar a {
- line-height: 56px;
- display: block;
- padding: 0 16px;
- position: relative;
-}
-.tpl-header-navbar a .item-feed-badge {
- position: absolute;
- top: 9px;
- left: 25px;
-}
-ul.tpl-dropdown-content {
- padding: 10px;
- margin-top: 0;
- width: 300px;
- background-color: #2f3638;
- border: 1px solid #525e62;
- border-radius: 0;
-}
-ul.tpl-dropdown-content li {
- float: none;
-}
-ul.tpl-dropdown-content:before,
-ul.tpl-dropdown-content:after {
- display: none;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-title {
- font-size: 12px;
- float: left;
- color: rgba(255, 255, 255, 0.7);
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-time {
- float: right;
- text-align: right;
- color: rgba(255, 255, 255, 0.7);
- font-size: 11px;
- width: 50px;
- margin-left: 10px;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications:last-child .tpl-dropdown-menu-notifications-item {
- text-align: center;
- border: none;
- font-size: 12px;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications:last-child .tpl-dropdown-menu-notifications-item i {
- margin-left: -6px;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-messages:last-child .tpl-dropdown-menu-messages-item {
- text-align: center;
- border: none;
- font-size: 12px;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-messages:last-child .tpl-dropdown-menu-messages-item i {
- margin-left: -6px;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item,
-ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item {
- padding: 12px;
- color: #fff;
- line-height: 20px;
- border-bottom: 1px solid rgba(255, 255, 255, 0.15);
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item:hover,
-ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item:hover,
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item:focus,
-ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item:focus {
- background-color: #465154;
- color: #fff;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item .menu-messages-ico,
-ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item .menu-messages-ico {
- line-height: initial;
- float: left;
- width: 35px;
- height: 35px;
- border-radius: 50%;
- margin-right: 10px;
- margin-top: 6px;
- overflow: hidden;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item .menu-messages-ico img,
-ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item .menu-messages-ico img {
- width: 100%;
- height: auto;
- vertical-align: middle;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item .menu-messages-time,
-ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item .menu-messages-time {
- float: right;
- text-align: right;
- color: rgba(255, 255, 255, 0.7);
- font-size: 11px;
- width: 40px;
- margin-left: 10px;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item .menu-messages-content,
-ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item .menu-messages-content {
- display: block;
- font-size: 13px;
- margin-left: 45px;
- margin-right: 50px;
-}
-ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item .menu-messages-content .menu-messages-content-time,
-ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item .menu-messages-content .menu-messages-content-time {
- margin-top: 3px;
- color: rgba(255, 255, 255, 0.7);
- font-size: 11px;
-}
-.am-dimmer {
- z-index: 1200;
-}
-.am-modal {
- z-index: 1300;
-}
-.am-datepicker-dropdown {
- z-index: 1400;
-}
-.tpl-skiner {
- transition: all 0.4s ease-in-out;
- position: fixed;
- z-index: 10000;
- right: -130px;
- top: 65px;
-}
-.tpl-skiner.active {
- right: 0px;
-}
-.tpl-skiner-content {
- background: rgba(0, 0, 0, 0.7);
- width: 130px;
- padding: 15px;
- border-radius: 4px 0 0 4px;
- overflow: hidden;
-}
-.fc-content .am-icon-close {
- position: absolute;
- right: 0;
- top: 0px;
-}
-.tpl-skiner-toggle {
- position: absolute;
- top: 5px;
- left: -40px;
- width: 40px;
- color: #969a9b;
- font-size: 20px;
- height: 40px;
- line-height: 40px;
- text-align: center;
- background: rgba(0, 0, 0, 0.7);
- cursor: pointer;
- border-top-left-radius: 4px;
- border-bottom-left-radius: 4px;
-}
-.tpl-skiner-content-title {
- margin: 0;
- margin-bottom: 4px;
- padding-bottom: 4px;
- font-size: 16px;
- text-transform: uppercase;
- color: #fff;
- border-bottom: 1px solid rgba(255, 255, 255, 0.3);
-}
-.tpl-skiner-content-bar {
- padding-top: 10px;
-}
-.tpl-skiner-content-bar .skiner-color {
- transition: all 0.4s ease-in-out;
- float: left;
- width: 25px;
- height: 25px;
- margin-right: 10px;
- cursor: pointer;
-}
-.tpl-skiner-content-bar .skiner-white {
- background: #fff;
- border: 2px solid #eee;
-}
-.tpl-skiner-content-bar .skiner-black {
- background: #000;
- border: 2px solid #222;
-}
-.sub-active {
- color: #fff!important;
-}
-.left-sidebar {
- transition: all 0.4s ease-in-out;
- width: 240px;
- min-height: 100%;
- padding-top: 57px;
- position: absolute;
- z-index: 1104;
- top: 0;
- left: 0px;
-}
-.left-sidebar.xs-active {
- left: 0px;
-}
-.left-sidebar.active {
- left: -240px;
-}
-.tpl-sidebar-user-panel {
- padding: 22px;
- padding-top: 28px;
-}
-.tpl-user-panel-profile-picture {
- border-radius: 50%;
- width: 82px;
- height: 82px;
- margin-bottom: 10px;
- overflow: hidden;
-}
-.tpl-user-panel-profile-picture img {
- width: auto;
- height: 82px;
- vertical-align: middle;
-}
-.tpl-user-panel-status-icon {
- margin-right: 2px;
-}
-.user-panel-logged-in-text {
- display: block;
- color: #cfcfcf;
- font-size: 14px;
-}
-.tpl-user-panel-action-link {
- color: #6d787c;
- font-size: 12px;
-}
-.tpl-user-panel-action-link:hover {
- color: #a2aaad;
-}
-.sidebar-nav {
- list-style-type: none;
- padding: 0;
- margin: 0;
-}
-.sidebar-nav-sub {
- display: none;
-}
-.sidebar-nav-sub .sidebar-nav-link {
- font-size: 12px;
- padding-left: 30px;
-}
-.sidebar-nav-sub .sidebar-nav-link a {
- font-size: 12px;
- padding-left: 0;
-}
-.sidebar-nav-sub .sidebar-nav-link-logo {
- margin-right: 8px;
- width: 20px;
- font-size: 16px;
-}
-.sidebar-nav-sub-ico-rotate {
- -webkit-transform: rotate(180deg);
- transform: rotate(180deg);
- -webkit-transition: all 300ms;
- transition: all 300ms;
-}
-.sidebar-nav-link-logo-ico {
- margin-top: 5px;
-}
-.sidebar-nav-heading {
- padding: 24px 17px;
- font-size: 15px;
- font-weight: 500;
-}
-.sidebar-nav-heading-info {
- font-size: 12px;
- color: #868E8E;
- padding-left: 10px;
-}
-.sidebar-nav-link-logo {
- margin-right: 8px;
- width: 20px;
- font-size: 16px;
-}
-.sidebar-nav-link {
- color: #fff;
-}
-.sidebar-nav-link a {
- display: block;
- color: #868E8E;
- padding: 10px 17px;
- border-left: #282d2f 3px solid;
- font-size: 14px;
- cursor: pointer;
-}
-.sidebar-nav-link a.active {
- cursor: pointer;
- border-left: #1CA2CE 3px solid;
- color: #fff;
-}
-.sidebar-nav-link a:hover {
- color: #fff;
-}
-.tpl-content-wrapper {
- transition: all 0.4s ease-in-out;
- position: relative;
- margin-left: 240px;
- z-index: 1101;
- min-height: 922px;
- border-bottom-left-radius: 3px;
-}
-.tpl-content-wrapper.xs-active {
- margin-left: 240px;
-}
-.tpl-content-wrapper.active {
- margin-left: 0;
-}
-.page-header {
- background: #424b4f;
- margin-top: 0;
- margin-bottom: 0;
- padding: 40px 0;
- border-bottom: 0;
-}
-.container-fluid {
- margin-top: 0;
- margin-bottom: 0;
- padding: 40px 0;
- border-bottom: 0;
- padding-left: 20px;
- padding-right: 20px;
-}
-.row {
- margin-right: -10px;
- margin-left: -10px;
-}
-.page-header-description {
- margin-top: 4px;
- margin-bottom: 0;
- font-size: 14px;
- color: #e6e6e6;
-}
-.page-header-heading {
- font-size: 20px;
- font-weight: 400;
-}
-.page-header-heading .page-header-heading-ico {
- font-size: 28px;
- position: relative;
- top: 3px;
-}
-.page-header-heading small {
- font-weight: normal;
- line-height: 1;
- color: #B3B3B3;
-}
-.page-header-button {
- transition: all 0.4s ease-in-out;
- opacity: 0.3;
- float: right;
- outline: none;
- border: 1px solid #fff;
- padding: 16px 36px;
- font-size: 23px;
- line-height: 23px;
- border-radius: 0;
- padding-top: 14px;
- color: #fff;
- background-color: rgba(0, 0, 0, 0);
- font-weight: 500;
-}
-.page-header-button:hover {
- background-color: #ffffff;
- color: #333;
- opacity: 1;
-}
-.widget {
- width: 100%;
- min-height: 148px;
- margin-bottom: 20px;
- border-radius: 0;
- position: relative;
-}
-.widget-head {
- width: 100%;
- padding: 15px;
-}
-.widget-title {
- font-size: 14px;
-}
-.widget-fluctuation-period-text {
- display: inline-block;
- font-size: 16px;
- line-height: 20px;
- margin-bottom: 9px;
-}
-.widget-body {
- padding: 13px 15px;
- width: 100%;
-}
-.row-content {
- padding: 20px;
-}
-.widget-fluctuation-description-text {
- margin-top: 4px;
- display: block;
- font-size: 12px;
- line-height: 13px;
-}
-.widget-fluctuation-description-amount {
- display: block;
- font-size: 20px;
- line-height: 22px;
-}
-.widget-statistic-header {
- position: relative;
- z-index: 35;
- display: block;
- font-size: 14px;
- text-transform: uppercase;
- margin-bottom: 8px;
-}
-.widget-body-md {
- height: 200px;
-}
-.widget-body-lg {
- min-height: 330px;
-}
-.widget-margin-bottom-lg {
- margin-bottom: 20px;
-}
-.tpl-table-black-operation a {
- display: inline-block;
- padding: 5px 6px;
- font-size: 12px;
- line-height: 12px;
-}
-.tpl-switch input[type="checkbox"] {
- position: absolute;
- opacity: 0;
- width: 50px;
- height: 20px;
-}
-.tpl-switch input[type="checkbox"].ios-switch + div {
- vertical-align: middle;
- width: 40px;
- height: 20px;
- border-radius: 999px;
- background-color: rgba(0, 0, 0, 0.1);
- -webkit-transition-duration: .4s;
- -webkit-transition-property: background-color, box-shadow;
- margin-top: 6px;
-}
-.tpl-switch input[type="checkbox"].ios-switch:checked + div {
- width: 40px;
- background-position: 0 0;
- background-color: #36c6d3;
-}
-.tpl-switch input[type="checkbox"].tinyswitch.ios-switch + div {
- width: 34px;
- height: 18px;
-}
-.tpl-switch input[type="checkbox"].bigswitch.ios-switch + div {
- width: 50px;
- height: 25px;
-}
-.tpl-switch input[type="checkbox"].green.ios-switch:checked + div {
- background-color: #00e359;
- border: 1px solid #00a23f;
- box-shadow: inset 0 0 0 10px #00e359;
-}
-.tpl-switch input[type="checkbox"].ios-switch + div > div {
- float: left;
- width: 18px;
- height: 18px;
- border-radius: inherit;
- background: #ffffff;
- -webkit-transition-timing-function: cubic-bezier(0.54, 1.85, 0.5, 1);
- -webkit-transition-duration: 0.4s;
- -webkit-transition-property: transform, background-color, box-shadow;
- -moz-transition-timing-function: cubic-bezier(0.54, 1.85, 0.5, 1);
- -moz-transition-duration: 0.4s;
- -moz-transition-property: transform, background-color;
- pointer-events: none;
- margin-top: 1px;
- margin-left: 1px;
-}
-.tpl-switch input[type="checkbox"].ios-switch:checked + div > div {
- -webkit-transform: translate3d(20px, 0, 0);
- -moz-transform: translate3d(20px, 0, 0);
- background-color: #ffffff;
-}
-.tpl-switch input[type="checkbox"].tinyswitch.ios-switch + div > div {
- width: 16px;
- height: 16px;
- margin-top: 1px;
-}
-.tpl-switch input[type="checkbox"].tinyswitch.ios-switch:checked + div > div {
- -webkit-transform: translate3d(16px, 0, 0);
- -moz-transform: translate3d(16px, 0, 0);
- box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3), 0px 0px 0 1px #0850ac;
-}
-.tpl-switch input[type="checkbox"].bigswitch.ios-switch + div > div {
- width: 23px;
- height: 23px;
- margin-top: 1px;
-}
-.tpl-switch input[type="checkbox"].bigswitch.ios-switch:checked + div > div {
- -webkit-transform: translate3d(25px, 0, 0);
- -moz-transform: translate3d(16px, 0, 0);
-}
-.tpl-switch input[type="checkbox"].green.ios-switch:checked + div > div {
- box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3), 0 0 0 1px #00a23f;
-}
-.tpl-page-state {
- width: 100%;
-}
-.tpl-page-state-title {
- font-size: 40px;
- font-weight: bold;
-}
-.tpl-page-state-content {
- padding: 10px 0;
-}
-.tpl-login {
- width: 100%;
-}
-.tpl-login-logo {
- max-width: 159px;
- height: 205px;
- margin: 0 auto;
- margin-bottom: 20px;
-}
-.tpl-login-title {
- width: 100%;
- font-size: 24px;
-}
-.tpl-login-content {
- width: 300px;
- margin: 12% auto 0;
-}
-.tpl-login-remember-me {
- color: #B3B3B3;
- font-size: 14px;
-}
-.tpl-login-remember-me label {
- position: relative;
- top: -2px;
-}
-.tpl-login-content-info {
- color: #B3B3B3;
- font-size: 14px;
-}
-.cl-p {
- padding: 0!important;
-}
-.tpl-table-line-img {
- max-width: 100px;
- padding: 2px;
-}
-.tpl-table-list-select {
- text-align: right;
-}
-.fc-button-group,
-.fc button {
- display: block;
-}
-.theme-white {
- background: #e9ecf3;
-}
-.theme-white .sidebar-nav-sub .sidebar-nav-link-logo {
- margin-left: 10px;
-}
-.theme-white .tpl-header-search-box:hover,
-.theme-white .tpl-header-search-box:active .tpl-error-title {
- color: #848c90;
-}
-.theme-white .tpl-error-title-info {
- line-height: 30px;
- font-size: 21px;
- margin-top: 20px;
- text-align: center;
- color: #dce2ec;
-}
-.theme-white .tpl-error-btn {
- background: #03a9f3;
- border: 1px solid #03a9f3;
- border-radius: 30px;
- padding: 6px 20px 8px;
-}
-.theme-white .tpl-error-content {
- margin-top: 20px;
- margin-bottom: 20px;
- font-size: 16px;
- text-align: center;
- color: #96a2b4;
-}
-.theme-white .tpl-calendar-box {
- background: #fff;
- border-radius: 4px;
- padding: 20px;
-}
-.theme-white .tpl-calendar-box .fc-event {
- border-radius: 0;
- background: #03a9f3;
- border: 1px solid #14b0f6;
-}
-.theme-white .tpl-calendar-box .fc-axis {
- color: #868E8E;
-}
-.theme-white .tpl-calendar-box .fc-unthemed .fc-today {
- background: #eee;
-}
-.theme-white .tpl-calendar-box .fc-more {
- color: #868E8E;
-}
-.theme-white .tpl-calendar-box .fc th.fc-widget-header {
- background: #32c5d2!important;
- color: #ffffff;
- font-size: 14px;
- line-height: 20px;
- padding: 7px 0px;
- text-transform: uppercase;
- border: none!important;
-}
-.theme-white .tpl-calendar-box .fc th.fc-widget-header a {
- color: #fff;
-}
-.theme-white .tpl-calendar-box .fc-center h2 {
- color: #868E8E;
-}
-.theme-white .tpl-calendar-box .fc-state-default {
- background-image: none;
- background: #fff;
- font-size: 14px;
- color: #868E8E;
-}
-.theme-white .tpl-calendar-box .fc th,
-.theme-white .tpl-calendar-box .fc td,
-.theme-white .tpl-calendar-box .fc hr,
-.theme-white .tpl-calendar-box .fc thead,
-.theme-white .tpl-calendar-box .fc tbody,
-.theme-white .tpl-calendar-box .fc-row {
- border-color: #eee!important;
-}
-.theme-white .tpl-calendar-box .fc-day-number {
- color: #868E8E;
- padding-right: 6px;
-}
-.theme-white .tpl-calendar-box .fc th {
- color: #868E8E;
- font-weight: normal;
- font-size: 14px;
- padding: 6px 0;
-}
-.theme-white .tpl-login-logo {
- background: url(../img/logoa.png) center no-repeat;
-}
-.theme-white .sub-active {
- color: #23abf0!important;
-}
-.theme-white .tpl-table-line-img {
- border: 1px solid #ddd;
-}
-.theme-white .tpl-pagination .am-disabled a,
-.theme-white .tpl-pagination li a {
- color: #23abf0;
- border-radius: 3px;
- padding: 6px 12px;
-}
-.theme-white .tpl-pagination .am-active a {
- background: #23abf0;
- color: #fff;
- border: 1px solid #23abf0;
- padding: 6px 12px;
-}
-.theme-white .tpl-login-btn {
- background-color: #32c5d2;
- border: none;
- padding: 10px 16px;
- font-size: 14px;
- line-height: 14px;
- outline: none;
-}
-.theme-white .tpl-login-btn:hover,
-.theme-white .tpl-login-btn:active {
- background: #22b2e1;
- color: #fff;
-}
-.theme-white .tpl-login-title {
- color: #697882;
-}
-.theme-white .tpl-login-title strong {
- color: #39bae4;
-}
-.theme-white .tpl-login-content {
- width: 500px;
- padding: 40px 40px 25px;
- background-color: #fff;
- border-radius: 4px;
-}
-.theme-white .tpl-form-line-form,
-.theme-white .tpl-form-border-form {
- padding-top: 20px;
-}
-.theme-white .tpl-form-border-form input[type=number]:focus,
-.theme-white .tpl-form-border-form input[type=search]:focus,
-.theme-white .tpl-form-border-form input[type=text]:focus,
-.theme-white .tpl-form-border-form input[type=password]:focus,
-.theme-white .tpl-form-border-form input[type=datetime]:focus,
-.theme-white .tpl-form-border-form input[type=datetime-local]:focus,
-.theme-white .tpl-form-border-form input[type=date]:focus,
-.theme-white .tpl-form-border-form input[type=month]:focus,
-.theme-white .tpl-form-border-form input[type=time]:focus,
-.theme-white .tpl-form-border-form input[type=week]:focus,
-.theme-white .tpl-form-border-form input[type=email]:focus,
-.theme-white .tpl-form-border-form input[type=url]:focus,
-.theme-white .tpl-form-border-form input[type=tel]:focus,
-.theme-white .tpl-form-border-form input[type=color]:focus,
-.theme-white .tpl-form-border-form select:focus,
-.theme-white .tpl-form-border-form textarea:focus,
-.theme-white .am-form-field:focus {
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-.theme-white .tpl-form-border-form input[type=number],
-.theme-white .tpl-form-border-form input[type=search],
-.theme-white .tpl-form-border-form input[type=text],
-.theme-white .tpl-form-border-form input[type=password],
-.theme-white .tpl-form-border-form input[type=datetime],
-.theme-white .tpl-form-border-form input[type=datetime-local],
-.theme-white .tpl-form-border-form input[type=date],
-.theme-white .tpl-form-border-form input[type=month],
-.theme-white .tpl-form-border-form input[type=time],
-.theme-white .tpl-form-border-form input[type=week],
-.theme-white .tpl-form-border-form input[type=email],
-.theme-white .tpl-form-border-form input[type=url],
-.theme-white .tpl-form-border-form input[type=tel],
-.theme-white .tpl-form-border-form input[type=color],
-.theme-white .tpl-form-border-form select,
-.theme-white .tpl-form-border-form textarea,
-.theme-white .am-form-field {
- display: block;
- width: 100%;
- padding: 6px 12px;
- line-height: 1.42857;
- color: #4d6b8a;
- background-color: #fff;
- background-image: none;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- background: 0 0;
- border: 0;
- border: 1px solid #c2cad8;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- text-indent: .5em;
- -o-border-radius: 0;
- border-radius: 0;
- color: #555;
- box-shadow: none;
- padding-left: 0;
- padding-right: 0;
- font-size: 14px;
-}
-.theme-white .tpl-form-border-form .am-checkbox,
-.theme-white .tpl-form-border-form .am-checkbox-inline,
-.theme-white .tpl-form-border-form .am-form-label,
-.theme-white .tpl-form-border-form .am-radio,
-.theme-white .tpl-form-border-form .am-radio-inline {
- margin-top: 0;
- margin-bottom: 0;
-}
-.theme-white .tpl-form-border-form .am-form-group:after {
- clear: both;
-}
-.theme-white .tpl-form-border-form .am-form-group:after,
-.theme-white .tpl-form-border-form .am-form-group:before {
- content: " ";
- display: table;
-}
-.theme-white .tpl-form-border-form .am-form-label {
- padding-top: 5px;
- font-size: 16px;
- color: #888;
- font-weight: inherit;
- text-align: right;
-}
-.theme-white .tpl-form-border-form .am-form-group {
- /*padding: 20px 0;*/
-}
-.theme-white .tpl-form-border-form .am-form-label .tpl-form-line-small-title {
- color: #999;
- font-size: 12px;
-}
-.theme-white .tpl-form-line-form input[type=number]:focus,
-.theme-white .tpl-form-line-form input[type=search]:focus,
-.theme-white .tpl-form-line-form input[type=text]:focus,
-.theme-white .tpl-form-line-form input[type=password]:focus,
-.theme-white .tpl-form-line-form input[type=datetime]:focus,
-.theme-white .tpl-form-line-form input[type=datetime-local]:focus,
-.theme-white .tpl-form-line-form input[type=date]:focus,
-.theme-white .tpl-form-line-form input[type=month]:focus,
-.theme-white .tpl-form-line-form input[type=time]:focus,
-.theme-white .tpl-form-line-form input[type=week]:focus,
-.theme-white .tpl-form-line-form input[type=email]:focus,
-.theme-white .tpl-form-line-form input[type=url]:focus,
-.theme-white .tpl-form-line-form input[type=tel]:focus,
-.theme-white .tpl-form-line-form input[type=color]:focus,
-.theme-white .tpl-form-line-form select:focus,
-.theme-white .tpl-form-line-form textarea:focus,
-.theme-white .am-form-field:focus {
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-.theme-white .tpl-form-line-form input[type=number],
-.theme-white .tpl-form-line-form input[type=search],
-.theme-white .tpl-form-line-form input[type=text],
-.theme-white .tpl-form-line-form input[type=password],
-.theme-white .tpl-form-line-form input[type=datetime],
-.theme-white .tpl-form-line-form input[type=datetime-local],
-.theme-white .tpl-form-line-form input[type=date],
-.theme-white .tpl-form-line-form input[type=month],
-.theme-white .tpl-form-line-form input[type=time],
-.theme-white .tpl-form-line-form input[type=week],
-.theme-white .tpl-form-line-form input[type=email],
-.theme-white .tpl-form-line-form input[type=url],
-.theme-white .tpl-form-line-form input[type=tel],
-.theme-white .tpl-form-line-form input[type=color],
-.theme-white .tpl-form-line-form select,
-.theme-white .tpl-form-line-form textarea,
-.theme-white .am-form-field {
- display: block;
- width: 100%;
- padding: 6px 12px;
- line-height: 1.42857;
- color: #4d6b8a;
- background-color: #fff;
- background-image: none;
- border: 1px solid #c2cad8;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- background: 0 0;
- border: 0;
- border-bottom: 1px solid #c2cad8;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- -o-border-radius: 0;
- border-radius: 0;
- color: #555;
- box-shadow: none;
- padding-left: 0;
- padding-right: 0;
- font-size: 14px;
-}
-.theme-white .tpl-form-line-form .am-checkbox,
-.theme-white .tpl-form-line-form .am-checkbox-inline,
-.theme-white .tpl-form-line-form .am-form-label,
-.theme-white .tpl-form-line-form .am-radio,
-.theme-white .tpl-form-line-form .am-radio-inline {
- margin-top: 0;
- margin-bottom: 0;
-}
-.theme-white .tpl-form-line-form .am-form-group:after {
- clear: both;
-}
-.theme-white .tpl-form-line-form .am-form-group:after,
-.theme-white .tpl-form-line-form .am-form-group:before {
- content: " ";
- display: table;
-}
-.theme-white .tpl-form-line-form .am-form-label {
- padding-top: 5px;
- font-size: 16px;
- color: #888;
- font-weight: inherit;
- text-align: right;
-}
-.theme-white .tpl-form-line-form .am-form-group {
- /*padding: 20px 0;*/
-}
-.theme-white .tpl-form-line-form .am-form-label .tpl-form-line-small-title {
- color: #999;
- font-size: 12px;
-}
-.theme-white .tpl-table-black-operation a {
- border: 1px solid #36c6d3;
- color: #36c6d3;
-}
-.theme-white .tpl-table-black-operation a:hover {
- background: #36c6d3;
- color: #fff;
-}
-.theme-white .tpl-table-black-operation a.tpl-table-black-operation-del {
- border: 1px solid #e7505a;
- color: #e7505a;
-}
-.theme-white .tpl-table-black-operation a.tpl-table-black-operation-del:hover {
- background: #e7505a;
- color: #fff;
-}
-.theme-white .tpl-amendment-echarts {
- left: -17px;
-}
-.theme-white .tpl-user-card {
- border: 1px solid #3598dc;
- border-top: 2px solid #3598dc;
- background: #3598dc;
- color: #ffffff;
- border-radius: 4px;
-}
-.theme-white .tpl-user-card-title {
- font-size: 26px;
- margin-top: 0;
- font-weight: 300;
- margin-top: 25px;
- margin-bottom: 10px;
-}
-.theme-white .achievement-subheading {
- font-size: 12px;
- margin-top: 0;
- margin-bottom: 15px;
-}
-.theme-white .achievement-image {
- border-radius: 50%;
- margin-bottom: 22px;
-}
-.theme-white .achievement-description {
- margin: 0;
- font-size: 12px;
-}
-.theme-white .tpl-table-black {
- color: #838FA1;
-}
-.theme-white .tpl-table-black thead > tr > th {
- font-size: 14px;
- padding: 6px;
-}
-.theme-white .tpl-table-black tbody > tr > td {
- font-size: 14px;
- padding: 7px 6px;
-}
-.theme-white .tpl-table-black tfoot > tr > th {
- font-size: 14px;
- padding: 6px 0;
-}
-.theme-white .am-progress {
- height: 12px;
-}
-.theme-white .am-progress-title {
- font-size: 14px;
- margin-bottom: 8px;
-}
-.theme-white .widget-fluctuation-tpl-btn {
- margin-top: 6px;
- display: block;
- color: #fff;
- font-size: 12px;
- padding: 8px 14px;
- outline: none;
- background-color: #e7505a;
- border: 1px solid #e7505a;
-}
-.theme-white .widget-fluctuation-tpl-btn:hover {
- background: transparent;
- color: #e7505a;
-}
-.theme-white .widget-fluctuation-description-text {
- color: #c5cacd;
-}
-.theme-white .widget-fluctuation-period-text {
- color: #838FA1;
-}
-.theme-white .text-success {
- color: #5eb95e;
-}
-.theme-white .widget-head {
- border-bottom: 1px solid #eef1f5;
-}
-.theme-white .widget-function a {
- color: #838FA1;
-}
-.theme-white .widget-function a:hover {
- color: #a7bdcd;
-}
-.theme-white .widget {
- padding: 10px 20px 13px;
- background-color: #fff;
- border-radius: 4px;
- color: #838FA1;
-}
-.theme-white .widget-title {
- font-size: 16px;
-}
-.theme-white .widget-primary {
- min-height: 174px;
- border: 1px solid #32c5d2;
- border-top: 2px solid #32c5d2;
- background: #32c5d2;
- color: #ffffff;
- padding: 12px 17px;
- padding-left: 22px;
-}
-.theme-white .widget-statistic-icon {
- position: absolute;
- z-index: 30;
- right: 30px;
- top: 24px;
- font-size: 70px;
- color: #46cad6;
-}
-.theme-white .widget-statistic-description {
- position: relative;
- z-index: 35;
- display: block;
- font-size: 14px;
- line-height: 14px;
- padding-top: 8px;
- color: #fff;
-}
-.theme-white .widget-statistic-value {
- position: relative;
- z-index: 35;
- font-weight: 300;
- display: block;
- color: #fff;
- font-size: 46px;
- line-height: 46px;
- margin-bottom: 8px;
-}
-.theme-white .widget-statistic-header {
- padding-top: 18px;
- color: #fff;
-}
-.theme-white .widget-purple {
- padding: 12px 17px;
- border: 1px solid #8E44AD;
- border-top: 2px solid #8E44AD;
- background: #8E44AD;
- color: #ffffff;
- min-height: 174px;
-}
-.theme-white .widget-purple .widget-statistic-icon {
- color: #9956b5;
-}
-.theme-white .widget-purple .widget-statistic-header {
- color: #ded5e7;
-}
-.theme-white .widget-purple .widget-statistic-description {
- color: #ded5e7;
-}
-.theme-white .page-header-button {
- opacity: .8;
- border: 1px solid #32c5d2;
- background: #32c5d2;
- color: #fff;
-}
-.theme-white .page-header-button:hover {
- opacity: 1;
-}
-.theme-white .page-header-description {
- color: #666;
-}
-.theme-white .page-header-heading {
- color: #666;
-}
-.theme-white ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item .menu-messages-content .menu-messages-content-time {
- color: #96a5aa;
-}
-.theme-white ul.tpl-dropdown-content {
- background: #fff;
- border: 1px solid #ddd;
-}
-.theme-white ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item,
-.theme-white ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item {
- border-bottom: 1px solid #eee;
- color: #999;
-}
-.theme-white ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item:hover,
-.theme-white ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item:hover {
- background-color: #f5f5f5;
-}
-.theme-white ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-item .tpl-dropdown-menu-notifications-time,
-.theme-white ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item .tpl-dropdown-menu-notifications-time {
- color: #999;
-}
-.theme-white ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item:hover {
- background-color: #f5f5f5;
-}
-.theme-white ul.tpl-dropdown-content .tpl-dropdown-menu-notifications-title {
- color: #999;
-}
-.theme-white .sidebar-nav-link a {
- border-left: #fff 3px solid;
-}
-.theme-white .sidebar-nav-link a:hover {
- background: #f2f6f9;
- color: #868E8E;
- border-left: #3bb4f2 3px solid;
-}
-.theme-white .sidebar-nav-link a.active {
- background: #f2f6f9;
- color: #868E8E;
- border-left: #3bb4f2 3px solid;
-}
-.theme-white .sidebar-nav-heading {
- color: #999;
- border-bottom: 1px solid #eee;
-}
-.theme-white .tpl-sidebar-user-panel {
- background: #fff;
- border-bottom: 1px solid #eee;
-}
-.theme-white .tpl-content-wrapper {
- background: #e9ecf3;
-}
-.theme-white .tpl-header-fluid {
- background: #fff;
- border-top: 1px solid #eee;
-}
-.theme-white .tpl-header-logo {
- background: #fff;
- border-bottom: 1px solid #eee;
-}
-.theme-white .tpl-header-switch-button {
- background: #fff;
- border-right: 1px solid #eee;
- border-left: 1px solid #eee;
-}
-.theme-white .tpl-header-switch-button:hover {
- background: #fff;
- color: #999;
-}
-.theme-white .tpl-header-navbar a {
- color: #999;
-}
-.theme-white .tpl-header-navbar a:hover {
- color: #999;
-}
-.theme-white .left-sidebar {
- background: #fff;
-}
-.theme-white .widget-color-green {
- border: 1px solid #32c5d2;
- border-top: 2px solid #32c5d2;
- background: #32c5d2;
- color: #ffffff;
-}
-.theme-white .widget-color-green .widget-fluctuation-period-text {
- color: #fff;
-}
-.theme-white .widget-color-green .widget-head {
- border-bottom: 1px solid #2bb8c4;
-}
-.theme-white .widget-color-green .widget-fluctuation-description-text {
- color: #bbe7f6;
-}
-.theme-white .widget-color-green .widget-function a {
- color: #42bde5;
-}
-.theme-white .widget-color-green .widget-function a:hover {
- color: #fff;
-}
-.theme-black {
- background-color: #282d2f;
-}
-.theme-black .tpl-am-model-bd {
- background: #424b4f;
-}
-.theme-black .tpl-model-dialog {
- background: #424b4f;
-}
-.theme-black .tpl-error-title {
- font-size: 210px;
- line-height: 220px;
- color: #868E8E;
-}
-.theme-black .tpl-error-title-info {
- line-height: 30px;
- font-size: 21px;
- margin-top: 20px;
- text-align: center;
- color: #868E8E;
-}
-.theme-black .tpl-error-btn {
- background: #03a9f3;
- border: 1px solid #03a9f3;
- border-radius: 30px;
- padding: 6px 20px 8px;
-}
-.theme-black .tpl-error-content {
- margin-top: 20px;
- margin-bottom: 20px;
- font-size: 16px;
- text-align: center;
- color: #cfcfcf;
-}
-.theme-black .tpl-calendar-box {
- background: #424b4f;
- padding: 20px;
-}
-.theme-black .tpl-calendar-box .fc-button {
- border-radius: 0;
- box-shadow: 0;
-}
-.theme-black .tpl-calendar-box .fc-event {
- border-radius: 0;
- background: #03a9f3;
-}
-.theme-black .tpl-calendar-box .fc-axis {
- color: #fff;
-}
-.theme-black .tpl-calendar-box .fc-unthemed .fc-today {
- background: #3a4144;
-}
-.theme-black .tpl-calendar-box .fc-more {
- color: #fff;
-}
-.theme-black .tpl-calendar-box .fc th.fc-widget-header {
- background: #9675ce!important;
- color: #ffffff;
- font-size: 14px;
- line-height: 20px;
- padding: 7px 0px;
- text-transform: uppercase;
- border: none!important;
-}
-.theme-black .tpl-calendar-box .fc th.fc-widget-header a {
- color: #fff;
-}
-.theme-black .tpl-calendar-box .fc-center h2 {
- color: #fff;
-}
-.theme-black .tpl-calendar-box .fc-state-default {
- background-image: none;
- background: #fff;
- font-size: 14px;
-}
-.theme-black .tpl-calendar-box .fc th,
-.theme-black .tpl-calendar-box .fc td,
-.theme-black .tpl-calendar-box .fc hr,
-.theme-black .tpl-calendar-box .fc thead,
-.theme-black .tpl-calendar-box .fc tbody,
-.theme-black .tpl-calendar-box .fc-row {
- border-color: rgba(120, 130, 140, 0.4) !important;
-}
-.theme-black .tpl-calendar-box .fc-day-number {
- color: #868E8E;
- padding-right: 6px;
-}
-.theme-black .tpl-calendar-box .fc th {
- color: #868E8E;
- font-weight: normal;
- font-size: 14px;
- padding: 6px 0;
-}
-.theme-black .tpl-login-logo {
- background: url(../img/logob.png) center no-repeat;
-}
-.theme-black .tpl-table-line-img {
- max-width: 100px;
- padding: 2px;
- border: none;
-}
-.theme-black .tpl-table-list-field {
- border: none;
-}
-.theme-black .tpl-table-list-select .am-dropdown-content {
- color: #888;
-}
-.theme-black .tpl-table-list-select .am-selected-btn {
- border: 1px solid rgba(255, 255, 255, 0.2);
- color: #fff;
-}
-.theme-black .tpl-table-list-select .am-btn-default.am-active,
-.theme-black .tpl-table-list-select .am-btn-default:active,
-.theme-black .tpl-table-list-select .am-dropdown.am-active .am-btn-default.am-dropdown-toggle {
- border: 1px solid rgba(255, 255, 255, 0.2);
- color: #fff;
- background: #5d6468;
-}
-.theme-black .tpl-pagination .am-disabled a,
-.theme-black .tpl-pagination li a {
- color: #fff;
- padding: 6px 12px;
- background: #3f4649;
- border: none;
-}
-.theme-black .tpl-pagination .am-active a {
- background: #167fa1;
- color: #fff;
- border: 1px solid #167fa1;
- padding: 6px 12px;
-}
-.theme-black .tpl-login-btn {
- border: 1px solid #b5b5b5;
- background-color: rgba(0, 0, 0, 0);
- padding: 10px 16px;
- font-size: 14px;
- line-height: 14px;
- color: #b5b5b5;
-}
-.theme-black .tpl-login-btn:hover,
-.theme-black .tpl-login-btn:active {
- background: #b5b5b5;
- color: #fff;
-}
-.theme-black .tpl-login-title {
- color: #fff;
-}
-.theme-black .tpl-login-title strong {
- color: #39bae4;
-}
-.theme-black .tpl-form-line-form,
-.theme-black .tpl-form-border-form {
- padding-top: 20px;
-}
-.theme-black .tpl-form-line-form .am-btn-default,
-.theme-black .tpl-form-border-form .am-btn-default {
- color: #fff;
- border: 1px solid rgba(255, 255, 255, 0.2);
-}
-.theme-black .tpl-form-line-form .am-selected-text,
-.theme-black .tpl-form-border-form .am-selected-text {
- color: #888;
-}
-.theme-black .tpl-form-border-form input[type=number]:focus,
-.theme-black .tpl-form-border-form input[type=search]:focus,
-.theme-black .tpl-form-border-form input[type=text]:focus,
-.theme-black .tpl-form-border-form input[type=password]:focus,
-.theme-black .tpl-form-border-form input[type=datetime]:focus,
-.theme-black .tpl-form-border-form input[type=datetime-local]:focus,
-.theme-black .tpl-form-border-form input[type=date]:focus,
-.theme-black .tpl-form-border-form input[type=month]:focus,
-.theme-black .tpl-form-border-form input[type=time]:focus,
-.theme-black .tpl-form-border-form input[type=week]:focus,
-.theme-black .tpl-form-border-form input[type=email]:focus,
-.theme-black .tpl-form-border-form input[type=url]:focus,
-.theme-black .tpl-form-border-form input[type=tel]:focus,
-.theme-black .tpl-form-border-form input[type=color]:focus,
-.theme-black .tpl-form-border-form select:focus,
-.theme-black .tpl-form-border-form textarea:focus,
-.theme-black .am-form-field:focus {
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-.theme-black .tpl-form-border-form input[type=number],
-.theme-black .tpl-form-border-form input[type=search],
-.theme-black .tpl-form-border-form input[type=text],
-.theme-black .tpl-form-border-form input[type=password],
-.theme-black .tpl-form-border-form input[type=datetime],
-.theme-black .tpl-form-border-form input[type=datetime-local],
-.theme-black .tpl-form-border-form input[type=date],
-.theme-black .tpl-form-border-form input[type=month],
-.theme-black .tpl-form-border-form input[type=time],
-.theme-black .tpl-form-border-form input[type=week],
-.theme-black .tpl-form-border-form input[type=email],
-.theme-black .tpl-form-border-form input[type=url],
-.theme-black .tpl-form-border-form input[type=tel],
-.theme-black .tpl-form-border-form input[type=color],
-.theme-black .tpl-form-border-form select,
-.theme-black .tpl-form-border-form textarea,
-.theme-black .am-form-field {
- display: block;
- width: 100%;
- padding: 6px 12px;
- line-height: 1.42857;
- color: #4d6b8a;
- background-color: #fff;
- background-image: none;
- border: 1px solid #c2cad8;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- background: 0 0;
- border: 0;
- text-indent: .5em;
- border: 1px solid rgba(255, 255, 255, 0.2);
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- -o-border-radius: 0;
- border-radius: 0;
- color: #fff;
- box-shadow: none;
- padding-left: 0;
- padding-right: 0;
- font-size: 14px;
-}
-.theme-black .tpl-form-border-form .am-checkbox,
-.theme-black .tpl-form-border-form .am-checkbox-inline,
-.theme-black .tpl-form-border-form .am-form-label,
-.theme-black .tpl-form-border-form .am-radio,
-.theme-black .tpl-form-border-form .am-radio-inline {
- margin-top: 0;
- margin-bottom: 0;
-}
-.theme-black .tpl-form-border-form .am-form-group:after {
- clear: both;
-}
-.theme-black .tpl-form-border-form .am-form-group:after,
-.theme-black .tpl-form-border-form .am-form-group:before {
- content: " ";
- display: table;
-}
-.theme-black .tpl-form-border-form .am-form-label {
- padding-top: 5px;
- font-size: 16px;
- color: #fff;
- font-weight: inherit;
- text-align: right;
-}
-.theme-black .tpl-form-border-form .am-form-group {
- /*padding: 20px 0;*/
-}
-.theme-black .tpl-form-border-form .am-form-label .tpl-form-line-small-title {
- color: #999;
- font-size: 12px;
-}
-.theme-black .tpl-form-line-form input[type=number]:focus,
-.theme-black .tpl-form-line-form input[type=search]:focus,
-.theme-black .tpl-form-line-form input[type=text]:focus,
-.theme-black .tpl-form-line-form input[type=password]:focus,
-.theme-black .tpl-form-line-form input[type=datetime]:focus,
-.theme-black .tpl-form-line-form input[type=datetime-local]:focus,
-.theme-black .tpl-form-line-form input[type=date]:focus,
-.theme-black .tpl-form-line-form input[type=month]:focus,
-.theme-black .tpl-form-line-form input[type=time]:focus,
-.theme-black .tpl-form-line-form input[type=week]:focus,
-.theme-black .tpl-form-line-form input[type=email]:focus,
-.theme-black .tpl-form-line-form input[type=url]:focus,
-.theme-black .tpl-form-line-form input[type=tel]:focus,
-.theme-black .tpl-form-line-form input[type=color]:focus,
-.theme-black .tpl-form-line-form select:focus,
-.theme-black .tpl-form-line-form textarea:focus,
-.theme-black .am-form-field:focus {
- -webkit-box-shadow: none;
- box-shadow: none;
-}
-.theme-black .tpl-form-line-form input[type=number],
-.theme-black .tpl-form-line-form input[type=search],
-.theme-black .tpl-form-line-form input[type=text],
-.theme-black .tpl-form-line-form input[type=password],
-.theme-black .tpl-form-line-form input[type=datetime],
-.theme-black .tpl-form-line-form input[type=datetime-local],
-.theme-black .tpl-form-line-form input[type=date],
-.theme-black .tpl-form-line-form input[type=month],
-.theme-black .tpl-form-line-form input[type=time],
-.theme-black .tpl-form-line-form input[type=week],
-.theme-black .tpl-form-line-form input[type=email],
-.theme-black .tpl-form-line-form input[type=url],
-.theme-black .tpl-form-line-form input[type=tel],
-.theme-black .tpl-form-line-form input[type=color],
-.theme-black .tpl-form-line-form select,
-.theme-black .tpl-form-line-form textarea,
-.theme-black .am-form-field {
- display: block;
- width: 100%;
- padding: 6px 12px;
- line-height: 1.42857;
- color: #4d6b8a;
- background-color: #fff;
- background-image: none;
- border: 1px solid #c2cad8;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
- background: 0 0;
- border: 0;
- border-bottom: 1px solid rgba(255, 255, 255, 0.2);
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- -o-border-radius: 0;
- border-radius: 0;
- color: #fff;
- box-shadow: none;
- padding-left: 0;
- padding-right: 0;
- font-size: 14px;
-}
-.theme-black .tpl-form-line-form .am-checkbox,
-.theme-black .tpl-form-line-form .am-checkbox-inline,
-.theme-black .tpl-form-line-form .am-form-label,
-.theme-black .tpl-form-line-form .am-radio,
-.theme-black .tpl-form-line-form .am-radio-inline {
- margin-top: 0;
- margin-bottom: 0;
-}
-.theme-black .tpl-form-line-form .am-form-group:after {
- clear: both;
-}
-.theme-black .tpl-form-line-form .am-form-group:after,
-.theme-black .tpl-form-line-form .am-form-group:before {
- content: " ";
- display: table;
-}
-.theme-black .tpl-form-line-form .am-form-label {
- padding-top: 5px;
- font-size: 16px;
- color: #fff;
- font-weight: inherit;
- text-align: right;
-}
-.theme-black .tpl-form-line-form .am-form-group {
- /*padding: 20px 0;*/
-}
-.theme-black .tpl-form-line-form .am-form-label .tpl-form-line-small-title {
- color: #999;
- font-size: 12px;
-}
-.theme-black .tpl-table-black-operation a {
- border: 1px solid #7b878d;
- color: #7b878d;
-}
-.theme-black .tpl-table-black-operation a:hover {
- background: #7b878d;
- color: #fff;
-}
-.theme-black .tpl-table-black-operation a.tpl-table-black-operation-del {
- border: 1px solid #f35842;
- color: #f35842;
-}
-.theme-black .tpl-table-black-operation a.tpl-table-black-operation-del:hover {
- background: #f35842;
- color: #fff;
-}
-.theme-black .am-table-bordered {
- border: 1px solid #666d70;
-}
-.theme-black .am-table-bordered > tbody > tr > td,
-.theme-black .am-table-bordered > tbody > tr > th,
-.theme-black .am-table-bordered > tfoot > tr > td,
-.theme-black .am-table-bordered > tfoot > tr > th,
-.theme-black .am-table-bordered > thead > tr > td,
-.theme-black .am-table-bordered > thead > tr > th {
- border: 1px solid #666d70;
-}
-.theme-black .am-table-bordered > thead + tbody > tr:first-child > td,
-.theme-black .am-table-bordered > thead + tbody > tr:first-child > th {
- border: 1px solid #666d70;
-}
-.theme-black .am-table-striped > tbody > tr:nth-child(odd) > td,
-.theme-black .am-table-striped > tbody > tr:nth-child(odd) > th {
- background-color: #5d6468;
-}
-.theme-black .tpl-table-black {
- color: #fff;
-}
-.theme-black .tpl-table-black thead > tr > th {
- font-size: 14px;
- padding: 6px;
- border-bottom: 1px solid #666d70;
-}
-.theme-black .tpl-table-black tbody > tr > td {
- font-size: 14px;
- padding: 7px 6px;
- border-top: 1px solid #666d70;
-}
-.theme-black .tpl-table-black tfoot > tr > th {
- font-size: 14px;
- padding: 6px 0;
-}
-.theme-black .tpl-user-card {
- border: 1px solid #11627d;
- border-top: 2px solid #105f79;
- background: #1786aa;
- color: #ffffff;
-}
-.theme-black .tpl-user-card-title {
- font-size: 26px;
- margin-top: 0;
- font-weight: 300;
- margin-top: 25px;
- margin-bottom: 10px;
-}
-.theme-black .achievement-subheading {
- font-size: 12px;
- margin-top: 0;
- margin-bottom: 15px;
-}
-.theme-black .achievement-image {
- border-radius: 50%;
- margin-bottom: 22px;
-}
-.theme-black .achievement-description {
- margin: 0;
- font-size: 12px;
-}
-.theme-black .am-progress {
- height: 12px;
- margin-bottom: 14px;
- background: rgba(0, 0, 0, 0.15);
-}
-.theme-black .am-progress-title {
- font-size: 14px;
- margin-bottom: 8px;
-}
-.theme-black .am-progress-title-more {
- color: #a1a8ab;
-}
-.theme-black .widget-fluctuation-tpl-btn {
- margin-top: 6px;
- display: block;
- color: #fff;
- font-size: 12px;
- padding: 5px 10px;
- outline: none;
- background-color: rgba(255, 255, 255, 0);
- border: 1px solid #fff;
-}
-.theme-black .widget-fluctuation-tpl-btn:hover {
- background: #fff;
- color: #4b5357;
-}
-.theme-black .widget-fluctuation-description-text {
- color: #c5cacd;
-}
-.theme-black .text-success {
- color: #08ed72;
-}
-.theme-black .widget-fluctuation-period-text {
- color: #fff;
-}
-.theme-black .widget-head {
- border-bottom: 1px solid #3f4649;
-}
-.theme-black .widget-function a {
- color: #7b878d;
-}
-.theme-black .widget-function a:hover {
- color: #fff;
-}
-.theme-black .widget {
- border: 1px solid #33393c;
- border-top: 2px solid #313639;
- background: #4b5357;
- color: #ffffff;
-}
-.theme-black .widget-primary {
- border: 1px solid #11627d;
- border-top: 2px solid #105f79;
- background: #1786aa;
- color: #ffffff;
- padding: 12px 17px;
-}
-.theme-black .widget-statistic-icon {
- position: absolute;
- z-index: 30;
- right: 30px;
- top: 0px;
- font-size: 70px;
- color: #1b9eca;
-}
-.theme-black .widget-statistic-description {
- position: relative;
- z-index: 35;
- display: block;
- font-size: 14px;
- line-height: 14px;
- padding-top: 8px;
- color: #9cdcf2;
-}
-.theme-black .widget-statistic-value {
- position: relative;
- z-index: 35;
- font-weight: 300;
- display: block;
- color: #fff;
- font-size: 46px;
- line-height: 46px;
- margin-bottom: 8px;
-}
-.theme-black .widget-statistic-header {
- color: #9cdcf2;
-}
-.theme-black .widget-purple {
- padding: 12px 17px;
- border: 1px solid #5e4578;
- border-top: 2px solid #5c4375;
- background: #785799;
- color: #ffffff;
-}
-.theme-black .widget-purple .widget-statistic-icon {
- color: #8a6aaa;
-}
-.theme-black .widget-purple .widget-statistic-header {
- color: #ded5e7;
-}
-.theme-black .widget-purple .widget-statistic-description {
- color: #ded5e7;
-}
-.theme-black .page-header-description {
- color: #e6e6e6;
-}
-.theme-black .page-header-heading {
- color: #666;
-}
-.theme-black .container-fluid {
- background: #424b4f;
-}
-.theme-black .page-header-heading {
- color: #fff;
-}
-.theme-black .sidebar-nav-heading {
- color: #fff;
-}
-.theme-black .tpl-sidebar-user-panel {
- background: #1f2224;
- border-bottom: 1px solid #1f2224;
-}
-.theme-black .tpl-content-wrapper {
- background: #3a4144;
-}
-.theme-black .tpl-header-fluid {
- background: #2f3638;
-}
-.theme-black .sidebar-nav-link a.active {
- background: #232829;
-}
-.theme-black .sidebar-nav-link a:hover {
- background: #232829;
-}
-.theme-black .tpl-header-switch-button {
- background: #2f3638;
- border-right: 1px solid #282d2f;
-}
-.theme-black .tpl-header-switch-button:hover {
- background: #282d2f;
- color: #fff;
-}
-.theme-black .tpl-header-navbar a {
- color: #cfcfcf;
-}
-.theme-black .tpl-header-navbar a:hover {
- color: #fff;
-}
-.theme-black .left-sidebar {
- padding-top: 56px;
- background: #282d2f;
-}
-.theme-black .widget-color-green {
- border: 1px solid #11627d;
- border-top: 2px solid #105f79;
- background: #1786aa;
- color: #ffffff;
-}
-.theme-black .widget-color-green .widget-head {
- border-bottom: 1px solid #147494;
-}
-.theme-black .widget-color-green .widget-fluctuation-description-text {
- color: #bbe7f6;
-}
-.theme-black .widget-color-green .widget-function a {
- color: #42bde5;
-}
-.theme-black .widget-color-green .widget-function a:hover {
- color: #fff;
-}
-@media screen and (max-width: 1024px) {
- .tpl-index-settings-button {
- display: none;
- }
- .theme-black .left-sidebar {
- padding-top: 111px;
- }
- .left-sidebar {
- padding-top: 111px;
- }
- .tpl-content-wrapper {
- margin-left: 0;
- }
- .tpl-header-logo {
- float: none;
- width: 100%;
- }
- .tpl-header-navbar-welcome {
- display: none;
- }
- .tpl-sidebar-user-panel {
- border-top: 1px solid #eee;
- }
- .tpl-header-fluid {
- border-top: none;
- margin-left: 0;
- }
- .theme-white .tpl-header-fluid {
- border-top: none;
- }
- .theme-black .tpl-sidebar-user-panel {
- border-top: 1px solid #1f2224;
- }
-}
-@media screen and (min-width: 641px) {
- [class*=am-u-] {
- padding-left: 10px;
- padding-right: 10px;
- }
-}
-@media screen and (max-width: 641px) {
- .theme-white .tpl-error-title,
- .theme-black .tpl-error-title {
- font-size: 130px;
- line-height: 140px;
- }
- .theme-white .tpl-login-title {
- font-size: 20px;
- }
- .theme-white .tpl-login-content {
- width: 86%;
- padding: 22px 30px 25px;
- }
- .tpl-header-search {
- display: none;
- }
- ul.tpl-dropdown-content {
- position: fixed;
- width: 100%;
- left: 0;
- top: 112px;
- right: 0;
- }
-}
diff --git a/Day61-65/code/project_of_tornado/assets/css/app.less b/Day61-65/code/project_of_tornado/assets/css/app.less
deleted file mode 100644
index 1b8de9a..0000000
--- a/Day61-65/code/project_of_tornado/assets/css/app.less
+++ /dev/null
@@ -1,2056 +0,0 @@
-ul,li {
- list-style: none;
- padding: 0;
- margin: 0;
-}
-
-a {
-
-}
-
-header {
- z-index: 1200;
- position: relative;
-}
-.tpl-header-logo {
- width: 240px;
- height: 57px;
- display: table;
- text-align:center;
- position: relative;
- z-index: 1300;
-
- a {
- display:table-cell;
- vertical-align:middle;
- }
-
- img {
- width:170px;
- }
-}
-
-
-.tpl-header-fluid {
- margin-left: 240px;
- height: 56px;
-
- padding-left: 20px;
- padding-right: 20px;
-}
-
-
-.tpl-header-switch-button {
-
- margin-top: 0px;
- margin-bottom: 0px;
- float: left;
- color: #cfcfcf;
- margin-left: -20px;
- margin-right: 0;
- border: 0;
- border-radius: 0;
- padding: 0px 22px;
- font-size: 22px;
- line-height: 55px;
-
- &:hover {
-
- outline: none;
- }
-}
-
-
-.tpl-header-search-form {
- height: 54px;
- line-height: 52px;
- margin-left: 10px;
-
-}
-.tpl-header-search-box , .tpl-header-search-btn {
- transition: all 0.4s ease-in-out;
- color: #848c90;
- background: none;
- border: none;
- outline: none;
-}
-
-.tpl-header-search-box {
- font-size: 14px;
-
- &:hover,&:active {
- color: #fff;
- }
-}
-
-.tpl-header-search-btn {
- font-size: 15px;
-
- &:hover,&:active {
- color: #fff;
- }
-}
-
-.tpl-header-navbar {
- color: #fff;
- li {
- float: left;
- }
- a {
- line-height: 56px;
- display: block;
- padding: 0 16px;
- position: relative;
-
-
- &:hover {
-
- }
-
- .item-feed-badge {
- position: absolute;
- top: 9px;
- left: 25px;
- }
- }
-}
-
-ul.tpl-dropdown-content {
- padding: 10px;
- margin-top: 0;
- width: 300px;
- background-color: #2f3638;
- border: 1px solid #525e62;
- border-radius: 0;
-
- li {
- float:none;
- }
-
- &:before , &:after {
- display: none;
- }
-}
-
-
-ul.tpl-dropdown-content {
-
-
- .tpl-dropdown-menu-notifications {
-
- }
-
- .tpl-dropdown-menu-notifications-title {
- font-size: 12px;
- float: left;
- color: rgba(255, 255, 255, 0.7);
- }
-
- .tpl-dropdown-menu-notifications-time {
- float: right;
- text-align: right;
- color: rgba(255, 255, 255, 0.7);
- font-size: 11px;
- width: 50px;
- margin-left: 10px;
- }
-
- .tpl-dropdown-menu-notifications:last-child .tpl-dropdown-menu-notifications-item {
- text-align: center;
- border: none;
- font-size: 12px;
- i {
- margin-left: -6px;
- }
- }
-
- .tpl-dropdown-menu-messages:last-child .tpl-dropdown-menu-messages-item {
- text-align: center;
- border: none;
- font-size: 12px;
- i {
- margin-left: -6px;
- }
- }
- .tpl-dropdown-menu-notifications-item , .tpl-dropdown-menu-messages-item {
- padding: 12px;
- color: #fff;
- line-height: 20px;
- border-bottom: 1px solid rgba(255, 255, 255, 0.15);
-
- &:hover , &:focus {
- background-color: #465154;
- color: #fff;
- }
-
-
-
- .menu-messages-ico {
- line-height: initial;
- float: left;
- width: 35px;
- height: 35px;
- border-radius: 50%;
- margin-right: 10px;
- margin-top: 6px;
- overflow: hidden;
-
- img {
- width: 100%;
- height: auto;
- vertical-align: middle;
- }
- }
-
- .menu-messages-time {
- float: right;
- text-align: right;
- color: rgba(255, 255, 255, 0.7);
- font-size: 11px;
- width: 40px;
- margin-left: 10px;
-
-
- }
-
- .menu-messages-content {
- display: block;
- font-size: 13px;
- margin-left: 45px;
- margin-right: 50px;
-
- .menu-messages-content-title {
-
- }
-
- .menu-messages-content-time {
- margin-top: 3px;
- color: rgba(255, 255, 255, 0.7);
- font-size: 11px;
- }
- }
-
-
- }
-}
-
-.am-dimmer {
- z-index: 1200;
-}
-.am-modal {
- z-index: 1300;
-}
-.am-datepicker-dropdown {
- z-index: 1400;
-}
-
-.tpl-skiner {
- transition: all 0.4s ease-in-out;
- position: fixed;
- z-index: 10000;
- right: -130px;
- top: 65px;
-}
-
-.tpl-skiner.active {
- right: 0px;
-}
-.tpl-skiner-content {
- background: rgba(0, 0, 0, 0.7);
- width: 130px;
- padding: 15px;
- border-radius: 4px 0 0 4px;
- overflow: hidden;
-}
-
-.fc-content .am-icon-close {
- position: absolute;
- right: 0;
- top: 0px;
-}
-.tpl-skiner-toggle {
- position: absolute;
- top: 5px;
- left: -40px;
- width: 40px;
- color:#969a9b;
- font-size: 20px;
- height: 40px;
- line-height: 40px;
- text-align: center;
- background: rgba(0, 0, 0, 0.7);
- cursor: pointer;
- border-top-left-radius: 4px;
- border-bottom-left-radius: 4px;
-
-}
-.tpl-skiner-content-title {
- margin: 0;
- margin-bottom: 4px;
- padding-bottom: 4px;
- font-size: 16px;
- text-transform: uppercase;
- color:#fff;
- border-bottom: 1px solid rgba(255, 255, 255, 0.3);
-}
-
-.tpl-skiner-content-bar {
- padding-top: 10px;
- .skiner-color {
- transition: all 0.4s ease-in-out;
- float: left;
- width: 25px;
- height: 25px;
- margin-right: 10px;
- cursor: pointer;
- }
- .skiner-white {
- background: #fff;
- border: 2px solid #eee;
- }
-
- .skiner-black {
- background: #000;
- border: 2px solid #222;
- }
-}
-
-.sub-active {
- color:#fff!important;
-}
-.left-sidebar {
- transition: all 0.4s ease-in-out;
- width: 240px;
- min-height: 100%;
- padding-top: 57px;
- position: absolute;
- z-index: 1104;
- top: 0;
- left: 0px;
- &.xs-active {
- left:0px;
- }
- &.active {
- left:-240px;
- }
-
-}
-.tpl-sidebar-user-panel {
- padding: 22px;
- padding-top: 28px;
-}
-
-.tpl-user-panel-slide-toggleable {
-
-}
-
-.tpl-user-panel-profile-picture {
- border-radius: 50%;
- width: 82px;
- height: 82px;
- margin-bottom: 10px;
- overflow: hidden;
-
- img {
- width: auto;
- height: 82px;
- vertical-align: middle;
- }
-}
-.tpl-user-panel-status-icon {
- margin-right: 2px;
-}
-.user-panel-logged-in-text {
- display: block;
-
- color:#cfcfcf;
- font-size: 14px;
-}
-.tpl-user-panel-action-link {
- color: #6d787c;
- font-size: 12px;
- &:hover {
- color: #a2aaad;
- }
-}
-
-.sidebar-nav {
- list-style-type: none;
- padding: 0;
- margin: 0;
-}
-
-.sidebar-nav-sub {
- display: none;
- .sidebar-nav-link {
- font-size: 12px;
- padding-left: 30px;
- a {
- font-size: 12px;
- padding-left: 0;
- }
- }
-
- .sidebar-nav-link-logo {
- margin-right: 8px;
- width: 20px;
- font-size: 16px;
- }
-}
-
-.sidebar-nav-sub-ico-rotate{
- -webkit-transform: rotate(180deg);
- transform: rotate(180deg);
- -webkit-transition: all 300ms;
- transition: all 300ms;
-}
-.sidebar-nav-link-logo-ico {
- margin-top: 5px;
-}
-.sidebar-nav-heading {
- padding: 24px 17px;
- font-size: 15px;
- font-weight: 500;
-}
-.sidebar-nav-heading-info {
- font-size: 12px;
- color:#868E8E;
- padding-left: 10px;
-}
-.sidebar-nav-link-logo {
- margin-right: 8px;
- width: 20px;
- font-size: 16px;
-}
-.sidebar-nav-link {
-
- color: #fff;
-
- a {
- display: block;
- color: #868E8E;
- padding: 10px 17px;
- border-left: #282d2f 3px solid;
- font-size: 14px;
- cursor: pointer;
-
- &.active {
- cursor: pointer;
- border-left: #1CA2CE 3px solid;
- color: #fff;
-
- }
-
- &:hover {
- color: #fff;
- }
- }
-}
-
-.tpl-content-wrapper {
- transition: all 0.4s ease-in-out;
- position: relative;
- margin-left: 240px;
- z-index: 1101;
- min-height: 922px;
- border-bottom-left-radius: 3px;
- &.xs-active {
- margin-left: 240px;
- }
- &.active {
- margin-left: 0;
- }
-}
-
-.page-header {
- background: #424b4f;
- margin-top: 0;
- margin-bottom: 0;
- padding: 40px 0;
- border-bottom: 0;
-}
-
-.container-fluid {
- margin-top: 0;
- margin-bottom: 0;
- padding: 40px 0;
- border-bottom: 0;
- padding-left: 20px;
- padding-right: 20px;
-}
-
-.row {
- margin-right: -10px;
- margin-left: -10px;
-}
-
-.page-header-description {
- margin-top: 4px;
- margin-bottom: 0;
- font-size: 14px;
- color: #e6e6e6;
-}
-.page-header-heading {
- font-size: 20px;
- font-weight: 400;
- .page-header-heading-ico {
- font-size: 28px;
- position: relative;
- top: 3px;
- }
- small {
- font-weight: normal;
- line-height: 1;
- color: #B3B3B3;
- }
-}
-
-.page-header-button {
- transition: all 0.4s ease-in-out;
- opacity: 0.3;
- font-weight: 500;
- border-radius: 0;
- float: right;
- outline: none;
- border: 1px solid #fff;
- padding: 16px 36px;
- font-size: 23px;
- line-height: 23px;
- border-radius: 0;
- padding-top: 14px;
- color: #fff;
- background-color: rgba(0, 0, 0, 0);
- font-weight: 500;
-
- &:hover {
- background-color: #ffffff;
- color: #333;
- opacity: 1;
- }
-}
-.widget {
- width: 100%;
- min-height: 148px;
- margin-bottom: 20px;
- border-radius: 0;
- position: relative;
-}
-
-.widget-head {
- width: 100%;
- padding: 15px;
-}
-
-.widget-title {
- font-size: 14px;
-}
-.widget-function {
-
-}
-.widget-fluctuation-period-text {
- display: inline-block;
- font-size: 16px;
- line-height: 20px;
- margin-bottom: 9px;
-}
-.widget-body {
- padding: 13px 15px;
- width: 100%;
-}
-.row-content {
- padding: 20px;
-}
-
-.widget-fluctuation-description-text{
-margin-top: 4px;
- display: block;
- font-size: 12px;
- line-height: 13px;
- }
-
-.text-success {
-
-}
-.widget-fluctuation-tpl-btn {
-
-}
-.widget-fluctuation-description-amount {
- display: block;
- font-size: 20px;
- line-height: 22px;
-}
-
-.widget-primary {
-
-}
-
-.widget-statistic-header {
- position: relative;
- z-index: 35;
- display: block;
- font-size: 14px;
- text-transform: uppercase;
- margin-bottom: 8px;
-}
- .widget-body-md {
- height: 200px;
- }
-.widget-body-lg {
- min-height: 330px;
- // height: 330px;
-}
-.widget-margin-bottom-lg {
- margin-bottom: 20px;
-}
-
-.tpl-table-black-operation {
-
-}
-
-
-.tpl-table-black-operation {
- a {
- display: inline-block;
- padding: 5px 6px;
- font-size: 12px;
- line-height: 12px;
- }
-}
-.tpl-switch input[type="checkbox"] {
- position: absolute;
- opacity: 0;
- width: 50px;
- height: 20px;
- }
-
-
- .tpl-switch input[type="checkbox"].ios-switch + div {
- vertical-align: middle;
- width: 40px;
- height: 20px;
-
- border-radius: 999px;
- background-color: rgba(0, 0, 0, 0.1);
- -webkit-transition-duration: .4s;
- -webkit-transition-property: background-color, box-shadow;
-
- margin-top: 6px;
- }
-
-
- .tpl-switch input[type="checkbox"].ios-switch:checked + div {
- width: 40px;
- background-position: 0 0;
- background-color: #36c6d3;
-
-
- }
-
-
- .tpl-switch input[type="checkbox"].tinyswitch.ios-switch + div {
- width: 34px;
- height: 18px;
- }
-
-
- .tpl-switch input[type="checkbox"].bigswitch.ios-switch + div {
- width: 50px;
- height: 25px;
- }
-
-
- .tpl-switch input[type="checkbox"].green.ios-switch:checked + div {
- background-color: #00e359;
- border: 1px solid rgba(0, 162, 63, 1);
- box-shadow: inset 0 0 0 10px rgba(0, 227, 89, 1);
- }
-
-
- .tpl-switch input[type="checkbox"].ios-switch + div > div {
- float: left;
- width: 18px;
- height: 18px;
- border-radius: inherit;
- background: #ffffff;
- -webkit-transition-timing-function: cubic-bezier(.54, 1.85, .5, 1);
- -webkit-transition-duration: 0.4s;
- -webkit-transition-property: transform, background-color, box-shadow;
- -moz-transition-timing-function: cubic-bezier(.54, 1.85, .5, 1);
- -moz-transition-duration: 0.4s;
- -moz-transition-property: transform, background-color;
-
- pointer-events: none;
- margin-top: 1px;
- margin-left: 1px;
- }
-
-
- .tpl-switch input[type="checkbox"].ios-switch:checked + div > div {
- -webkit-transform: translate3d(20px, 0, 0);
- -moz-transform: translate3d(20px, 0, 0);
- background-color: #ffffff;
-
- }
-
-
- .tpl-switch input[type="checkbox"].tinyswitch.ios-switch + div > div {
- width: 16px;
- height: 16px;
- margin-top: 1px;
- }
-
-
- .tpl-switch input[type="checkbox"].tinyswitch.ios-switch:checked + div > div {
- -webkit-transform: translate3d(16px, 0, 0);
- -moz-transform: translate3d(16px, 0, 0);
- box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3), 0px 0px 0 1px rgba(8, 80, 172, 1);
- }
-
-
- .tpl-switch input[type="checkbox"].bigswitch.ios-switch + div > div {
- width: 23px;
- height: 23px;
- margin-top: 1px;
- }
-
-
- .tpl-switch input[type="checkbox"].bigswitch.ios-switch:checked + div > div {
- -webkit-transform: translate3d(25px, 0, 0);
- -moz-transform: translate3d(16px, 0, 0);
-
- }
-
-
- .tpl-switch input[type="checkbox"].green.ios-switch:checked + div > div {
- box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(0, 162, 63, 1);
- }
-
-
-
-.tpl-page-state {
- width: 100%;
-}
-
-.tpl-page-state-title {
- font-size: 40px;
- font-weight: bold;
-}
-
-.tpl-page-state-content {
- padding: 10px 0;
-}
-
-.tpl-login {
- width: 100%;
-}
-
-.tpl-login-logo {
- max-width: 159px;
- height: 205px;
- margin: 0 auto;
- margin-bottom: 20px;
-}
-.tpl-login-title {
- width: 100%;
- font-size: 24px;
-}
-.tpl-login-content {
- width: 300px;
- margin: 12% auto 0;
-}
-.tpl-login-remember-me {
- color: #B3B3B3;
- font-size: 14px;
-
- label {
- position: relative;
- top: -2px;
- }
-}
-.tpl-login-content-info {
- color: #B3B3B3;
- font-size: 14px;
-}
-
-.tpl-pagination {
-
-}
-
-.cl-p {
- padding: 0!important;
-}
-.tpl-table-line-img {
- max-width: 100px;
- padding: 2px;
-}
-.tpl-table-list-select {
- text-align:right;
- }
-.fc-button-group, .fc button {
- display: block;
-}
-
-.theme-white {
-
- .sidebar-nav-sub {
- .sidebar-nav-link-logo {
- margin-left: 10px;
- }
- }
- .tpl-header-search-box:hover, .tpl-header-search-box:active
- .tpl-error-title {
-
- color: #848c90;
- }
- .tpl-error-title-info {
- line-height: 30px;
- font-size: 21px;
- margin-top: 20px;
- text-align: center;
- color: #dce2ec;
- }
- .tpl-error-btn {
- background: #03a9f3;
- border: 1px solid #03a9f3;
- border-radius: 30px;
- padding: 6px 20px 8px;
- }
- .tpl-error-content {
- margin-top: 20px;
- margin-bottom: 20px;
- font-size: 16px;
- text-align: center;
- color: #96a2b4;
- }
-.tpl-calendar-box {
- background: #fff;
- border-radius: 4px;
- padding: 20px;
- .fc-event {
- border-radius: 0;
- background: #03a9f3;
- border: 1px solid #14b0f6;
- }
- .fc-axis {
- color: #868E8E;
- }
- .fc-unthemed .fc-today {
- background: #eee;
- }
- .fc-more {
- color: #868E8E;
- }
-
- .fc th.fc-widget-header {
- background: #32c5d2!important;
-
- color: #ffffff;
- font-size: 14px;
- line-height: 20px;
- padding: 7px 0px;
- text-transform: uppercase;
- border:none!important;
- a {
- color: #fff;
- }
- }
-
- .fc-center {
- h2 {
- color:#868E8E;
- }
- }
- .fc-state-default {
- background-image: none;
- background: #fff;
- font-size: 14px;
- color: #868E8E;
-}
- .fc th, .fc td, .fc hr, .fc thead, .fc tbody, .fc-row {
- // background: rgba(0, 0, 0, 0)!important;
- border-color: #eee!important;
- }
- .fc-day-number {
- color: #868E8E;
- padding-right: 6px;
- }
- .fc th {
- color: #868E8E;
- font-weight: normal;
- font-size: 14px;
- padding: 6px 0;
- }
- }
-
- .tpl-login-logo {
- background: url(../img/logoa.png) center no-repeat;
-
- }
- .sub-active {
-
- color:#23abf0!important;
- }
-.tpl-table-line-img {
- border: 1px solid #ddd;
-}
-.tpl-pagination .am-disabled a , .tpl-pagination li a {
- color: #23abf0;
- border-radius: 3px;
- padding: 6px 12px;
-}
-
-.tpl-pagination .am-active a{
- background: #23abf0;color: #fff;
- border: 1px solid #23abf0;
- padding: 6px 12px;
-}
-
-
-.tpl-login-btn {
- background-color:#32c5d2;
- border: none;
- padding: 10px 16px;
- font-size: 14px;
- line-height: 14px;
- outline: none;
-
- &:hover,&:active {
- background: #22b2e1;
- color:#fff;
- }
-
-}
-.tpl-login-title {
- color: #697882;
- strong {
- color: #39bae4;
- }
-}
- .tpl-login-content{
- width: 500px;
- padding: 40px 40px 25px;
- background-color: #fff;
- border-radius: 4px;
- }
-
- .tpl-form-line-form , .tpl-form-border-form {
- padding-top: 20px;
- }
-
-
-.tpl-form-border-form input[type=number]:focus, .tpl-form-border-form input[type=search]:focus, .tpl-form-border-form input[type=text]:focus, .tpl-form-border-form input[type=password]:focus, .tpl-form-border-form input[type=datetime]:focus, .tpl-form-border-form input[type=datetime-local]:focus, .tpl-form-border-form input[type=date]:focus, .tpl-form-border-form input[type=month]:focus, .tpl-form-border-form input[type=time]:focus, .tpl-form-border-form input[type=week]:focus, .tpl-form-border-form input[type=email]:focus, .tpl-form-border-form input[type=url]:focus, .tpl-form-border-form input[type=tel]:focus, .tpl-form-border-form input[type=color]:focus, .tpl-form-border-form select:focus, .tpl-form-border-form textarea:focus, .am-form-field:focus{
- -webkit-box-shadow: none;
- box-shadow: none;
- }
-.tpl-form-border-form input[type=number], .tpl-form-border-form input[type=search], .tpl-form-border-form input[type=text], .tpl-form-border-form input[type=password], .tpl-form-border-form input[type=datetime], .tpl-form-border-form input[type=datetime-local], .tpl-form-border-form input[type=date], .tpl-form-border-form input[type=month], .tpl-form-border-form input[type=time], .tpl-form-border-form input[type=week], .tpl-form-border-form input[type=email], .tpl-form-border-form input[type=url], .tpl-form-border-form input[type=tel], .tpl-form-border-form input[type=color], .tpl-form-border-form select, .tpl-form-border-form textarea, .am-form-field {
- display: block;
- width: 100%;
-
- padding: 6px 12px;
- font-size: 14px;
- line-height: 1.42857;
- color: #4d6b8a;
- background-color: #fff;
- background-image: none;
- border: 1px solid #c2cad8;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
- box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
- -webkit-transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- -o-transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- background: 0 0;
- border: 0;
- border: 1px solid #c2cad8;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- text-indent: .5em;
- -o-border-radius: 0;
- border-radius: 0;
- color: #555;
- box-shadow: none;
- padding-left: 0;
- padding-right: 0;
- font-size: 14px;
-}
-
-.tpl-form-border-form .am-checkbox, .tpl-form-border-form .am-checkbox-inline, .tpl-form-border-form .am-form-label, .tpl-form-border-form .am-radio, .tpl-form-border-form .am-radio-inline{
- margin-top: 0;
- margin-bottom: 0;
-
-}
-
-.tpl-form-border-form .am-form-group:after {
- clear: both;
-}
-.tpl-form-border-form .am-form-group:after, .tpl-form-border-form .am-form-group:before {
-content: " ";
- display: table;
-
-}
-.tpl-form-border-form .am-form-label{
- padding-top: 5px;
-font-size: 16px;
-color: #888;
-font-weight: inherit;
-text-align: right;
-}
-.tpl-form-border-form .am-form-group {
- /*padding: 20px 0;*/
-
-}
-.tpl-form-border-form .am-form-label .tpl-form-line-small-title {
- color: #999;
- font-size: 12px;
-}
-
- .tpl-form-line-form input[type=number]:focus, .tpl-form-line-form input[type=search]:focus, .tpl-form-line-form input[type=text]:focus, .tpl-form-line-form input[type=password]:focus, .tpl-form-line-form input[type=datetime]:focus, .tpl-form-line-form input[type=datetime-local]:focus, .tpl-form-line-form input[type=date]:focus, .tpl-form-line-form input[type=month]:focus, .tpl-form-line-form input[type=time]:focus, .tpl-form-line-form input[type=week]:focus, .tpl-form-line-form input[type=email]:focus, .tpl-form-line-form input[type=url]:focus, .tpl-form-line-form input[type=tel]:focus, .tpl-form-line-form input[type=color]:focus, .tpl-form-line-form select:focus, .tpl-form-line-form textarea:focus, .am-form-field:focus{
- -webkit-box-shadow: none;
- box-shadow: none;
- }
-.tpl-form-line-form input[type=number], .tpl-form-line-form input[type=search], .tpl-form-line-form input[type=text], .tpl-form-line-form input[type=password], .tpl-form-line-form input[type=datetime], .tpl-form-line-form input[type=datetime-local], .tpl-form-line-form input[type=date], .tpl-form-line-form input[type=month], .tpl-form-line-form input[type=time], .tpl-form-line-form input[type=week], .tpl-form-line-form input[type=email], .tpl-form-line-form input[type=url], .tpl-form-line-form input[type=tel], .tpl-form-line-form input[type=color], .tpl-form-line-form select, .tpl-form-line-form textarea, .am-form-field {
- display: block;
- width: 100%;
-
- padding: 6px 12px;
- font-size: 14px;
- line-height: 1.42857;
- color: #4d6b8a;
- background-color: #fff;
- background-image: none;
- border: 1px solid #c2cad8;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
- box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
- -webkit-transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- -o-transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- background: 0 0;
- border: 0;
- border-bottom: 1px solid #c2cad8;
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- -o-border-radius: 0;
- border-radius: 0;
- color: #555;
- box-shadow: none;
- padding-left: 0;
- padding-right: 0;
- font-size: 14px;
-}
-
-.tpl-form-line-form .am-checkbox, .tpl-form-line-form .am-checkbox-inline, .tpl-form-line-form .am-form-label, .tpl-form-line-form .am-radio, .tpl-form-line-form .am-radio-inline{
- margin-top: 0;
- margin-bottom: 0;
-
-}
-
-.tpl-form-line-form .am-form-group:after {
- clear: both;
-}
-.tpl-form-line-form .am-form-group:after, .tpl-form-line-form .am-form-group:before {
-content: " ";
- display: table;
-
-}
-.tpl-form-line-form .am-form-label{
- padding-top: 5px;
-font-size: 16px;
-color: #888;
-font-weight: inherit;
-text-align: right;
-}
-.tpl-form-line-form .am-form-group {
- /*padding: 20px 0;*/
-
-}
-.tpl-form-line-form .am-form-label .tpl-form-line-small-title {
- color: #999;
- font-size: 12px;
-}
-
- .tpl-table-black-operation {
- a {
- border: 1px solid #36c6d3;
- color:#36c6d3;
- &:hover {
- background: #36c6d3;
- color:#fff;
- }
- }
- a.tpl-table-black-operation-del {
- border: 1px solid #e7505a;
- color:#e7505a;
- &:hover {
- background: #e7505a;
- color:#fff;
- }
- }
-}
- .tpl-amendment-echarts {
- left: -17px;
- }
- .tpl-user-card {
- border: 1px solid #3598dc;
- border-top: 2px solid #3598dc;
- background: #3598dc;
- color: #ffffff;
- border-radius: 4px;
- }
- .tpl-user-card-title {
- font-size: 26px;
- margin-top: 0;
- font-weight: 300;
- margin-top: 25px;
- margin-bottom: 10px;
- }
- .achievement-subheading {
- font-size: 12px;
- margin-top: 0;
- margin-bottom: 15px;
- }
- .achievement-image {
- border-radius: 50%;
- margin-bottom: 22px;
- }
- .achievement-description {
- margin: 0;
- font-size: 12px;
- }
-
- .tpl-table-black {
- color: #838FA1;
-
- thead>tr>th {
- font-size: 14px;
- padding: 6px;
- }
- tbody>tr>td {
- font-size: 14px;
- padding: 7px 6px;
-
- }
- tfoot>tr>th {
- font-size: 14px;
- padding: 6px 0;
- }
- }
-
-
- .am-progress {
- height: 12px;
- }
- .am-progress-title {
- font-size: 14px;
- margin-bottom: 8px;
- }
- .am-progress-title-more {
-
- }
- .widget-fluctuation-tpl-btn {
- margin-top: 6px;
- display: block;
- color: #fff;
- font-size: 12px;
- padding: 8px 14px;
- outline: none;
- background-color: #e7505a;
- border: 1px solid #e7505a;
- &:hover {
- background:transparent;
- color:#e7505a;
- }
-
- }
- .widget-fluctuation-description-text{
-color: #c5cacd;
- }
- background: #e9ecf3;
- .widget-fluctuation-period-text {
- color:#838FA1;
- }
-.text-success {
- color: #5eb95e;
-}
- .widget-head {
- border-bottom: 1px solid #eef1f5;
-}
- .widget-function {
- a {
- color: #838FA1;
- &:hover {
- color:#a7bdcd;
- }
- }
-
- }
- .widget {
- padding: 10px 20px 13px;
- background-color: #fff;
- border-radius: 4px;
- color: #838FA1;
-
- }
- .widget-title {
- font-size: 16px;
- }
-
- .widget-primary {
-
- min-height: 174px;
- border: 1px solid #32c5d2;
- border-top: 2px solid #32c5d2;
- background: #32c5d2;
- color: #ffffff;
- padding: 12px 17px;
- padding-left: 22px;
-}
-.widget-statistic-body {
-
-}
-.widget-statistic-icon {
- position: absolute;
- z-index: 30;
- right: 30px;
- top: 24px;
- font-size: 70px;
- color: #46cad6;
-}
-.widget-statistic-description {
- position: relative;
- z-index: 35;
- display: block;
- font-size: 14px;
- line-height: 14px;
- padding-top: 8px;
- color: #fff;
-}
-.widget-statistic-value {
- position: relative;
- z-index: 35;
- font-weight: 300;
- display: block;
- color: #fff;
- font-size: 46px;
- line-height: 46px;
- margin-bottom: 8px;
-}
-.widget-statistic-header {
- padding-top: 18px;
- color: #fff;
-}
-.widget-purple {
- padding: 12px 17px;
- border: 1px solid #8E44AD;
- border-top: 2px solid #8E44AD;
- background: #8E44AD;
- color: #ffffff;
- min-height: 174px;
- .widget-statistic-icon {
- color: #9956b5;
- }
- .widget-statistic-header {
- color: #ded5e7;
- }
- .widget-statistic-description {
- color: #ded5e7;
- }
-}
- .page-header-button {
- opacity: .8;
- border: 1px solid #32c5d2;
- background: #32c5d2;
- color:#fff;
- &:hover {
- opacity: 1;
- }
- }
- .page-header-description {
- color: #666;
- }
- .page-header-heading {
- color: #666;
- }
- .container-fluid {
-
- }
- ul.tpl-dropdown-content .tpl-dropdown-menu-messages-item .menu-messages-content .menu-messages-content-time {
- color: #96a5aa;
- }
- ul.tpl-dropdown-content {
- background: #fff;
- border: 1px solid #ddd;
- .tpl-dropdown-menu-notifications-item , .tpl-dropdown-menu-messages-item {
- border-bottom: 1px solid #eee;
- color:#999;
-
- &:hover{
- background-color: #f5f5f5;
- }
- .tpl-dropdown-menu-notifications-time {
- color: #999;
- }
- }
- .tpl-dropdown-menu-messages-item:hover {
- background-color: #f5f5f5;
- }
-
- .tpl-dropdown-menu-notifications-title {
- color:#999;
- }
-
-
- }
- .sidebar-nav-link {
- a {
- border-left: #fff 3px solid;
- }
- a:hover {
-
- background: #f2f6f9;
- color: #868E8E;
- border-left: #3bb4f2 3px solid;
- }
- }
-
- .sidebar-nav-link a.active {
- background: #f2f6f9;
- color: #868E8E;
- border-left: #3bb4f2 3px solid;
- }
- .sidebar-nav-heading {
- color: #999;
- border-bottom: 1px solid #eee;
- }
- .tpl-sidebar-user-panel {
- background: #fff;
- border-bottom: 1px solid #eee;
- }
-.tpl-content-wrapper {
- background: #e9ecf3;
- }
- .tpl-header-fluid {
- background: #fff;
- border-top: 1px solid #eee;
-}
- .tpl-header-logo {
- background: #fff;
- border-bottom: 1px solid #eee;
-}
-
-.tpl-header-switch-button {
- background: #fff;
- border-right: 1px solid #eee;
- border-left: 1px solid #eee;
- &:hover {
- background: #fff;
- color: #999;
- }
-}
- .tpl-header-navbar {
- a {
- color:#999;
-
- &:hover {
- color: #999;
- }
- }
- }
- .left-sidebar {
- background: #fff;
- }
-
- .widget-color-green {
- border: 1px solid #32c5d2;
- border-top: 2px solid #32c5d2;
- background: #32c5d2;
- color: #ffffff;
- .widget-fluctuation-period-text {
- color:#fff;
- }
- .widget-head {
- border-bottom: 1px solid #2bb8c4;
- }
- .widget-fluctuation-description-text {
- color:#bbe7f6;
- }
- .widget-function {
- a {
- color:#42bde5;
- &:hover {
- color: #fff;
- }
- }
- }
- }
-
-
-
-}
-
-
-.theme-black {
-
- .tpl-am-model-bd {
- background: #424b4f;
- }
- .tpl-model-dialog {
- background: #424b4f;
- }
- .tpl-error-title {
- font-size: 210px;
- line-height: 220px;
- color: #868E8E;
- }
- .tpl-error-title-info {
- line-height: 30px;
- font-size: 21px;
- margin-top: 20px;
- text-align: center;
- color: #868E8E;
- }
- .tpl-error-btn {
- background: #03a9f3;
- border: 1px solid #03a9f3;
- border-radius: 30px;
- padding: 6px 20px 8px;
- }
- .tpl-error-content {
- margin-top: 20px;
- margin-bottom: 20px;
- font-size: 16px;
- text-align: center;
- color: #cfcfcf;
- }
- .tpl-calendar-box {
- background: #424b4f;
- padding: 20px;
- .fc-button {
- border-radius: 0;
- box-shadow:0;
- }
- .fc-event {
- border-radius: 0;
- background: #03a9f3;
- }
- .fc-axis {
- color: #fff;
- }
- .fc-unthemed .fc-today {
- background: #3a4144;
- }
- .fc-more {
- color: #fff;
- }
- .fc th.fc-widget-header {
- background: #9675ce!important;
- color: #ffffff;
- font-size: 14px;
- line-height: 20px;
- padding: 7px 0px;
- text-transform: uppercase;
- border:none!important;
- a {
- color: #fff;
- }
- }
-
- .fc-center {
- h2 {
- color:#fff;
- }
- }
- .fc-state-default {
- background-image: none;
- background: #fff;
- font-size: 14px;
-}
- .fc th, .fc td, .fc hr, .fc thead, .fc tbody, .fc-row {
- // background: rgba(0, 0, 0, 0)!important;
- border-color: rgba(120, 130, 140, 0.4) !important;
- }
- .fc-day-number {
- color: #868E8E;
- padding-right: 6px;
- }
- .fc th {
- color: #868E8E;
- font-weight: normal;
- font-size: 14px;
- padding: 6px 0;
- }
- }
- .tpl-login-logo {
- background: url(../img/logob.png) center no-repeat;
-
- }
- .tpl-table-line-img {
- max-width: 100px;
- padding: 2px;
-border: none;
-}
- .tpl-table-list-field {
- border: none;
- }
- .tpl-table-list-select {
-
- .am-dropdown-content {
- color:#888;
- }
- .am-selected-btn {
- border:1px solid rgba(255, 255, 255, 0.2);
- color:#fff;
- }
-
- .am-btn-default.am-active, .am-btn-default:active, .am-dropdown.am-active .am-btn-default.am-dropdown-toggle {
- border:1px solid rgba(255, 255, 255, 0.2);
- color:#fff;
- background: #5d6468;
- }
- }
-.tpl-pagination .am-disabled a , .tpl-pagination li a {
- color: #fff;
- padding: 6px 12px;
- background: #3f4649;
- border: none;
-}
-
-.tpl-pagination .am-active a{
- background: #167fa1;color: #fff;
- border: 1px solid #167fa1;
- padding: 6px 12px;
-}
-
-.tpl-login-btn {
- border: 1px solid #b5b5b5;
- background-color: rgba(0, 0, 0, 0);
- padding: 10px 16px;
- font-size: 14px;
- line-height: 14px;
- color:#b5b5b5;
-
- &:hover,&:active {
- background: #b5b5b5;
- color:#fff;
- }
-
-}
-.tpl-login-title {
- color:#fff;
- strong {
- color: #39bae4;
- }
-}
-
-
-
-
- .tpl-form-line-form , .tpl-form-border-form {
- padding-top: 20px;
-
- .am-btn-default {
- color:#fff;
- border: 1px solid rgba(255, 255, 255, 0.2);
-
- }
- .am-selected-text {
- color:#888;
- }
- }
- .tpl-form-border-form input[type=number]:focus, .tpl-form-border-form input[type=search]:focus, .tpl-form-border-form input[type=text]:focus, .tpl-form-border-form input[type=password]:focus, .tpl-form-border-form input[type=datetime]:focus, .tpl-form-border-form input[type=datetime-local]:focus, .tpl-form-border-form input[type=date]:focus, .tpl-form-border-form input[type=month]:focus, .tpl-form-border-form input[type=time]:focus, .tpl-form-border-form input[type=week]:focus, .tpl-form-border-form input[type=email]:focus, .tpl-form-border-form input[type=url]:focus, .tpl-form-border-form input[type=tel]:focus, .tpl-form-border-form input[type=color]:focus, .tpl-form-border-form select:focus, .tpl-form-border-form textarea:focus, .am-form-field:focus{
- -webkit-box-shadow: none;
- box-shadow: none;
- }
-.tpl-form-border-form input[type=number], .tpl-form-border-form input[type=search], .tpl-form-border-form input[type=text], .tpl-form-border-form input[type=password], .tpl-form-border-form input[type=datetime], .tpl-form-border-form input[type=datetime-local], .tpl-form-border-form input[type=date], .tpl-form-border-form input[type=month], .tpl-form-border-form input[type=time], .tpl-form-border-form input[type=week], .tpl-form-border-form input[type=email], .tpl-form-border-form input[type=url], .tpl-form-border-form input[type=tel], .tpl-form-border-form input[type=color], .tpl-form-border-form select, .tpl-form-border-form textarea, .am-form-field {
- display: block;
- width: 100%;
-
- padding: 6px 12px;
- font-size: 14px;
- line-height: 1.42857;
- color: #4d6b8a;
- background-color: #fff;
- background-image: none;
- border: 1px solid #c2cad8;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
- box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
- -webkit-transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- -o-transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- background: 0 0;
- border: 0;
- text-indent: .5em;
- border: 1px solid rgba(255, 255, 255, 0.2);
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- -o-border-radius: 0;
- border-radius: 0;
- color: #fff;
- box-shadow: none;
- padding-left: 0;
- padding-right: 0;
- font-size: 14px;
-}
-
-.tpl-form-border-form .am-checkbox, .tpl-form-border-form .am-checkbox-inline, .tpl-form-border-form .am-form-label, .tpl-form-border-form .am-radio, .tpl-form-border-form .am-radio-inline{
- margin-top: 0;
- margin-bottom: 0;
-
-}
-
-.tpl-form-border-form .am-form-group:after {
- clear: both;
-}
-.tpl-form-border-form .am-form-group:after, .tpl-form-border-form .am-form-group:before {
-content: " ";
- display: table;
-
-}
-.tpl-form-border-form .am-form-label{
- padding-top: 5px;
-font-size: 16px;
-color: #fff;
-font-weight: inherit;
-text-align: right;
-}
-.tpl-form-border-form .am-form-group {
- /*padding: 20px 0;*/
-
-}
-.tpl-form-border-form .am-form-label .tpl-form-line-small-title {
- color: #999;
- font-size: 12px;
-}
-
-
-
-
-
-
- .tpl-form-line-form input[type=number]:focus, .tpl-form-line-form input[type=search]:focus, .tpl-form-line-form input[type=text]:focus, .tpl-form-line-form input[type=password]:focus, .tpl-form-line-form input[type=datetime]:focus, .tpl-form-line-form input[type=datetime-local]:focus, .tpl-form-line-form input[type=date]:focus, .tpl-form-line-form input[type=month]:focus, .tpl-form-line-form input[type=time]:focus, .tpl-form-line-form input[type=week]:focus, .tpl-form-line-form input[type=email]:focus, .tpl-form-line-form input[type=url]:focus, .tpl-form-line-form input[type=tel]:focus, .tpl-form-line-form input[type=color]:focus, .tpl-form-line-form select:focus, .tpl-form-line-form textarea:focus, .am-form-field:focus{
- -webkit-box-shadow: none;
- box-shadow: none;
- }
-.tpl-form-line-form input[type=number], .tpl-form-line-form input[type=search], .tpl-form-line-form input[type=text], .tpl-form-line-form input[type=password], .tpl-form-line-form input[type=datetime], .tpl-form-line-form input[type=datetime-local], .tpl-form-line-form input[type=date], .tpl-form-line-form input[type=month], .tpl-form-line-form input[type=time], .tpl-form-line-form input[type=week], .tpl-form-line-form input[type=email], .tpl-form-line-form input[type=url], .tpl-form-line-form input[type=tel], .tpl-form-line-form input[type=color], .tpl-form-line-form select, .tpl-form-line-form textarea, .am-form-field {
- display: block;
- width: 100%;
-
- padding: 6px 12px;
- font-size: 14px;
- line-height: 1.42857;
- color: #4d6b8a;
- background-color: #fff;
- background-image: none;
- border: 1px solid #c2cad8;
- border-radius: 4px;
- -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
- box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
- -webkit-transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- -o-transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- transition: border-color ease-in-out 0.15s,box-shadow ease-in-out 0.15s;
- background: 0 0;
- border: 0;
- border-bottom: 1px solid rgba(255, 255, 255, 0.2);
- -webkit-border-radius: 0;
- -moz-border-radius: 0;
- -ms-border-radius: 0;
- -o-border-radius: 0;
- border-radius: 0;
- color: #fff;
- box-shadow: none;
- padding-left: 0;
- padding-right: 0;
- font-size: 14px;
-}
-
-.tpl-form-line-form .am-checkbox, .tpl-form-line-form .am-checkbox-inline, .tpl-form-line-form .am-form-label, .tpl-form-line-form .am-radio, .tpl-form-line-form .am-radio-inline{
- margin-top: 0;
- margin-bottom: 0;
-
-}
-
-.tpl-form-line-form .am-form-group:after {
- clear: both;
-}
-.tpl-form-line-form .am-form-group:after, .tpl-form-line-form .am-form-group:before {
-content: " ";
- display: table;
-
-}
-.tpl-form-line-form .am-form-label{
- padding-top: 5px;
-font-size: 16px;
-color: #fff;
-font-weight: inherit;
-text-align: right;
-}
-
-
-
-.tpl-form-line-form .am-form-group {
- /*padding: 20px 0;*/
-
-}
-.tpl-form-line-form .am-form-label .tpl-form-line-small-title {
- color: #999;
- font-size: 12px;
-}
-
- background-color: #282d2f;
-
- .tpl-table-black-operation {
- a {
- border: 1px solid #7b878d;
- color:#7b878d;
- &:hover {
- background: #7b878d;
- color:#fff;
- }
- }
- a.tpl-table-black-operation-del {
- border: 1px solid #f35842;
- color:#f35842;
- &:hover {
- background: #f35842;
- color:#fff;
- }
- }
-}
- .am-table-bordered {
- border: 1px solid #666d70;
- }
- .am-table-bordered>tbody>tr>td, .am-table-bordered>tbody>tr>th, .am-table-bordered>tfoot>tr>td, .am-table-bordered>tfoot>tr>th, .am-table-bordered>thead>tr>td, .am-table-bordered>thead>tr>th {
- border: 1px solid #666d70;
- }
-
- .am-table-bordered>thead+tbody>tr:first-child>td, .am-table-bordered>thead+tbody>tr:first-child>th {
- border: 1px solid #666d70;
- }
-
- .am-table-striped>tbody>tr:nth-child(odd)>td, .am-table-striped>tbody>tr:nth-child(odd)>th {
- background-color: #5d6468;
- }
- .tpl-table-black {
- color:#fff;
-
- thead>tr>th {
- font-size: 14px;
- padding: 6px;
- border-bottom: 1px solid #666d70;
- }
- tbody>tr>td {
- font-size: 14px;
- padding: 7px 6px;
- border-top: 1px solid #666d70;
- }
- tfoot>tr>th {
- font-size: 14px;
- padding: 6px 0;
- }
- }
- .tpl-user-card {
- border: 1px solid #11627d;
- border-top: 2px solid #105f79;
- background: #1786aa;
- color: #ffffff;
- }
- .tpl-user-card-title {
- font-size: 26px;
- margin-top: 0;
- font-weight: 300;
- margin-top: 25px;
- margin-bottom: 10px;
- }
- .achievement-subheading {
- font-size: 12px;
- margin-top: 0;
- margin-bottom: 15px;
- }
- .achievement-image {
- border-radius: 50%;
- margin-bottom: 22px;
- }
- .achievement-description {
- margin: 0;
- font-size: 12px;
- }
-
-
-
- .am-progress {
- height: 12px;
- margin-bottom: 14px;
- background: rgba(0, 0, 0, 0.15);
- }
- .am-progress-title {
- font-size: 14px;
- margin-bottom: 8px;
- }
- .am-progress-title-more {
- color: #a1a8ab;
- }
- .widget-fluctuation-tpl-btn {
- margin-top: 6px;
- display: block;
- color: #fff;
- font-size: 12px;
- padding: 5px 10px;
- outline: none;
- background-color: rgba(255, 255, 255, 0);
- border: 1px solid #fff;
- &:hover {
- background: #fff;
- color:#4b5357;
- }
-
- }
-.widget-fluctuation-description-text{
-color: #c5cacd;
- }
-
- .text-success {
- color: #08ed72;
-}
-.widget-fluctuation-period-text {
- color:#fff;
- }
-
- .widget-head {
- border-bottom: 1px solid #3f4649;
-}
- .widget-function {
- a {
- color:#7b878d;
- &:hover {
- color:#fff;
- }
- }
-
- }
- .widget {
- border: 1px solid #33393c;
- border-top: 2px solid #313639;
- background: #4b5357;
- color: #ffffff;
- }
- .widget-primary {
- border: 1px solid #11627d;
- border-top: 2px solid #105f79;
- background: #1786aa;
- color: #ffffff;
- padding: 12px 17px;
-}
-.widget-statistic-body {
-
-}
-.widget-statistic-icon {
- position: absolute;
- z-index: 30;
- right: 30px;
- top: 0px;
- font-size: 70px;
- color: #1b9eca;
-}
-.widget-statistic-description {
- position: relative;
- z-index: 35;
- display: block;
- font-size: 14px;
- line-height: 14px;
- padding-top: 8px;
- color: #9cdcf2;
-}
-.widget-statistic-value {
- position: relative;
- z-index: 35;
- font-weight: 300;
- display: block;
- color: #fff;
- font-size: 46px;
- line-height: 46px;
- margin-bottom: 8px;
-}
-.widget-statistic-header {
- color: #9cdcf2;
-}
-
-.widget-purple {
- padding: 12px 17px;
- border: 1px solid #5e4578;
- border-top: 2px solid #5c4375;
- background: #785799;
- color: #ffffff;
- .widget-statistic-icon {
- color: #8a6aaa;
- }
- .widget-statistic-header {
- color: #ded5e7;
- }
- .widget-statistic-description {
- color: #ded5e7;
- }
-}
- .page-header-description {
- color: #e6e6e6;
- }
- .page-header-heading {
- color: #666;
- }
- .container-fluid {
- background: #424b4f;
- }
- .page-header-heading {
- color: #fff;
- }
- .sidebar-nav-heading {
- color:#fff;
- }
- .tpl-sidebar-user-panel {
- background: #1f2224;
- border-bottom: 1px solid #1f2224;
-}
- .tpl-content-wrapper {
- background: #3a4144;
- }
- .tpl-header-fluid {
- background: #2f3638;
-
-}
-
- .sidebar-nav-link {
- a.active {
- background: #232829;
- }
- a:hover {
-
- background: #232829;
- }
- }
-
-.tpl-header-switch-button {
- background: #2f3638;
- border-right: 1px solid #282d2f;
- &:hover {
- background: #282d2f;
- color: #fff;
- }
-}
- .tpl-header-navbar {
- a {
- color:#cfcfcf;
-
- &:hover {
- color: #fff;
- }
- }
- }
- .left-sidebar {
- padding-top: 56px;
- background: #282d2f;
- }
-
- .widget-color-green {
- border: 1px solid #11627d;
- border-top: 2px solid #105f79;
- background: #1786aa;
- color: #ffffff;
- .widget-head {
- border-bottom: 1px solid #147494;
- }
- .widget-fluctuation-description-text {
- color:#bbe7f6;
- }
- .widget-function {
- a {
- color:#42bde5;
- &:hover {
- color: #fff;
- }
- }
- }
- }
-}
-
-
-
-@media screen and (max-width: 1024px) {
- .tpl-index-settings-button {
- display: none;
- }
-
- .theme-black .left-sidebar {
- padding-top: 111px;
- }
- .left-sidebar {
- padding-top: 111px;
- }
- .tpl-content-wrapper {
- margin-left: 0
- }
- .tpl-header-logo {
- float:none;
- width: 100%;
- }
- .tpl-header-navbar-welcome {
- display: none;
- }
-
- .tpl-sidebar-user-panel {
- border-top: 1px solid #eee;
- }
- .tpl-header-fluid {
- border-top: none;
- margin-left: 0;
- }
-
- .theme-white .tpl-header-fluid {
- border-top: none;
- }
- .theme-black .tpl-sidebar-user-panel {
- border-top: 1px solid #1f2224;
- }
-}
-
-@media screen and (min-width: 641px) {
- [class*=am-u-] {
- padding-left: 10px;
- padding-right: 10px;
-}
-}
-@media screen and (max-width: 641px) {
-
- .theme-white , .theme-black {
- .tpl-error-title {
- font-size: 130px;
- line-height: 140px;
-
- }
- }
- .theme-white {
-
- .tpl-login-title {
- font-size: 20px;
- }
- .tpl-login-content{
- width: 86%;
- padding: 22px 30px 25px;
- }
- }
-
-
-
- .tpl-header-search {
- display: none;
- }
- ul.tpl-dropdown-content {
- position: fixed;
- width: 100%;
- left: 0;
- top: 112px;
- right: 0;
- }
-}
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/css/fullcalendar.min.css b/Day61-65/code/project_of_tornado/assets/css/fullcalendar.min.css
deleted file mode 100644
index f9fa1c1..0000000
--- a/Day61-65/code/project_of_tornado/assets/css/fullcalendar.min.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*!
- * FullCalendar v0.0.0 Stylesheet
- * Docs & License: http://fullcalendar.io/
- * (c) 2016 Adam Shaw
- */.fc-icon,body .fc{font-size:1em}.fc-button-group,.fc-icon{display:inline-block}.fc-bg,.fc-row .fc-bgevent-skeleton,.fc-row .fc-highlight-skeleton{bottom:0}.fc-icon,.fc-unselectable{-khtml-user-select:none;-webkit-touch-callout:none}.fc{direction:ltr;text-align:left}.fc-rtl{text-align:right}.fc th,.fc-basic-view td.fc-week-number,.fc-icon,.fc-toolbar{text-align:center}.fc-unthemed .fc-content,.fc-unthemed .fc-divider,.fc-unthemed .fc-list-heading td,.fc-unthemed .fc-list-view,.fc-unthemed .fc-popover,.fc-unthemed .fc-row,.fc-unthemed tbody,.fc-unthemed td,.fc-unthemed th,.fc-unthemed thead{border-color:#ddd}.fc-unthemed .fc-popover{background-color:#fff}.fc-unthemed .fc-divider,.fc-unthemed .fc-list-heading td,.fc-unthemed .fc-popover .fc-header{background:#eee}.fc-unthemed .fc-popover .fc-header .fc-close{color:#666}.fc-unthemed .fc-today{background:#fcf8e3}.fc-highlight{background:#bce8f1;opacity:.3}.fc-bgevent{background:#8fdf82;opacity:.3}.fc-nonbusiness{background:#d7d7d7}.fc-icon{height:1em;line-height:1em;overflow:hidden;font-family:"Courier New",Courier,monospace;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.fc-icon:after{position:relative}.fc-icon-left-single-arrow:after{content:"\02039";font-weight:700;font-size:200%;top:-7%}.fc-icon-right-single-arrow:after{content:"\0203A";font-weight:700;font-size:200%;top:-7%}.fc-icon-left-double-arrow:after{content:"\000AB";font-size:160%;top:-7%}.fc-icon-right-double-arrow:after{content:"\000BB";font-size:160%;top:-7%}.fc-icon-left-triangle:after{content:"\25C4";font-size:125%;top:3%}.fc-icon-right-triangle:after{content:"\25BA";font-size:125%;top:3%}.fc-icon-down-triangle:after{content:"\25BC";font-size:125%;top:2%}.fc-icon-x:after{content:"\000D7";font-size:200%;top:6%}.fc button{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;height:2.1em;padding:0 .6em;font-size:1em;white-space:nowrap;cursor:pointer}.fc button::-moz-focus-inner{margin:0;padding:0}.fc-state-default{border:1px solid;background-color:#f5f5f5;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-repeat:repeat-x;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);color:#333;text-shadow:0 1px 1px rgba(255,255,255,.75);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.fc-state-default.fc-corner-left{border-top-left-radius:4px;border-bottom-left-radius:4px}.fc-state-default.fc-corner-right{border-top-right-radius:4px;border-bottom-right-radius:4px}.fc button .fc-icon{position:relative;top:-.05em;margin:0 .2em;vertical-align:middle}.fc-state-active,.fc-state-disabled,.fc-state-down,.fc-state-hover{color:#333;background-color:#e6e6e6}.fc-state-hover{color:#333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.fc-state-active,.fc-state-down{background-color:#ccc;background-image:none;box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.fc-state-disabled{cursor:default;background-image:none;opacity:.65;box-shadow:none}.fc-event.fc-draggable,.fc-event[href],.fc-popover .fc-header .fc-close,a[data-goto]{cursor:pointer}.fc .fc-button-group>*{float:left;margin:0 0 0 -1px}.fc .fc-button-group>:first-child{margin-left:0}.fc-popover{position:absolute;box-shadow:0 2px 6px rgba(0,0,0,.15)}.fc-popover .fc-header{padding:2px 4px}.fc-popover .fc-header .fc-title{margin:0 2px}.fc-ltr .fc-popover .fc-header .fc-title,.fc-rtl .fc-popover .fc-header .fc-close{float:left}.fc-ltr .fc-popover .fc-header .fc-close,.fc-rtl .fc-popover .fc-header .fc-title{float:right}.fc-unthemed .fc-popover{border-width:1px;border-style:solid}.fc-unthemed .fc-popover .fc-header .fc-close{font-size:.9em;margin-top:2px}.fc-popover>.ui-widget-header+.ui-widget-content{border-top:0}.fc-divider{border-style:solid;border-width:1px}hr.fc-divider{height:0;margin:0;padding:0 0 2px;border-width:1px 0}.fc-bg table,.fc-row .fc-bgevent-skeleton table,.fc-row .fc-highlight-skeleton table{height:100%}.fc-clear{clear:both}.fc-bg,.fc-bgevent-skeleton,.fc-helper-skeleton,.fc-highlight-skeleton{position:absolute;top:0;left:0;right:0}.fc table{width:100%;box-sizing:border-box;table-layout:fixed;border-collapse:collapse;border-spacing:0;font-size:1em}.fc td,.fc th{border-style:solid;border-width:1px;padding:0;vertical-align:top}.fc td.fc-today{border-style:double}a[data-goto]:hover{text-decoration:underline}.fc .fc-row{border-style:solid;border-width:0}.fc-row table{border-left:0 hidden transparent;border-right:0 hidden transparent;border-bottom:0 hidden transparent}.fc-row:first-child table{border-top:0 hidden transparent}.fc-row{position:relative}.fc-row .fc-bg{z-index:1}.fc-row .fc-bgevent-skeleton td,.fc-row .fc-highlight-skeleton td{border-color:transparent}.fc-row .fc-bgevent-skeleton{z-index:2}.fc-row .fc-highlight-skeleton{z-index:3}.fc-row .fc-content-skeleton{position:relative;z-index:4;padding-bottom:2px}.fc-row .fc-helper-skeleton{z-index:5}.fc-row .fc-content-skeleton td,.fc-row .fc-helper-skeleton td{background:0 0;border-color:transparent;border-bottom:0}.fc-row .fc-content-skeleton tbody td,.fc-row .fc-helper-skeleton tbody td{border-top:0}.fc-scroller{-webkit-overflow-scrolling:touch}.fc-row.fc-rigid,.fc-time-grid-event{overflow:hidden}.fc-scroller>.fc-day-grid,.fc-scroller>.fc-time-grid{position:relative;width:100%}.fc-event{position:relative;display:block;font-size:.85em;line-height:1.3;border-radius:3px;border:1px solid #3a87ad;font-weight:400}.fc-event,.fc-event-dot{background-color:#3a87ad}.fc-event,.fc-event:hover,.ui-widget .fc-event{color:#fff;text-decoration:none}.fc-not-allowed,.fc-not-allowed .fc-event{cursor:not-allowed}.fc-event .fc-bg{z-index:1;background:#fff;opacity:.25}.fc-event .fc-content{position:relative;z-index:2}.fc-event .fc-resizer{position:absolute;z-index:4;display:none}.fc-event.fc-allow-mouse-resize .fc-resizer,.fc-event.fc-selected .fc-resizer{display:block}.fc-event.fc-selected .fc-resizer:before{content:"";position:absolute;z-index:9999;top:50%;left:50%;width:40px;height:40px;margin-left:-20px;margin-top:-20px}.fc-event.fc-selected{z-index:9999!important;box-shadow:0 2px 5px rgba(0,0,0,.2)}.fc-event.fc-selected.fc-dragging{box-shadow:0 2px 7px rgba(0,0,0,.3)}.fc-h-event.fc-selected:before{content:"";position:absolute;z-index:3;top:-10px;bottom:-10px;left:0;right:0}.fc-ltr .fc-h-event.fc-not-start,.fc-rtl .fc-h-event.fc-not-end{margin-left:0;border-left-width:0;padding-left:1px;border-top-left-radius:0;border-bottom-left-radius:0}.fc-ltr .fc-h-event.fc-not-end,.fc-rtl .fc-h-event.fc-not-start{margin-right:0;border-right-width:0;padding-right:1px;border-top-right-radius:0;border-bottom-right-radius:0}.fc-ltr .fc-h-event .fc-start-resizer,.fc-rtl .fc-h-event .fc-end-resizer{cursor:w-resize;left:-1px}.fc-ltr .fc-h-event .fc-end-resizer,.fc-rtl .fc-h-event .fc-start-resizer{cursor:e-resize;right:-1px}.fc-h-event.fc-allow-mouse-resize .fc-resizer{width:7px;top:-1px;bottom:-1px}.fc-h-event.fc-selected .fc-resizer{border-radius:4px;border-width:1px;width:6px;height:6px;border-style:solid;border-color:inherit;background:#fff;top:50%;margin-top:-4px}.fc-ltr .fc-h-event.fc-selected .fc-start-resizer,.fc-rtl .fc-h-event.fc-selected .fc-end-resizer{margin-left:-4px}.fc-ltr .fc-h-event.fc-selected .fc-end-resizer,.fc-rtl .fc-h-event.fc-selected .fc-start-resizer{margin-right:-4px}.fc-day-grid-event{margin:1px 2px 0;padding:0 1px}tr:first-child>td>.fc-day-grid-event{margin-top:2px}.fc-day-grid-event.fc-selected:after{content:"";position:absolute;z-index:1;top:-1px;right:-1px;bottom:-1px;left:-1px;background:#000;opacity:.25}.fc-day-grid-event .fc-content{white-space:nowrap;overflow:hidden}.fc-day-grid-event .fc-time{font-weight:700}.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer,.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer{margin-left:-2px}.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer,.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer{margin-right:-2px}a.fc-more{margin:1px 3px;font-size:.85em;cursor:pointer;text-decoration:none}a.fc-more:hover{text-decoration:underline}.fc-limited{display:none}.fc-day-grid .fc-row{z-index:1}.fc-more-popover{z-index:2;width:220px}.fc-more-popover .fc-event-container{padding:10px}.fc-now-indicator{position:absolute;border:0 solid red}.fc-unselectable{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.fc-toolbar{margin-bottom:1em}.fc-toolbar .fc-left{float:left}.fc-toolbar .fc-right{float:right}.fc-toolbar .fc-center{display:inline-block}.fc .fc-toolbar>*>*{float:left;margin-left:.75em}.fc .fc-toolbar>*>:first-child{margin-left:0}.fc-toolbar h2{margin:0}.fc-toolbar button{position:relative}.fc-toolbar .fc-state-hover,.fc-toolbar .ui-state-hover{z-index:2}.fc-toolbar .fc-state-down{z-index:3}.fc-toolbar .fc-state-active,.fc-toolbar .ui-state-active{z-index:4}.fc-toolbar button:focus{z-index:5}.fc-view-container *,.fc-view-container :after,.fc-view-container :before{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.fc-view,.fc-view>table{position:relative;z-index:1}.fc-basicDay-view .fc-content-skeleton,.fc-basicWeek-view .fc-content-skeleton{padding-bottom:1em}.fc-basic-view .fc-body .fc-row{min-height:4em}.fc-row.fc-rigid .fc-content-skeleton{position:absolute;top:0;left:0;right:0}.fc-day-top.fc-other-month{opacity:.3}.fc-basic-view .fc-day-number,.fc-basic-view .fc-week-number{padding:2px}.fc-basic-view th.fc-day-number,.fc-basic-view th.fc-week-number{padding:0 2px}.fc-ltr .fc-basic-view .fc-day-top .fc-day-number{float:right}.fc-rtl .fc-basic-view .fc-day-top .fc-day-number{float:left}.fc-ltr .fc-basic-view .fc-day-top .fc-week-number{float:left;border-radius:0 0 3px}.fc-rtl .fc-basic-view .fc-day-top .fc-week-number{float:right;border-radius:0 0 0 3px}.fc-basic-view .fc-day-top .fc-week-number{min-width:1.5em;text-align:center;background-color:#f2f2f2;color:grey}.fc-basic-view td.fc-week-number>*{display:inline-block;min-width:1.25em}.fc-agenda-view .fc-day-grid{position:relative;z-index:2}.fc-agenda-view .fc-day-grid .fc-row{min-height:3em}.fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton{padding-bottom:1em}.fc .fc-axis{vertical-align:middle;padding:0 4px;white-space:nowrap}.fc-ltr .fc-axis{text-align:right}.fc-rtl .fc-axis{text-align:left}.ui-widget td.fc-axis{font-weight:400}.fc-time-grid,.fc-time-grid-container{position:relative;z-index:1}.fc-time-grid{min-height:100%}.fc-time-grid table{border:0 hidden transparent}.fc-time-grid>.fc-bg{z-index:1}.fc-time-grid .fc-slats,.fc-time-grid>hr{position:relative;z-index:2}.fc-time-grid .fc-content-col{position:relative}.fc-time-grid .fc-content-skeleton{position:absolute;z-index:3;top:0;left:0;right:0}.fc-time-grid .fc-business-container{position:relative;z-index:1}.fc-time-grid .fc-bgevent-container{position:relative;z-index:2}.fc-time-grid .fc-highlight-container{z-index:3;position:relative}.fc-time-grid .fc-event-container{position:relative;z-index:4}.fc-time-grid .fc-now-indicator-line{z-index:5}.fc-time-grid .fc-helper-container{position:relative;z-index:6}.fc-time-grid .fc-slats td{height:1.5em;border-bottom:0}.fc-time-grid .fc-slats .fc-minor td{border-top-style:dotted}.fc-time-grid .fc-slats .ui-widget-content{background:0 0}.fc-time-grid .fc-highlight{position:absolute;left:0;right:0}.fc-ltr .fc-time-grid .fc-event-container{margin:0 2.5% 0 2px}.fc-rtl .fc-time-grid .fc-event-container{margin:0 2px 0 2.5%}.fc-time-grid .fc-bgevent,.fc-time-grid .fc-event{position:absolute;z-index:1}.fc-time-grid .fc-bgevent{left:0;right:0}.fc-v-event.fc-not-start{border-top-width:0;padding-top:1px;border-top-left-radius:0;border-top-right-radius:0}.fc-v-event.fc-not-end{border-bottom-width:0;padding-bottom:1px;border-bottom-left-radius:0;border-bottom-right-radius:0}.fc-time-grid-event.fc-selected{overflow:visible}.fc-time-grid-event.fc-selected .fc-bg{display:none}.fc-time-grid-event .fc-content{overflow:hidden}.fc-time-grid-event .fc-time,.fc-time-grid-event .fc-title{padding:0 1px}.fc-time-grid-event .fc-time{font-size:.85em;white-space:nowrap}.fc-time-grid-event.fc-short .fc-content{white-space:nowrap}.fc-time-grid-event.fc-short .fc-time,.fc-time-grid-event.fc-short .fc-title{display:inline-block;vertical-align:top}.fc-time-grid-event.fc-short .fc-time span{display:none}.fc-time-grid-event.fc-short .fc-time:before{content:attr(data-start)}.fc-time-grid-event.fc-short .fc-time:after{content:"\000A0-\000A0"}.fc-time-grid-event.fc-short .fc-title{font-size:.85em;padding:0}.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer{left:0;right:0;bottom:0;height:8px;overflow:hidden;line-height:8px;font-size:11px;font-family:monospace;text-align:center;cursor:s-resize}.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer:after{content:"="}.fc-time-grid-event.fc-selected .fc-resizer{border-radius:5px;border-width:1px;width:8px;height:8px;border-style:solid;border-color:inherit;background:#fff;left:50%;margin-left:-5px;bottom:-5px}.fc-time-grid .fc-now-indicator-line{border-top-width:1px;left:0;right:0}.fc-time-grid .fc-now-indicator-arrow{margin-top:-5px}.fc-ltr .fc-time-grid .fc-now-indicator-arrow{left:0;border-width:5px 0 5px 6px;border-top-color:transparent;border-bottom-color:transparent}.fc-rtl .fc-time-grid .fc-now-indicator-arrow{right:0;border-width:5px 6px 5px 0;border-top-color:transparent;border-bottom-color:transparent}.fc-event-dot{display:inline-block;width:10px;height:10px;border-radius:5px}.fc-rtl .fc-list-view{direction:rtl}.fc-list-view{border-width:1px;border-style:solid}.fc .fc-list-table{table-layout:auto}.fc-list-table td{border-width:1px 0 0;padding:8px 14px}.fc-list-table tr:first-child td{border-top-width:0}.fc-list-heading{border-bottom-width:1px}.fc-list-heading td{font-weight:700}.fc-ltr .fc-list-heading-main{float:left}.fc-ltr .fc-list-heading-alt,.fc-rtl .fc-list-heading-main{float:right}.fc-rtl .fc-list-heading-alt{float:left}.fc-list-item.fc-has-url{cursor:pointer}.fc-list-item:hover td{background-color:#f5f5f5}.fc-list-item-marker,.fc-list-item-time{white-space:nowrap;width:1px}.fc-ltr .fc-list-item-marker{padding-right:0}.fc-rtl .fc-list-item-marker{padding-left:0}.fc-list-item-title a{text-decoration:none;color:inherit}.fc-list-item-title a[href]:hover{text-decoration:underline}.fc-list-empty-wrap2{position:absolute;top:0;left:0;right:0;bottom:0}.fc-list-empty-wrap1{width:100%;height:100%;display:table}.fc-list-empty{display:table-cell;vertical-align:middle;text-align:center}.fc-unthemed .fc-list-empty{background-color:#eee}
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/css/fullcalendar.print.css b/Day61-65/code/project_of_tornado/assets/css/fullcalendar.print.css
deleted file mode 100644
index ad1a023..0000000
--- a/Day61-65/code/project_of_tornado/assets/css/fullcalendar.print.css
+++ /dev/null
@@ -1,208 +0,0 @@
-/*!
- * FullCalendar v0.0.0 Print Stylesheet
- * Docs & License: http://fullcalendar.io/
- * (c) 2016 Adam Shaw
- */
-
-/*
- * Include this stylesheet on your page to get a more printer-friendly calendar.
- * When including this stylesheet, use the media='print' attribute of the tag.
- * Make sure to include this stylesheet IN ADDITION to the regular fullcalendar.css.
- */
-
-.fc {
- max-width: 100% !important;
-}
-
-
-/* Global Event Restyling
---------------------------------------------------------------------------------------------------*/
-
-.fc-event {
- background: #fff !important;
- color: #000 !important;
- page-break-inside: avoid;
-}
-
-.fc-event .fc-resizer {
- display: none;
-}
-
-
-/* Table & Day-Row Restyling
---------------------------------------------------------------------------------------------------*/
-
-.fc th,
-.fc td,
-.fc hr,
-.fc thead,
-.fc tbody,
-.fc-row {
- border-color: #ccc !important;
- background: #fff !important;
-}
-
-/* kill the overlaid, absolutely-positioned components */
-/* common... */
-.fc-bg,
-.fc-bgevent-skeleton,
-.fc-highlight-skeleton,
-.fc-helper-skeleton,
-/* for timegrid. within cells within table skeletons... */
-.fc-bgevent-container,
-.fc-business-container,
-.fc-highlight-container,
-.fc-helper-container {
- display: none;
-}
-
-/* don't force a min-height on rows (for DayGrid) */
-.fc tbody .fc-row {
- height: auto !important; /* undo height that JS set in distributeHeight */
- min-height: 0 !important; /* undo the min-height from each view's specific stylesheet */
-}
-
-.fc tbody .fc-row .fc-content-skeleton {
- position: static; /* undo .fc-rigid */
- padding-bottom: 0 !important; /* use a more border-friendly method for this... */
-}
-
-.fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td { /* only works in newer browsers */
- padding-bottom: 1em; /* ...gives space within the skeleton. also ensures min height in a way */
-}
-
-.fc tbody .fc-row .fc-content-skeleton table {
- /* provides a min-height for the row, but only effective for IE, which exaggerates this value,
- making it look more like 3em. for other browers, it will already be this tall */
- height: 1em;
-}
-
-
-/* Undo month-view event limiting. Display all events and hide the "more" links
---------------------------------------------------------------------------------------------------*/
-
-.fc-more-cell,
-.fc-more {
- display: none !important;
-}
-
-.fc tr.fc-limited {
- display: table-row !important;
-}
-
-.fc td.fc-limited {
- display: table-cell !important;
-}
-
-.fc-popover {
- display: none; /* never display the "more.." popover in print mode */
-}
-
-
-/* TimeGrid Restyling
---------------------------------------------------------------------------------------------------*/
-
-/* undo the min-height 100% trick used to fill the container's height */
-.fc-time-grid {
- min-height: 0 !important;
-}
-
-/* don't display the side axis at all ("all-day" and time cells) */
-.fc-agenda-view .fc-axis {
- display: none;
-}
-
-/* don't display the horizontal lines */
-.fc-slats,
-.fc-time-grid hr { /* this hr is used when height is underused and needs to be filled */
- display: none !important; /* important overrides inline declaration */
-}
-
-/* let the container that holds the events be naturally positioned and create real height */
-.fc-time-grid .fc-content-skeleton {
- position: static;
-}
-
-/* in case there are no events, we still want some height */
-.fc-time-grid .fc-content-skeleton table {
- height: 4em;
-}
-
-/* kill the horizontal spacing made by the event container. event margins will be done below */
-.fc-time-grid .fc-event-container {
- margin: 0 !important;
-}
-
-
-/* TimeGrid *Event* Restyling
---------------------------------------------------------------------------------------------------*/
-
-/* naturally position events, vertically stacking them */
-.fc-time-grid .fc-event {
- position: static !important;
- margin: 3px 2px !important;
-}
-
-/* for events that continue to a future day, give the bottom border back */
-.fc-time-grid .fc-event.fc-not-end {
- border-bottom-width: 1px !important;
-}
-
-/* indicate the event continues via "..." text */
-.fc-time-grid .fc-event.fc-not-end:after {
- content: "...";
-}
-
-/* for events that are continuations from previous days, give the top border back */
-.fc-time-grid .fc-event.fc-not-start {
- border-top-width: 1px !important;
-}
-
-/* indicate the event is a continuation via "..." text */
-.fc-time-grid .fc-event.fc-not-start:before {
- content: "...";
-}
-
-/* time */
-
-/* undo a previous declaration and let the time text span to a second line */
-.fc-time-grid .fc-event .fc-time {
- white-space: normal !important;
-}
-
-/* hide the the time that is normally displayed... */
-.fc-time-grid .fc-event .fc-time span {
- display: none;
-}
-
-/* ...replace it with a more verbose version (includes AM/PM) stored in an html attribute */
-.fc-time-grid .fc-event .fc-time:after {
- content: attr(data-full);
-}
-
-
-/* Vertical Scroller & Containers
---------------------------------------------------------------------------------------------------*/
-
-/* kill the scrollbars and allow natural height */
-.fc-scroller,
-.fc-day-grid-container, /* these divs might be assigned height, which we need to cleared */
-.fc-time-grid-container { /* */
- overflow: visible !important;
- height: auto !important;
-}
-
-/* kill the horizontal border/padding used to compensate for scrollbars */
-.fc-row {
- border: 0 !important;
- margin: 0 !important;
-}
-
-
-/* Button Controls
---------------------------------------------------------------------------------------------------*/
-
-.fc-button-group,
-.fc button {
- display: none; /* don't display any button-related controls */
-}
diff --git a/Day61-65/code/project_of_tornado/assets/fonts/FontAwesome.otf b/Day61-65/code/project_of_tornado/assets/fonts/FontAwesome.otf
deleted file mode 100644
index d4de13e..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/fonts/FontAwesome.otf and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.eot b/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.eot
deleted file mode 100644
index c7b00d2..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.eot and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.ttf b/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.ttf
deleted file mode 100644
index f221e50..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.ttf and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.woff b/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.woff
deleted file mode 100644
index 6e7483c..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.woff and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.woff2 b/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.woff2
deleted file mode 100644
index 7eb74fd..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/fonts/fontawesome-webfont.woff2 and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/html/404.html b/Day61-65/code/project_of_tornado/assets/html/404.html
deleted file mode 100644
index 48f614c..0000000
--- a/Day61-65/code/project_of_tornado/assets/html/404.html
+++ /dev/null
@@ -1,294 +0,0 @@
-
-
-
-
-
-
- Amaze UI Admin index Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/html/calendar.html b/Day61-65/code/project_of_tornado/assets/html/calendar.html
deleted file mode 100644
index 8c4cb41..0000000
--- a/Day61-65/code/project_of_tornado/assets/html/calendar.html
+++ /dev/null
@@ -1,453 +0,0 @@
-
-
-
-
-
-
- Amaze UI Admin index Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/html/chart.html b/Day61-65/code/project_of_tornado/assets/html/chart.html
deleted file mode 100644
index f247f77..0000000
--- a/Day61-65/code/project_of_tornado/assets/html/chart.html
+++ /dev/null
@@ -1,341 +0,0 @@
-
-
-
-
-
- Amaze UI Admin index Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/html/form.html b/Day61-65/code/project_of_tornado/assets/html/form.html
deleted file mode 100644
index 453811e..0000000
--- a/Day61-65/code/project_of_tornado/assets/html/form.html
+++ /dev/null
@@ -1,619 +0,0 @@
-
-
-
-
-
-
- Amaze UI Admin index Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/html/login.html b/Day61-65/code/project_of_tornado/assets/html/login.html
deleted file mode 100644
index eca4073..0000000
--- a/Day61-65/code/project_of_tornado/assets/html/login.html
+++ /dev/null
@@ -1,62 +0,0 @@
-
-
-
-
-
-
- Amaze UI Admin index Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/html/sign-up.html b/Day61-65/code/project_of_tornado/assets/html/sign-up.html
deleted file mode 100644
index d10b4a6..0000000
--- a/Day61-65/code/project_of_tornado/assets/html/sign-up.html
+++ /dev/null
@@ -1,70 +0,0 @@
-
-
-
-
-
- Amaze UI Admin index Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/html/table-list-img.html b/Day61-65/code/project_of_tornado/assets/html/table-list-img.html
deleted file mode 100644
index 706c280..0000000
--- a/Day61-65/code/project_of_tornado/assets/html/table-list-img.html
+++ /dev/null
@@ -1,469 +0,0 @@
-
-
-
-
-
-
- Amaze UI Admin index Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/html/table-list.html b/Day61-65/code/project_of_tornado/assets/html/table-list.html
deleted file mode 100644
index 9d2c589..0000000
--- a/Day61-65/code/project_of_tornado/assets/html/table-list.html
+++ /dev/null
@@ -1,461 +0,0 @@
-
-
-
-
-
-
- Amaze UI Admin index Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/html/tables.html b/Day61-65/code/project_of_tornado/assets/html/tables.html
deleted file mode 100644
index cf282e2..0000000
--- a/Day61-65/code/project_of_tornado/assets/html/tables.html
+++ /dev/null
@@ -1,834 +0,0 @@
-
-
-
-
-
- Amaze UI Admin index Examples
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/i/app-icon72x72@2x.png b/Day61-65/code/project_of_tornado/assets/i/app-icon72x72@2x.png
deleted file mode 100644
index 5b8968c..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/app-icon72x72@2x.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/admin-chrome.png b/Day61-65/code/project_of_tornado/assets/i/examples/admin-chrome.png
deleted file mode 100644
index a607757..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/admin-chrome.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/admin-firefox.png b/Day61-65/code/project_of_tornado/assets/i/examples/admin-firefox.png
deleted file mode 100644
index 157477d..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/admin-firefox.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/admin-ie.png b/Day61-65/code/project_of_tornado/assets/i/examples/admin-ie.png
deleted file mode 100644
index dc3374c..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/admin-ie.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/admin-opera.png b/Day61-65/code/project_of_tornado/assets/i/examples/admin-opera.png
deleted file mode 100644
index f9ff739..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/admin-opera.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/admin-safari.png b/Day61-65/code/project_of_tornado/assets/i/examples/admin-safari.png
deleted file mode 100644
index 5354ed8..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/admin-safari.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/adminPage.png b/Day61-65/code/project_of_tornado/assets/i/examples/adminPage.png
deleted file mode 100644
index 1b95832..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/adminPage.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/blogPage.png b/Day61-65/code/project_of_tornado/assets/i/examples/blogPage.png
deleted file mode 100644
index 96a09bb..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/blogPage.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/landing.png b/Day61-65/code/project_of_tornado/assets/i/examples/landing.png
deleted file mode 100644
index bb18e9a..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/landing.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/landingPage.png b/Day61-65/code/project_of_tornado/assets/i/examples/landingPage.png
deleted file mode 100644
index 91ca883..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/landingPage.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/loginPage.png b/Day61-65/code/project_of_tornado/assets/i/examples/loginPage.png
deleted file mode 100644
index f695210..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/loginPage.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/examples/sidebarPage.png b/Day61-65/code/project_of_tornado/assets/i/examples/sidebarPage.png
deleted file mode 100644
index 4dbdb39..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/examples/sidebarPage.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/favicon.png b/Day61-65/code/project_of_tornado/assets/i/favicon.png
deleted file mode 100644
index 0958158..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/favicon.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/i/startup-640x1096.png b/Day61-65/code/project_of_tornado/assets/i/startup-640x1096.png
deleted file mode 100644
index 953a44c..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/i/startup-640x1096.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/a5.png b/Day61-65/code/project_of_tornado/assets/img/a5.png
deleted file mode 100644
index 25afda8..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/a5.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/k.jpg b/Day61-65/code/project_of_tornado/assets/img/k.jpg
deleted file mode 100644
index 6546e88..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/k.jpg and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/logo.png b/Day61-65/code/project_of_tornado/assets/img/logo.png
deleted file mode 100644
index 5c0d189..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/logo.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/logoa.png b/Day61-65/code/project_of_tornado/assets/img/logoa.png
deleted file mode 100644
index c838876..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/logoa.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/logob.png b/Day61-65/code/project_of_tornado/assets/img/logob.png
deleted file mode 100644
index 2d6d5a0..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/logob.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/user01.png b/Day61-65/code/project_of_tornado/assets/img/user01.png
deleted file mode 100644
index 1a21a35..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/user01.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/user02.png b/Day61-65/code/project_of_tornado/assets/img/user02.png
deleted file mode 100644
index b023f02..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/user02.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/user03.png b/Day61-65/code/project_of_tornado/assets/img/user03.png
deleted file mode 100644
index 0a6ceae..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/user03.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/user04.png b/Day61-65/code/project_of_tornado/assets/img/user04.png
deleted file mode 100644
index c43998c..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/user04.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/user05.png b/Day61-65/code/project_of_tornado/assets/img/user05.png
deleted file mode 100644
index 4125fe2..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/user05.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/user06.png b/Day61-65/code/project_of_tornado/assets/img/user06.png
deleted file mode 100644
index c9f5a08..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/user06.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/img/user07.png b/Day61-65/code/project_of_tornado/assets/img/user07.png
deleted file mode 100644
index 4a4f3b9..0000000
Binary files a/Day61-65/code/project_of_tornado/assets/img/user07.png and /dev/null differ
diff --git a/Day61-65/code/project_of_tornado/assets/js/amazeui.datatables.min.js b/Day61-65/code/project_of_tornado/assets/js/amazeui.datatables.min.js
deleted file mode 100644
index e1883da..0000000
--- a/Day61-65/code/project_of_tornado/assets/js/amazeui.datatables.min.js
+++ /dev/null
@@ -1,3 +0,0 @@
-!function e(t,n,a){function r(i,s){if(!n[i]){if(!t[i]){var l="function"==typeof require&&require;if(!s&&l)return l(i,!0);if(o)return o(i,!0);var u=new Error("Cannot find module '"+i+"'");throw u.code="MODULE_NOT_FOUND",u}var c=n[i]={exports:{}};t[i][0].call(c.exports,function(e){var n=t[i][1][e];return r(n?n:e)},c,c.exports,e,t,n,a)}return n[i].exports}for(var o="function"==typeof require&&require,i=0;i<'am-u-sm-6'f>><'am-g'<'am-u-sm-12'tr>><'am-g am-datatable-footer'<'am-u-sm-5'i><'am-u-sm-7'p>>",renderer:"amazeui"}),a.extend(r.ext.classes,{sWrapper:"dataTables_wrapper am-datatable am-form-inline dt-amazeui",sFilter:"dataTables_filter am-datatable-filter",sFilterInput:"am-form-field am-input-sm",sInfo:"dataTables_info am-datatable-info",sPaging:"dataTables_paginate paging_",sLength:"dataTables_length am-form-group am-datatable-length",sLengthSelect:"am-form-select am-input-sm",sProcessing:"dataTables_processing",sSortAsc:"sorting_asc",sSortDesc:"sorting_desc",sSortable:"sorting",sSortableAsc:"sorting_asc_disabled",sSortableDesc:"sorting_desc_disabled",sSortableNone:"sorting_disabled",sSortColumn:"sorting_"}),r.ext.renderer.pageButton.amazeui=function(e,t,n,o,i,s){var l,u,c,f=new r.Api(e),d=e.oClasses,h=e.oLanguage.oPaginate,p=0,g=function(t,r){var o,c,b,v,m=function(e){e.preventDefault(),a(e.currentTarget).hasClass("am-disabled")||f.page(e.data.action).draw(!1)};for(o=0,c=r.length;o0?"":" am-disabled");break;case"previous":l=h.sPrevious,u=v+(i>0?"":" am-disabled");break;case"next":l=h.sNext,u=v+(i",{"class":d.sPageButton+" "+u,id:0===n&&"string"==typeof v?e.sTableId+"_"+v:null}).append(a("",{href:"#","aria-controls":e.sTableId,"data-dt-idx":p,tabindex:e.iTabIndex}).html(l)).appendTo(t),e.oApi._fnBindAction(b,{action:v},m),p++)}};try{c=a(document.activeElement).data("dt-idx")}catch(b){}g(a(t).empty().html('').children("ul"),o),c&&a(t).find("[data-dt-idx="+c+"]").focus()},r.TableTools&&(a.extend(!0,r.TableTools.classes,{container:"DTTT am-btn-group",buttons:{normal:"am-btn am-btn-default",disabled:"am-disabled"},collection:{container:"DTTT_dropdown dropdown-menu",buttons:{normal:"",disabled:"am-disabled"}},print:{info:"DTTT_print_info"},select:{row:"am-active"}}),a.extend(!0,r.TableTools.DEFAULTS.oTags,{collection:{container:"ul",button:"li",liner:"a"}})),t.exports=r}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{datatables:2}],2:[function(e,t,n){(function(e){!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],function(e){return a(e,window,document)}):"object"==typeof n?t.exports=function(t,n){return t||(t=window),n||(n="undefined"!=typeof window?"undefined"!=typeof window?window.jQuery:"undefined"!=typeof e?e.jQuery:null:("undefined"!=typeof window?window.jQuery:"undefined"!=typeof e?e.jQuery:null)(t)),a(n,t,t.document)}:a(jQuery,window,document)}(function(e,t,n,a){"use strict";function r(t){var n,a,o="a aa ai ao as b fn i m o s ",i={};e.each(t,function(e,s){n=e.match(/^([^A-Z]+?)([A-Z])/),n&&o.indexOf(n[1]+" ")!==-1&&(a=e.replace(n[0],n[2].toLowerCase()),i[a]=e,"o"===n[1]&&r(t[e]))}),t._hungarianMap=i}function o(t,n,i){t._hungarianMap||r(t);var s;e.each(n,function(r,l){s=t._hungarianMap[r],s===a||!i&&n[s]!==a||("o"===s.charAt(0)?(n[s]||(n[s]={}),e.extend(!0,n[s],n[r]),o(t[s],n[s],i)):n[s]=n[r])})}function i(e){var t=ze.defaults.oLanguage,n=e.sZeroRecords;!e.sEmptyTable&&n&&"No data available in table"===t.sEmptyTable&&je(e,e,"sZeroRecords","sEmptyTable"),!e.sLoadingRecords&&n&&"Loading..."===t.sLoadingRecords&&je(e,e,"sZeroRecords","sLoadingRecords"),e.sInfoThousands&&(e.sThousands=e.sInfoThousands);var a=e.sDecimal;a&&Be(a)}function s(e){pt(e,"ordering","bSort"),pt(e,"orderMulti","bSortMulti"),pt(e,"orderClasses","bSortClasses"),pt(e,"orderCellsTop","bSortCellsTop"),pt(e,"order","aaSorting"),pt(e,"orderFixed","aaSortingFixed"),pt(e,"paging","bPaginate"),pt(e,"pagingType","sPaginationType"),pt(e,"pageLength","iDisplayLength"),pt(e,"searching","bFilter"),"boolean"==typeof e.sScrollX&&(e.sScrollX=e.sScrollX?"100%":""),"boolean"==typeof e.scrollX&&(e.scrollX=e.scrollX?"100%":"");var t=e.aoSearchCols;if(t)for(var n=0,a=t.length;n ").css({position:"fixed",top:0,left:0,height:1,width:1,overflow:"hidden"}).append(e("
").css({position:"absolute",top:1,left:1,width:100,overflow:"scroll"}).append(e("
").css({width:"100%",height:10}))).appendTo("body"),r=a.children(),o=r.children();n.barWidth=r[0].offsetWidth-r[0].clientWidth,n.bScrollOversize=100===o[0].offsetWidth&&100!==r[0].clientWidth,n.bScrollbarLeft=1!==Math.round(o.offset().left),n.bBounding=!!a[0].getBoundingClientRect().width,a.remove()}e.extend(t.oBrowser,ze.__browser),t.oScroll.iBarWidth=ze.__browser.barWidth}function c(e,t,n,r,o,i){var s,l=r,u=!1;for(n!==a&&(s=n,u=!0);l!==o;)e.hasOwnProperty(l)&&(s=u?t(s,e[l],l,e):e[l],u=!0,l+=i);return s}function f(t,a){var r=ze.defaults.column,o=t.aoColumns.length,i=e.extend({},ze.models.oColumn,r,{nTh:a?a:n.createElement("th"),sTitle:r.sTitle?r.sTitle:a?a.innerHTML:"",aDataSort:r.aDataSort?r.aDataSort:[o],mData:r.mData?r.mData:o,idx:o});t.aoColumns.push(i);var s=t.aoPreSearchCols;s[o]=e.extend({},ze.models.oSearch,s[o]),d(t,o,e(a).data())}function d(t,n,r){var i=t.aoColumns[n],s=t.oClasses,u=e(i.nTh);if(!i.sWidthOrig){i.sWidthOrig=u.attr("width")||null;var c=(u.attr("style")||"").match(/width:\s*(\d+[pxem%]+)/);c&&(i.sWidthOrig=c[1])}r!==a&&null!==r&&(l(r),o(ze.defaults.column,r),r.mDataProp===a||r.mData||(r.mData=r.mDataProp),r.sType&&(i._sManualType=r.sType),r.className&&!r.sClass&&(r.sClass=r.className),e.extend(i,r),je(i,r,"sWidth","sWidthOrig"),r.iDataSort!==a&&(i.aDataSort=[r.iDataSort]),je(i,r,"aDataSort"));var f=i.mData,d=I(f),h=i.mRender?I(i.mRender):null,p=function(e){return"string"==typeof e&&e.indexOf("@")!==-1};i._bAttrSrc=e.isPlainObject(f)&&(p(f.sort)||p(f.type)||p(f.filter)),i._setter=null,i.fnGetData=function(e,t,n){var r=d(e,t,a,n);return h&&t?h(r,t,e,n):r},i.fnSetData=function(e,t,n){return A(f)(e,t,n)},"number"!=typeof f&&(t._rowReadObject=!0),t.oFeatures.bSort||(i.bSortable=!1,u.addClass(s.sSortableNone));var g=e.inArray("asc",i.asSorting)!==-1,b=e.inArray("desc",i.asSorting)!==-1;i.bSortable&&(g||b)?g&&!b?(i.sSortingClass=s.sSortableAsc,i.sSortingClassJUI=s.sSortJUIAscAllowed):!g&&b?(i.sSortingClass=s.sSortableDesc,i.sSortingClassJUI=s.sSortJUIDescAllowed):(i.sSortingClass=s.sSortable,i.sSortingClassJUI=s.sSortJUI):(i.sSortingClass=s.sSortableNone,i.sSortingClassJUI="")}function h(e){if(e.oFeatures.bAutoWidth!==!1){var t=e.aoColumns;ve(e);for(var n=0,a=t.length;n =0;i--){h=n[i];var g=h.targets!==a?h.targets:h.aTargets;for(e.isArray(g)||(g=[g]),l=0,u=g.length;l=0){for(;p.length<=g[l];)f(t);o(g[l],h)}else if("number"==typeof g[l]&&g[l]<0)o(p.length+g[l],h);else if("string"==typeof g[l])for(c=0,d=p.length;ct&&e[o]--;r!=-1&&n===a&&e.splice(r,1)}function R(e,t,n,r){var o,i,s=e.aoData[t],l=function(n,a){for(;n.childNodes.length;)n.removeChild(n.firstChild);n.innerHTML=w(e,t,a,"display")};if("dom"!==n&&(n&&"auto"!==n||"dom"!==s.src)){var u=s.anCells;if(u)if(r!==a)l(u[r],r);else for(o=0,i=u.length;o ").appendTo(s)),n=0,a=f.length;ntr").attr("role","row"),e(s).find(">tr>th, >tr>td").addClass(c.sHeaderTH),e(l).find(">tr>th, >tr>td").addClass(c.sFooterTH),null!==l){var d=t.aoFooter[0];for(n=0,a=d.length;n =0;s--)t.aoColumns[s].bVisible||r||p[o].splice(s,1);g.push([])}for(o=0,i=p.length;o=t.fnRecordsDisplay()?0:u,t.iInitDisplayStart=-1);var d=t._iDisplayStart,h=t.fnDisplayEnd();if(t.bDeferLoading)t.bDeferLoading=!1,t.iDraw++,he(t,!1);else if(c){if(!t.bDestroying&&!V(t))return}else t.iDraw++;if(0!==f.length)for(var p=c?0:d,g=c?t.aoData.length:h,v=p;v",{"class":s?i[0]:""}).append(e(" ",{valign:"top",colSpan:b(t),"class":t.oClasses.sRowEmpty}).html(_))[0]}ke(t,"aoHeaderCallback","header",[e(t.nTHead).children("tr")[0],F(t),d,h,f]),ke(t,"aoFooterCallback","footer",[e(t.nTFoot).children("tr")[0],F(t),d,h,f]);var T=e(t.nTBody);T.children().detach(),T.append(e(r)),ke(t,"aoDrawCallback","draw",[t]),t.bSorted=!1,t.bFiltered=!1,t.bDrawing=!1}function W(e,t){var n=e.oFeatures,a=n.bSort,r=n.bFilter;a&&Te(e),r?$(e,e.oPreviousSearch):e.aiDisplay=e.aiDisplayMaster.slice(),t!==!0&&(e._iDisplayStart=0),e._drawHold=t,M(e),e._drawHold=!1}function U(t){var n=t.oClasses,a=e(t.nTable),r=e("
").insertBefore(a),o=t.oFeatures,i=e("
",{id:t.sTableId+"_wrapper","class":n.sWrapper+(t.nTFoot?"":" "+n.sNoFooter)});t.nHolding=r[0],t.nTableWrapper=i[0],t.nTableReinsertBefore=t.nTable.nextSibling;for(var s,l,u,c,f,d,h=t.sDom.split(""),p=0;p ")[0],c=h[p+1],"'"==c||'"'==c){for(f="",d=2;h[p+d]!=c;)f+=h[p+d],d++;if("H"==f?f=n.sJUIHeader:"F"==f&&(f=n.sJUIFooter),f.indexOf(".")!=-1){var g=f.split(".");u.id=g[0].substr(1,g[0].length-1),u.className=g[1]}else"#"==f.charAt(0)?u.id=f.substr(1,f.length-1):u.className=f;p+=d}i.append(u),i=e(u)}else if(">"==l)i=i.parent();else if("l"==l&&o.bPaginate&&o.bLengthChange)s=ue(t);else if("f"==l&&o.bFilter)s=z(t);else if("r"==l&&o.bProcessing)s=de(t);else if("t"==l)s=pe(t);else if("i"==l&&o.bInfo)s=ae(t);else if("p"==l&&o.bPaginate)s=ce(t);else if(0!==ze.ext.feature.length)for(var b=ze.ext.feature,v=0,m=b.length;v ',u=o.sSearch;u=u.match(/_INPUT_/)?u.replace("_INPUT_",l):u+l;var c=e("
",{id:s.f?null:r+"_filter","class":a.sFilter}).append(e(" ").append(u)),f=function(){var e=(s.f,this.value?this.value:"");e!=i.sSearch&&($(t,{sSearch:e,bRegex:i.bRegex,bSmart:i.bSmart,bCaseInsensitive:i.bCaseInsensitive}),t._iDisplayStart=0,M(t))},d=null!==t.searchDelay?t.searchDelay:"ssp"===Ue(t)?400:0,h=e("input",c).val(i.sSearch).attr("placeholder",o.sSearchPlaceholder).bind("keyup.DT search.DT input.DT paste.DT cut.DT",d?yt(f,d):f).bind("keypress.DT",function(e){if(13==e.keyCode)return!1}).attr("aria-controls",r);return e(t.nTable).on("search.dt.DT",function(e,a){if(t===a)try{h[0]!==n.activeElement&&h.val(i.sSearch)}catch(r){}}),c[0]}function $(e,t,n){var r=e.oPreviousSearch,o=e.aoPreSearchCols,i=function(e){r.sSearch=e.sSearch,r.bRegex=e.bRegex,r.bSmart=e.bSmart,r.bCaseInsensitive=e.bCaseInsensitive},s=function(e){return e.bEscapeRegex!==a?!e.bEscapeRegex:e.bRegex};if(m(e),"ssp"!=Ue(e)){Z(e,t.sSearch,n,s(t),t.bSmart,t.bCaseInsensitive),i(t);for(var l=0;l=0;u--)i=e.aoData[s[u]]._aFilterData[n],l.test(i)||s.splice(u,1)}function Z(e,t,n,a,r,o){var i,s,l,u=K(t,a,r,o),c=e.oPreviousSearch.sSearch,f=e.aiDisplayMaster;if(0!==ze.ext.search.length&&(n=!0),s=ee(e),t.length<=0)e.aiDisplay=f.slice();else for((s||n||c.length>t.length||0!==t.indexOf(c)||e.bSorted)&&(e.aiDisplay=f.slice()),i=e.aiDisplay,l=i.length-1;l>=0;l--)u.test(e.aoData[i[l]]._sFilterRow)||i.splice(l,1)}function K(t,n,a,r){if(t=n?t:vt(t),a){var o=e.map(t.match(/"[^"]+"|[^ ]+/g)||[""],function(e){if('"'===e.charAt(0)){var t=e.match(/^"(.*)"$/);e=t?t[1]:e}return e.replace('"',"")});t="^(?=.*?"+o.join(")(?=.*?")+").*$"}return new RegExp(t,r?"i":"")}function ee(e){var t,n,a,r,o,i,s,l,u=e.aoColumns,c=ze.ext.type.search,f=!1;for(n=0,r=e.aoData.length;n",{"class":t.oClasses.sInfo,id:a?null:n+"_info"});return a||(t.aoDrawCallback.push({fn:re,sName:"information"}),r.attr("role","status").attr("aria-live","polite"),e(t.nTable).attr("aria-describedby",n+"_info")),r[0]}function re(t){var n=t.aanFeatures.i;if(0!==n.length){var a=t.oLanguage,r=t._iDisplayStart+1,o=t.fnDisplayEnd(),i=t.fnRecordsTotal(),s=t.fnRecordsDisplay(),l=s?a.sInfo:a.sInfoEmpty;s!==i&&(l+=" "+a.sInfoFiltered),l+=a.sInfoPostFix,l=oe(t,l);var u=a.fnInfoCallback;null!==u&&(l=u.call(t.oInstance,t,r,o,i,s,l)),e(n).html(l)}}function oe(e,t){var n=e.fnFormatNumber,a=e._iDisplayStart+1,r=e._iDisplayLength,o=e.fnRecordsDisplay(),i=r===-1;return t.replace(/_START_/g,n.call(e,a)).replace(/_END_/g,n.call(e,e.fnDisplayEnd())).replace(/_MAX_/g,n.call(e,e.fnRecordsTotal())).replace(/_TOTAL_/g,n.call(e,o)).replace(/_PAGE_/g,n.call(e,i?1:Math.ceil(a/r))).replace(/_PAGES_/g,n.call(e,i?1:Math.ceil(o/r)))}function ie(e){var t,n,a,r=e.iInitDisplayStart,o=e.aoColumns,i=e.oFeatures,s=e.bDeferLoading;if(!e.bInitialised)return void setTimeout(function(){ie(e)},200);for(U(e),O(e),k(e,e.aoHeader),k(e,e.aoFooter),he(e,!0),i.bAutoWidth&&ve(e),t=0,n=o.length;t",{name:a+"_length","aria-controls":a,"class":n.sLengthSelect}),u=0,c=i.length;u ").addClass(n.sLength);return t.aanFeatures.l||(f[0].id=a+"_length"),f.children().append(t.oLanguage.sLengthMenu.replace("_MENU_",l[0].outerHTML)),e("select",f).val(t._iDisplayLength).bind("change.DT",function(n){le(t,e(this).val()),M(t)}),e(t.nTable).bind("length.dt.DT",function(n,a,r){t===a&&e("select",f).val(r)}),f[0]}function ce(t){var n=t.sPaginationType,a=ze.ext.pager[n],r="function"==typeof a,o=function(e){M(e)},i=e("
").addClass(t.oClasses.sPaging+n)[0],s=t.aanFeatures;return r||a.fnInit(t,i,o),s.p||(i.id=t.sTableId+"_paginate",t.aoDrawCallback.push({fn:function(e){if(r){var t,n,i=e._iDisplayStart,l=e._iDisplayLength,u=e.fnRecordsDisplay(),c=l===-1,f=c?0:Math.ceil(i/l),d=c?1:Math.ceil(u/l),h=a(f,d);for(t=0,n=s.p.length;to&&(a=0)):"first"==t?a=0:"previous"==t?(a=r>=0?a-r:0,a<0&&(a=0)):"next"==t?a+r ",{id:t.aanFeatures.r?null:t.sTableId+"_processing","class":t.oClasses.sProcessing}).html(t.oLanguage.sProcessing).insertBefore(t.nTable)[0]}function he(t,n){t.oFeatures.bProcessing&&e(t.aanFeatures.r).css("display",n?"block":"none"),ke(t,null,"processing",[t,n])}function pe(t){var n=e(t.nTable);n.attr("role","grid");var a=t.oScroll;if(""===a.sX&&""===a.sY)return t.nTable;var r=a.sX,o=a.sY,i=t.oClasses,s=n.children("caption"),l=s.length?s[0]._captionSide:null,u=e(n[0].cloneNode(!1)),c=e(n[0].cloneNode(!1)),f=n.children("tfoot"),d="
",h=function(e){return e?ye(e):null};f.length||(f=null);var p=e(d,{"class":i.sScrollWrapper}).append(e(d,{"class":i.sScrollHead}).css({overflow:"hidden",position:"relative",border:0,width:r?h(r):"100%"}).append(e(d,{"class":i.sScrollHeadInner}).css({"box-sizing":"content-box",width:a.sXInner||"100%"}).append(u.removeAttr("id").css("margin-left",0).append("top"===l?s:null).append(n.children("thead"))))).append(e(d,{"class":i.sScrollBody}).css({position:"relative",overflow:"auto",width:h(r)}).append(n));f&&p.append(e(d,{"class":i.sScrollFoot}).css({overflow:"hidden",border:0,width:r?h(r):"100%"}).append(e(d,{"class":i.sScrollFootInner}).append(c.removeAttr("id").css("margin-left",0).append("bottom"===l?s:null).append(n.children("tfoot")))));var g=p.children(),b=g[0],v=g[1],m=f?g[2]:null;return r&&e(v).on("scroll.DT",function(e){var t=this.scrollLeft;b.scrollLeft=t,f&&(m.scrollLeft=t)}),e(v).css(o&&a.bCollapse?"max-height":"height",o),t.nScrollHead=b,t.nScrollBody=v,t.nScrollFoot=m,t.aoDrawCallback.push({fn:ge,sName:"scrolling"}),p[0]}function ge(t){var n,r,o,i,s,l,u,c,f,d=t.oScroll,g=d.sX,b=d.sXInner,v=d.sY,m=d.iBarWidth,S=e(t.nScrollHead),D=S[0].style,y=S.children("div"),_=y[0].style,T=y.children("table"),w=t.nScrollBody,C=e(w),x=w.style,I=e(t.nScrollFoot),A=I.children("div"),F=A.children("table"),L=e(t.nTHead),P=e(t.nTable),R=P[0],j=R.style,H=t.nTFoot?e(t.nTFoot):null,N=t.oBrowser,O=N.bScrollOversize,k=lt(t.aoColumns,"nTh"),M=[],W=[],U=[],E=[],J=function(e){var t=e.style;t.paddingTop="0",t.paddingBottom="0",t.borderTopWidth="0",t.borderBottomWidth="0",t.height=0},V=w.scrollHeight>w.clientHeight;if(t.scrollBarVis!==V&&t.scrollBarVis!==a)return t.scrollBarVis=V,void h(t);t.scrollBarVis=V,P.children("thead, tfoot").remove(),H&&(l=H.clone().prependTo(P),r=H.find("tr"),i=l.find("tr")),s=L.clone().prependTo(P),n=L.find("tr"),o=s.find("tr"),s.find("th, td").removeAttr("tabindex"),g||(x.width="100%",S[0].style.width="100%"),e.each(B(t,s),function(e,n){u=p(t,e),n.style.width=t.aoColumns[u].sWidth}),H&&be(function(e){e.style.width=""},i),f=P.outerWidth(),""===g?(j.width="100%",O&&(P.find("tbody").height()>w.offsetHeight||"scroll"==C.css("overflow-y"))&&(j.width=ye(P.outerWidth()-m)),f=P.outerWidth()):""!==b&&(j.width=ye(b),f=P.outerWidth()),be(J,o),be(function(t){U.push(t.innerHTML),M.push(ye(e(t).css("width")))},o),be(function(t,n){e.inArray(t,k)!==-1&&(t.style.width=M[n])},n),e(o).height(0),H&&(be(J,i),be(function(t){E.push(t.innerHTML),W.push(ye(e(t).css("width")))},i),be(function(e,t){e.style.width=W[t]},r),e(i).height(0)),be(function(e,t){e.innerHTML=''+U[t]+"
",e.style.width=M[t]},o),H&&be(function(e,t){e.innerHTML=''+E[t]+"
",e.style.width=W[t]},i),P.outerWidth()w.offsetHeight||"scroll"==C.css("overflow-y")?f+m:f,O&&(w.scrollHeight>w.offsetHeight||"scroll"==C.css("overflow-y"))&&(j.width=ye(c-m)),""!==g&&""===b||Re(t,1,"Possible column misalignment",6)):c="100%",x.width=ye(c),D.width=ye(c),H&&(t.nScrollFoot.style.width=ye(c)),v||O&&(x.height=ye(R.offsetHeight+m));var X=P.outerWidth();T[0].style.width=ye(X),_.width=ye(X);var q=P.height()>w.clientHeight||"scroll"==C.css("overflow-y"),G="padding"+(N.bScrollbarLeft?"Left":"Right");
-_[G]=q?m+"px":"0px",H&&(F[0].style.width=ye(X),A[0].style.width=ye(X),A[0].style[G]=q?m+"px":"0px"),P.children("colgroup").insertBefore(P.children("thead")),C.scroll(),!t.bSorted&&!t.bFiltered||t._drawHold||(w.scrollTop=0)}function be(e,t,n){for(var a,r,o=0,i=0,s=t.length;i").appendTo(x.find("tbody"));for(x.find("thead, tfoot").remove(),x.append(e(n.nTHead).clone()).append(e(n.nTFoot).clone()),x.find("tfoot th, tfoot td").css("width",""),m=B(n,x.find("thead")[0]),a=0;a ").css({width:r.sWidthOrig,margin:0,padding:0,border:0,height:1}));if(n.aoData.length)for(a=0;a").css(c||u?{position:"absolute",top:0,left:0,height:1,right:0,overflow:"hidden"}:{}).append(x).appendTo(D);c&&f?x.width(f):c?(x.css("width","auto"),x.removeAttr("width"),x.width()").css("width",ye(t)).appendTo(a||n.body),o=r[0].offsetWidth;return r.remove(),o}function Se(t,n){var a=De(t,n);if(a<0)return null;var r=t.aoData[a];return r.nTr?r.anCells[n]:e(" ").html(w(t,a,n,"display"))[0]}function De(e,t){for(var n,a=-1,r=-1,o=0,i=e.aoData.length;oa&&(a=n.length,r=o);return r}function ye(e){return null===e?"0px":"number"==typeof e?e<0?"0px":e+"px":e.match(/\d$/)?e+"px":e}function _e(t){var n,r,o,i,s,l,u,c=[],f=t.aoColumns,d=t.aaSortingFixed,h=e.isPlainObject(d),p=[],g=function(t){t.length&&!e.isArray(t[0])?p.push(t):e.merge(p,t)};for(e.isArray(d)&&g(d),h&&d.pre&&g(d.pre),g(t.aaSorting),h&&d.post&&g(d.post),n=0;n a?1:0,0!==s)return"asc"===u.dir?s:-s;return n=i[e],a=i[t],na?1:0}):c.sort(function(e,t){var n,a,r,u,c,f,d=o.length,h=l[e]._aSortData,p=l[t]._aSortData;for(r=0;ra?1:0})}e.bSorted=!0}function we(e){for(var t,n,a=e.aoColumns,r=_e(e),o=e.oLanguage.oAria,i=0,s=a.length;i/g,""),f=l.nTh;f.removeAttribute("aria-sort"),l.bSortable?(r.length>0&&r[0].col==i?(f.setAttribute("aria-sort","asc"==r[0].dir?"ascending":"descending"),n=u[r[0].index+1]||u[0]):n=u[0],t=c+("asc"===n?o.sSortAscending:o.sSortDescending)):t=c,f.setAttribute("aria-label",t)}}function Ce(t,n,r,o){var i,s=t.aoColumns[n],l=t.aaSorting,u=s.asSorting,c=function(t,n){var r=t._idx;return r===a&&(r=e.inArray(t[1],u)),r+10&&s.time<+new Date-1e3*u)&&i.length===s.columns.length){for(t.oLoadedState=e.extend(!0,{},s),s.start!==a&&(t._iDisplayStart=s.start,t.iInitDisplayStart=s.start),s.length!==a&&(t._iDisplayLength=s.length),s.order!==a&&(t.aaSorting=[],e.each(s.order,function(e,n){t.aaSorting.push(n[0]>=i.length?[0,n[1]]:n)})),s.search!==a&&e.extend(t.oPreviousSearch,ne(s.search)),r=0,o=s.columns.length;r=n&&(t=n-a),t-=t%a,(a===-1||t<0)&&(t=0),e._iDisplayStart=t}function We(t,n){var a=t.renderer,r=ze.ext.renderer[n];return e.isPlainObject(a)&&a[n]?r[a[n]]||r._:"string"==typeof a?r[a]||r._:r._}function Ue(e){return e.oFeatures.bServerSide?"ssp":e.ajax||e.sAjaxSource?"ajax":"dom"}function Ee(e,t){var n=[],a=Vt.numbers_length,r=Math.floor(a/2);return t<=a?n=ct(0,t):e<=r?(n=ct(0,a-2),n.push("ellipsis"),n.push(t-1)):e>=t-1-r?(n=ct(t-(a-2),t),n.splice(0,0,"ellipsis"),n.splice(0,0,0)):(n=ct(e-r+2,e+r-1),n.push("ellipsis"),n.push(t-1),n.splice(0,0,"ellipsis"),n.splice(0,0,0)),n.DT_el="span",n}function Be(t){e.each({num:function(e){return Xt(e,t)},"num-fmt":function(e){return Xt(e,t,tt)},"html-num":function(e){return Xt(e,t,Ye)},"html-num-fmt":function(e){return Xt(e,t,Ye,tt)}},function(e,n){Ve.type.order[e+t+"-pre"]=n,e.match(/^html\-/)&&(Ve.type.search[e+t]=Ve.type.search.html)})}function Je(e){return function(){var t=[Pe(this[ze.ext.iApiIndex])].concat(Array.prototype.slice.call(arguments));return ze.ext.internal[e].apply(this,t)}}var Ve,Xe,qe,Ge,ze=function(t){this.$=function(e,t){return this.api(!0).$(e,t)},this._=function(e,t){return this.api(!0).rows(e,t).data()},this.api=function(e){return new Xe(e?Pe(this[Ve.iApiIndex]):this)},this.fnAddData=function(t,n){var r=this.api(!0),o=e.isArray(t)&&(e.isArray(t[0])||e.isPlainObject(t[0]))?r.rows.add(t):r.row.add(t);return(n===a||n)&&r.draw(),o.flatten().toArray()},this.fnAdjustColumnSizing=function(e){var t=this.api(!0).columns.adjust(),n=t.settings()[0],r=n.oScroll;e===a||e?t.draw(!1):""===r.sX&&""===r.sY||ge(n)},this.fnClearTable=function(e){var t=this.api(!0).clear();(e===a||e)&&t.draw()},this.fnClose=function(e){this.api(!0).row(e).child.hide()},this.fnDeleteRow=function(e,t,n){var r=this.api(!0),o=r.rows(e),i=o.settings()[0],s=i.aoData[o[0][0]];return o.remove(),t&&t.call(this,i,s),(n===a||n)&&r.draw(),s},this.fnDestroy=function(e){this.api(!0).destroy(e)},this.fnDraw=function(e){this.api(!0).draw(e)},this.fnFilter=function(e,t,n,r,o,i){var s=this.api(!0);null===t||t===a?s.search(e,n,r,i):s.column(t).search(e,n,r,i),s.draw()},this.fnGetData=function(e,t){var n=this.api(!0);if(e!==a){var r=e.nodeName?e.nodeName.toLowerCase():"";return t!==a||"td"==r||"th"==r?n.cell(e,t).data():n.row(e).data()||null}return n.data().toArray()},this.fnGetNodes=function(e){var t=this.api(!0);return e!==a?t.row(e).node():t.rows().nodes().flatten().toArray()},this.fnGetPosition=function(e){var t=this.api(!0),n=e.nodeName.toUpperCase();if("TR"==n)return t.row(e).index();if("TD"==n||"TH"==n){var a=t.cell(e).index();return[a.row,a.columnVisible,a.column]}return null},this.fnIsOpen=function(e){return this.api(!0).row(e).child.isShown()},this.fnOpen=function(e,t,n){return this.api(!0).row(e).child(t,n).show().child()[0]},this.fnPageChange=function(e,t){var n=this.api(!0).page(e);(t===a||t)&&n.draw(!1)},this.fnSetColumnVis=function(e,t,n){var r=this.api(!0).column(e).visible(t);(n===a||n)&&r.columns.adjust().draw()},this.fnSettings=function(){return Pe(this[Ve.iApiIndex])},this.fnSort=function(e){this.api(!0).order(e).draw()},this.fnSortListener=function(e,t,n){this.api(!0).order.listener(e,t,n)},this.fnUpdate=function(e,t,n,r,o){var i=this.api(!0);return n===a||null===n?i.row(t).data(e):i.cell(t,n).data(e),(o===a||o)&&i.columns.adjust(),(r===a||r)&&i.draw(),0},this.fnVersionCheck=Ve.fnVersionCheck;var n=this,r=t===a,c=this.length;r&&(t={}),this.oApi=this.internal=Ve.internal;for(var h in ze.ext.internal)h&&(this[h]=Je(h));return this.each(function(){var h,p={},g=c>1?He(p,t,!0):t,b=0,v=this.getAttribute("id"),m=!1,_=ze.defaults,T=e(this);if("table"!=this.nodeName.toLowerCase())return void Re(null,0,"Non-table node initialisation ("+this.nodeName+")",2);s(_),l(_.column),o(_,_,!0),o(_.column,_.column,!0),o(_,e.extend(g,T.data()));var w=ze.settings;for(b=0,h=w.length;bt<"F"ip>'),F.renderer?e.isPlainObject(F.renderer)&&!F.renderer.header&&(F.renderer.header="jqueryui"):F.renderer="jqueryui"):e.extend(L,ze.ext.classes,g.oClasses),T.addClass(L.sTable),F.iInitDisplayStart===a&&(F.iInitDisplayStart=g.iDisplayStart,F._iDisplayStart=g.iDisplayStart),null!==g.iDeferLoading){F.bDeferLoading=!0;var P=e.isArray(g.iDeferLoading);F._iRecordsDisplay=P?g.iDeferLoading[0]:g.iDeferLoading,F._iRecordsTotal=P?g.iDeferLoading[1]:g.iDeferLoading}var R=F.oLanguage;e.extend(!0,R,g.oLanguage),""!==R.sUrl&&(e.ajax({dataType:"json",url:R.sUrl,success:function(t){i(t),o(_.oLanguage,t),e.extend(!0,R,t),ie(F)},error:function(){ie(F)}}),m=!0),null===g.asStripeClasses&&(F.asStripeClasses=[L.sStripeOdd,L.sStripeEven]);var j=F.asStripeClasses,H=T.children("tbody").find("tr").eq(0);e.inArray(!0,e.map(j,function(e,t){return H.hasClass(e)}))!==-1&&(e("tbody tr",this).removeClass(j.join(" ")),F.asDestroyStripes=j.slice());var N,O=[],k=this.getElementsByTagName("thead");if(0!==k.length&&(E(F.aoHeader,k[0]),O=B(F)),null===g.aoColumns)for(N=[],b=0,h=O.length;b").appendTo(this)),F.nTHead=V[0];var X=T.children("tbody");0===X.length&&(X=e(" ").appendTo(this)),F.nTBody=X[0];var q=T.children("tfoot");if(0===q.length&&J.length>0&&(""!==F.oScroll.sX||""!==F.oScroll.sY)&&(q=e(" ").appendTo(this)),0===q.length||0===q.children().length?T.addClass(L.sNoFooter):q.length>0&&(F.nTFoot=q[0],E(F.aoFooter,F.nTFoot)),g.aaData)for(b=0;b/g,Ze=/^[\w\+\-]/,Ke=/[\w\+\-]$/,et=new RegExp("(\\"+["/",".","*","+","?","|","(",")","[","]","{","}","\\","$","^","-"].join("|\\")+")","g"),tt=/[',$£€¥%\u2009\u202F\u20BD\u20a9\u20BArfk]/gi,nt=function(e){return!e||e===!0||"-"===e},at=function(e){var t=parseInt(e,10);return!isNaN(t)&&isFinite(e)?t:null},rt=function(e,t){return $e[t]||($e[t]=new RegExp(vt(t),"g")),"string"==typeof e&&"."!==t?e.replace(/\./g,"").replace($e[t],"."):e},ot=function(e,t,n){var a="string"==typeof e;return!!nt(e)||(t&&a&&(e=rt(e,t)),n&&a&&(e=e.replace(tt,"")),!isNaN(parseFloat(e))&&isFinite(e))},it=function(e){return nt(e)||"string"==typeof e},st=function(e,t,n){if(nt(e))return!0;var a=it(e);return a?!!ot(dt(e),t,n)||null:null},lt=function(e,t,n){var r=[],o=0,i=e.length;if(n!==a)for(;o")[0],St=mt.textContent!==a,Dt=/<.*?>/g,yt=ze.util.throttle,_t=[],Tt=Array.prototype,wt=function(t){var n,a,r=ze.settings,o=e.map(r,function(e,t){return e.nTable});return t?t.nTable&&t.oApi?[t]:t.nodeName&&"table"===t.nodeName.toLowerCase()?(n=e.inArray(t,o),n!==-1?[r[n]]:null):t&&"function"==typeof t.settings?t.settings().toArray():("string"==typeof t?a=e(t):t instanceof e&&(a=t),a?a.map(function(t){return n=e.inArray(this,o),n!==-1?r[n]:null}).toArray():void 0):[]};Xe=function(t,n){if(!(this instanceof Xe))return new Xe(t,n);var a=[],r=function(e){var t=wt(e);t&&(a=a.concat(t))};if(e.isArray(t))for(var o=0,i=t.length;oe?new Xe(t[e],this[e]):null},filter:function(e){var t=[];if(Tt.filter)t=Tt.filter.call(this,e,this);else for(var n=0,a=this.length;n0)return e[0].json}),qe("ajax.params()",function(){var e=this.context;if(e.length>0)return e[0].oAjaxData}),qe("ajax.reload()",function(e,t){return this.iterator("table",function(n){xt(n,t===!1,e)})}),qe("ajax.url()",function(t){var n=this.context;return t===a?0===n.length?a:(n=n[0],n.ajax?e.isPlainObject(n.ajax)?n.ajax.url:n.ajax:n.sAjaxSource):this.iterator("table",function(n){e.isPlainObject(n.ajax)?n.ajax.url=t:n.ajax=t})}),qe("ajax.url().load()",function(e,t){return this.iterator("table",function(n){xt(n,t===!1,e)})});var It=function(t,n,r,o,i){var s,l,u,c,f,d,h=[],p=typeof n;for(n&&"string"!==p&&"function"!==p&&n.length!==a||(n=[n]),u=0,c=n.length;u0)return e[0]=e[t],e[0].length=1,e.length=1,e.context=[e.context[t]],e;return e.length=0,e},Lt=function(t,n){var a,r,o,i=[],s=t.aiDisplay,l=t.aiDisplayMaster,u=n.search,c=n.order,f=n.page;if("ssp"==Ue(t))return"removed"===u?[]:ct(0,l.length);if("current"==f)for(a=t._iDisplayStart,r=t.fnDisplayEnd();a=0&&"applied"==u)&&i.push(a));return i},Pt=function(t,n,r){var o=function(n){var o=at(n);if(null!==o&&!r)return[o];var i=Lt(t,r);if(null!==o&&e.inArray(o,i)!==-1)return[o];if(!n)return i;if("function"==typeof n)return e.map(i,function(e){var a=t.aoData[e];return n(e,a._aData,a.nTr)?e:null});var s=ft(ut(t.aoData,i,"nTr"));if(n.nodeName){if(n._DT_RowIndex!==a)return[n._DT_RowIndex];if(n._DT_CellIndex)return[n._DT_CellIndex.row];var l=e(n).closest("*[data-dt-row]");return l.length?[l.data("dt-row")]:[]}if("string"==typeof n&&"#"===n.charAt(0)){var u=t.aIds[n.replace(/^#/,"")];if(u!==a)return[u.idx]}return e(s).filter(n).map(function(){return this._DT_RowIndex}).toArray()};return It("row",n,o,t,r)};qe("rows()",function(t,n){t===a?t="":e.isPlainObject(t)&&(n=t,t=""),n=At(n);var r=this.iterator("table",function(e){return Pt(e,t,n)},1);return r.selector.rows=t,r.selector.opts=n,r}),qe("rows().nodes()",function(){return this.iterator("row",function(e,t){return e.aoData[t].nTr||a},1)}),qe("rows().data()",function(){return this.iterator(!0,"rows",function(e,t){return ut(e.aoData,t,"_aData")},1)}),Ge("rows().cache()","row().cache()",function(e){return this.iterator("row",function(t,n){var a=t.aoData[n];return"search"===e?a._aFilterData:a._aSortData},1)}),Ge("rows().invalidate()","row().invalidate()",function(e){return this.iterator("row",function(t,n){R(t,n,e)})}),Ge("rows().indexes()","row().index()",function(){return this.iterator("row",function(e,t){return t},1)}),Ge("rows().ids()","row().id()",function(e){for(var t=[],n=this.context,a=0,r=n.length;a ").addClass(a);e("td",l).addClass(a).html(n)[0].colSpan=b(t),o.push(l[0])}};i(a,r),n._details&&n._details.remove(),n._details=e(o),n._detailsShow&&n._details.insertAfter(n.nTr)},jt=function(e,t){var n=e.context;if(n.length){var r=n[0].aoData[t!==a?t:e[0]];r&&r._details&&(r._details.remove(),r._detailsShow=a,r._details=a)}},Ht=function(e,t){var n=e.context;if(n.length&&e.length){var a=n[0].aoData[e[0]];a._details&&(a._detailsShow=t,t?a._details.insertAfter(a.nTr):a._details.detach(),Nt(n[0]))}},Nt=function(e){var t=new Xe(e),n=".dt.DT_details",a="draw"+n,r="column-visibility"+n,o="destroy"+n,i=e.aoData;t.off(a+" "+r+" "+o),lt(i,"_details").length>0&&(t.on(a,function(n,a){e===a&&t.rows({page:"current"}).eq(0).each(function(e){var t=i[e];t._detailsShow&&t._details.insertAfter(t.nTr)})}),t.on(r,function(t,n,a,r){if(e===n)for(var o,s=b(n),l=0,u=i.length;l=0?s:r.length+s];if("function"==typeof n){var l=Lt(t,a);return e.map(r,function(e,a){return n(a,Ut(t,a,0,0,l),i[a])?a:null})}var u="string"==typeof n?n.match(Wt):"";if(u)switch(u[2]){case"visIdx":case"visible":var c=parseInt(u[1],10);if(c<0){var f=e.map(r,function(e,t){return e.bVisible?t:null});return[f[f.length+c]]}return[p(t,c)];case"name":return e.map(o,function(e,t){return e===u[1]?t:null;
-});default:return[]}if(n.nodeName&&n._DT_CellIndex)return[n._DT_CellIndex.column];var d=e(i).filter(n).map(function(){return e.inArray(this,i)}).toArray();if(d.length||!n.nodeName)return d;var h=e(n).closest("*[data-dt-column]");return h.length?[h.data("dt-column")]:[]};return It("column",n,s,t,a)},Bt=function(t,n,r){var o,i,s,l,u=t.aoColumns,c=u[n],f=t.aoData;if(r===a)return c.bVisible;if(c.bVisible!==r){if(r){var d=e.inArray(!0,lt(u,"bVisible"),n+1);for(i=0,s=f.length;in;return!0},ze.isDataTable=ze.fnIsDataTable=function(t){var n=e(t).get(0),a=!1;return e.each(ze.settings,function(t,r){var o=r.nScrollHead?e("table",r.nScrollHead)[0]:null,i=r.nScrollFoot?e("table",r.nScrollFoot)[0]:null;r.nTable!==n&&o!==n&&i!==n||(a=!0)}),a},ze.tables=ze.fnTables=function(t){var n=!1;e.isPlainObject(t)&&(n=t.api,t=t.visible);var a=e.map(ze.settings,function(n){if(!t||t&&e(n.nTable).is(":visible"))return n.nTable});return n?new Xe(a):a},ze.camelToHungarian=o,qe("$()",function(t,n){var a=this.rows(n).nodes(),r=e(a);return e([].concat(r.filter(t).toArray(),r.find(t).toArray()))}),e.each(["on","one","off"],function(t,n){qe(n+"()",function(){var t=Array.prototype.slice.call(arguments);t[0].match(/\.dt\b/)||(t[0]+=".dt");var a=e(this.tables().nodes());return a[n].apply(a,t),this})}),qe("clear()",function(){return this.iterator("table",function(e){L(e)})}),qe("settings()",function(){return new Xe(this.context,this.context)}),qe("init()",function(){var e=this.context;return e.length?e[0].oInit:null}),qe("data()",function(){return this.iterator("table",function(e){return lt(e.aoData,"_aData")}).flatten()}),qe("destroy()",function(n){return n=n||!1,this.iterator("table",function(a){var r,o=a.nTableWrapper.parentNode,i=a.oClasses,s=a.nTable,l=a.nTBody,u=a.nTHead,c=a.nTFoot,f=e(s),d=e(l),h=e(a.nTableWrapper),p=e.map(a.aoData,function(e){return e.nTr});a.bDestroying=!0,ke(a,"aoDestroyCallback","destroy",[a]),n||new Xe(a).columns().visible(!0),h.unbind(".DT").find(":not(tbody *)").unbind(".DT"),e(t).unbind(".DT-"+a.sInstance),s!=u.parentNode&&(f.children("thead").detach(),f.append(u)),c&&s!=c.parentNode&&(f.children("tfoot").detach(),f.append(c)),a.aaSorting=[],a.aaSortingFixed=[],Ie(a),e(p).removeClass(a.asStripeClasses.join(" ")),e("th, td",u).removeClass(i.sSortable+" "+i.sSortableAsc+" "+i.sSortableDesc+" "+i.sSortableNone),a.bJUI&&(e("th span."+i.sSortIcon+", td span."+i.sSortIcon,u).detach(),e("th, td",u).each(function(){var t=e("div."+i.sSortJUIWrapper,this);e(this).append(t.contents()),t.detach()})),d.children().detach(),d.append(p);var g=n?"remove":"detach";f[g](),h[g](),!n&&o&&(o.insertBefore(s,a.nTableReinsertBefore),f.css("width",a.sDestroyWidth).removeClass(i.sTable),r=a.asDestroyStripes.length,r&&d.children().each(function(t){e(this).addClass(a.asDestroyStripes[t%r])}));var b=e.inArray(a,ze.settings);b!==-1&&ze.settings.splice(b,1)})}),e.each(["column","row","cell"],function(e,t){qe(t+"s().every()",function(e){var n=this.selector.opts,r=this;return this.iterator(t,function(o,i,s,l,u){e.call(r[t](i,"cell"===t?s:n,"cell"===t?n:a),i,s,l,u)})})}),qe("i18n()",function(t,n,r){var o=this.context[0],i=I(t)(o.oLanguage);return i===a&&(i=n),r!==a&&e.isPlainObject(i)&&(i=i[r]!==a?i[r]:i._),i.replace("%d",r)}),ze.version="1.10.12",ze.settings=[],ze.models={},ze.models.oSearch={bCaseInsensitive:!0,sSearch:"",bRegex:!1,bSmart:!0},ze.models.oRow={nTr:null,anCells:null,_aData:[],_aSortData:null,_aFilterData:null,_sFilterRow:null,_sRowStripe:"",src:null,idx:-1},ze.models.oColumn={idx:null,aDataSort:null,asSorting:null,bSearchable:null,bSortable:null,bVisible:null,_sManualType:null,_bAttrSrc:!1,fnCreatedCell:null,fnGetData:null,fnSetData:null,mData:null,mRender:null,nTh:null,nTf:null,sClass:null,sContentPadding:null,sDefaultContent:null,sName:null,sSortDataType:"std",sSortingClass:null,sSortingClassJUI:null,sTitle:null,sType:null,sWidth:null,sWidthOrig:null},ze.defaults={aaData:null,aaSorting:[[0,"asc"]],aaSortingFixed:[],ajax:null,aLengthMenu:[10,25,50,100],aoColumns:null,aoColumnDefs:null,aoSearchCols:[],asStripeClasses:null,bAutoWidth:!0,bDeferRender:!1,bDestroy:!1,bFilter:!0,bInfo:!0,bJQueryUI:!1,bLengthChange:!0,bPaginate:!0,bProcessing:!1,bRetrieve:!1,bScrollCollapse:!1,bServerSide:!1,bSort:!0,bSortMulti:!0,bSortCellsTop:!1,bSortClasses:!0,bStateSave:!1,fnCreatedRow:null,fnDrawCallback:null,fnFooterCallback:null,fnFormatNumber:function(e){return e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,this.oLanguage.sThousands)},fnHeaderCallback:null,fnInfoCallback:null,fnInitComplete:null,fnPreDrawCallback:null,fnRowCallback:null,fnServerData:null,fnServerParams:null,fnStateLoadCallback:function(e){try{return JSON.parse((e.iStateDuration===-1?sessionStorage:localStorage).getItem("DataTables_"+e.sInstance+"_"+location.pathname))}catch(t){}},fnStateLoadParams:null,fnStateLoaded:null,fnStateSaveCallback:function(e,t){try{(e.iStateDuration===-1?sessionStorage:localStorage).setItem("DataTables_"+e.sInstance+"_"+location.pathname,JSON.stringify(t))}catch(n){}},fnStateSaveParams:null,iStateDuration:7200,iDeferLoading:null,iDisplayLength:10,iDisplayStart:0,iTabIndex:0,oClasses:{},oLanguage:{oAria:{sSortAscending:": activate to sort column ascending",sSortDescending:": activate to sort column descending"},oPaginate:{sFirst:"First",sLast:"Last",sNext:"Next",sPrevious:"Previous"},sEmptyTable:"No data available in table",sInfo:"Showing _START_ to _END_ of _TOTAL_ entries",sInfoEmpty:"Showing 0 to 0 of 0 entries",sInfoFiltered:"(filtered from _MAX_ total entries)",sInfoPostFix:"",sDecimal:"",sThousands:",",sLengthMenu:"Show _MENU_ entries",sLoadingRecords:"Loading...",sProcessing:"Processing...",sSearch:"Search:",sSearchPlaceholder:"",sUrl:"",sZeroRecords:"No matching records found"},oSearch:e.extend({},ze.models.oSearch),sAjaxDataProp:"data",sAjaxSource:null,sDom:"lfrtip",searchDelay:null,sPaginationType:"simple_numbers",sScrollX:"",sScrollXInner:"",sScrollY:"",sServerMethod:"GET",renderer:null,rowId:"DT_RowId"},r(ze.defaults),ze.defaults.column={aDataSort:null,iDataSort:-1,asSorting:["asc","desc"],bSearchable:!0,bSortable:!0,bVisible:!0,fnCreatedCell:null,mData:null,mRender:null,sCellType:"td",sClass:"",sContentPadding:"",sDefaultContent:null,sName:"",sSortDataType:"std",sTitle:null,sType:null,sWidth:null},r(ze.defaults.column),ze.models.oSettings={oFeatures:{bAutoWidth:null,bDeferRender:null,bFilter:null,bInfo:null,bLengthChange:null,bPaginate:null,bProcessing:null,bServerSide:null,bSort:null,bSortMulti:null,bSortClasses:null,bStateSave:null},oScroll:{bCollapse:null,iBarWidth:0,sX:null,sXInner:null,sY:null},oLanguage:{fnInfoCallback:null},oBrowser:{bScrollOversize:!1,bScrollbarLeft:!1,bBounding:!1,barWidth:0},ajax:null,aanFeatures:[],aoData:[],aiDisplay:[],aiDisplayMaster:[],aIds:{},aoColumns:[],aoHeader:[],aoFooter:[],oPreviousSearch:{},aoPreSearchCols:[],aaSorting:null,aaSortingFixed:[],asStripeClasses:null,asDestroyStripes:[],sDestroyWidth:0,aoRowCallback:[],aoHeaderCallback:[],aoFooterCallback:[],aoDrawCallback:[],aoRowCreatedCallback:[],aoPreDrawCallback:[],aoInitComplete:[],aoStateSaveParams:[],aoStateLoadParams:[],aoStateLoaded:[],sTableId:"",nTable:null,nTHead:null,nTFoot:null,nTBody:null,nTableWrapper:null,bDeferLoading:!1,bInitialised:!1,aoOpenRows:[],sDom:null,searchDelay:null,sPaginationType:"two_button",iStateDuration:0,aoStateSave:[],aoStateLoad:[],oSavedState:null,oLoadedState:null,sAjaxSource:null,sAjaxDataProp:null,bAjaxDataGet:!0,jqXHR:null,json:a,oAjaxData:a,fnServerData:null,aoServerParams:[],sServerMethod:null,fnFormatNumber:null,aLengthMenu:null,iDraw:0,bDrawing:!1,iDrawError:-1,_iDisplayLength:10,_iDisplayStart:0,_iRecordsTotal:0,_iRecordsDisplay:0,bJUI:null,oClasses:{},bFiltered:!1,bSorted:!1,bSortCellsTop:null,oInit:null,aoDestroyCallback:[],fnRecordsTotal:function(){return"ssp"==Ue(this)?1*this._iRecordsTotal:this.aiDisplayMaster.length},fnRecordsDisplay:function(){return"ssp"==Ue(this)?1*this._iRecordsDisplay:this.aiDisplay.length},fnDisplayEnd:function(){var e=this._iDisplayLength,t=this._iDisplayStart,n=t+e,a=this.aiDisplay.length,r=this.oFeatures,o=r.bPaginate;return r.bServerSide?o===!1||e===-1?t+a:Math.min(t+e,this._iRecordsDisplay):!o||n>a||e===-1?a:n},oInstance:null,sInstance:null,iTabIndex:0,nScrollHead:null,nScrollFoot:null,aLastSort:[],oPlugins:{},rowIdFn:null,rowId:null},ze.ext=Ve={buttons:{},classes:{},builder:"-source-",errMode:"alert",feature:[],search:[],selector:{cell:[],column:[],row:[]},internal:{},legacy:{ajax:null},pager:{},renderer:{pageButton:{},header:{}},order:{},type:{detect:[],search:{},order:{}},_unique:0,fnVersionCheck:ze.fnVersionCheck,iApiIndex:0,oJUIClasses:{},sVersion:ze.version},e.extend(Ve,{afnFiltering:Ve.search,aTypes:Ve.type.detect,ofnSearch:Ve.type.search,oSort:Ve.type.order,afnSortData:Ve.order,aoFeatures:Ve.feature,oApi:Ve.internal,oStdClasses:Ve.classes,oPagination:Ve.pager}),e.extend(ze.ext.classes,{sTable:"dataTable",sNoFooter:"no-footer",sPageButton:"paginate_button",sPageButtonActive:"current",sPageButtonDisabled:"disabled",sStripeOdd:"odd",sStripeEven:"even",sRowEmpty:"dataTables_empty",sWrapper:"dataTables_wrapper",sFilter:"dataTables_filter",sInfo:"dataTables_info",sPaging:"dataTables_paginate paging_",sLength:"dataTables_length",sProcessing:"dataTables_processing",sSortAsc:"sorting_asc",sSortDesc:"sorting_desc",sSortable:"sorting",sSortableAsc:"sorting_asc_disabled",sSortableDesc:"sorting_desc_disabled",sSortableNone:"sorting_disabled",sSortColumn:"sorting_",sFilterInput:"",sLengthSelect:"",sScrollWrapper:"dataTables_scroll",sScrollHead:"dataTables_scrollHead",sScrollHeadInner:"dataTables_scrollHeadInner",sScrollBody:"dataTables_scrollBody",sScrollFoot:"dataTables_scrollFoot",sScrollFootInner:"dataTables_scrollFootInner",sHeaderTH:"",sFooterTH:"",sSortJUIAsc:"",sSortJUIDesc:"",sSortJUI:"",sSortJUIAscAllowed:"",sSortJUIDescAllowed:"",sSortJUIWrapper:"",sSortIcon:"",sJUIHeader:"",sJUIFooter:""}),function(){var t="";t="";var n=t+"ui-state-default",a=t+"css_right ui-icon ui-icon-",r=t+"fg-toolbar ui-toolbar ui-widget-header ui-helper-clearfix";e.extend(ze.ext.oJUIClasses,ze.ext.classes,{sPageButton:"fg-button ui-button "+n,sPageButtonActive:"ui-state-disabled",sPageButtonDisabled:"ui-state-disabled",sPaging:"dataTables_paginate fg-buttonset ui-buttonset fg-buttonset-multi ui-buttonset-multi paging_",sSortAsc:n+" sorting_asc",sSortDesc:n+" sorting_desc",sSortable:n+" sorting",sSortableAsc:n+" sorting_asc_disabled",sSortableDesc:n+" sorting_desc_disabled",sSortableNone:n+" sorting_disabled",sSortJUIAsc:a+"triangle-1-n",sSortJUIDesc:a+"triangle-1-s",sSortJUI:a+"carat-2-n-s",sSortJUIAscAllowed:a+"carat-1-n",sSortJUIDescAllowed:a+"carat-1-s",sSortJUIWrapper:"DataTables_sort_wrapper",sSortIcon:"DataTables_sort_icon",sScrollHead:"dataTables_scrollHead "+n,sScrollFoot:"dataTables_scrollFoot "+n,sHeaderTH:n,sFooterTH:n,sJUIHeader:r+" ui-corner-tl ui-corner-tr",sJUIFooter:r+" ui-corner-bl ui-corner-br"})}();var Vt=ze.ext.pager;e.extend(Vt,{simple:function(e,t){return["previous","next"]},full:function(e,t){return["first","previous","next","last"]},numbers:function(e,t){return[Ee(e,t)]},simple_numbers:function(e,t){return["previous",Ee(e,t),"next"]},full_numbers:function(e,t){return["first","previous",Ee(e,t),"next","last"]},_numbers:Ee,numbers_length:7}),e.extend(!0,ze.ext.renderer,{pageButton:{_:function(t,a,r,o,i,s){var l,u,c,f=t.oClasses,d=t.oLanguage.oPaginate,h=t.oLanguage.oAria.paginate||{},p=0,g=function(n,a){var o,c,b,v,m=function(e){fe(t,e.data.action,!0)};for(o=0,c=a.length;o").appendTo(n);g(S,v)}else{switch(l=null,u="",v){case"ellipsis":n.append('… ');break;case"first":l=d.sFirst,u=v+(i>0?"":" "+f.sPageButtonDisabled);break;case"previous":l=d.sPrevious,u=v+(i>0?"":" "+f.sPageButtonDisabled);break;case"next":l=d.sNext,u=v+(i",{"class":f.sPageButton+" "+u,"aria-controls":t.sTableId,"aria-label":h[v],"data-dt-idx":p,tabindex:t.iTabIndex,id:0===r&&"string"==typeof v?t.sTableId+"_"+v:null}).html(l).appendTo(n),Ne(b,{action:v},m),p++)}};try{c=e(a).find(n.activeElement).data("dt-idx")}catch(b){}g(e(a).empty(),o),c&&e(a).find("[data-dt-idx="+c+"]").focus()}}}),e.extend(ze.ext.type.detect,[function(e,t){var n=t.oLanguage.sDecimal;return ot(e,n)?"num"+n:null},function(e,t){if(e&&!(e instanceof Date)&&(!Ze.test(e)||!Ke.test(e)))return null;var n=Date.parse(e);return null!==n&&!isNaN(n)||nt(e)?"date":null},function(e,t){var n=t.oLanguage.sDecimal;return ot(e,n,!0)?"num-fmt"+n:null},function(e,t){var n=t.oLanguage.sDecimal;return st(e,n)?"html-num"+n:null},function(e,t){var n=t.oLanguage.sDecimal;return st(e,n,!0)?"html-num-fmt"+n:null},function(e,t){return nt(e)||"string"==typeof e&&e.indexOf("<")!==-1?"html":null}]),e.extend(ze.ext.type.search,{html:function(e){return nt(e)?e:"string"==typeof e?e.replace(Qe," ").replace(Ye,""):""},string:function(e){return nt(e)?e:"string"==typeof e?e.replace(Qe," "):e}});var Xt=function(e,t,n,a){return 0===e||e&&"-"!==e?(t&&(e=rt(e,t)),e.replace&&(n&&(e=e.replace(n,"")),a&&(e=e.replace(a,""))),1*e):-(1/0)};e.extend(Ve.type.order,{"date-pre":function(e){return Date.parse(e)||0},"html-pre":function(e){return nt(e)?"":e.replace?e.replace(/<.*?>/g,"").toLowerCase():e+""},"string-pre":function(e){return nt(e)?"":"string"==typeof e?e.toLowerCase():e.toString?e.toString():""},"string-asc":function(e,t){return et?1:0},"string-desc":function(e,t){return et?-1:0}}),Be(""),e.extend(!0,ze.ext.renderer,{header:{_:function(t,n,a,r){e(t.nTable).on("order.dt.DT",function(e,o,i,s){if(t===o){var l=a.idx;n.removeClass(a.sSortingClass+" "+r.sSortAsc+" "+r.sSortDesc).addClass("asc"==s[l]?r.sSortAsc:"desc"==s[l]?r.sSortDesc:a.sSortingClass)}})},jqueryui:function(t,n,a,r){e("
").addClass(r.sSortJUIWrapper).append(n.contents()).append(e(" ").addClass(r.sSortIcon+" "+a.sSortingClassJUI)).appendTo(n),e(t.nTable).on("order.dt.DT",function(e,o,i,s){if(t===o){var l=a.idx;n.removeClass(r.sSortAsc+" "+r.sSortDesc).addClass("asc"==s[l]?r.sSortAsc:"desc"==s[l]?r.sSortDesc:a.sSortingClass),n.find("span."+r.sSortIcon).removeClass(r.sSortJUIAsc+" "+r.sSortJUIDesc+" "+r.sSortJUI+" "+r.sSortJUIAscAllowed+" "+r.sSortJUIDescAllowed).addClass("asc"==s[l]?r.sSortJUIAsc:"desc"==s[l]?r.sSortJUIDesc:a.sSortingClassJUI)}})}}});var qt=function(e){return"string"==typeof e?e.replace(/ /g,">").replace(/"/g,"""):e};return ze.render={number:function(e,t,n,a,r){return{display:function(o){if("number"!=typeof o&&"string"!=typeof o)return o;var i=o<0?"-":"",s=parseFloat(o);if(isNaN(s))return qt(o);o=Math.abs(s);var l=parseInt(o,10),u=n?t+(o-l).toFixed(n).substring(2):"";return i+(a||"")+l.toString().replace(/\B(?=(\d{3})+(?!\d))/g,e)+u+(r||"")}}},text:function(){return{display:qt}}},e.extend(ze.ext.internal,{_fnExternApiFunc:Je,_fnBuildAjax:J,_fnAjaxUpdate:V,_fnAjaxParameters:X,_fnAjaxUpdateDraw:q,_fnAjaxDataSrc:G,_fnAddColumn:f,_fnColumnOptions:d,_fnAdjustColumnSizing:h,_fnVisibleToColumnIndex:p,_fnColumnIndexToVisible:g,_fnVisbleColumns:b,_fnGetColumns:v,_fnColumnTypes:m,_fnApplyColumnDefs:S,_fnHungarianMap:r,_fnCamelToHungarian:o,_fnLanguageCompat:i,_fnBrowserDetect:u,_fnAddData:D,_fnAddTr:y,_fnNodeToDataIndex:_,_fnNodeToColumnIndex:T,_fnGetCellData:w,_fnSetCellData:C,_fnSplitObjNotation:x,_fnGetObjectDataFn:I,_fnSetObjectDataFn:A,_fnGetDataMaster:F,_fnClearTable:L,_fnDeleteIndex:P,_fnInvalidate:R,_fnGetRowElements:j,_fnCreateTr:H,_fnBuildHead:O,_fnDrawHead:k,_fnDraw:M,_fnReDraw:W,_fnAddOptionsHtml:U,_fnDetectHeader:E,_fnGetUniqueThs:B,_fnFeatureHtmlFilter:z,_fnFilterComplete:$,_fnFilterCustom:Q,_fnFilterColumn:Y,_fnFilter:Z,_fnFilterCreateSearch:K,_fnEscapeRegex:vt,_fnFilterData:ee,_fnFeatureHtmlInfo:ae,_fnUpdateInfo:re,_fnInfoMacros:oe,_fnInitialise:ie,_fnInitComplete:se,_fnLengthChange:le,_fnFeatureHtmlLength:ue,_fnFeatureHtmlPaginate:ce,_fnPageChange:fe,_fnFeatureHtmlProcessing:de,_fnProcessingDisplay:he,_fnFeatureHtmlTable:pe,_fnScrollDraw:ge,_fnApplyToChildren:be,_fnCalculateColumnWidths:ve,_fnThrottle:yt,_fnConvertToWidth:me,_fnGetWidestNode:Se,_fnGetMaxLenString:De,_fnStringToCss:ye,_fnSortFlatten:_e,_fnSort:Te,_fnSortAria:we,_fnSortListener:Ce,_fnSortAttachListener:xe,_fnSortingClasses:Ie,_fnSortData:Ae,_fnSaveState:Fe,_fnLoadState:Le,_fnSettingsFromNode:Pe,_fnLog:Re,_fnMap:je,_fnBindAction:Ne,_fnCallbackReg:Oe,_fnCallbackFire:ke,_fnLengthOverflow:Me,_fnRenderer:We,_fnDataSource:Ue,_fnRowAttributes:N,_fnCalculateEnd:function(){}}),e.fn.dataTable=ze,ze.$=e,e.fn.dataTableSettings=ze.settings,e.fn.dataTableExt=ze.ext,e.fn.DataTable=function(t){return e(this).dataTable(t).api()},e.each(ze,function(t,n){e.fn.DataTable[t]=n}),e.fn.dataTable})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1]);
\ No newline at end of file
diff --git a/Day61-65/code/project_of_tornado/assets/js/amazeui.min.js b/Day61-65/code/project_of_tornado/assets/js/amazeui.min.js
deleted file mode 100644
index f50f9fe..0000000
--- a/Day61-65/code/project_of_tornado/assets/js/amazeui.min.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*! Amaze UI v2.7.2 | by Amaze UI Team | (c) 2016 AllMobilize, Inc. | Licensed under MIT | 2016-08-17T16:17:24+0800 */
-!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("jquery")):"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof exports?exports.AMUI=e(require("jquery")):t.AMUI=e(t.jQuery)}(this,function(t){return function(t){function e(n){if(i[n])return i[n].exports;var s=i[n]={exports:{},id:n,loaded:!1};return t[n].call(s.exports,s,s.exports,e),s.loaded=!0,s.exports}var i={};return e.m=t,e.c=i,e.p="",e(0)}([function(t,e,i){"use strict";var n=i(1),s=i(2);i(3),i(4),i(5),i(6),i(7),i(8),i(9),i(10),i(11),i(14),i(15),i(16),i(17),i(18),i(19),i(20),i(21),i(22),i(24),i(25),i(23),i(27),i(28),i(29),i(30),i(31),i(32),i(33),i(26),i(34),i(35),i(36),i(37),i(38),i(39),i(40),i(41),i(42),i(43),i(44),i(45),i(46),i(47),i(48),i(49),i(50),i(51),i(52),i(53),i(54),t.exports=n.AMUI=s},function(e,i){e.exports=t},function(t,e,i){"use strict";var n=i(1);if("undefined"==typeof n)throw new Error("Amaze UI 2.x requires jQuery :-(\n\u7231\u4e0a\u4e00\u5339\u91ce\u9a6c\uff0c\u53ef\u4f60\u7684\u5bb6\u91cc\u6ca1\u6709\u8349\u539f\u2026");var s=n.AMUI||{},o=n(window),a=window.document,r=n("html");s.VERSION="2.7.2",s.support={},s.support.transition=function(){var t=function(){var t=a.body||a.documentElement,e={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var i in e)if(void 0!==t.style[i])return e[i]}();return t&&{end:t}}(),s.support.animation=function(){var t=function(){var t=a.body||a.documentElement,e={WebkitAnimation:"webkitAnimationEnd",MozAnimation:"animationend",OAnimation:"oAnimationEnd oanimationend",animation:"animationend"};for(var i in e)if(void 0!==t.style[i])return e[i]}();return t&&{end:t}}(),s.support.touch="ontouchstart"in window&&navigator.userAgent.toLowerCase().match(/mobile|tablet/)||window.DocumentTouch&&document instanceof window.DocumentTouch||window.navigator.msPointerEnabled&&window.navigator.msMaxTouchPoints>0||window.navigator.pointerEnabled&&window.navigator.maxTouchPoints>0||!1,s.support.mutationobserver=window.MutationObserver||window.WebKitMutationObserver||null,s.support.formValidation="function"==typeof document.createElement("form").checkValidity,s.utils={},s.utils.debounce=function(t,e,i){var n;return function(){var s=this,o=arguments,a=function(){n=null,i||t.apply(s,o)},r=i&&!n;clearTimeout(n),n=setTimeout(a,e),r&&t.apply(s,o)}},s.utils.isInView=function(t,e){var i=n(t),s=!(!i.width()&&!i.height())&&"none"!==i.css("display");if(!s)return!1;var a=o.scrollLeft(),r=o.scrollTop(),l=i.offset(),c=l.left,u=l.top;return e=n.extend({topOffset:0,leftOffset:0},e),u+i.height()>=r&&u-e.topOffset<=r+o.height()&&c+i.width()>=a&&c-e.leftOffset<=a+o.width()},s.utils.parseOptions=s.utils.options=function(t){if(n.isPlainObject(t))return t;var e=t?t.indexOf("{"):-1,i={};if(e!=-1)try{i=new Function("","var json = "+t.substr(e)+"; return JSON.parse(JSON.stringify(json));")()}catch(s){}return i},s.utils.generateGUID=function(t){var e=t+"-"||"am-";do e+=Math.random().toString(36).substring(2,7);while(document.getElementById(e));return e},s.utils.getAbsoluteUrl=function(){var t;return function(e){return t||(t=document.createElement("a")),t.href=e,t.href}}(),s.plugin=function(t,e,i){var o=n.fn[t];i=i||{},n.fn[t]=function(o){var a,r=Array.prototype.slice.call(arguments,0),l=r.slice(1),c=this.each(function(){var c=n(this),u="amui."+t,h=i.dataOptions||"data-am-"+t,d=c.data(u),p=n.extend({},s.utils.parseOptions(c.attr(h)),"object"==typeof o&&o);(d||"destroy"!==o)&&(d||c.data(u,d=new e(this,p)),i.methodCall?i.methodCall.call(c,r,d):(i.before&&i.before.call(c,r,d),"string"==typeof o&&(a="function"==typeof d[o]?d[o].apply(d,l):d[o]),i.after&&i.after.call(c,r,d)))});return void 0===a?c:a},n.fn[t].Constructor=e,n.fn[t].noConflict=function(){return n.fn[t]=o,this},s[t]=e},n.fn.emulateTransitionEnd=function(t){var e=!1,i=this;n(this).one(s.support.transition.end,function(){e=!0});var o=function(){e||n(i).trigger(s.support.transition.end),i.transitionEndTimmer=void 0};return this.transitionEndTimmer=setTimeout(o,t),this},n.fn.redraw=function(){return this.each(function(){this.offsetHeight})},n.fn.transitionEnd=function(t){function e(s){t.call(this,s),i&&n.off(i,e)}var i=s.support.transition.end,n=this;return t&&i&&n.on(i,e),this},n.fn.removeClassRegEx=function(){return this.each(function(t){var e=n(this).attr("class");if(!e||!t)return!1;var i=[];e=e.split(" ");for(var s=0,o=e.length;s=window.innerWidth)return 0;var t=n('
');n(document.body).append(t);var e=t[0].offsetWidth-t[0].clientWidth;return t.remove(),e},s.utils.imageLoader=function(t,e){function i(){e(t[0])}function n(){if(this.one("load",i),/MSIE (\d+\.\d+);/.test(navigator.userAgent)){var t=this.attr("src"),e=t.match(/\?/)?"&":"?";e+="random="+(new Date).getTime(),this.attr("src",t+e)}}return t.attr("src")?void(t[0].complete||4===t[0].readyState?i():n.call(t)):void i()},s.template=function(t,e){var i=s.template;return i.cache[t]||(i.cache[t]=function(){var e=t,n=/^[\w\-]+$/.test(t)?i.get(t):(e="template(string)",t),s=1,o=("try { "+(i.variable?"var "+i.variable+" = this.stash;":"with (this.stash) { ")+"this.ret += '"+n.replace(/<%/g,"\x11").replace(/%>/g,"\x13").replace(/'(?![^\x11\x13]+?\x13)/g,"\\x27").replace(/^\s*|\s*$/g,"").replace(/\n/g,function(){return"';\nthis.line = "+ ++s+"; this.ret += '\\n"}).replace(/\x11-(.+?)\x13/g,"' + ($1) + '").replace(/\x11=(.+?)\x13/g,"' + this.escapeHTML($1) + '").replace(/\x11(.+?)\x13/g,"'; $1; this.ret += '")+"'; "+(i.variable?"":"}")+"return this.ret;} catch (e) { throw 'TemplateError: ' + e + ' (on "+e+"' + ' line ' + this.line + ')'; } //@ sourceURL="+e+"\n").replace(/this\.ret \+= '';/g,""),a=new Function(o),r={"&":"&","<":"<",">":">",'"':""","'":"'"},l=function(t){return(""+t).replace(/[&<>\'\"]/g,function(t){return r[t]})};return function(t){return a.call(i.context={escapeHTML:l,line:1,ret:"",stash:t})}}()),e?i.cache[t](e):i.cache[t]},s.template.cache={},s.template.get=function(t){if(t){var e=document.getElementById(t);return e&&e.innerHTML||""}},s.DOMWatchers=[],s.DOMReady=!1,s.ready=function(t){s.DOMWatchers.push(t),s.DOMReady&&t(document)},s.DOMObserve=function(t,e,i){var o=s.support.mutationobserver;o&&(e=n.isPlainObject(e)?e:{childList:!0,subtree:!0},i="function"==typeof i&&i||function(){},n(t).each(function(){var t=this,a=n(t);if(!a.data("am.observer"))try{var r=new o(s.utils.debounce(function(e,n){i.call(t,e,n),a.trigger("changed.dom.amui")},50));r.observe(t,e),a.data("am.observer",r)}catch(l){}}))},n.fn.DOMObserve=function(t,e){return this.each(function(){s.DOMObserve(this,t,e)})},s.support.touch&&r.addClass("am-touch"),n(document).on("changed.dom.amui",function(t){var e=t.target;n.each(s.DOMWatchers,function(t,i){i(e)})}),n(function(){var t=n(document.body);s.DOMReady=!0,n.each(s.DOMWatchers,function(t,e){e(document)}),s.DOMObserve("[data-am-observe]"),r.removeClass("no-js").addClass("js"),s.support.animation&&r.addClass("cssanimations"),window.navigator.standalone&&r.addClass("am-standalone"),n(".am-topbar-fixed-top").length&&t.addClass("am-with-topbar-fixed-top"),n(".am-topbar-fixed-bottom").length&&t.addClass("am-with-topbar-fixed-bottom");var e=n(".am-layout");e.find('[class*="md-block-grid"]').alterClass("md-block-grid-*"),e.find('[class*="lg-block-grid"]').alterClass("lg-block-grid"),n("[data-am-widget]").each(function(){var t=n(this);0===t.parents(".am-layout").length&&t.addClass("am-no-layout")})}),t.exports=s},function(t,e,i){"use strict";function n(t,e,i){return setTimeout(l(t,i),e)}function s(t,e,i){return!!Array.isArray(t)&&(o(t,i[e],i),!0)}function o(t,e,i){var n;if(t)if(t.forEach)t.forEach(e,i);else if(void 0!==t.length)for(n=0;n\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=window.console&&(window.console.warn||window.console.log);return s&&s.call(window.console,n,i),t.apply(this,arguments)}}function r(t,e,i){var n,s=e.prototype;n=t.prototype=Object.create(s),n.constructor=t,n._super=s,i&&ut(n,i)}function l(t,e){return function(){return t.apply(e,arguments)}}function c(t,e){return typeof t==ft?t.apply(e?e[0]||void 0:void 0,e):t}function u(t,e){return void 0===t?e:t}function h(t,e,i){o(f(e),function(e){t.addEventListener(e,i,!1)})}function d(t,e,i){o(f(e),function(e){t.removeEventListener(e,i,!1)})}function p(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function m(t,e){return t.indexOf(e)>-1}function f(t){return t.trim().split(/\s+/g)}function v(t,e,i){if(t.indexOf&&!i)return t.indexOf(e);for(var n=0;ni[e]}):n.sort()),n}function w(t,e){for(var i,n,s=e[0].toUpperCase()+e.slice(1),o=0;o1&&!i.firstMultiple?i.firstMultiple=F(e):1===s&&(i.firstMultiple=!1);var o=i.firstInput,a=i.firstMultiple,r=a?a.center:o.center,l=e.center=A(n);e.timeStamp=yt(),e.deltaTime=e.timeStamp-o.timeStamp,e.angle=N(r,l),e.distance=P(r,l),k(i,e),e.offsetDirection=M(e.deltaX,e.deltaY);var c=$(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=c.x,e.overallVelocityY=c.y,e.overallVelocity=gt(c.x)>gt(c.y)?c.x:c.y,e.scale=a?O(a.pointers,n):1,e.rotation=a?I(a.pointers,n):0,e.maxPointers=i.prevInput?e.pointers.length>i.prevInput.maxPointers?e.pointers.length:i.prevInput.maxPointers:e.pointers.length,D(i,e);var u=t.element;p(e.srcEvent.target,u)&&(u=e.srcEvent.target),e.target=u}function k(t,e){var i=e.center,n=t.offsetDelta||{},s=t.prevDelta||{},o=t.prevInput||{};e.eventType!==Mt&&o.eventType!==Nt||(s=t.prevDelta={x:o.deltaX||0,y:o.deltaY||0},n=t.offsetDelta={x:i.x,y:i.y}),e.deltaX=s.x+(i.x-n.x),e.deltaY=s.y+(i.y-n.y)}function D(t,e){var i,n,s,o,a=t.lastInterval||e,r=e.timeStamp-a.timeStamp;if(e.eventType!=It&&(r>$t||void 0===a.velocity)){var l=e.deltaX-a.deltaX,c=e.deltaY-a.deltaY,u=$(r,l,c);n=u.x,s=u.y,i=gt(u.x)>gt(u.y)?u.x:u.y,o=M(l,c),t.lastInterval=e}else i=a.velocity,n=a.velocityX,s=a.velocityY,o=a.direction;e.velocity=i,e.velocityX=n,e.velocityY=s,e.direction=o}function F(t){for(var e=[],i=0;i=gt(e)?t<0?Lt:_t:e<0?zt:Rt}function P(t,e,i){i||(i=Bt);var n=e[i[0]]-t[i[0]],s=e[i[1]]-t[i[1]];return Math.sqrt(n*n+s*s)}function N(t,e,i){i||(i=Bt);var n=e[i[0]]-t[i[0]],s=e[i[1]]-t[i[1]];return 180*Math.atan2(s,n)/Math.PI}function I(t,e){return N(e[1],e[0],Ut)+N(t[1],t[0],Ut)}function O(t,e){return P(e[0],e[1],Ut)/P(t[0],t[1],Ut)}function L(){this.evEl=Xt,this.evWin=Yt,this.pressed=!1,x.apply(this,arguments)}function _(){this.evEl=Gt,this.evWin=Kt,x.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function z(){this.evTarget=Qt,this.evWin=te,this.started=!1,x.apply(this,arguments)}function R(t,e){var i=g(t.touches),n=g(t.changedTouches);return e&(Nt|It)&&(i=y(i.concat(n),"identifier",!0)),[i,n]}function q(){this.evTarget=ie,this.targetIds={},x.apply(this,arguments)}function W(t,e){var i=g(t.touches),n=this.targetIds;if(e&(Mt|Pt)&&1===i.length)return n[i[0].identifier]=!0,[i,i];var s,o,a=g(t.changedTouches),r=[],l=this.target;if(o=i.filter(function(t){return p(t.target,l)}),e===Mt)for(s=0;s-1&&n.splice(t,1)};setTimeout(s,ne)}}function V(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,n=0;n-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){function e(e){i.manager.emit(e,t)}var i=this,n=this.state;n=ge&&e(i.options.event+G(n))},tryEmit:function(t){return this.canEmit()?this.emit(t):void(this.state=be)},canEmit:function(){for(var t=0;te.threshold&&s&e.direction},attrTest:function(t){return Q.prototype.attrTest.call(this,t)&&(this.state&fe||!(this.state&fe)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=K(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),r(et,Q,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ue]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&fe)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),r(it,Z,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[le]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,s=t.distancee.time;if(this._input=t,!s||!i||t.eventType&(Nt|It)&&!o)this.reset();else if(t.eventType&Mt)this.reset(),this._timer=n(function(){this.state=ye,this.tryEmit()},e.time,this);else if(t.eventType&Nt)return ye;return be},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===ye&&(t&&t.eventType&Nt?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=yt(),this.manager.emit(this.options.event,this._input)))}}),r(nt,Q,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ue]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&fe)}}),r(st,Q,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:qt|Wt,pointers:1},getTouchAction:function(){return tt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(qt|Wt)?e=t.overallVelocity:i&qt?e=t.overallVelocityX:i&Wt&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&>(e)>this.options.velocity&&t.eventType&Nt},emit:function(t){var e=K(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),r(ot,Z,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[ce]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,s=t.distanceAdd to Home Screen.",android:'To add this web app to the home screen open the browser option menu and tap on Add to homescreen . The menu can be accessed by pressing the menu hardware button if your device has one, or by tapping the top right menu icon icon . '},zh_cn:{ios:"\u5982\u8981\u628a\u5e94\u7528\u7a0b\u5f0f\u52a0\u81f3\u4e3b\u5c4f\u5e55,\u8bf7\u70b9\u51fb%icon, \u7136\u540e\u52a0\u81f3\u4e3b\u5c4f\u5e55 ",android:'To add this web app to the home screen open the browser option menu and tap on Add to homescreen . The menu can be accessed by pressing the menu hardware button if your device has one, or by tapping the top right menu icon icon . '},zh_tw:{ios:"\u5982\u8981\u628a\u61c9\u7528\u7a0b\u5f0f\u52a0\u81f3\u4e3b\u5c4f\u5e55, \u8acb\u9ede\u64ca%icon, \u7136\u5f8c\u52a0\u81f3\u4e3b\u5c4f\u5e55 .",android:'To add this web app to the home screen open the browser option menu and tap on Add to homescreen . The menu can be accessed by pressing the menu hardware button if your device has one, or by tapping the top right menu icon icon . '}};for(var p in s.intl)s.intl[p.substr(0,2)]=s.intl[p];s.defaults={appID:"org.cubiq.addtohome",fontSize:15,debug:!1,logging:!1,modal:!1,mandatory:!1,autostart:!0,skipFirstVisit:!1,startDelay:1,lifespan:15,displayPace:1440,maxDisplayCount:0,icon:!0,message:"",validLocation:[],onInit:null,onShow:null,onRemove:null,onAdd:null,onPrivate:null,privateModeOverride:!1,detectHomescreen:!1};var m=window.navigator.userAgent,f=window.navigator;o(s,{hasToken:"#ath"==document.location.hash||h.test(document.location.href)||d.test(document.location.search),isRetina:window.devicePixelRatio&&window.devicePixelRatio>1,isIDevice:/iphone|ipod|ipad/i.test(m),
-isMobileChrome:m.indexOf("Android")>-1&&/Chrome\/[.0-9]*/.test(m)&&m.indexOf("Version")==-1,isMobileIE:m.indexOf("Windows Phone")>-1,language:f.language&&f.language.toLowerCase().replace("-","_")||""}),s.language=s.language&&s.language in s.intl?s.language:"en_us",s.isMobileSafari=s.isIDevice&&m.indexOf("Safari")>-1&&m.indexOf("CriOS")<0,s.OS=s.isIDevice?"ios":s.isMobileChrome?"android":s.isMobileIE?"windows":"unsupported",s.OSVersion=m.match(/(OS|Android) (\d+[_\.]\d+)/),s.OSVersion=s.OSVersion&&s.OSVersion[2]?+s.OSVersion[2].replace("_","."):0,s.isStandalone="standalone"in window.navigator&&window.navigator.standalone,s.isTablet=s.isMobileSafari&&m.indexOf("iPad")>-1||s.isMobileChrome&&m.indexOf("Mobile")<0,s.isCompatible=s.isMobileSafari&&s.OSVersion>=6||s.isMobileChrome;var v={lastDisplayTime:0,returningVisitor:!1,displayCount:0,optedout:!1,added:!1};s.removeSession=function(t){try{if(!localStorage)throw new Error("localStorage is not defined");localStorage.removeItem(t||s.defaults.appID)}catch(e){}},s.doLog=function(t){this.options.logging&&console.log(t)},s.Class=function(t){if(this.doLog=s.doLog,this.options=o({},s.defaults),o(this.options,t),this.options.debug&&(this.options.logging=!0),l){if(this.options.mandatory=this.options.mandatory&&("standalone"in window.navigator||this.options.debug),this.options.modal=this.options.modal||this.options.mandatory,this.options.mandatory&&(this.options.startDelay=-.5),this.options.detectHomescreen=this.options.detectHomescreen===!0?"hash":this.options.detectHomescreen,this.options.debug&&(s.isCompatible=!0,s.OS="string"==typeof this.options.debug?this.options.debug:"unsupported"==s.OS?"android":s.OS,s.OSVersion="ios"==s.OS?"8":"4"),this.container=document.documentElement,this.session=this.getItem(this.options.appID),this.session=this.session?JSON.parse(this.session):void 0,!s.hasToken||s.isCompatible&&this.session||(s.hasToken=!1,a()),!s.isCompatible)return void this.doLog("Add to homescreen: not displaying callout because device not supported");this.session=this.session||v;try{if(!localStorage)throw new Error("localStorage is not defined");localStorage.setItem(this.options.appID,JSON.stringify(this.session)),s.hasLocalStorage=!0}catch(e){s.hasLocalStorage=!1,this.options.onPrivate&&this.options.onPrivate.call(this)}for(var i=!this.options.validLocation.length,n=this.options.validLocation.length;n--;)if(this.options.validLocation[n].test(document.location.href)){i=!0;break}if(this.getItem("addToHome")&&this.optOut(),this.session.optedout)return void this.doLog("Add to homescreen: not displaying callout because user opted out");if(this.session.added)return void this.doLog("Add to homescreen: not displaying callout because already added to the homescreen");if(!i)return void this.doLog("Add to homescreen: not displaying callout because not a valid location");if(s.isStandalone)return this.session.added||(this.session.added=!0,this.updateSession(),this.options.onAdd&&s.hasLocalStorage&&this.options.onAdd.call(this)),void this.doLog("Add to homescreen: not displaying callout because in standalone mode");if(this.options.detectHomescreen){if(s.hasToken)return a(),this.session.added||(this.session.added=!0,this.updateSession(),this.options.onAdd&&s.hasLocalStorage&&this.options.onAdd.call(this)),void this.doLog("Add to homescreen: not displaying callout because URL has token, so we are likely coming from homescreen");"hash"==this.options.detectHomescreen?history.replaceState("",window.document.title,document.location.href+"#ath"):"smartURL"==this.options.detectHomescreen?history.replaceState("",window.document.title,document.location.href.replace(/(\/)?$/,"/ath$1")):history.replaceState("",window.document.title,document.location.href+(document.location.search?"&":"?")+"ath=")}if(!this.session.returningVisitor&&(this.session.returningVisitor=!0,this.updateSession(),this.options.skipFirstVisit))return void this.doLog("Add to homescreen: not displaying callout because skipping first visit");if(!this.options.privateModeOverride&&!s.hasLocalStorage)return void this.doLog("Add to homescreen: not displaying callout because browser is in private mode");this.ready=!0,this.options.onInit&&this.options.onInit.call(this),this.options.autostart&&(this.doLog("Add to homescreen: autostart displaying callout"),this.show())}},s.Class.prototype={events:{load:"_delayedShow",error:"_delayedShow",orientationchange:"resize",resize:"resize",scroll:"resize",click:"remove",touchmove:"_preventDefault",transitionend:"_removeElements",webkitTransitionEnd:"_removeElements",MSTransitionEnd:"_removeElements"},handleEvent:function(t){var e=this.events[t.type];e&&this[e](t)},show:function(t){if(this.options.autostart&&!c)return void setTimeout(this.show.bind(this),50);if(this.shown)return void this.doLog("Add to homescreen: not displaying callout because already shown on screen");var e=Date.now(),i=this.session.lastDisplayTime;if(t!==!0){if(!this.ready)return void this.doLog("Add to homescreen: not displaying callout because not ready");if(e-i<6e4*this.options.displayPace)return void this.doLog("Add to homescreen: not displaying callout because displayed recently");if(this.options.maxDisplayCount&&this.session.displayCount>=this.options.maxDisplayCount)return void this.doLog("Add to homescreen: not displaying callout because displayed too many times already")}this.shown=!0,this.session.lastDisplayTime=e,this.session.displayCount++,this.updateSession(),this.applicationIcon||("ios"==s.OS?this.applicationIcon=document.querySelector('head link[rel^=apple-touch-icon][sizes="152x152"],head link[rel^=apple-touch-icon][sizes="144x144"],head link[rel^=apple-touch-icon][sizes="120x120"],head link[rel^=apple-touch-icon][sizes="114x114"],head link[rel^=apple-touch-icon]'):this.applicationIcon=document.querySelector('head link[rel^="shortcut icon"][sizes="196x196"],head link[rel^=apple-touch-icon]'));var n="";"object"==typeof this.options.message&&s.language in this.options.message?n=this.options.message[s.language][s.OS]:"object"==typeof this.options.message&&s.OS in this.options.message?n=this.options.message[s.OS]:this.options.message in s.intl?n=s.intl[this.options.message][s.OS]:""!==this.options.message?n=this.options.message:s.OS in s.intl[s.language]&&(n=s.intl[s.language][s.OS]),n=""+n.replace("%icon",'icon ')+"
",this.viewport=document.createElement("div"),this.viewport.className="ath-viewport",this.options.modal&&(this.viewport.className+=" ath-modal"),this.options.mandatory&&(this.viewport.className+=" ath-mandatory"),this.viewport.style.position="absolute",this.element=document.createElement("div"),this.element.className="ath-container ath-"+s.OS+" ath-"+s.OS+(s.OSVersion+"").substr(0,1)+" ath-"+(s.isTablet?"tablet":"phone"),this.element.style.cssText="-webkit-transition-property:-webkit-transform,opacity;-webkit-transition-duration:0s;-webkit-transition-timing-function:ease-out;transition-property:transform,opacity;transition-duration:0s;transition-timing-function:ease-out;",this.element.style.webkitTransform="translate3d(0,-"+window.innerHeight+"px,0)",this.element.style.transform="translate3d(0,-"+window.innerHeight+"px,0)",this.options.icon&&this.applicationIcon&&(this.element.className+=" ath-icon",this.img=document.createElement("img"),this.img.className="ath-application-icon",this.img.addEventListener("load",this,!1),this.img.addEventListener("error",this,!1),this.img.src=this.applicationIcon.href,this.element.appendChild(this.img)),this.element.innerHTML+=n,this.viewport.style.left="-99999em",this.viewport.appendChild(this.element),this.container.appendChild(this.viewport),this.img?this.doLog("Add to homescreen: not displaying callout because waiting for img to load"):this._delayedShow()},_delayedShow:function(t){setTimeout(this._show.bind(this),1e3*this.options.startDelay+500)},_show:function(){var t=this;this.updateViewport(),window.addEventListener("resize",this,!1),window.addEventListener("scroll",this,!1),window.addEventListener("orientationchange",this,!1),this.options.modal&&document.addEventListener("touchmove",this,!0),this.options.mandatory||setTimeout(function(){t.element.addEventListener("click",t,!0)},1e3),setTimeout(function(){t.element.style.webkitTransitionDuration="1.2s",t.element.style.transitionDuration="1.2s",t.element.style.webkitTransform="translate3d(0,0,0)",t.element.style.transform="translate3d(0,0,0)"},0),this.options.lifespan&&(this.removeTimer=setTimeout(this.remove.bind(this),1e3*this.options.lifespan)),this.options.onShow&&this.options.onShow.call(this)},remove:function(){clearTimeout(this.removeTimer),this.img&&(this.img.removeEventListener("load",this,!1),this.img.removeEventListener("error",this,!1)),window.removeEventListener("resize",this,!1),window.removeEventListener("scroll",this,!1),window.removeEventListener("orientationchange",this,!1),document.removeEventListener("touchmove",this,!0),this.element.removeEventListener("click",this,!0),this.element.addEventListener("transitionend",this,!1),this.element.addEventListener("webkitTransitionEnd",this,!1),this.element.addEventListener("MSTransitionEnd",this,!1),this.element.style.webkitTransitionDuration="0.3s",this.element.style.opacity="0"},_removeElements:function(){this.element.removeEventListener("transitionend",this,!1),this.element.removeEventListener("webkitTransitionEnd",this,!1),this.element.removeEventListener("MSTransitionEnd",this,!1),this.container.removeChild(this.viewport),this.shown=!1,this.options.onRemove&&this.options.onRemove.call(this)},updateViewport:function(){if(this.shown){this.viewport.style.width=window.innerWidth+"px",this.viewport.style.height=window.innerHeight+"px",this.viewport.style.left=window.scrollX+"px",this.viewport.style.top=window.scrollY+"px";var t=document.documentElement.clientWidth;this.orientation=t>document.documentElement.clientHeight?"landscape":"portrait";var e="ios"==s.OS?"portrait"==this.orientation?screen.width:screen.height:screen.width;this.scale=screen.width>t?1:e/window.innerWidth,this.element.style.fontSize=this.options.fontSize/this.scale+"px"}},resize:function(){clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout(this.updateViewport.bind(this),100)},updateSession:function(){s.hasLocalStorage!==!1&&localStorage&&localStorage.setItem(this.options.appID,JSON.stringify(this.session))},clearSession:function(){this.session=v,this.updateSession()},getItem:function(t){try{if(!localStorage)throw new Error("localStorage is not defined");return localStorage.getItem(t)}catch(e){s.hasLocalStorage=!1}},optOut:function(){this.session.optedout=!0,this.updateSession()},optIn:function(){this.session.optedout=!1,this.updateSession()},clearDisplayCount:function(){this.session.displayCount=0,this.updateSession()},_preventDefault:function(t){t.preventDefault(),t.stopPropagation()}},s.VERSION="3.2.2",t.exports=r.addToHomescreen=s},function(t,e,i){"use strict";var n=i(1),s=i(2),o=function(t,e){var i=this;this.options=n.extend({},o.DEFAULTS,e),this.$element=n(t),this.$element.addClass("am-fade am-in").on("click.alert.amui",".am-close",function(){i.close()})};o.DEFAULTS={removeElement:!0},o.prototype.close=function(){function t(){e.trigger("closed.alert.amui").remove()}var e=this.$element;e.trigger("close.alert.amui").removeClass("am-in"),s.support.transition&&e.hasClass("am-fade")?e.one(s.support.transition.end,t).emulateTransitionEnd(200):t()},s.plugin("alert",o),n(document).on("click.alert.amui.data-api","[data-am-alert]",function(t){var e=n(t.target);e.is(".am-close")&&n(this).alert("close")}),t.exports=o},function(t,e,i){"use strict";var n=i(1),s=i(2),o=function(t,e){this.$element=n(t),this.options=n.extend({},o.DEFAULTS,e),this.isLoading=!1,this.hasSpinner=!1};o.DEFAULTS={loadingText:"loading...",disabledClassName:"am-disabled",activeClassName:"am-active",spinner:void 0},o.prototype.setState=function(t,e){var i=this.$element,o="disabled",a=i.data(),r=this.options,l=i.is("input")?"val":"html",c="am-btn-"+t+" "+r.disabledClassName;t+="Text",r.resetText||(r.resetText=i[l]()),s.support.animation&&r.spinner&&"html"===l&&!this.hasSpinner&&(r.loadingText=' '+r.loadingText,this.hasSpinner=!0),e=e||(void 0===a[t]?r[t]:a[t]),i[l](e),setTimeout(n.proxy(function(){"loadingText"===t?(i.addClass(c).attr(o,o),this.isLoading=!0):this.isLoading&&(i.removeClass(c).removeAttr(o),this.isLoading=!1)},this),0)},o.prototype.toggle=function(){var t=!0,e=this.$element,i=this.$element.parent('[class*="am-btn-group"]'),n=o.DEFAULTS.activeClassName;if(i.length){var s=this.$element.find("input");"radio"==s.prop("type")&&(s.prop("checked")&&e.hasClass(n)?t=!1:i.find("."+n).removeClass(n)),t&&s.prop("checked",!e.hasClass(n)).trigger("change")}t&&(e.toggleClass(n),e.hasClass(n)||e.blur())},s.plugin("button",o,{dataOptions:"data-am-loading",methodCall:function(t,e){"toggle"===t[0]?e.toggle():"string"==typeof t[0]&&e.setState.apply(e,t)}}),n(document).on("click.button.amui.data-api","[data-am-button]",function(t){t.preventDefault();var e=n(t.target);e.hasClass("am-btn")||(e=e.closest(".am-btn")),e.button("toggle")}),s.ready(function(t){n("[data-am-loading]",t).button(),n("[data-am-button]",t).find("input:checked").each(function(){n(this).parent("label").addClass(o.DEFAULTS.activeClassName)})}),t.exports=s.button=o},function(t,e,i){"use strict";function n(t){return this.each(function(){var e=s(this),i=e.data("amui.collapse"),n=s.extend({},a.DEFAULTS,o.utils.options(e.attr("data-am-collapse")),"object"==typeof t&&t);!i&&n.toggle&&"open"===t&&(t=!t),i||e.data("amui.collapse",i=new a(this,n)),"string"==typeof t&&i[t]()})}var s=i(1),o=i(2),a=function(t,e){this.$element=s(t),this.options=s.extend({},a.DEFAULTS,e),this.transitioning=null,this.options.parent&&(this.$parent=s(this.options.parent)),this.options.toggle&&this.toggle()};a.DEFAULTS={toggle:!0},a.prototype.open=function(){if(!this.transitioning&&!this.$element.hasClass("am-in")){var t=s.Event("open.collapse.amui");if(this.$element.trigger(t),!t.isDefaultPrevented()){var e=this.$parent&&this.$parent.find("> .am-panel > .am-in");if(e&&e.length){var i=e.data("amui.collapse");if(i&&i.transitioning)return;n.call(e,"close"),i||e.data("amui.collapse",null)}this.$element.removeClass("am-collapse").addClass("am-collapsing").height(0),this.transitioning=1;var a=function(){this.$element.removeClass("am-collapsing").addClass("am-collapse am-in").height("").trigger("opened.collapse.amui"),this.transitioning=0};if(!o.support.transition)return a.call(this);var r=this.$element[0].scrollHeight;this.$element.one(o.support.transition.end,s.proxy(a,this)).emulateTransitionEnd(300).css({height:r})}}},a.prototype.close=function(){if(!this.transitioning&&this.$element.hasClass("am-in")){var t=s.Event("close.collapse.amui");if(this.$element.trigger(t),!t.isDefaultPrevented()){this.$element.height(this.$element.height()).redraw(),this.$element.addClass("am-collapsing").removeClass("am-collapse am-in"),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.trigger("closed.collapse.amui").removeClass("am-collapsing").addClass("am-collapse")};return o.support.transition?void this.$element.height(0).one(o.support.transition.end,s.proxy(e,this)).emulateTransitionEnd(300):e.call(this)}}},a.prototype.toggle=function(){this[this.$element.hasClass("am-in")?"close":"open"]()},s.fn.collapse=n,s(document).on("click.collapse.amui.data-api","[data-am-collapse]",function(t){var e,i=s(this),a=o.utils.options(i.attr("data-am-collapse")),r=a.target||t.preventDefault()||(e=i.attr("href"))&&e.replace(/.*(?=#[^\s]+$)/,""),l=s(r),c=l.data("amui.collapse"),u=c?"toggle":a,h=a.parent,d=h&&s(h);c&&c.transitioning||(d&&d.find("[data-am-collapse]").not(i).addClass("am-collapsed"),i[l.hasClass("am-in")?"addClass":"removeClass"]("am-collapsed")),n.call(l,u)}),t.exports=o.collapse=a},function(t,e,i){"use strict";var n=i(1),s=i(2),o=n(document),a=function(t,e){if(this.$element=n(t),this.options=n.extend({},a.DEFAULTS,e),this.format=r.parseFormat(this.options.format),this.$element.data("date",this.options.date),this.language=this.getLocale(this.options.locale),this.theme=this.options.theme,this.$picker=n(r.template).appendTo("body").on({click:n.proxy(this.click,this)}),this.isInput=this.$element.is("input"),this.component=!!this.$element.is(".am-datepicker-date")&&this.$element.find(".am-datepicker-add-on"),this.isInput?this.$element.on({"click.datepicker.amui":n.proxy(this.open,this),"keyup.datepicker.amui":n.proxy(this.update,this)}):this.component?this.component.on("click.datepicker.amui",n.proxy(this.open,this)):this.$element.on("click.datepicker.amui",n.proxy(this.open,this)),this.minViewMode=this.options.minViewMode,"string"==typeof this.minViewMode)switch(this.minViewMode){case"months":this.minViewMode=1;break;case"years":this.minViewMode=2;break;default:this.minViewMode=0}if(this.viewMode=this.options.viewMode,"string"==typeof this.viewMode)switch(this.viewMode){case"months":this.viewMode=1;break;case"years":this.viewMode=2;break;default:this.viewMode=0}this.startViewMode=this.viewMode,this.weekStart=(this.options.weekStart||a.locales[this.language].weekStart||0)%7,this.weekEnd=(this.weekStart+6)%7,this.onRender=this.options.onRender,this.setTheme(),this.fillDow(),this.fillMonths(),this.update(),this.showMode()};a.DEFAULTS={locale:"zh_CN",format:"yyyy-mm-dd",weekStart:void 0,viewMode:0,minViewMode:0,date:"",theme:"",autoClose:1,onRender:function(t){return""}},a.prototype.open=function(t){this.$picker.show(),this.height=this.component?this.component.outerHeight():this.$element.outerHeight(),this.place(),n(window).on("resize.datepicker.amui",n.proxy(this.place,this)),t&&(t.stopPropagation(),t.preventDefault());var e=this;o.on("mousedown.datapicker.amui touchstart.datepicker.amui",function(t){0===n(t.target).closest(".am-datepicker").length&&e.close()}),this.$element.trigger({type:"open.datepicker.amui",date:this.date})},a.prototype.close=function(){this.$picker.hide(),n(window).off("resize.datepicker.amui",this.place),this.viewMode=this.startViewMode,this.showMode(),this.isInput||n(document).off("mousedown.datapicker.amui touchstart.datepicker.amui",this.close),this.$element.trigger({type:"close.datepicker.amui",date:this.date})},a.prototype.set=function(){var t,e=r.formatDate(this.date,this.format);this.isInput?t=this.$element.attr("value",e):(this.component&&(t=this.$element.find("input").attr("value",e)),this.$element.data("date",e)),t&&t.trigger("change")},a.prototype.setValue=function(t){"string"==typeof t?this.date=r.parseDate(t,this.format):this.date=new Date(t),this.set(),this.viewDate=new Date(this.date.getFullYear(),this.date.getMonth(),1,0,0,0,0),this.fill()},a.prototype.place=function(){var t=this.component?this.component.offset():this.$element.offset(),e=this.component?this.component.width():this.$element.width(),i=t.top+this.height,n=t.left,s=o.width()-t.left-e,a=this.isOutView();if(this.$picker.removeClass("am-datepicker-right"),this.$picker.removeClass("am-datepicker-up"),o.width()>640){if(a.outRight)return this.$picker.addClass("am-datepicker-right"),void this.$picker.css({top:i,left:"auto",right:s});a.outBottom&&(this.$picker.addClass("am-datepicker-up"),i=t.top-this.$picker.outerHeight(!0))}else n=0;this.$picker.css({top:i,left:n})},a.prototype.update=function(t){this.date=r.parseDate("string"==typeof t?t:this.isInput?this.$element.prop("value"):this.$element.data("date"),this.format),this.viewDate=new Date(this.date.getFullYear(),this.date.getMonth(),1,0,0,0,0),this.fill()},a.prototype.fillDow=function(){for(var t=this.weekStart,e="";t'+a.locales[this.language].daysMin[t++%7]+"";e+=" ",this.$picker.find(".am-datepicker-days thead").append(e)},a.prototype.fillMonths=function(){for(var t="",e=0;e<12;)t+=''+a.locales[this.language].monthsShort[e++]+" ";this.$picker.find(".am-datepicker-months td").append(t)},a.prototype.fill=function(){var t=new Date(this.viewDate),e=t.getFullYear(),i=t.getMonth(),n=this.date.valueOf(),s=new Date(e,i-1,28,0,0,0,0),o=r.getDaysInMonth(s.getFullYear(),s.getMonth()),l=this.$picker.find(".am-datepicker-days .am-datepicker-select");"zh_CN"===this.language?l.text(e+a.locales[this.language].year[0]+" "+a.locales[this.language].months[i]):l.text(a.locales[this.language].months[i]+" "+e),s.setDate(o),s.setDate(o-(s.getDay()-this.weekStart+7)%7);var c=new Date(s);c.setDate(c.getDate()+42),c=c.valueOf();for(var u,h,d,p=[];s.valueOf()"),u=this.onRender(s,0),h=s.getFullYear(),d=s.getMonth(),di&&h===e||h>e)&&(u+=" am-datepicker-new"),s.valueOf()===n&&(u+=" am-active"),p.push(' '+s.getDate()+" "),s.getDay()===this.weekEnd&&p.push(""),s.setDate(s.getDate()+1);this.$picker.find(".am-datepicker-days tbody").empty().append(p.join(""));var m=this.date.getFullYear(),f=this.$picker.find(".am-datepicker-months").find(".am-datepicker-select").text(e);f=f.end().find("span").removeClass("am-active").removeClass("am-disabled");for(var v=0;v<12;)this.onRender(t.setFullYear(e,v),1)&&f.eq(v).addClass("am-disabled"),v++;m===e&&f.eq(this.date.getMonth()).removeClass("am-disabled").addClass("am-active"),p="",e=10*parseInt(e/10,10);var g,y=this.$picker.find(".am-datepicker-years").find(".am-datepicker-select").text(e+"-"+(e+9)).end().find("td"),w=new Date(this.viewDate);e-=1;for(var b=-1;b<11;b++)g=this.onRender(w.setFullYear(e),2),p+=''+e+" ",e+=1;y.html(p)},a.prototype.click=function(t){t.stopPropagation(),t.preventDefault();var e,i,s=this.$picker.find(".am-datepicker-days").find(".am-active"),o=this.$picker.find(".am-datepicker-months"),a=o.find(".am-active").index(),l=n(t.target).closest("span, td, th");if(1===l.length)switch(l[0].nodeName.toLowerCase()){case"th":switch(l[0].className){case"am-datepicker-switch":this.showMode(1);break;case"am-datepicker-prev":case"am-datepicker-next":this.viewDate["set"+r.modes[this.viewMode].navFnc].call(this.viewDate,this.viewDate["get"+r.modes[this.viewMode].navFnc].call(this.viewDate)+r.modes[this.viewMode].navStep*("am-datepicker-prev"===l[0].className?-1:1)),this.fill(),this.set()}break;case"span":if(l.is(".am-disabled"))return;l.is(".am-datepicker-month")?(e=l.parent().find("span").index(l),l.is(".am-active")?this.viewDate.setMonth(e,s.text()):this.viewDate.setMonth(e)):(i=parseInt(l.text(),10)||0,l.is(".am-active")?this.viewDate.setFullYear(i,a,s.text()):this.viewDate.setFullYear(i)),0!==this.viewMode&&(this.date=new Date(this.viewDate),this.$element.trigger({type:"changeDate.datepicker.amui",date:this.date,viewMode:r.modes[this.viewMode].clsName})),this.showMode(-1),this.fill(),this.set();break;case"td":if(l.is(".am-datepicker-day")&&!l.is(".am-disabled")){var c=parseInt(l.text(),10)||1;e=this.viewDate.getMonth(),l.is(".am-datepicker-old")?e-=1:l.is(".am-datepicker-new")&&(e+=1),i=this.viewDate.getFullYear(),this.date=new Date(i,e,c,0,0,0,0),this.viewDate=new Date(i,e,Math.min(28,c),0,0,0,0),this.fill(),this.set(),this.$element.trigger({type:"changeDate.datepicker.amui",date:this.date,viewMode:r.modes[this.viewMode].clsName}),this.options.autoClose&&this.close()}}},a.prototype.mousedown=function(t){t.stopPropagation(),t.preventDefault()},a.prototype.showMode=function(t){t&&(this.viewMode=Math.max(this.minViewMode,Math.min(2,this.viewMode+t))),this.$picker.find(">div").hide().filter(".am-datepicker-"+r.modes[this.viewMode].clsName).show()},a.prototype.isOutView=function(){var t=this.component?this.component.offset():this.$element.offset(),e={outRight:!1,outBottom:!1},i=this.$picker,n=t.left+i.outerWidth(!0),s=t.top+i.outerHeight(!0)+this.$element.innerHeight();return n>o.width()&&(e.outRight=!0),s>o.height()&&(e.outBottom=!0),e},a.prototype.getLocale=function(t){return t||(t=navigator.language&&navigator.language.split("-"),t[1]=t[1].toUpperCase(),t=t.join("_")),a.locales[t]||(t="en_US"),t},a.prototype.setTheme=function(){this.theme&&this.$picker.addClass("am-datepicker-"+this.theme)},a.locales={en_US:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekStart:0},zh_CN:{days:["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],daysShort:["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"],daysMin:["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"],months:["\u4e00\u6708","\u4e8c\u6708","\u4e09\u6708","\u56db\u6708","\u4e94\u6708","\u516d\u6708","\u4e03\u6708","\u516b\u6708","\u4e5d\u6708","\u5341\u6708","\u5341\u4e00\u6708","\u5341\u4e8c\u6708"],monthsShort:["\u4e00\u6708","\u4e8c\u6708","\u4e09\u6708","\u56db\u6708","\u4e94\u6708","\u516d\u6708","\u4e03\u6708","\u516b\u6708","\u4e5d\u6708","\u5341\u6708","\u5341\u4e00\u6708","\u5341\u4e8c\u6708"],weekStart:1,year:["\u5e74"]}};var r={modes:[{clsName:"days",navFnc:"Month",navStep:1},{clsName:"months",navFnc:"FullYear",navStep:1},{clsName:"years",navFnc:"FullYear",navStep:10}],isLeapYear:function(t){return t%4===0&&t%100!==0||t%400===0},getDaysInMonth:function(t,e){return[31,r.isLeapYear(t)?29:28,31,30,31,30,31,31,30,31,30,31][e]},parseFormat:function(t){var e=t.match(/[.\/\-\s].*?/),i=t.split(/\W+/);if(!e||!i||0===i.length)throw new Error("Invalid date format.");return{separator:e,parts:i}},parseDate:function(t,e){var i,n=t.split(e.separator);if(t=new Date,t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),n.length===e.parts.length){for(var s=t.getFullYear(),o=t.getDate(),a=t.getMonth(),r=0,l=e.parts.length;r',contTemplate:' '};r.template='
'+r.headTemplate+r.contTemplate+'
'+r.headTemplate+r.contTemplate+"
",s.plugin("datepicker",a),s.ready(function(t){n("[data-am-datepicker]").datepicker()}),t.exports=s.datepicker=a},function(t,e,i){"use strict";var n=i(1),s=i(2),o=n(document),a=s.support.transition,r=function(){this.id=s.utils.generateGUID("am-dimmer"),this.$element=n(r.DEFAULTS.tpl,{id:this.id}),this.inited=!1,this.scrollbarWidth=0,this.$used=n([])};r.DEFAULTS={tpl:'
'},r.prototype.init=function(){return this.inited||(n(document.body).append(this.$element),this.inited=!0,o.trigger("init.dimmer.amui"),this.$element.on("touchmove.dimmer.amui",function(t){t.preventDefault()})),this},r.prototype.open=function(t){this.inited||this.init();var e=this.$element;return t&&(this.$used=this.$used.add(n(t))),this.checkScrollbar().setScrollbar(),e.show().trigger("open.dimmer.amui"),a&&e.off(a.end),setTimeout(function(){e.addClass("am-active")},0),this},r.prototype.close=function(t,e){function i(){s.hide(),this.resetScrollbar()}if(this.$used=this.$used.not(n(t)),!e&&this.$used.length)return this;var s=this.$element;return s.removeClass("am-active").trigger("close.dimmer.amui"),i.call(this),this},r.prototype.checkScrollbar=function(){return this.scrollbarWidth=s.utils.measureScrollbar(),this},r.prototype.setScrollbar=function(){var t=n(document.body),e=parseInt(t.css("padding-right")||0,10);return this.scrollbarWidth&&t.css("padding-right",e+this.scrollbarWidth),t.addClass("am-dimmer-active"),this},r.prototype.resetScrollbar=function(){return n(document.body).css("padding-right","").removeClass("am-dimmer-active"),this},t.exports=s.dimmer=new r},function(t,e,i){"use strict";var n=i(1),s=i(2),o=s.support.animation,a=function(t,e){this.options=n.extend({},a.DEFAULTS,e),e=this.options,this.$element=n(t),this.$toggle=this.$element.find(e.selector.toggle),this.$dropdown=this.$element.find(e.selector.dropdown),this.$boundary=e.boundary===window?n(window):this.$element.closest(e.boundary),this.$justify=e.justify&&n(e.justify).length&&n(e.justify)||void 0,!this.$boundary.length&&(this.$boundary=n(window)),this.active=!!this.$element.hasClass("am-active"),this.animating=null,this.events()};a.DEFAULTS={animation:"am-animation-slide-top-fixed",boundary:window,justify:void 0,selector:{dropdown:".am-dropdown-content",toggle:".am-dropdown-toggle"},trigger:"click"},a.prototype.toggle=function(){this.clear(),this.animating||this[this.active?"close":"open"]()},a.prototype.open=function(t){var e=this.$toggle,i=this.$element,s=this.$dropdown;if(!e.is(".am-disabled, :disabled")&&!this.active){i.trigger("open.dropdown.amui").addClass("am-active"),e.trigger("focus"),this.checkDimensions(t);var a=n.proxy(function(){i.trigger("opened.dropdown.amui"),this.active=!0,this.animating=0},this);o?(this.animating=1,s.addClass(this.options.animation).on(o.end+".open.dropdown.amui",n.proxy(function(){a(),s.removeClass(this.options.animation)},this))):a()}},a.prototype.close=function(){if(this.active){var t="am-dropdown-animation",e=this.$element,i=this.$dropdown;e.trigger("close.dropdown.amui");var s=n.proxy(function(){e.removeClass("am-active").trigger("closed.dropdown.amui"),this.active=!1,this.animating=0,this.$toggle.blur()},this);o?(i.removeClass(this.options.animation),i.addClass(t),this.animating=1,i.one(o.end+".close.dropdown.amui",function(){i.removeClass(t),s()})):s()}},a.prototype.enable=function(){this.$toggle.prop("disabled",!1)},a.prototype.disable=function(){this.$toggle.prop("disabled",!0)},a.prototype.checkDimensions=function(t){if(this.$dropdown.length){var e=this.$dropdown;t&&t.offset&&e.offset(t.offset);var i=e.offset(),s=e.outerWidth(),o=this.$boundary.width(),a=n.isWindow(this.boundary)&&this.$boundary.offset()?this.$boundary.offset().left:0;this.$justify&&e.css({"min-width":this.$justify.css("width")}),s+(i.left-a)>o&&this.$element.addClass("am-dropdown-flip")}},a.prototype.clear=function(){n("[data-am-dropdown]").not(this.$element).each(function(){var t=n(this).data("amui.dropdown");t&&t.close()})},a.prototype.events=function(){var t="dropdown.amui",e=this.$toggle;e.on("click."+t,n.proxy(function(t){t.preventDefault(),this.toggle()},this)),n(document).on("keydown.dropdown.amui",n.proxy(function(t){27===t.keyCode&&this.active&&this.close()},this)).on("click.outer.dropdown.amui",n.proxy(function(t){!this.active||this.$element[0]!==t.target&&this.$element.find(t.target).length||this.close()},this))},s.plugin("dropdown",a),s.ready(function(t){n("[data-am-dropdown]",t).dropdown()}),n(document).on("click.dropdown.amui.data-api",".am-dropdown form",function(t){
-t.stopPropagation()}),t.exports=s.dropdown=a},function(t,e,i){(function(e){var n=i(1),s=i(2),o=!0;n.flexslider=function(t,i){var s=n(t);s.vars=n.extend({},n.flexslider.defaults,i);var a,r=s.vars.namespace,l=window.navigator&&window.navigator.msPointerEnabled&&window.MSGesture,c=("ontouchstart"in window||l||window.DocumentTouch&&document instanceof DocumentTouch)&&s.vars.touch,u="click touchend MSPointerUp keyup",h="",d="vertical"===s.vars.direction,p=s.vars.reverse,m=s.vars.itemWidth>0,f="fade"===s.vars.animation,v=""!==s.vars.asNavFor,g={};n.data(t,"flexslider",s),g={init:function(){s.animating=!1,s.currentSlide=parseInt(s.vars.startAt?s.vars.startAt:0,10),isNaN(s.currentSlide)&&(s.currentSlide=0),s.animatingTo=s.currentSlide,s.atEnd=0===s.currentSlide||s.currentSlide===s.last,s.containerSelector=s.vars.selector.substr(0,s.vars.selector.search(" ")),s.slides=n(s.vars.selector,s),s.container=n(s.containerSelector,s),s.count=s.slides.length,s.syncExists=n(s.vars.sync).length>0,"slide"===s.vars.animation&&(s.vars.animation="swing"),s.prop=d?"top":"marginLeft",s.args={},s.manualPause=!1,s.stopped=!1,s.started=!1,s.startTimeout=null,s.transitions=!s.vars.video&&!f&&s.vars.useCSS&&function(){var t=document.createElement("div"),e=["perspectiveProperty","WebkitPerspective","MozPerspective","OPerspective","msPerspective"];for(var i in e)if(void 0!==t.style[e[i]])return s.pfx=e[i].replace("Perspective","").toLowerCase(),s.prop="-"+s.pfx+"-transform",!0;return!1}(),s.ensureAnimationEnd="",""!==s.vars.controlsContainer&&(s.controlsContainer=n(s.vars.controlsContainer).length>0&&n(s.vars.controlsContainer)),""!==s.vars.manualControls&&(s.manualControls=n(s.vars.manualControls).length>0&&n(s.vars.manualControls)),""!==s.vars.customDirectionNav&&(s.customDirectionNav=2===n(s.vars.customDirectionNav).length&&n(s.vars.customDirectionNav)),s.vars.randomize&&(s.slides.sort(function(){return Math.round(Math.random())-.5}),s.container.empty().append(s.slides)),s.doMath(),s.setup("init"),s.vars.controlNav&&g.controlNav.setup(),s.vars.directionNav&&g.directionNav.setup(),s.vars.keyboard&&(1===n(s.containerSelector).length||s.vars.multipleKeyboard)&&n(document).bind("keyup",function(t){var e=t.keyCode;if(!s.animating&&(39===e||37===e)){var i=39===e?s.getTarget("next"):37===e&&s.getTarget("prev");s.flexAnimate(i,s.vars.pauseOnAction)}}),s.vars.mousewheel&&s.bind("mousewheel",function(t,e,i,n){t.preventDefault();var o=e<0?s.getTarget("next"):s.getTarget("prev");s.flexAnimate(o,s.vars.pauseOnAction)}),s.vars.pausePlay&&g.pausePlay.setup(),s.vars.slideshow&&s.vars.pauseInvisible&&g.pauseInvisible.init(),s.vars.slideshow&&(s.vars.pauseOnHover&&s.hover(function(){s.manualPlay||s.manualPause||s.pause()},function(){s.manualPause||s.manualPlay||s.stopped||s.play()}),s.vars.pauseInvisible&&g.pauseInvisible.isHidden()||(s.vars.initDelay>0?s.startTimeout=setTimeout(s.play,s.vars.initDelay):s.play())),v&&g.asNav.setup(),c&&s.vars.touch&&g.touch(),(!f||f&&s.vars.smoothHeight)&&n(window).bind("resize orientationchange focus",g.resize),s.find("img").attr("draggable","false"),setTimeout(function(){s.vars.start(s)},200)},asNav:{setup:function(){s.asNav=!0,s.animatingTo=Math.floor(s.currentSlide/s.move),s.currentItem=s.currentSlide,s.slides.removeClass(r+"active-slide").eq(s.currentItem).addClass(r+"active-slide"),l?(t._slider=s,s.slides.each(function(){var t=this;t._gesture=new MSGesture,t._gesture.target=t,t.addEventListener("MSPointerDown",function(t){t.preventDefault(),t.currentTarget._gesture&&t.currentTarget._gesture.addPointer(t.pointerId)},!1),t.addEventListener("MSGestureTap",function(t){t.preventDefault();var e=n(this),i=e.index();n(s.vars.asNavFor).data("flexslider").animating||e.hasClass("active")||(s.direction=s.currentItem'),s.pagingCount>1)for(var a=0;a ":''+o+" ","thumbnails"===s.vars.controlNav&&!0===s.vars.thumbCaptions){var c=e.attr("data-thumbcaption");""!==c&&void 0!==c&&(t+=''+c+" ")}s.controlNavScaffold.append(""+t+" "),o++}s.controlsContainer?n(s.controlsContainer).append(s.controlNavScaffold):s.append(s.controlNavScaffold),g.controlNav.set(),g.controlNav.active(),s.controlNavScaffold.delegate("a, img",u,function(t){if(t.preventDefault(),""===h||h===t.type){var e=n(this),i=s.controlNav.index(e);e.hasClass(r+"active")||(s.direction=i>s.currentSlide?"next":"prev",s.flexAnimate(i,s.vars.pauseOnAction))}""===h&&(h=t.type),g.setToClearWatchedEvent()})},setupManual:function(){s.controlNav=s.manualControls,g.controlNav.active(),s.controlNav.bind(u,function(t){if(t.preventDefault(),""===h||h===t.type){var e=n(this),i=s.controlNav.index(e);e.hasClass(r+"active")||(i>s.currentSlide?s.direction="next":s.direction="prev",s.flexAnimate(i,s.vars.pauseOnAction))}""===h&&(h=t.type),g.setToClearWatchedEvent()})},set:function(){var t="thumbnails"===s.vars.controlNav?"img":"a";s.controlNav=n("."+r+"control-nav li "+t,s.controlsContainer?s.controlsContainer:s)},active:function(){s.controlNav.removeClass(r+"active").eq(s.animatingTo).addClass(r+"active")},update:function(t,e){s.pagingCount>1&&"add"===t?s.controlNavScaffold.append(n(''+s.count+" ")):1===s.pagingCount?s.controlNavScaffold.find("li").remove():s.controlNav.eq(e).closest("li").remove(),g.controlNav.set(),s.pagingCount>1&&s.pagingCount!==s.controlNav.length?s.update(e,t):g.controlNav.active()}},directionNav:{setup:function(){var t=n('");s.customDirectionNav?s.directionNav=s.customDirectionNav:s.controlsContainer?(n(s.controlsContainer).append(t),s.directionNav=n("."+r+"direction-nav li a",s.controlsContainer)):(s.append(t),s.directionNav=n("."+r+"direction-nav li a",s)),g.directionNav.update(),s.directionNav.bind(u,function(t){t.preventDefault();var e;""!==h&&h!==t.type||(e=n(this).hasClass(r+"next")?s.getTarget("next"):s.getTarget("prev"),s.flexAnimate(e,s.vars.pauseOnAction)),""===h&&(h=t.type),g.setToClearWatchedEvent()})},update:function(){var t=r+"disabled";1===s.pagingCount?s.directionNav.addClass(t).attr("tabindex","-1"):s.vars.animationLoop?s.directionNav.removeClass(t).removeAttr("tabindex"):0===s.animatingTo?s.directionNav.removeClass(t).filter("."+r+"prev").addClass(t).attr("tabindex","-1"):s.animatingTo===s.last?s.directionNav.removeClass(t).filter("."+r+"next").addClass(t).attr("tabindex","-1"):s.directionNav.removeClass(t).removeAttr("tabindex")}},pausePlay:{setup:function(){var t=n('');s.controlsContainer?(s.controlsContainer.append(t),s.pausePlay=n("."+r+"pauseplay a",s.controlsContainer)):(s.append(t),s.pausePlay=n("."+r+"pauseplay a",s)),g.pausePlay.update(s.vars.slideshow?r+"pause":r+"play"),s.pausePlay.bind(u,function(t){t.preventDefault(),""!==h&&h!==t.type||(n(this).hasClass(r+"pause")?(s.manualPause=!0,s.manualPlay=!1,s.pause()):(s.manualPause=!1,s.manualPlay=!0,s.play())),""===h&&(h=t.type),g.setToClearWatchedEvent()})},update:function(t){"play"===t?s.pausePlay.removeClass(r+"pause").addClass(r+"play").html(s.vars.playText):s.pausePlay.removeClass(r+"play").addClass(r+"pause").html(s.vars.pauseText)}},touch:function(){function i(e){e.stopPropagation(),s.animating?e.preventDefault():(s.pause(),t._gesture.addPointer(e.pointerId),C=0,u=d?s.h:s.w,v=Number(new Date),c=m&&p&&s.animatingTo===s.last?0:m&&p?s.limit-(s.itemW+s.vars.itemMargin)*s.move*s.animatingTo:m&&s.currentSlide===s.last?s.limit:m?(s.itemW+s.vars.itemMargin)*s.move*s.currentSlide:p?(s.last-s.currentSlide+s.cloneOffset)*u:(s.currentSlide+s.cloneOffset)*u)}function n(i){i.stopPropagation();var n=i.target._slider;if(n){var s=-i.translationX,o=-i.translationY;return C+=d?o:s,h=C,b=d?Math.abs(C)500)&&(i.preventDefault(),!f&&n.transitions&&(n.vars.animationLoop||(h=C/(0===n.currentSlide&&C<0||n.currentSlide===n.last&&C>0?Math.abs(C)/u+2:1)),n.setProps(c+h,"setTouch"))))}}function o(t){t.stopPropagation();var e=t.target._slider;if(e){if(e.animatingTo===e.currentSlide&&!b&&null!==h){var i=p?-h:h,n=i>0?e.getTarget("next"):e.getTarget("prev");e.canAdvance(n)&&(Number(new Date)-v<550&&Math.abs(i)>50||Math.abs(i)>u/2)?e.flexAnimate(n,e.vars.pauseOnAction):f||e.flexAnimate(e.currentSlide,e.vars.pauseOnAction,!0)}a=null,r=null,h=null,c=null,C=0}}var a,r,c,u,h,v,g,y,w,b=!1,T=0,x=0,C=0;l?(t.style.msTouchAction="none",t._gesture=new MSGesture,t._gesture.target=t,t.addEventListener("MSPointerDown",i,!1),t._slider=s,t.addEventListener("MSGestureChange",n,!1),t.addEventListener("MSGestureEnd",o,!1)):(g=function(e){s.animating?e.preventDefault():(window.navigator.msPointerEnabled||1===e.touches.length)&&(s.pause(),u=d?s.h:s.w,v=Number(new Date),T=e.touches[0].pageX,x=e.touches[0].pageY,c=m&&p&&s.animatingTo===s.last?0:m&&p?s.limit-(s.itemW+s.vars.itemMargin)*s.move*s.animatingTo:m&&s.currentSlide===s.last?s.limit:m?(s.itemW+s.vars.itemMargin)*s.move*s.currentSlide:p?(s.last-s.currentSlide+s.cloneOffset)*u:(s.currentSlide+s.cloneOffset)*u,a=d?x:T,r=d?T:x,t.addEventListener("touchmove",y,!1),t.addEventListener("touchend",w,!1))},y=function(t){T=t.touches[0].pageX,x=t.touches[0].pageY,h=d?a-x:a-T,b=d?Math.abs(h)e)&&(t.preventDefault(),!f&&s.transitions&&(s.vars.animationLoop||(h/=0===s.currentSlide&&h<0||s.currentSlide===s.last&&h>0?Math.abs(h)/u+2:1),s.setProps(c+h,"setTouch")))},w=function(e){if(t.removeEventListener("touchmove",y,!1),s.animatingTo===s.currentSlide&&!b&&null!==h){var i=p?-h:h,n=i>0?s.getTarget("next"):s.getTarget("prev");s.canAdvance(n)&&(Number(new Date)-v<550&&Math.abs(i)>50||Math.abs(i)>u/2)?s.flexAnimate(n,s.vars.pauseOnAction):f||s.flexAnimate(s.currentSlide,s.vars.pauseOnAction,!0)}t.removeEventListener("touchend",w,!1),a=null,r=null,h=null,c=null},t.addEventListener("touchstart",g,!1))},resize:function(){!s.animating&&s.is(":visible")&&(m||s.doMath(),f?g.smoothHeight():m?(s.slides.width(s.computedW),s.update(s.pagingCount),s.setProps()):d?(s.viewport.height(s.h),s.setProps(s.h,"setTotal")):(s.vars.smoothHeight&&g.smoothHeight(),s.newSlides.width(s.computedW),s.setProps(s.computedW,"setTotal")))},smoothHeight:function(t){if(!d||f){var e=f?s:s.viewport;t?e.animate({height:s.slides.eq(s.animatingTo).innerHeight()},t):e.innerHeight(s.slides.eq(s.animatingTo).innerHeight())}},sync:function(t){var e=n(s.vars.sync).data("flexslider"),i=s.animatingTo;switch(t){case"animate":e.flexAnimate(i,s.vars.pauseOnAction,!1,!0);break;case"play":e.playing||e.asNav||e.play();break;case"pause":e.pause()}},uniqueID:function(t){return t.filter("[id]").add(t.find("[id]")).each(function(){var t=n(this);t.attr("id",t.attr("id")+"_clone")}),t},pauseInvisible:{visProp:null,init:function(){var t=g.pauseInvisible.getHiddenProp();if(t){var e=t.replace(/[H|h]idden/,"")+"visibilitychange";document.addEventListener(e,function(){g.pauseInvisible.isHidden()?s.startTimeout?clearTimeout(s.startTimeout):s.pause():s.started?s.play():s.vars.initDelay>0?setTimeout(s.play,s.vars.initDelay):s.play()})}},isHidden:function(){var t=g.pauseInvisible.getHiddenProp();return!!t&&document[t]},getHiddenProp:function(){var t=["webkit","moz","ms","o"];if("hidden"in document)return"hidden";for(var e=0;es.currentSlide?"next":"prev"),v&&1===s.pagingCount&&(s.direction=s.currentItems.limit&&1!==s.visible?s.limit:y):h=0===s.currentSlide&&t===s.count-1&&s.vars.animationLoop&&"next"!==s.direction?p?(s.count+s.cloneOffset)*w:0:s.currentSlide===s.last&&0===t&&s.vars.animationLoop&&"prev"!==s.direction?p?0:(s.count+1)*w:p?(s.count-1-t+s.cloneOffset)*w:(t+s.cloneOffset)*w,s.setProps(h,"",s.vars.animationSpeed),s.transitions?(s.vars.animationLoop&&s.atEnd||(s.animating=!1,s.currentSlide=s.animatingTo),s.container.unbind("webkitTransitionEnd transitionend"),s.container.bind("webkitTransitionEnd transitionend",function(){clearTimeout(s.ensureAnimationEnd),s.wrapup(w)}),clearTimeout(s.ensureAnimationEnd),s.ensureAnimationEnd=setTimeout(function(){s.wrapup(w)},s.vars.animationSpeed+100)):s.container.animate(s.args,s.vars.animationSpeed,s.vars.easing,function(){s.wrapup(w)})}s.vars.smoothHeight&&g.smoothHeight(s.vars.animationSpeed)}},s.wrapup=function(t){f||m||(0===s.currentSlide&&s.animatingTo===s.last&&s.vars.animationLoop?s.setProps(t,"jumpEnd"):s.currentSlide===s.last&&0===s.animatingTo&&s.vars.animationLoop&&s.setProps(t,"jumpStart")),s.animating=!1,s.currentSlide=s.animatingTo,s.vars.after(s)},s.animateSlides=function(){!s.animating&&o&&s.flexAnimate(s.getTarget("next"))},s.pause=function(){clearInterval(s.animatedSlides),s.animatedSlides=null,s.playing=!1,s.vars.pausePlay&&g.pausePlay.update("play"),s.syncExists&&g.sync("pause")},s.play=function(){s.playing&&clearInterval(s.animatedSlides),s.animatedSlides=s.animatedSlides||setInterval(s.animateSlides,s.vars.slideshowSpeed),s.started=s.playing=!0,s.vars.pausePlay&&g.pausePlay.update("pause"),s.syncExists&&g.sync("play")},s.stop=function(){s.pause(),s.stopped=!0},s.canAdvance=function(t,e){var i=v?s.pagingCount-1:s.last;return!!e||(!(!v||s.currentItem!==s.count-1||0!==t||"prev"!==s.direction)||(!v||0!==s.currentItem||t!==s.pagingCount-1||"next"===s.direction)&&(!(t===s.currentSlide&&!v)&&(!!s.vars.animationLoop||(!s.atEnd||0!==s.currentSlide||t!==i||"next"===s.direction)&&(!s.atEnd||s.currentSlide!==i||0!==t||"next"!==s.direction))))},s.getTarget=function(t){return s.direction=t,"next"===t?s.currentSlide===s.last?0:s.currentSlide+1:0===s.currentSlide?s.last:s.currentSlide-1},s.setProps=function(t,e,i){var n=function(){var i=t?t:(s.itemW+s.vars.itemMargin)*s.move*s.animatingTo,n=function(){if(m)return"setTouch"===e?t:p&&s.animatingTo===s.last?0:p?s.limit-(s.itemW+s.vars.itemMargin)*s.move*s.animatingTo:s.animatingTo===s.last?s.limit:i;switch(e){case"setTotal":return p?(s.count-1-s.currentSlide+s.cloneOffset)*t:(s.currentSlide+s.cloneOffset)*t;case"setTouch":return p?t:t;case"jumpEnd":return p?t:s.count*t;case"jumpStart":return p?s.count*t:t;default:return t}}();return n*-1+"px"}();s.transitions&&(n=d?"translate3d(0,"+n+",0)":"translate3d("+n+",0,0)",i=void 0!==i?i/1e3+"s":"0s",s.container.css("-"+s.pfx+"-transition-duration",i),s.container.css("transition-duration",i)),s.args[s.prop]=n,(s.transitions||void 0===i)&&s.container.css(s.args),s.container.css("transform",n)},s.setup=function(t){if(f)s.slides.css({width:"100%","float":"left",marginRight:"-100%",position:"relative"}),"init"===t&&(c?s.slides.css({opacity:0,display:"block",webkitTransition:"opacity "+s.vars.animationSpeed/1e3+"s ease",zIndex:1}).eq(s.currentSlide).css({opacity:1,zIndex:2}):0==s.vars.fadeFirstSlide?s.slides.css({opacity:0,display:"block",zIndex:1}).eq(s.currentSlide).css({zIndex:2}).css({opacity:1}):s.slides.css({opacity:0,display:"block",zIndex:1}).eq(s.currentSlide).css({zIndex:2}).animate({opacity:1},s.vars.animationSpeed,s.vars.easing)),s.vars.smoothHeight&&g.smoothHeight();else{var e,i;"init"===t&&(s.viewport=n('
').css({overflow:"hidden",position:"relative"}).appendTo(s).append(s.container),s.cloneCount=0,s.cloneOffset=0,p&&(i=n.makeArray(s.slides).reverse(),s.slides=n(i),s.container.empty().append(s.slides))),s.vars.animationLoop&&!m&&(s.cloneCount=2,s.cloneOffset=1,"init"!==t&&s.container.find(".clone").remove(),s.container.append(g.uniqueID(s.slides.first().clone().addClass("clone")).attr("aria-hidden","true")).prepend(g.uniqueID(s.slides.last().clone().addClass("clone")).attr("aria-hidden","true"))),s.newSlides=n(s.vars.selector,s),e=p?s.count-1-s.currentSlide+s.cloneOffset:s.currentSlide+s.cloneOffset,d&&!m?(s.container.height(200*(s.count+s.cloneCount)+"%").css("position","absolute").width("100%"),setTimeout(function(){s.newSlides.css({display:"block"}),s.doMath(),s.viewport.height(s.h),s.setProps(e*s.h,"init")},"init"===t?100:0)):(s.container.width(200*(s.count+s.cloneCount)+"%"),s.setProps(e*s.computedW,"init"),setTimeout(function(){s.doMath(),s.newSlides.css({width:s.computedW,marginRight:s.computedM,"float":"left",display:"block"}),s.vars.smoothHeight&&g.smoothHeight()},"init"===t?100:0))}m||s.slides.removeClass(r+"active-slide").eq(s.currentSlide).addClass(r+"active-slide"),s.vars.init(s)},s.doMath=function(){var t=s.slides.first(),e=s.vars.itemMargin,i=s.vars.minItems,n=s.vars.maxItems;s.w=void 0===s.viewport?s.width():s.viewport.width(),s.h=t.height(),s.boxPadding=t.outerWidth()-t.width(),m?(s.itemT=s.vars.itemWidth+e,s.itemM=e,s.minW=i?i*s.itemT:s.w,s.maxW=n?n*s.itemT-e:s.w,s.itemW=s.minW>s.w?(s.w-e*(i-1))/i:s.maxWs.w?s.w:s.vars.itemWidth,s.visible=Math.floor(s.w/s.itemW),s.move=s.vars.move>0&&s.vars.moves.w?s.itemW*(s.count-1)+e*(s.count-1):(s.itemW+e)*s.count-s.w-e):(s.itemW=s.w,s.itemM=e,s.pagingCount=s.count,s.last=s.count-1),s.computedW=s.itemW-s.boxPadding,s.computedM=s.itemM},s.update=function(t,e){s.doMath(),m||(ts.controlNav.length?g.controlNav.update("add"):("remove"===e&&!m||s.pagingCounts.last&&(s.currentSlide-=1,s.animatingTo-=1),g.controlNav.update("remove",s.last))),s.vars.directionNav&&g.directionNav.update()},s.addSlide=function(t,e){var i=n(t);s.count+=1,s.last=s.count-1,d&&p?void 0!==e?s.slides.eq(s.count-e).after(i):s.container.prepend(i):void 0!==e?s.slides.eq(e).before(i):s.container.append(i),s.update(e,"add"),s.slides=n(s.vars.selector+":not(.clone)",s),s.setup(),s.vars.added(s)},s.removeSlide=function(t){var e=isNaN(t)?s.slides.index(n(t)):t;s.count-=1,s.last=s.count-1,isNaN(t)?n(t,s.slides).remove():d&&p?s.slides.eq(s.last).remove():s.slides.eq(t).remove(),s.doMath(),s.update(e,"remove"),s.slides=n(s.vars.selector+":not(.clone)",s),s.setup(),s.vars.removed(s)},g.init()},n(window).blur(function(t){o=!1}).focus(function(t){o=!0}),n.flexslider.defaults={namespace:"am-",selector:".am-slides > li",animation:"slide",easing:"swing",direction:"horizontal",reverse:!1,animationLoop:!0,smoothHeight:!1,startAt:0,slideshow:!0,slideshowSpeed:5e3,animationSpeed:600,initDelay:0,randomize:!1,fadeFirstSlide:!0,thumbCaptions:!1,pauseOnAction:!0,pauseOnHover:!1,pauseInvisible:!0,useCSS:!0,touch:!0,video:!1,controlNav:!0,directionNav:!0,prevText:" ",nextText:" ",keyboard:!0,multipleKeyboard:!1,mousewheel:!1,pausePlay:!1,pauseText:"Pause",playText:"Play",controlsContainer:"",manualControls:"",customDirectionNav:"",sync:"",asNavFor:"",itemWidth:0,itemMargin:0,minItems:1,maxItems:0,move:0,allowOneSlide:!0,start:function(){},before:function(){},after:function(){},end:function(){},added:function(){},removed:function(){},init:function(){}},n.fn.flexslider=function(t){var e=Array.prototype.slice.call(arguments,1);if(void 0===t&&(t={}),"object"==typeof t)return this.each(function(){var e=n(this),i=t.selector?t.selector:".am-slides > li",s=e.find(i);1===s.length&&t.allowOneSlide===!1||0===s.length?(s.fadeIn(400),t.start&&t.start(e)):void 0===e.data("flexslider")&&new n.flexslider(this,t)});var i,s=n(this).data("flexslider");switch(t){case"next":s.flexAnimate(s.getTarget("next"),!0);break;case"prev":case"previous":s.flexAnimate(s.getTarget("prev"),!0);break;default:"number"==typeof t?s.flexAnimate(t,!0):"string"==typeof t&&(i="function"==typeof s[t]?s[t].apply(s,e):s[t])}return void 0===i?this:i},s.ready(function(t){n("[data-am-flexslider]",t).each(function(t,e){var i=n(e),o=s.utils.parseOptions(i.data("amFlexslider"));o.before=function(t){t._pausedTimer&&(window.clearTimeout(t._pausedTimer),t._pausedTimer=null)},o.after=function(t){var e=t.vars.playAfterPaused;!e||isNaN(e)||t.playing||t.manualPause||t.manualPlay||t.stopped||(t._pausedTimer=window.setTimeout(function(){t.play()},e))},i.flexslider(o)})}),t.exports=n.flexslider}).call(e,i(12).setImmediate)},function(t,e,i){(function(t,n){function s(t,e){this._id=t,this._clearFn=e}var o=i(13).nextTick,a=Function.prototype.apply,r=Array.prototype.slice,l={},c=0;e.setTimeout=function(){return new s(a.call(setTimeout,window,arguments),clearTimeout)},e.setInterval=function(){return new s(a.call(setInterval,window,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t.close()},s.prototype.unref=s.prototype.ref=function(){},s.prototype.close=function(){this._clearFn.call(window,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},e.setImmediate="function"==typeof t?t:function(t){var i=c++,n=!(arguments.length<2)&&r.call(arguments,1);return l[i]=!0,o(function(){l[i]&&(n?t.apply(null,n):t.call(null),e.clearImmediate(i))}),i},e.clearImmediate="function"==typeof n?n:function(t){delete l[t]}}).call(e,i(12).setImmediate,i(12).clearImmediate)},function(t,e){function i(t){if(l===setTimeout)return setTimeout(t,0);try{return l(t,0)}catch(e){try{return l.call(null,t,0)}catch(e){return l.call(this,t,0)}}}function n(t){if(c===clearTimeout)return clearTimeout(t);try{return c(t)}catch(e){try{return c.call(null,t)}catch(e){return c.call(this,t)}}}function s(){p&&h&&(p=!1,h.length?d=h.concat(d):m=-1,d.length&&o())}function o(){if(!p){var t=i(s);p=!0;for(var e=d.length;e;){for(h=d,d=[];++m1)for(var n=1;n0&&(a=s?s/2.5*(c/8):0,l=Math.abs(t)+a,r=l/c),{destination:Math.round(a),duration:r}};var s=t("transform");return e.extend(e,{hasTransform:s!==!1,hasPerspective:t("perspective")in i,hasTouch:"ontouchstart"in window,hasPointer:!(!window.PointerEvent&&!window.MSPointerEvent),hasTransition:t("transition")in i}),e.isBadAndroid=function(){var t=window.navigator.appVersion;if(/Android/.test(t)&&!/Chrome\/\d/.test(t)){var e=t.match(/Safari\/(\d+.\d)/);return!(e&&"object"==typeof e&&e.length>=2)||parseFloat(e[1])<535.19}return!1}(),e.extend(e.style={},{transform:s,transitionTimingFunction:t("transitionTimingFunction"),transitionDuration:t("transitionDuration"),transitionDelay:t("transitionDelay"),transformOrigin:t("transformOrigin")}),e.hasClass=function(t,e){var i=new RegExp("(^|\\s)"+e+"(\\s|$)");return i.test(t.className)},e.addClass=function(t,i){if(!e.hasClass(t,i)){var n=t.className.split(" ");n.push(i),t.className=n.join(" ")}},e.removeClass=function(t,i){if(e.hasClass(t,i)){var n=new RegExp("(^|\\s)"+i+"(\\s|$)","g");t.className=t.className.replace(n," ")}},e.offset=function(t){for(var e=-t.offsetLeft,i=-t.offsetTop;t=t.offsetParent;)e-=t.offsetLeft,i-=t.offsetTop;return{left:e,top:i}},e.preventDefaultException=function(t,e){for(var i in e)if(e[i].test(t[i]))return!0;return!1},e.extend(e.eventType={},{touchstart:1,touchmove:1,touchend:1,mousedown:2,mousemove:2,mouseup:2,pointerdown:3,pointermove:3,pointerup:3,MSPointerDown:3,MSPointerMove:3,MSPointerUp:3}),e.extend(e.ease={},{quadratic:{style:"cubic-bezier(0.25, 0.46, 0.45, 0.94)",fn:function(t){return t*(2-t)}},circular:{style:"cubic-bezier(0.1, 0.57, 0.1, 1)",fn:function(t){return Math.sqrt(1- --t*t)}},back:{style:"cubic-bezier(0.175, 0.885, 0.32, 1.275)",fn:function(t){var e=4;return(t-=1)*t*((e+1)*t+e)+1}},bounce:{style:"",fn:function(t){return(t/=1)<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375}},elastic:{style:"",fn:function(t){var e=.22,i=.4;return 0===t?0:1==t?1:i*Math.pow(2,-10*t)*Math.sin((t-e/4)*(2*Math.PI)/e)+1}}}),e.tap=function(t,e){var i=document.createEvent("Event");i.initEvent(e,!0,!0),i.pageX=t.pageX,i.pageY=t.pageY,t.target.dispatchEvent(i)},e.click=function(t){var e,i=t.target;/(SELECT|INPUT|TEXTAREA)/i.test(i.tagName)||(e=document.createEvent(window.MouseEvent?"MouseEvents":"Event"),e.initEvent("click",!0,!0),e.view=t.view||window,e.detail=1,e.screenX=i.screenX||0,e.screenY=i.screenY||0,e.clientX=i.clientX||0,e.clientY=i.clientY||0,e.ctrlKey=!!t.ctrlKey,e.altKey=!!t.altKey,e.shiftKey=!!t.shiftKey,e.metaKey=!!t.metaKey,e.button=0,e.relatedTarget=null,e._constructed=!0,i.dispatchEvent(e))},e}();n.prototype={version:"5.2.0",_init:function(){this._initEvents()},destroy:function(){this._initEvents(!0),clearTimeout(this.resizeTimeout),this.resizeTimeout=null,this._execEvent("destroy")},_transitionEnd:function(t){t.target==this.scroller&&this.isInTransition&&(this._transitionTime(),this.resetPosition(this.options.bounceTime)||(this.isInTransition=!1,this._execEvent("scrollEnd")))},_start:function(t){if(1!=a.eventType[t.type]){var e;if(e=t.which?t.button:t.button<2?0:4==t.button?1:2,0!==e)return}if(this.enabled&&(!this.initiated||a.eventType[t.type]===this.initiated)){!this.options.preventDefault||a.isBadAndroid||a.preventDefaultException(t.target,this.options.preventDefaultException)||t.preventDefault();var i,n=t.touches?t.touches[0]:t;this.initiated=a.eventType[t.type],this.moved=!1,this.distX=0,this.distY=0,this.directionX=0,this.directionY=0,this.directionLocked=0,this.startTime=a.getTime(),this.options.useTransition&&this.isInTransition?(this._transitionTime(),this.isInTransition=!1,i=this.getComputedPosition(),this._translate(Math.round(i.x),Math.round(i.y)),this._execEvent("scrollEnd")):!this.options.useTransition&&this.isAnimating&&(this.isAnimating=!1,
-this._execEvent("scrollEnd")),this.startX=this.x,this.startY=this.y,this.absStartX=this.x,this.absStartY=this.y,this.pointX=n.pageX,this.pointY=n.pageY,this._execEvent("beforeScrollStart")}},_move:function(t){if(this.enabled&&a.eventType[t.type]===this.initiated){this.options.preventDefault&&t.preventDefault();var e,i,n,s,o=t.touches?t.touches[0]:t,r=o.pageX-this.pointX,l=o.pageY-this.pointY,c=a.getTime();if(this.pointX=o.pageX,this.pointY=o.pageY,this.distX+=r,this.distY+=l,n=Math.abs(this.distX),s=Math.abs(this.distY),!(c-this.endTime>300&&n<10&&s<10)){if(this.directionLocked||this.options.freeScroll||(n>s+this.options.directionLockThreshold?this.directionLocked="h":s>=n+this.options.directionLockThreshold?this.directionLocked="v":this.directionLocked="n"),"h"==this.directionLocked){if("vertical"==this.options.eventPassthrough)t.preventDefault();else if("horizontal"==this.options.eventPassthrough)return void(this.initiated=!1);l=0}else if("v"==this.directionLocked){if("horizontal"==this.options.eventPassthrough)t.preventDefault();else if("vertical"==this.options.eventPassthrough)return void(this.initiated=!1);r=0}r=this.hasHorizontalScroll?r:0,l=this.hasVerticalScroll?l:0,e=this.x+r,i=this.y+l,(e>0||e0?0:this.maxScrollX),(i>0||i0?0:this.maxScrollY),this.directionX=r>0?-1:r<0?1:0,this.directionY=l>0?-1:l<0?1:0,this.moved||this._execEvent("scrollStart"),this.moved=!0,this._translate(e,i),c-this.startTime>300&&(this.startTime=c,this.startX=this.x,this.startY=this.y)}}},_end:function(t){if(this.enabled&&a.eventType[t.type]===this.initiated){this.options.preventDefault&&!a.preventDefaultException(t.target,this.options.preventDefaultException)&&t.preventDefault();var e,i,n=(t.changedTouches?t.changedTouches[0]:t,a.getTime()-this.startTime),s=Math.round(this.x),o=Math.round(this.y),r=Math.abs(s-this.startX),l=Math.abs(o-this.startY),c=0,u="";if(this.isInTransition=0,this.initiated=0,this.endTime=a.getTime(),!this.resetPosition(this.options.bounceTime))return this.scrollTo(s,o),this.moved?this._events.flick&&n<200&&r<100&&l<100?void this._execEvent("flick"):(this.options.momentum&&n<300&&(e=this.hasHorizontalScroll?a.momentum(this.x,this.startX,n,this.maxScrollX,this.options.bounce?this.wrapperWidth:0,this.options.deceleration):{destination:s,duration:0},i=this.hasVerticalScroll?a.momentum(this.y,this.startY,n,this.maxScrollY,this.options.bounce?this.wrapperHeight:0,this.options.deceleration):{destination:o,duration:0},s=e.destination,o=i.destination,c=Math.max(e.duration,i.duration),this.isInTransition=1),s!=this.x||o!=this.y?((s>0||s0||o0?e=0:this.x0?i=0:this.y-1&&this._events[t].splice(i,1)}},_execEvent:function(t){if(this._events[t]){var e=0,i=this._events[t].length;if(i)for(;e0;var s=this.options.useTransition&&n.style;!i||s?(s&&(this._transitionTimingFunction(n.style),this._transitionTime(i)),this._translate(t,e)):this._animate(t,e,i,n.fn)},scrollToElement:function(t,e,i,n,s){if(t=t.nodeType?t:this.scroller.querySelector(t)){var o=a.offset(t);o.left-=this.wrapperOffset.left,o.top-=this.wrapperOffset.top,i===!0&&(i=Math.round(t.offsetWidth/2-this.wrapper.offsetWidth/2)),n===!0&&(n=Math.round(t.offsetHeight/2-this.wrapper.offsetHeight/2)),o.left-=i||0,o.top-=n||0,o.left=o.left>0?0:o.left0?0:o.top=h?(r.isAnimating=!1,r._translate(t,e),void(r.resetPosition(r.options.bounceTime)||r._execEvent("scrollEnd"))):(f=(f-u)/i,m=n(f),d=(t-l)*m+l,p=(e-c)*m+c,r._translate(d,p),void(r.isAnimating&&o(s)))}var r=this,l=this.x,c=this.y,u=a.getTime(),h=u+i;this.isAnimating=!0,s()},handleEvent:function(t){switch(t.type){case"touchstart":case"pointerdown":case"MSPointerDown":case"mousedown":this._start(t);break;case"touchmove":case"pointermove":case"MSPointerMove":case"mousemove":this._move(t);break;case"touchend":case"pointerup":case"MSPointerUp":case"mouseup":case"touchcancel":case"pointercancel":case"MSPointerCancel":case"mousecancel":this._end(t);break;case"orientationchange":case"resize":this._resize();break;case"transitionend":case"webkitTransitionEnd":case"oTransitionEnd":case"MSTransitionEnd":this._transitionEnd(t);break;case"wheel":case"DOMMouseScroll":case"mousewheel":this._wheel(t);break;case"keydown":this._key(t);break;case"click":this.enabled&&!t._constructed&&(t.preventDefault(),t.stopPropagation())}}},n.utils=a,t.exports=s.iScroll=n},function(t,e,i){"use strict";function n(t,e){return this.each(function(){var i=s(this),n=i.data("amui.modal"),o="object"==typeof t&&t;n||i.data("amui.modal",n=new c(this,o)),"string"==typeof t?n[t]&&n[t](e):n.toggle(t&&t.relatedTarget||void 0)})}var s=i(1),o=i(2),a=i(9),r=s(document),l=o.support.transition,c=function(t,e){this.options=s.extend({},c.DEFAULTS,e||{}),this.$element=s(t),this.$dialog=this.$element.find(".am-modal-dialog"),this.$element.attr("id")||this.$element.attr("id",o.utils.generateGUID("am-modal")),this.isPopup=this.$element.hasClass("am-popup"),this.isActions=this.$element.hasClass("am-modal-actions"),this.isPrompt=this.$element.hasClass("am-modal-prompt"),this.isLoading=this.$element.hasClass("am-modal-loading"),this.active=this.transitioning=this.relatedTarget=null,this.dimmer=this.options.dimmer?a:{open:function(){},close:function(){}},this.events()};c.DEFAULTS={className:{active:"am-modal-active",out:"am-modal-out"},selector:{modal:".am-modal",active:".am-modal-active"},closeViaDimmer:!0,cancelable:!0,onConfirm:function(){},onCancel:function(){},closeOnCancel:!0,closeOnConfirm:!0,dimmer:!0,height:void 0,width:void 0,duration:300,transitionEnd:l&&l.end+".modal.amui"},c.prototype.toggle=function(t){return this.active?this.close():this.open(t)},c.prototype.open=function(t){var e=this.$element,i=this.options,n=this.isPopup,o=i.width,a=i.height,r={};if(!this.active&&this.$element.length){t&&(this.relatedTarget=t),this.transitioning&&(clearTimeout(e.transitionEndTimmer),e.transitionEndTimmer=null,e.trigger(i.transitionEnd).off(i.transitionEnd)),n&&this.$element.show(),this.active=!0,e.trigger(s.Event("open.modal.amui",{relatedTarget:t})),this.dimmer.open(e),e.show().redraw(),n||this.isActions||(o&&(r.width=parseInt(o,10)+"px"),a&&(r.height=parseInt(a,10)+"px"),this.$dialog.css(r)),e.removeClass(i.className.out).addClass(i.className.active),this.transitioning=1;var c=function(){e.trigger(s.Event("opened.modal.amui",{relatedTarget:t})),this.transitioning=0,this.isPrompt&&this.$dialog.find("input").eq(0).focus()};return l?void e.one(i.transitionEnd,s.proxy(c,this)).emulateTransitionEnd(i.duration):c.call(this)}},c.prototype.close=function(t){if(this.active){var e=this.$element,i=this.options,n=this.isPopup;this.transitioning&&(clearTimeout(e.transitionEndTimmer),e.transitionEndTimmer=null,e.trigger(i.transitionEnd).off(i.transitionEnd),this.dimmer.close(e,!0)),this.$element.trigger(s.Event("close.modal.amui",{relatedTarget:t})),this.transitioning=1;var o=function(){e.trigger("closed.modal.amui"),n&&e.removeClass(i.className.out),e.hide(),this.transitioning=0,this.dimmer.close(e,!1),this.active=!1};return e.removeClass(i.className.active).addClass(i.className.out),l?void e.one(i.transitionEnd,s.proxy(o,this)).emulateTransitionEnd(i.duration):o.call(this)}},c.prototype.events=function(){var t=this,e=this.options,i=this.$element,n=this.dimmer.$element,o=i.find(".am-modal-prompt-input"),a=i.find("[data-am-modal-confirm]"),r=i.find("[data-am-modal-cancel]"),l=function(){var t=[];return o.each(function(){t.push(s(this).val())}),0===t.length?void 0:1===t.length?t[0]:t};this.options.cancelable&&i.on("keyup.modal.amui",function(e){t.active&&27===e.which&&(i.trigger("cancel.modal.amui"),t.close())}),this.options.dimmer&&this.options.closeViaDimmer&&!this.isLoading&&n.on("click.dimmer.modal.amui",function(){t.close()}),i.on("click.close.modal.amui","[data-am-modal-close], .am-modal-btn",function(i){i.preventDefault();var n=s(this);n.is(a)?e.closeOnConfirm&&t.close():n.is(r)?e.closeOnCancel&&t.close():t.close()}).on("click",function(t){s(t.target).is(i)&&n.trigger("click.dimmer.modal.amui")}),a.on("click.confirm.modal.amui",function(){i.trigger(s.Event("confirm.modal.amui",{trigger:this}))}),r.on("click.cancel.modal.amui",function(){i.trigger(s.Event("cancel.modal.amui",{trigger:this}))}),i.on("confirm.modal.amui",function(e){e.data=l(),t.options.onConfirm.call(t,e)}).on("cancel.modal.amui",function(e){e.data=l(),t.options.onCancel.call(t,e)})},s.fn.modal=n,r.on("click.modal.amui.data-api","[data-am-modal]",function(){var t=s(this),e=o.utils.parseOptions(t.attr("data-am-modal")),i=s(e.target||this.href&&this.href.replace(/.*(?=#[^\s]+$)/,"")),a=i.data("amui.modal")?"toggle":e;n.call(i,a,this)}),t.exports=o.modal=c},function(t,e,i){"use strict";function n(t,e){var i=Array.prototype.slice.call(arguments,1);return this.each(function(){var n=s(this),o=n.data("amui.offcanvas"),a=s.extend({},"object"==typeof t&&t);o||(n.data("amui.offcanvas",o=new c(this,a)),(!t||"object"==typeof t)&&o.open(e)),"string"==typeof t&&o[t]&&o[t].apply(o,i)})}var s=i(1),o=i(2);i(3);var a,r=s(window),l=s(document),c=function(t,e){this.$element=s(t),this.options=s.extend({},c.DEFAULTS,e),this.active=null,this.bindEvents()};c.DEFAULTS={duration:300,effect:"overlay"},c.prototype.open=function(t){var e=this,i=this.$element;if(i.length&&!i.hasClass("am-active")){var n=this.options.effect,o=s("html"),l=s("body"),c=i.find(".am-offcanvas-bar").first(),u=c.hasClass("am-offcanvas-bar-flip")?-1:1;c.addClass("am-offcanvas-bar-"+n),a={x:window.scrollX,y:window.scrollY},i.addClass("am-active"),l.css({width:window.innerWidth,height:r.height()}).addClass("am-offcanvas-page"),"overlay"!==n&&l.css({"margin-left":c.outerWidth()*u}).width(),o.css("margin-top",a.y*-1),setTimeout(function(){c.addClass("am-offcanvas-bar-active").width()},0),i.trigger("open.offcanvas.amui"),this.active=1,i.on("click.offcanvas.amui",function(t){var i=s(t.target);i.hasClass("am-offcanvas-bar")||i.parents(".am-offcanvas-bar").first().length||(t.stopImmediatePropagation(),e.close())}),o.on("keydown.offcanvas.amui",function(t){27===t.keyCode&&e.close()})}},c.prototype.close=function(t){function e(){r.removeClass("am-offcanvas-page").css({width:"",height:"","margin-left":"","margin-right":""}),l.removeClass("am-active"),c.removeClass("am-offcanvas-bar-active"),n.css("margin-top",""),window.scrollTo(a.x,a.y),l.trigger("closed.offcanvas.amui"),i.active=0}var i=this,n=s("html"),r=s("body"),l=this.$element,c=l.find(".am-offcanvas-bar").first();l.length&&this.active&&l.hasClass("am-active")&&(l.trigger("close.offcanvas.amui"),o.support.transition?(setTimeout(function(){c.removeClass("am-offcanvas-bar-active")},0),r.css("margin-left","").one(o.support.transition.end,function(){e()}).emulateTransitionEnd(this.options.duration)):e(),l.off("click.offcanvas.amui"),n.off(".offcanvas.amui"))},c.prototype.bindEvents=function(){var t=this;return l.on("click.offcanvas.amui",'[data-am-dismiss="offcanvas"]',function(e){e.preventDefault(),t.close()}),r.on("resize.offcanvas.amui orientationchange.offcanvas.amui",function(){t.active&&t.close()}),this.$element.hammer().on("swipeleft swipeleft",function(e){e.preventDefault(),t.close()}),this},s.fn.offCanvas=n,l.on("click.offcanvas.amui","[data-am-offcanvas]",function(t){t.preventDefault();var e=s(this),i=o.utils.parseOptions(e.data("amOffcanvas")),a=s(i.target||this.href&&this.href.replace(/.*(?=#[^\s]+$)/,"")),r=a.data("amui.offcanvas")?"open":i;n.call(a,r,this)}),t.exports=o.offcanvas=c},function(t,e,i){"use strict";var n=i(1),s=i(2),o=s.utils.rAF,a=function(t){var e=function(e,i){this.el=t(e),this.zoomFactor=1,this.lastScale=1,this.offset={x:0,y:0},this.options=t.extend({},this.defaults,i),this.setupMarkup(),this.bindEvents(),this.update(),this.enable()},i=function(t,e){return t+e},n=function(t,e){return t>e-.01&&t1){var e=this.getTouches(t)[0];this.drag(e,this.lastDragPosition),this.offset=this.sanitizeOffset(this.offset),this.lastDragPosition=e}},handleDragEnd:function(){this.el.trigger(this.options.dragEndEventName),this.end()},handleZoomStart:function(t){this.el.trigger(this.options.zoomStartEventName),this.stopAnimation(),this.lastScale=1,this.nthZoom=0,this.lastZoomCenter=!1,this.hasInteraction=!0},handleZoom:function(t,e){var i=this.getTouchCenter(this.getTouches(t)),n=e/this.lastScale;this.lastScale=e,this.nthZoom+=1,this.nthZoom>3&&(this.scale(n,i),this.drag(i,this.lastZoomCenter)),this.lastZoomCenter=i},handleZoomEnd:function(){this.el.trigger(this.options.zoomEndEventName),this.end()},handleDoubleTap:function(t){var e=this.getTouches(t)[0],i=this.zoomFactor>1?1:this.options.tapZoomFactor,n=this.zoomFactor,s=function(t){this.scaleTo(n+t*(i-n),e)}.bind(this);this.hasInteraction||(n>i&&(e=this.getCurrentZoomCenter()),this.animate(this.options.animationDuration,s,this.swing),this.el.trigger(this.options.doubleTapEventName))},sanitizeOffset:function(t){var e=(this.zoomFactor-1)*this.getContainerX(),i=(this.zoomFactor-1)*this.getContainerY(),n=Math.max(e,0),s=Math.max(i,0),o=Math.min(e,0),a=Math.min(i,0);return{x:Math.min(Math.max(t.x,o),n),y:Math.min(Math.max(t.y,a),s)}},scaleTo:function(t,e){this.scale(t/this.zoomFactor,e)},scale:function(t,e){t=this.scaleZoomFactor(t),this.addOffset({x:(t-1)*(e.x+this.offset.x),y:(t-1)*(e.y+this.offset.y)})},scaleZoomFactor:function(t){var e=this.zoomFactor;return this.zoomFactor*=t,this.zoomFactor=Math.min(this.options.maxZoom,Math.max(this.zoomFactor,this.options.minZoom)),this.zoomFactor/e},drag:function(t,e){e&&(this.options.lockDragAxis?Math.abs(t.x-e.x)>Math.abs(t.y-e.y)?this.addOffset({x:-(t.x-e.x),y:0}):this.addOffset({y:-(t.y-e.y),x:0}):this.addOffset({y:-(t.y-e.y),x:-(t.x-e.x)}))},getTouchCenter:function(t){return this.getVectorAvg(t)},getVectorAvg:function(t){return{x:t.map(function(t){return t.x}).reduce(i)/t.length,y:t.map(function(t){return t.y}).reduce(i)/t.length}},addOffset:function(t){this.offset={x:this.offset.x+t.x,y:this.offset.y+t.y}},sanitize:function(){this.zoomFactor=t?(e(1),n&&n(),this.update(),this.stopAnimation(),this.update()):(i&&(l=i(l)),e(l),this.update(),o(a))}}.bind(this);this.inAnimation=!0,o(a)},stopAnimation:function(){this.inAnimation=!1},swing:function(t){return-Math.cos(t*Math.PI)/2+.5},getContainerX:function(){return this.container[0].offsetWidth},getContainerY:function(){return this.container[0].offsetHeight},setContainerY:function(t){return this.container.height(t)},setupMarkup:function(){this.container=t('
'),this.el.before(this.container),this.container.append(this.el),this.container.css({overflow:"hidden",position:"relative"}),this.el.css({"-webkit-transform-origin":"0% 0%","-moz-transform-origin":"0% 0%","-ms-transform-origin":"0% 0%","-o-transform-origin":"0% 0%","transform-origin":"0% 0%",position:"absolute"})},end:function(){this.hasInteraction=!1,this.sanitize(),this.update()},bindEvents:function(){s(this.container.get(0),this),t(window).on("resize",this.update.bind(this)),t(this.el).find("img").on("load",this.update.bind(this))},update:function(){this.updatePlaned||(this.updatePlaned=!0,setTimeout(function(){this.updatePlaned=!1,this.updateAspectRatio();var t=this.getInitialZoomFactor()*this.zoomFactor,e=-this.offset.x/t,i=-this.offset.y/t,n="scale3d("+t+", "+t+",1) translate3d("+e+"px,"+i+"px,0px)",s="scale("+t+", "+t+") translate("+e+"px,"+i+"px)",o=function(){this.clone&&(this.clone.remove(),delete this.clone)}.bind(this);!this.options.use2d||this.hasInteraction||this.inAnimation?(this.is3d=!0,o(),this.el.css({"-webkit-transform":n,"-o-transform":s,"-ms-transform":s,"-moz-transform":s,transform:n})):(this.is3d&&(this.clone=this.el.clone(),this.clone.css("pointer-events","none"),this.clone.appendTo(this.container),setTimeout(o,200)),this.el.css({"-webkit-transform":s,"-o-transform":s,"-ms-transform":s,"-moz-transform":s,transform:s}),this.is3d=!1)}.bind(this),0))},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1}};var s=function(t,e){var i=null,n=0,s=null,o=null,a=function(t,n){if(i!==t){if(i&&!t)switch(i){case"zoom":e.handleZoomEnd(n);break;case"drag":e.handleDragEnd(n)}switch(t){case"zoom":e.handleZoomStart(n);break;case"drag":e.handleDragStart(n)}}i=t},r=function(t){2===n?a("zoom"):1===n&&e.canDrag()?a("drag",t):a(null,t)},l=function(t){return Array.prototype.slice.call(t).map(function(t){return{x:t.pageX,y:t.pageY}})},c=function(t,e){var i,n;return i=t.x-e.x,n=t.y-e.y,Math.sqrt(i*i+n*n)},u=function(t,e){var i=c(t[0],t[1]),n=c(e[0],e[1]);return n/i},h=function(t){t.stopPropagation(),t.preventDefault()},d=function(t){var o=(new Date).getTime();if(n>1&&(s=null),o-s<300)switch(h(t),e.handleDoubleTap(t),i){case"zoom":e.handleZoomEnd(t);break;case"drag":e.handleDragEnd(t)}1===n&&(s=o)},p=!0;t.addEventListener("touchstart",function(t){e.enabled&&(p=!0,n=t.touches.length,d(t))}),t.addEventListener("touchmove",function(t){if(e.enabled){if(p)r(t),i&&h(t),o=l(t.touches);else{switch(i){case"zoom":e.handleZoom(t,u(o,l(t.touches)));break;case"drag":e.handleDrag(t)}i&&(h(t),e.update())}p=!1}}),t.addEventListener("touchend",function(t){e.enabled&&(n=t.touches.length,r(t))})};return e};t.exports=s.pichzoom=a(n)},function(t,e,i){"use strict";var n=i(1),s=i(2),o=n(window),a=function(t,e){this.options=n.extend({},a.DEFAULTS,e),this.$element=n(t),this.active=null,this.$popover=this.options.target&&n(this.options.target)||null,this.init(),this._bindEvents()};a.DEFAULTS={theme:null,trigger:"click",content:"",open:!1,target:null,tpl:''},a.prototype.init=function(){function t(){i.sizePopover()}var e,i=this,o=this.$element;this.options.target||(this.$popover=this.getPopover(),this.setContent()),e=this.$popover,e.appendTo(n("body")),this.sizePopover(),o.on("open.popover.amui",function(){n(window).on("resize.popover.amui",s.utils.debounce(t,50))}),o.on("close.popover.amui",function(){n(window).off("resize.popover.amui",t)}),this.options.open&&this.open()},a.prototype.sizePopover=function(){var t=this.$element,e=this.$popover;if(e&&e.length){var i=e.outerWidth(),n=e.outerHeight(),s=e.find(".am-popover-caret"),a=s.outerWidth()/2||8,r=n+8,l=t.outerWidth(),c=t.outerHeight(),u=t.offset(),h=t[0].getBoundingClientRect(),d=o.height(),p=o.width(),m=0,f=0,v=0,g=2,y="top";e.css({left:"",top:""}).removeClass("am-popover-left am-popover-right am-popover-top am-popover-bottom"),r-gp&&(f=p-i-20),"top"===y&&e.addClass("am-popover-top"),"bottom"===y&&e.addClass("am-popover-bottom"),v-=f):"middle"===y&&(f=u.left-i-a,e.addClass("am-popover-left"),f<5&&(f=u.left+l+a,e.removeClass("am-popover-left").addClass("am-popover-right")),f+i>p&&(f=p-i-5,e.removeClass("am-popover-left").addClass("am-popover-right"))),e.css({top:m+"px",left:f+"px"})}},a.prototype.toggle=function(){return this[this.active?"close":"open"]()},a.prototype.open=function(){var t=this.$popover;this.$element.trigger("open.popover.amui"),this.sizePopover(),t.show().addClass("am-active"),this.active=!0},a.prototype.close=function(){var t=this.$popover;this.$element.trigger("close.popover.amui"),t.removeClass("am-active").trigger("closed.popover.amui").hide(),this.active=!1},a.prototype.getPopover=function(){var t=s.utils.generateGUID("am-popover"),e=[];return this.options.theme&&n.each(this.options.theme.split(" "),function(t,i){e.push("am-popover-"+n.trim(i))}),n(this.options.tpl).attr("id",t).addClass(e.join(" "))},a.prototype.setContent=function(t){t=t||this.options.content,this.$popover&&this.$popover.find(".am-popover-inner").empty().html(t)},a.prototype._bindEvents=function(){for(var t="popover.amui",e=this.options.trigger.split(" "),i=e.length;i--;){var s=e[i];if("click"===s)this.$element.on("click."+t,n.proxy(this.toggle,this));else{var o="hover"==s?"mouseenter":"focusin",a="hover"==s?"mouseleave":"focusout";this.$element.on(o+"."+t,n.proxy(this.open,this)),this.$element.on(a+"."+t,n.proxy(this.close,this))}}},a.prototype.destroy=function(){this.$element.off(".popover.amui").removeData("amui.popover"),this.$popover.remove()},s.plugin("popover",a),s.ready(function(t){n("[data-am-popover]",t).popover()}),t.exports=a},function(t,e,i){"use strict";var n=i(2),s=function(){function t(t,e,i){return ti?i:t}function e(t){return 100*(-1+t)}function i(t,i,n){var s;return s="translate3d"===c.positionUsing?{transform:"translate3d("+e(t)+"%,0,0)"}:"translate"===c.positionUsing?{transform:"translate("+e(t)+"%,0)"}:{"margin-left":e(t)+"%"},s.transition="all "+i+"ms "+n,s}function n(t,e){var i="string"==typeof t?t:a(t);return i.indexOf(" "+e+" ")>=0}function s(t,e){var i=a(t),s=i+e;n(i,e)||(t.className=s.substring(1))}function o(t,e){var i,s=a(t);n(t,e)&&(i=s.replace(" "+e+" "," "),t.className=i.substring(1,i.length-1))}function a(t){return(" "+(t.className||"")+" ").replace(/\s+/gi," ")}function r(t){t&&t.parentNode&&t.parentNode.removeChild(t)}var l={};l.version="0.2.0";var c=l.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,parent:"body",barSelector:'[role="nprogress-bar"]',spinnerSelector:'[role="nprogress-spinner"]',template:''};l.configure=function(t){var e,i;for(e in t)i=t[e],void 0!==i&&t.hasOwnProperty(e)&&(c[e]=i);return this},l.status=null,l.set=function(e){var n=l.isStarted();e=t(e,c.minimum,1),l.status=1===e?null:e;var s=l.render(!n),o=s.querySelector(c.barSelector),a=c.speed,r=c.easing;return s.offsetWidth,u(function(t){""===c.positionUsing&&(c.positionUsing=l.getPositioningCSS()),h(o,i(e,a,r)),1===e?(h(s,{transition:"none",opacity:1}),s.offsetWidth,setTimeout(function(){h(s,{transition:"all "+a+"ms linear",opacity:0}),setTimeout(function(){l.remove(),t()},a)},a)):setTimeout(t,a)}),this},l.isStarted=function(){return"number"==typeof l.status},l.start=function(){l.status||l.set(0);var t=function(){setTimeout(function(){l.status&&(l.trickle(),t())},c.trickleSpeed)};return c.trickle&&t(),this},l.done=function(t){return t||l.status?l.inc(.3+.5*Math.random()).set(1):this},l.inc=function(e){var i=l.status;return i?("number"!=typeof e&&(e=(1-i)*t(Math.random()*i,.1,.95)),i=t(i+e,0,.994),l.set(i)):l.start()},l.trickle=function(){return l.inc(Math.random()*c.trickleRate)},function(){var t=0,e=0;l.promise=function(i){return i&&"resolved"!==i.state()?(0===e&&l.start(),t++,e++,i.always(function(){e--,0===e?(t=0,l.done()):l.set((t-e)/t)}),this):this}}(),l.render=function(t){if(l.isRendered())return document.getElementById("nprogress");s(document.documentElement,"nprogress-busy");var i=document.createElement("div");i.id="nprogress",i.innerHTML=c.template;var n,o=i.querySelector(c.barSelector),a=t?"-100":e(l.status||0),u=document.querySelector(c.parent);return h(o,{transition:"all 0 linear",transform:"translate3d("+a+"%,0,0)"}),c.showSpinner||(n=i.querySelector(c.spinnerSelector),n&&r(n)),u!=document.body&&s(u,"nprogress-custom-parent"),u.appendChild(i),i},l.remove=function(){o(document.documentElement,"nprogress-busy"),o(document.querySelector(c.parent),"nprogress-custom-parent");var t=document.getElementById("nprogress");t&&r(t)},l.isRendered=function(){return!!document.getElementById("nprogress")},l.getPositioningCSS=function(){var t=document.body.style,e="WebkitTransform"in t?"Webkit":"MozTransform"in t?"Moz":"msTransform"in t?"ms":"OTransform"in t?"O":"";return e+"Perspective"in t?"translate3d":e+"Transform"in t?"translate":"margin"};var u=function(){function t(){var i=e.shift();i&&i(t)}var e=[];return function(i){e.push(i),1==e.length&&t()}}(),h=function(){function t(t){return t.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(t,e){return e.toUpperCase()})}function e(t){var e=document.body.style;if(t in e)return t;for(var i,n=s.length,o=t.charAt(0).toUpperCase()+t.slice(1);n--;)if(i=s[n]+o,i in e)return i;return t}function i(i){return i=t(i),o[i]||(o[i]=e(i))}function n(t,e,n){e=i(e),t.style[e]=n}var s=["Webkit","O","Moz","ms"],o={};return function(t,e){var i,s,o=arguments;if(2==o.length)for(i in e)s=e[i],void 0!==s&&e.hasOwnProperty(i)&&n(t,i,s);else n(t,o[1],o[2])}}();return l}();t.exports=n.progress=s},function(t,e,i){"use strict";var n=i(1),s=i(2),o=i(17),a=i(3),r=s.support.animation,l=s.support.transition,c=function(t,e){this.$element=n(t),this.$body=n(document.body),this.options=n.extend({},c.DEFAULTS,e),this.$pureview=n(this.options.tpl).attr("id",s.utils.generateGUID("am-pureview")),this.$slides=null,this.transitioning=null,this.scrollbarWidth=0,this.init()};c.DEFAULTS={tpl:'',className:{prevSlide:"am-pureview-slide-prev",nextSlide:"am-pureview-slide-next",onlyOne:"am-pureview-only",active:"am-active",barActive:"am-pureview-bar-active",activeBody:"am-pureview-active"},selector:{slider:".am-pureview-slider",close:'[data-am-close="pureview"]',total:".am-pureview-total",current:".am-pureview-current",title:".am-pureview-title",actions:".am-pureview-actions",
-bar:".am-pureview-bar",pinchZoom:".am-pinch-zoom",nav:".am-pureview-nav"},shareBtn:!1,toggleToolbar:!0,target:"img",weChatImagePreview:!0},c.prototype.init=function(){var t=this,e=this.options,i=this.$element,s=this.$pureview;this.refreshSlides(),n("body").append(s),this.$title=s.find(e.selector.title),this.$current=s.find(e.selector.current),this.$bar=s.find(e.selector.bar),this.$actions=s.find(e.selector.actions),e.shareBtn&&this.$actions.append(' '),this.$element.on("click.pureview.amui",e.target,function(i){i.preventDefault();var n=t.$images.index(this);e.weChatImagePreview&&window.WeixinJSBridge?window.WeixinJSBridge.invoke("imagePreview",{current:t.imgUrls[n],urls:t.imgUrls}):t.open(n)}),s.find(".am-pureview-direction").on("click.direction.pureview.amui","li",function(e){e.preventDefault(),n(this).is(".am-pureview-prev")?t.prevSlide():t.nextSlide()}),s.find(e.selector.nav).on("click.nav.pureview.amui","li",function(){var e=t.$navItems.index(n(this));t.activate(t.$slides.eq(e))}),s.find(e.selector.close).on("click.close.pureview.amui",function(e){e.preventDefault(),t.close()}),this.$slider.hammer().on("swipeleft.pureview.amui",function(e){e.preventDefault(),t.nextSlide()}).on("swiperight.pureview.amui",function(e){e.preventDefault(),t.prevSlide()}).on("press.pureview.amui",function(i){i.preventDefault(),e.toggleToolbar&&t.toggleToolBar()}),this.$slider.data("hammer").get("swipe").set({direction:a.DIRECTION_HORIZONTAL,velocity:.35}),i.DOMObserve({childList:!0,subtree:!0},function(t,e){}),i.on("changed.dom.amui",function(e){e.stopPropagation(),t.refreshSlides()}),n(document).on("keydown.pureview.amui",n.proxy(function(t){var e=t.keyCode;37==e?this.prevSlide():39==e?this.nextSlide():27==e&&this.close()},this))},c.prototype.refreshSlides=function(){this.$images=this.$element.find(this.options.target);var t=this,e=this.options,i=this.$pureview,o=n([]),a=n([]),r=this.$images,l=r.length;this.$slider=i.find(e.selector.slider),this.$nav=i.find(e.selector.nav);var c="data-am-pureviewed";this.imgUrls=this.imgUrls||[],l&&(1===l&&i.addClass(e.className.onlyOne),r.not("["+c+"]").each(function(e,i){var r,l;"A"===i.nodeName?(r=i.href,l=i.title||""):(r=n(i).data("rel")||i.src,r=s.utils.getAbsoluteUrl(r),l=n(i).attr("alt")||""),i.setAttribute(c,"1"),t.imgUrls.push(r),o=o.add(n(' ')),a=a.add(n(""+(e+1)+" "))}),i.find(e.selector.total).text(l),this.$slider.append(o),this.$nav.append(a),this.$navItems=this.$nav.find("li"),this.$slides=this.$slider.find("li"))},c.prototype.loadImage=function(t,e){var i="image-appended";if(!t.data(i)){var s=n(" ",{src:t.data("src"),alt:t.data("title")});t.html(s).wrapInner('
').redraw();var a=t.find(this.options.selector.pinchZoom);a.data("amui.pinchzoom",new o(a[0],{})),t.data("image-appended",!0)}e&&e.call(this)},c.prototype.activate=function(t){var e=this.options,i=this.$slides,o=i.index(t),a=t.data("title")||"",r=e.className.active;i.find("."+r).is(t)||this.transitioning||(this.loadImage(t,function(){s.utils.imageLoader(t.find("img"),function(e){t.find(".am-pinch-zoom").addClass("am-pureview-loaded"),n(e).addClass("am-img-loaded")})}),this.transitioning=1,this.$title.text(a),this.$current.text(o+1),i.removeClass(),t.addClass(r),i.eq(o-1).addClass(e.className.prevSlide),i.eq(o+1).addClass(e.className.nextSlide),this.$navItems.removeClass().eq(o).addClass(e.className.active),l?t.one(l.end,n.proxy(function(){this.transitioning=0},this)).emulateTransitionEnd(300):this.transitioning=0)},c.prototype.nextSlide=function(){if(1!==this.$slides.length){var t=this.$slides,e=t.filter(".am-active"),i=t.index(e),n="am-animation-right-spring";i+1>=t.length?r&&e.addClass(n).on(r.end,function(){e.removeClass(n)}):this.activate(t.eq(i+1))}},c.prototype.prevSlide=function(){if(1!==this.$slides.length){var t=this.$slides,e=t.filter(".am-active"),i=this.$slides.index(e),n="am-animation-left-spring";0===i?r&&e.addClass(n).on(r.end,function(){e.removeClass(n)}):this.activate(t.eq(i-1))}},c.prototype.toggleToolBar=function(){this.$pureview.toggleClass(this.options.className.barActive)},c.prototype.open=function(t){var e=t||0;this.checkScrollbar(),this.setScrollbar(),this.activate(this.$slides.eq(e)),this.$pureview.show().redraw().addClass(this.options.className.active),this.$body.addClass(this.options.className.activeBody)},c.prototype.close=function(){function t(){this.$pureview.hide(),this.$body.removeClass(e.className.activeBody),this.resetScrollbar()}var e=this.options;this.$pureview.removeClass(e.className.active),this.$slides.removeClass(),l?this.$pureview.one(l.end,n.proxy(t,this)).emulateTransitionEnd(300):t.call(this)},c.prototype.checkScrollbar=function(){this.scrollbarWidth=s.utils.measureScrollbar()},c.prototype.setScrollbar=function(){var t=parseInt(this.$body.css("padding-right")||0,10);this.scrollbarWidth&&this.$body.css("padding-right",t+this.scrollbarWidth)},c.prototype.resetScrollbar=function(){this.$body.css("padding-right","")},s.plugin("pureview",c),s.ready(function(t){n("[data-am-pureview]",t).pureview()}),t.exports=c},function(t,e,i){"use strict";var n=i(1),s=i(2),o=function(t,e){if(s.support.animation){this.options=n.extend({},o.DEFAULTS,e),this.$element=n(t);var i=function(){s.utils.rAF.call(window,n.proxy(this.checkView,this))}.bind(this);this.$window=n(window).on("scroll.scrollspy.amui",i).on("resize.scrollspy.amui orientationchange.scrollspy.amui",s.utils.debounce(i,50)),this.timer=this.inViewState=this.initInView=null,i()}};o.DEFAULTS={animation:"fade",className:{inView:"am-scrollspy-inview",init:"am-scrollspy-init"},repeat:!0,delay:0,topOffset:0,leftOffset:0},o.prototype.checkView=function(){var t=this.$element,e=this.options,i=s.utils.isInView(t,e),n=e.animation?" am-animation-"+e.animation:"";i&&!this.inViewState&&(this.timer&&clearTimeout(this.timer),this.initInView||(t.addClass(e.className.init),this.offset=t.offset(),this.initInView=!0,t.trigger("init.scrollspy.amui")),this.timer=setTimeout(function(){i&&t.addClass(e.className.inView+n).width()},e.delay),this.inViewState=!0,t.trigger("inview.scrollspy.amui")),!i&&this.inViewState&&e.repeat&&(t.removeClass(e.className.inView+n),this.inViewState=!1,t.trigger("outview.scrollspy.amui"))},o.prototype.check=function(){s.utils.rAF.call(window,n.proxy(this.checkView,this))},s.plugin("scrollspy",o),s.ready(function(t){n("[data-am-scrollspy]",t).scrollspy()}),t.exports=o},function(t,e,i){"use strict";var n=i(1),s=i(2);i(23);var o=function(t,e){this.options=n.extend({},o.DEFAULTS,e),this.$element=n(t),this.anchors=[],this.$links=this.$element.find('a[href^="#"]').each(function(t,e){this.anchors.push(n(e).attr("href"))}.bind(this)),this.$targets=n(this.anchors.join(", "));var i=function(){s.utils.rAF.call(window,n.proxy(this.process,this))}.bind(this);this.$window=n(window).on("scroll.scrollspynav.amui",i).on("resize.scrollspynav.amui orientationchange.scrollspynav.amui",s.utils.debounce(i,50)),i(),this.scrollProcess()};o.DEFAULTS={className:{active:"am-active"},closest:!1,smooth:!0,offsetTop:0},o.prototype.process=function(){var t=this.$window.scrollTop(),e=this.options,i=[],o=this.$links,a=this.$targets;if(a.each(function(t,n){s.utils.isInView(n,e)&&i.push(n)}),i.length){var r;if(n.each(i,function(e,i){if(n(i).offset().top>=t)return r=n(i),!1}),!r)return;e.closest?(o.closest(e.closest).removeClass(e.className.active),o.filter('a[href="#'+r.attr("id")+'"]').closest(e.closest).addClass(e.className.active)):o.removeClass(e.className.active).filter('a[href="#'+r.attr("id")+'"]').addClass(e.className.active)}},o.prototype.scrollProcess=function(){var t=this.$links,e=this.options;e.smooth&&n.fn.smoothScroll&&t.on("click",function(t){t.preventDefault();var i=n(this),s=n(i.attr("href"));if(s){var o=e.offsetTop&&!isNaN(parseInt(e.offsetTop))&&parseInt(e.offsetTop)||0;n(window).smoothScroll({position:s.offset().top-o})}})},s.plugin("scrollspynav",o),s.ready(function(t){n("[data-am-scrollspynav]",t).scrollspynav()}),t.exports=o},function(t,e,i){"use strict";var n=i(1),s=i(2),o=s.utils.rAF,a=s.utils.cancelAF,r=!1,l=function(t,e){function i(t){return(t/=.5)<1?.5*Math.pow(t,5):.5*(Math.pow(t-2,5)+2)}function s(){p.off("touchstart.smoothscroll.amui",w),r=!1}function c(t){r&&(u||(u=t),h=Math.min(1,Math.max((t-u)/y,0)),d=Math.round(f+g*i(h)),g>0&&d>m&&(d=m),g<0&&d=0};var o=function(t,e){this.$element=n(t),this.options=n.extend({},o.DEFAULTS,{placeholder:t.getAttribute("placeholder")||o.DEFAULTS.placeholder},e),this.$originalOptions=this.$element.find("option"),this.multiple=t.multiple,this.$selector=null,this.initialized=!1,this.init()};o.DEFAULTS={btnWidth:null,btnSize:null,btnStyle:"default",dropUp:0,maxHeight:null,maxChecked:null,placeholder:"\u70b9\u51fb\u9009\u62e9...",selectedClass:"am-checked",disabledClass:"am-disabled",searchBox:!1,tpl:' <% if (searchBox) { %>
<% } %>
<% for (var i = 0; i < options.length; i++) { %> <% var option = options[i] %> <% if (option.header) { %> <% } else { %> <%= option.text %> <% } %> <% } %>
',listTpl:'<% for (var i = 0; i < options.length; i++) { %> <% var option = options[i] %> <% if (option.header) { %> <% } else { %> <%= option.text %> <% } %> <% } %>'},o.prototype.init=function(){var t=this,e=this.$element,i=this.options;e.hide();var o={id:s.utils.generateGUID("am-selected"),multiple:this.multiple,options:[],searchBox:i.searchBox,dropUp:i.dropUp,placeholder:i.placeholder};this.$selector=n(s.template(this.options.tpl,o)),this.$selector.css({width:this.options.btnWidth}),this.$list=this.$selector.find(".am-selected-list"),this.$searchField=this.$selector.find(".am-selected-search input"),this.$hint=this.$selector.find(".am-selected-hint");var a=this.$selector.find(".am-selected-btn"),r=[];i.btnSize&&r.push("am-btn-"+i.btnSize),i.btnStyle&&r.push("am-btn-"+i.btnStyle),a.addClass(r.join(" ")),this.$selector.dropdown({justify:a}),e[0].disabled&&this.disable(),i.maxHeight&&this.$selector.find(".am-selected-list").css({"max-height":i.maxHeight,"overflow-y":"scroll"});var l=[],c=e.attr("minchecked"),u=e.attr("maxchecked")||i.maxChecked;this.maxChecked=u||1/0,e[0].required&&l.push("\u5fc5\u9009"),(c||u)&&(c&&l.push("\u81f3\u5c11\u9009\u62e9 "+c+" \u9879"),u&&l.push("\u81f3\u591a\u9009\u62e9 "+u+" \u9879")),this.$hint.text(l.join("\uff0c")),this.renderOptions(),this.$element.after(this.$selector),this.dropdown=this.$selector.data("amui.dropdown"),this.$status=this.$selector.find(".am-selected-status"),setTimeout(function(){t.syncData(),t.initialized=!0},0),this.bindEvents()},o.prototype.renderOptions=function(){function t(t,e,s){if(""===e.value)return!0;var o="";e.disabled&&(o+=i.disabledClass),!e.disabled&&e.selected&&(o+=i.selectedClass),n.push({group:s,index:t,classNames:o,text:e.text,value:e.value})}var e=this.$element,i=this.options,n=[],o=e.find("optgroup");this.$originalOptions=this.$element.find("option"),this.multiple||null!==e.val()||this.$originalOptions.length&&(this.$originalOptions.get(0).selected=!0),o.length?o.each(function(e){n.push({header:!0,group:e+1,text:this.label}),o.eq(e).find("option").each(function(i,n){t(i,n,e)})}):this.$originalOptions.each(function(e,i){t(e,i,null)}),this.$list.html(s.template(i.listTpl,{options:n})),this.$shadowOptions=this.$list.find("> li").not(".am-selected-list-header")},o.prototype.setChecked=function(t){var e=this.options,i=n(t),s=i.hasClass(e.selectedClass);if(this.multiple){var o=this.$list.find("."+e.selectedClass).length;if(!s&&this.maxChecked<=o)return this.$element.trigger("checkedOverflow.selected.amui",{selected:this}),!1}else{if(this.dropdown.close(),s)return!1;this.$shadowOptions.not(i).removeClass(e.selectedClass)}i.toggleClass(e.selectedClass),this.syncData(t)},o.prototype.syncData=function(t){var e=this,i=this.options,s=[],o=n([]);if(this.$shadowOptions.filter("."+i.selectedClass).each(function(){var i=n(this);s.push(i.find(".am-selected-text").text()),t||(o=o.add(e.$originalOptions.filter('[value="'+i.data("value")+'"]').prop("selected",!0)))}),t){var a=n(t);this.$originalOptions.filter('[value="'+a.data("value")+'"]').prop("selected",a.hasClass(i.selectedClass))}else this.$originalOptions.not(o).prop("selected",!1);this.$element.val()||(s=[i.placeholder]),this.$status.text(s.join(", ")),this.initialized&&this.$element.trigger("change")},o.prototype.bindEvents=function(){var t=this,e="am-selected-list-header",i=s.utils.debounce(function(i){t.$shadowOptions.not("."+e).hide().filter(':containsNC("'+i.target.value+'")').show()},100);this.$list.on("click","> li",function(i){var s=n(this);!s.hasClass(t.options.disabledClass)&&!s.hasClass(e)&&t.setChecked(this)}),this.$searchField.on("keyup.selected.amui",i),this.$selector.on("closed.dropdown.amui",function(){t.$searchField.val(""),t.$shadowOptions.css({display:""})}),this.$element.on("validated.field.validator.amui",function(e){if(e.validity){var i=e.validity.valid,n="am-invalid";t.$selector[(i?"remove":"add")+"Class"](n)}}),s.support.mutationobserver&&(this.observer=new s.support.mutationobserver(function(){t.$element.trigger("changed.selected.amui")}),this.observer.observe(this.$element[0],{childList:!0,subtree:!0,characterData:!0})),this.$element.on("changed.selected.amui",function(){t.renderOptions(),t.syncData()})},o.prototype.select=function(t){var e;e="number"==typeof t?this.$list.find("> li").not(".am-selected-list-header").eq(t):"string"==typeof t?this.$list.find(t):n(t),e.trigger("click")},o.prototype.enable=function(){this.$element.prop("disable",!1),this.$selector.dropdown("enable")},o.prototype.disable=function(){this.$element.prop("disable",!0),this.$selector.dropdown("disable")},o.prototype.destroy=function(){this.$element.removeData("amui.selected").show(),this.$selector.remove()},s.plugin("selected",o),s.ready(function(t){n("[data-am-selected]",t).selected()}),t.exports=o},function(t,e,i){"use strict";i(15);var n=i(1),s=i(2),o=i(26),a=document,r=n(a),l=function(t){this.options=n.extend({},l.DEFAULTS,t||{}),this.$element=null,this.$wechatQr=null,this.pics=null,this.inited=!1,this.active=!1};l.DEFAULTS={sns:["weibo","qq","qzone","tqq","wechat","renren"],title:"\u5206\u4eab\u5230",cancel:"\u53d6\u6d88",closeOnShare:!0,id:s.utils.generateGUID("am-share"),desc:"Hi\uff0c\u5b64\u591c\u89c2\u5929\u8c61\uff0c\u53d1\u73b0\u4e00\u4e2a\u4e0d\u9519\u7684\u897f\u897f\uff0c\u5206\u4eab\u4e00\u4e0b\u4e0b ;-)",via:"Amaze UI",tpl:''},l.SNS={weibo:{title:"\u65b0\u6d6a\u5fae\u535a",url:"http://service.weibo.com/share/share.php",width:620,height:450,icon:"weibo"},qq:{title:"QQ \u597d\u53cb",url:"http://connect.qq.com/widget/shareqq/index.html",icon:"qq"},qzone:{title:"QQ \u7a7a\u95f4",url:"http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey",icon:"star"},tqq:{title:"\u817e\u8baf\u5fae\u535a",url:"http://v.t.qq.com/share/share.php",icon:"tencent-weibo"},wechat:{title:"\u5fae\u4fe1",url:"[qrcode]",icon:"wechat"},renren:{title:"\u4eba\u4eba\u7f51",url:"http://widget.renren.com/dialog/share",icon:"renren"},douban:{title:"\u8c46\u74e3",url:"http://www.douban.com/recommend/",icon:"share-alt"},mail:{title:"\u90ae\u4ef6\u5206\u4eab",url:"mailto:",icon:"envelope-o"},sms:{title:"\u77ed\u4fe1\u5206\u4eab",url:"sms:",icon:"comment"}},l.prototype.render=function(){var t=this.options,e=[],i=encodeURIComponent(a.title),o=encodeURIComponent(a.location),r="?body="+i+o;return t.sns.forEach(function(n,s){if(l.SNS[n]){var a,c=l.SNS[n];c.id=n,a="mail"===n?r+"&subject="+t.desc:"sms"===n?r:"?url="+o+"&title="+i,c.shareUrl=c.url+a,e.push(c)}}),s.template(t.tpl,n.extend({},t,{sns:e}))},l.prototype.init=function(){if(!this.inited){var t=this,e="[data-am-share-to]";r.ready(n.proxy(function(){n("body").append(this.render()),this.$element=n("#"+this.options.id),this.$element.find("[data-am-share-close]").on("click.share.amui",function(){t.close()})},this)),r.on("click.share.amui",e,n.proxy(function(t){var i=n(t.target),s=i.is(e)&&i||i.parent(e),o=s.attr("data-am-share-to");"mail"!==o&&"sms"!==o&&(t.preventDefault(),this.shareTo(o,this.setData(o))),this.close()},this)),this.inited=!0}},l.prototype.open=function(){!this.inited&&this.init(),this.$element&&this.$element.modal("open"),this.$element.trigger("open.share.amui"),this.active=!0},l.prototype.close=function(){this.$element&&this.$element.modal("close"),this.$element.trigger("close.share.amui"),this.active=!1},l.prototype.toggle=function(){this.active?this.close():this.open()},l.prototype.setData=function(t){if(t){var e={url:a.location,title:a.title},i=this.options.desc,n=this.pics||[],s=/^(qzone|qq|tqq)$/;if(s.test(t)&&!n.length){for(var o=a.images,r=0;r\u5206\u4eab\u5230\u5fae\u4fe1
×
\u6253\u5f00\u5fae\u4fe1\uff0c\u70b9\u51fb\u5e95\u90e8\u7684\u53d1\u73b0 \uff0c \u4f7f\u7528\u626b\u4e00\u626b \u5c06\u7f51\u9875\u5206\u4eab\u81f3\u670b\u53cb\u5708
');e.attr("id",t);var i=new o({render:"canvas",correctLevel:0,text:a.location.href,width:180,height:180,background:"#fff",foreground:"#000"});e.find(".am-share-wx-qr").html(i),e.appendTo(n("body")),this.$wechatQr=n("#"+t)}this.$wechatQr.modal("open")};var c=new l;r.on("click.share.amui.data-api",'[data-am-toggle="share"]',function(t){t.preventDefault(),c.toggle()}),t.exports=s.share=c},function(t,e,i){function n(t){return t<128?[t]:t<2048?(c0=192+(t>>6),c1=128+(63&t),[c0,c1]):(c0=224+(t>>12),c1=128+(t>>6&63),c2=128+(63&t),[c0,c1,c2])}function s(t){for(var e=[],i=0;i>6),c1=128+(63&t),[c0,c1]):(c0=224+(t>>12),c1=128+(t>>6&63),c2=128+(63&t),[c0,c1,c2])}function s(t){for(var e=[],i=0;i');var i=-1,n=-1,s=-1,o=-1;i=s=Math.floor(this.options.width/t.getModuleCount()),n=o=Math.floor(this.options.height/t.getModuleCount()),s<=0&&(i=t.getModuleCount()<80?2:1),o<=0&&(n=t.getModuleCount()<80?2:1),foreTd=' ',backTd=' ',l=t.getModuleCount();for(var a=0;a');for(var r=0;r")}e.push("");var c=document.createElement("span");return c.innerHTML=e.join(""),c.firstChild},d.prototype.createSVG=function(t){for(var e,i,n,s,o=t.getModuleCount(),a=this.options.height/this.options.width,r='',l=" ',h=' style="stroke-width:0.5;stroke:'+this.options.background+";fill:"+this.options.background+';">',d=0;d",c(r)[0]},o.prototype={constructor:o,getModuleCount:function(){return this.moduleCount},make:function(){this.getRightType(),this.dataCache=this.createData(),this.createQrcode()},makeImpl:function(t){this.moduleCount=4*this.typeNumber+17,this.modules=new Array(this.moduleCount);for(var e=0;e=7&&this.setupTypeNumber(!0),this.mapData(this.dataCache,t)},setupPositionProbePattern:function(t,e){for(var i=-1;i<=7;i++)if(!(t+i<=-1||this.moduleCount<=t+i))for(var n=-1;n<=7;n++)e+n<=-1||this.moduleCount<=e+n||(0<=i&&i<=6&&(0==n||6==n)||0<=n&&n<=6&&(0==i||6==i)||2<=i&&i<=4&&2<=n&&n<=4?this.modules[t+i][e+n]=!0:this.modules[t+i][e+n]=!1)},createQrcode:function(){for(var t=0,e=0,i=null,n=0;n<8;n++){this.makeImpl(n);var s=f.getLostPoint(this);(0==n||t>s)&&(t=s,e=n,i=this.modules)}this.modules=i,this.setupTypeInfo(!1,e),this.typeNumber>=7&&this.setupTypeNumber(!1)},setupTimingPattern:function(){for(var t=8;t>i&1);this.modules[Math.floor(i/3)][i%3+this.moduleCount-8-3]=n,this.modules[i%3+this.moduleCount-8-3][Math.floor(i/3)]=n}},setupTypeInfo:function(t,e){for(var i=p[this.errorCorrectLevel]<<3|e,n=f.getBCHTypeInfo(i),s=0;s<15;s++){var o=!t&&1==(n>>s&1);s<6?this.modules[s][8]=o:s<8?this.modules[s+1][8]=o:this.modules[this.moduleCount-15+s][8]=o;var o=!t&&1==(n>>s&1);s<8?this.modules[8][this.moduleCount-s-1]=o:s<9?this.modules[8][15-s-1+1]=o:this.modules[8][15-s-1]=o}this.modules[this.moduleCount-8][8]=!t},createData:function(){var t=new r,e=this.typeNumber>9?16:8;t.put(4,4),t.put(this.utf8bytes.length,e);for(var i=0,n=this.utf8bytes.length;i=8*this.totalDataCount)break;if(t.put(o.PAD0,8),t.length>=8*this.totalDataCount)break;t.put(o.PAD1,8)}return this.createBytes(t)},createBytes:function(t){for(var e=0,i=0,n=0,s=this.rsBlock.length/3,o=new Array,r=0;r=0?b.get(T):0}}for(var x=new Array(this.totalDataCount),C=0,r=0;r0;a-=2)for(6==a&&a--;;){for(var r=0;r<2;r++)if(null==this.modules[n][a-r]){var l=!1;o>>s&1));var c=f.getMask(e,n,a-r);c&&(l=!l),this.modules[n][a-r]=l,s--,s==-1&&(o++,s=7)}if(n+=i,n<0||this.moduleCount<=n){n-=i,i=-i;break}}}},o.PAD0=236,o.PAD1=17;for(var p=[1,0,3,2],m={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7},f={PATTERN_POSITION_TABLE:[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],G15:1335,G18:7973,G15_MASK:21522,getBCHTypeInfo:function(t){for(var e=t<<10;f.getBCHDigit(e)-f.getBCHDigit(f.G15)>=0;)e^=f.G15<=0;)e^=f.G18<>>=1;return e},getPatternPosition:function(t){return f.PATTERN_POSITION_TABLE[t-1]},getMask:function(t,e,i){switch(t){case m.PATTERN000:return(e+i)%2==0;case m.PATTERN001:return e%2==0;case m.PATTERN010:return i%3==0;case m.PATTERN011:return(e+i)%3==0;case m.PATTERN100:return(Math.floor(e/2)+Math.floor(i/3))%2==0;case m.PATTERN101:return e*i%2+e*i%3==0;case m.PATTERN110:return(e*i%2+e*i%3)%2==0;case m.PATTERN111:return(e*i%3+(e+i)%2)%2==0;default:throw new Error("bad maskPattern:"+t)}},getErrorCorrectPolynomial:function(t){for(var e=new a([1],0),i=0;i3&&t.modules[s][r-1]&&t.modules[s][r-2]&&t.modules[s][r-3]&&t.modules[s][r-4]&&(i+=40)),s=5&&(i+=3+o-5),o=1),l&&n++}for(var r=0;r3&&t.modules[s-1][r]&&t.modules[s-2][r]&&t.modules[s-3][r]&&t.modules[s-4][r]&&(i+=40)),
-a^l?o++:(a=l,o>=5&&(i+=3+o-5),o=1)}var u=Math.abs(100*n/e/e-50)/5;return i+=10*u}},v={glog:function(t){if(t<1)throw new Error("glog("+t+")");return v.LOG_TABLE[t]},gexp:function(t){for(;t<0;)t+=255;for(;t>=256;)t-=255;return v.EXP_TABLE[t]},EXP_TABLE:new Array(256),LOG_TABLE:new Array(256)},g=0;g<8;g++)v.EXP_TABLE[g]=1<=i;){for(var o=v.glog(n[0])-v.glog(t.get(0)),s=0;s9?2:1;if(this.utf8bytes.length+r>>7-t%8&1},put:function(t,e){for(var i=0;i>>e-i-1&1)},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}},o.prototype={constructor:o,getModuleCount:function(){return this.moduleCount},make:function(){this.getRightType(),this.dataCache=this.createData(),this.createQrcode()},makeImpl:function(t){this.moduleCount=4*this.typeNumber+17,this.modules=new Array(this.moduleCount);for(var e=0;e=7&&this.setupTypeNumber(!0),this.mapData(this.dataCache,t)},setupPositionProbePattern:function(t,e){for(var i=-1;i<=7;i++)if(!(t+i<=-1||this.moduleCount<=t+i))for(var n=-1;n<=7;n++)e+n<=-1||this.moduleCount<=e+n||(0<=i&&i<=6&&(0==n||6==n)||0<=n&&n<=6&&(0==i||6==i)||2<=i&&i<=4&&2<=n&&n<=4?this.modules[t+i][e+n]=!0:this.modules[t+i][e+n]=!1)},createQrcode:function(){for(var t=0,e=0,i=null,n=0;n<8;n++){this.makeImpl(n);var s=f.getLostPoint(this);(0==n||t>s)&&(t=s,e=n,i=this.modules)}this.modules=i,this.setupTypeInfo(!1,e),this.typeNumber>=7&&this.setupTypeNumber(!1)},setupTimingPattern:function(){for(var t=8;t>i&1);this.modules[Math.floor(i/3)][i%3+this.moduleCount-8-3]=n,this.modules[i%3+this.moduleCount-8-3][Math.floor(i/3)]=n}},setupTypeInfo:function(t,e){for(var i=p[this.errorCorrectLevel]<<3|e,n=f.getBCHTypeInfo(i),s=0;s<15;s++){var o=!t&&1==(n>>s&1);s<6?this.modules[s][8]=o:s<8?this.modules[s+1][8]=o:this.modules[this.moduleCount-15+s][8]=o;var o=!t&&1==(n>>s&1);s<8?this.modules[8][this.moduleCount-s-1]=o:s<9?this.modules[8][15-s-1+1]=o:this.modules[8][15-s-1]=o}this.modules[this.moduleCount-8][8]=!t},createData:function(){var t=new r,e=this.typeNumber>9?16:8;t.put(4,4),t.put(this.utf8bytes.length,e);for(var i=0,n=this.utf8bytes.length;i=8*this.totalDataCount)break;if(t.put(o.PAD0,8),t.length>=8*this.totalDataCount)break;t.put(o.PAD1,8)}return this.createBytes(t)},createBytes:function(t){for(var e=0,i=0,n=0,s=this.rsBlock.length/3,o=new Array,r=0;r=0?b.get(T):0}}for(var x=new Array(this.totalDataCount),C=0,r=0;r0;a-=2)for(6==a&&a--;;){for(var r=0;r<2;r++)if(null==this.modules[n][a-r]){var l=!1;o>>s&1));var c=f.getMask(e,n,a-r);c&&(l=!l),this.modules[n][a-r]=l,s--,s==-1&&(o++,s=7)}if(n+=i,n<0||this.moduleCount<=n){n-=i,i=-i;break}}}},o.PAD0=236,o.PAD1=17;for(var p=[1,0,3,2],m={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7},f={PATTERN_POSITION_TABLE:[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],G15:1335,G18:7973,G15_MASK:21522,getBCHTypeInfo:function(t){for(var e=t<<10;f.getBCHDigit(e)-f.getBCHDigit(f.G15)>=0;)e^=f.G15<=0;)e^=f.G18<>>=1;return e},getPatternPosition:function(t){return f.PATTERN_POSITION_TABLE[t-1]},getMask:function(t,e,i){switch(t){case m.PATTERN000:return(e+i)%2==0;case m.PATTERN001:return e%2==0;case m.PATTERN010:return i%3==0;case m.PATTERN011:return(e+i)%3==0;case m.PATTERN100:return(Math.floor(e/2)+Math.floor(i/3))%2==0;case m.PATTERN101:return e*i%2+e*i%3==0;case m.PATTERN110:return(e*i%2+e*i%3)%2==0;case m.PATTERN111:return(e*i%3+(e+i)%2)%2==0;default:throw new Error("bad maskPattern:"+t)}},getErrorCorrectPolynomial:function(t){for(var e=new a([1],0),i=0;i3&&t.modules[s][r-1]&&t.modules[s][r-2]&&t.modules[s][r-3]&&t.modules[s][r-4]&&(i+=40)),s=5&&(i+=3+o-5),o=1),l&&n++}for(var r=0;r3&&t.modules[s-1][r]&&t.modules[s-2][r]&&t.modules[s-3][r]&&t.modules[s-4][r]&&(i+=40)),a^l?o++:(a=l,o>=5&&(i+=3+o-5),o=1)}var u=Math.abs(100*n/e/e-50)/5;return i+=10*u}},v={glog:function(t){if(t<1)throw new Error("glog("+t+")");return v.LOG_TABLE[t]},gexp:function(t){for(;t<0;)t+=255;for(;t>=256;)t-=255;return v.EXP_TABLE[t]},EXP_TABLE:new Array(256),LOG_TABLE:new Array(256)},g=0;g<8;g++)v.EXP_TABLE[g]=1<=i;){for(var o=v.glog(n[0])-v.glog(t.get(0)),s=0;s9?2:1;if(this.utf8bytes.length+r>>7-t%8&1},put:function(t,e){for(var i=0;i>>e-i-1&1)},putBit:function(t){var e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}},c.fn.qrcode=function(t){return this.each(function(){c(this).append(new d(t))})},t.exports=u.qrcode=d},function(t,e,i){"use strict";var n=i(1),s=i(2),o=function(t,e){var i=this;this.options=n.extend({},o.DEFAULTS,e),this.$element=n(t),this.sticked=null,this.inited=null,this.$holder=void 0,this.$window=n(window).on("scroll.sticky.amui",s.utils.debounce(n.proxy(this.checkPosition,this),10)).on("resize.sticky.amui orientationchange.sticky.amui",s.utils.debounce(function(){i.reset(!0,function(){i.checkPosition()})},50)).on("load.sticky.amui",n.proxy(this.checkPosition,this)),this.offset=this.$element.offset(),this.init()};o.DEFAULTS={top:0,bottom:0,animation:"",className:{sticky:"am-sticky",resetting:"am-sticky-resetting",stickyBtm:"am-sticky-bottom",animationRev:"am-animation-reverse"}},o.prototype.init=function(){var t=this.check();if(!t)return!1;var e=this.$element,i="";n.each(e.css(["marginTop","marginRight","marginBottom","marginLeft"]),function(t,e){return i+=" "+e});var s=n('
').css({height:"absolute"!==e.css("position")?e.outerHeight():"","float":"none"!=e.css("float")?e.css("float"):"",margin:i});return this.$holder=e.css("margin",0).wrap(s).parent(),this.inited=1,!0},o.prototype.reset=function(t,e){var i=this.options,n=this.$element,o=i.animation?" am-animation-"+i.animation:"",a=function(){n.css({position:"",top:"",width:"",left:"",margin:0}),n.removeClass([o,i.className.animationRev,i.className.sticky,i.className.resetting].join(" ")),this.animating=!1,this.sticked=!1,this.offset=n.offset(),e&&e()}.bind(this);n.addClass(i.className.resetting),!t&&i.animation&&s.support.animation?(this.animating=!0,n.removeClass(o).one(s.support.animation.end,function(){a()}).width(),n.addClass(o+" "+i.className.animationRev)):a()},o.prototype.check=function(){if(!this.$element.is(":visible"))return!1;var t=this.options.media;if(t)switch(typeof t){case"number":if(window.innerWidththis.$holder.offset().top;!this.sticked&&l?o.addClass(r):this.sticked&&!l&&this.reset(),this.$holder.css({height:o.is(":visible")&&"absolute"!==o.css("position")?o.outerHeight():""}),l&&o.css({top:n,left:this.$holder.offset().left,width:this.$holder.width()}),this.sticked=l},s.plugin("sticky",o),n(window).on("load",function(){n("[data-am-sticky]").sticky()}),t.exports=o},function(t,e,i){"use strict";function n(t){var e,i=Array.prototype.slice.call(arguments,1);return this.each(function(){var n=s(this),a=n.is(".am-tabs")&&n||n.closest(".am-tabs"),r=a.data("amui.tabs"),l=s.extend({},o.utils.parseOptions(n.data("amTabs")),s.isPlainObject(t)&&t);r||a.data("amui.tabs",r=new c(a[0],l)),"string"==typeof t&&("open"===t&&n.is(".am-tabs-nav a")?r.open(n):e="function"==typeof r[t]?r[t].apply(r,i):r[t])}),void 0===e?this:e}var s=i(1),o=i(2),a=i(3),r=o.support.transition,l=o.support.animation,c=function(t,e){this.$element=s(t),this.options=s.extend({},c.DEFAULTS,e||{}),this.transitioning=this.activeIndex=null,this.refresh(),this.init()};c.DEFAULTS={selector:{nav:"> .am-tabs-nav",content:"> .am-tabs-bd",panel:"> .am-tab-panel"},activeClass:"am-active"},c.prototype.refresh=function(){var t=this.options.selector;this.$tabNav=this.$element.find(t.nav),this.$navs=this.$tabNav.find("a"),this.$content=this.$element.find(t.content),this.$tabPanels=this.$content.find(t.panel);var e=this.$tabNav.find("> ."+this.options.activeClass);1!==e.length?this.open(0):this.activeIndex=this.$navs.index(e.children("a"))},c.prototype.init=function(){var t=this,e=this.options;if(this.$element.on("click.tabs.amui",e.selector.nav+" a",function(e){e.preventDefault(),t.open(s(this))}),!e.noSwipe){if(!this.$content.length)return this;var i=new a.Manager(this.$content[0]),n=new a.Swipe({direction:a.DIRECTION_HORIZONTAL});i.add(n),i.on("swipeleft",o.utils.debounce(function(e){e.preventDefault(),t.goTo("next")},100)),i.on("swiperight",o.utils.debounce(function(e){e.preventDefault(),t.goTo("prev")},100)),this._hammer=i}},c.prototype.open=function(t){var e=this.options.activeClass,i="number"==typeof t?t:this.$navs.index(s(t));if(t="number"==typeof t?this.$navs.eq(i):s(t),t&&t.length&&!this.transitioning&&!t.parent("li").hasClass(e)){var n=this.$tabNav,o=t.attr("href"),a=/^#.+$/,r=a.test(o)&&this.$content.find(o)||this.$tabPanels.eq(i),l=n.find("."+e+" a")[0],c=s.Event("open.tabs.amui",{relatedTarget:l});t.trigger(c),c.isDefaultPrevented()||(this.activate(t.closest("li"),n),this.activate(r,this.$content,function(){t.trigger({type:"opened.tabs.amui",relatedTarget:l})}),this.activeIndex=i)}},c.prototype.activate=function(t,e,i){this.transitioning=!0;var n=this.options.activeClass,o=e.find("> ."+n),a=i&&r&&!!o.length;o.removeClass(n+" am-in"),t.addClass(n),a?(t.redraw(),t.addClass("am-in")):t.removeClass("am-fade");var l=s.proxy(function(){i&&i(),this.transitioning=!1},this);a&&!this.$content.is(".am-tabs-bd-ofv")?o.one(r.end,l):l()},c.prototype.goTo=function(t){var e=this.activeIndex,i="next"===t,n=i?"am-animation-right-spring":"am-animation-left-spring";if(i&&e+1>=this.$navs.length||!i&&0===e){var s=this.$tabPanels.eq(e);l&&s.addClass(n).on(l.end,function(){s.removeClass(n)})}else this.open(i?e+1:e-1)},c.prototype.destroy=function(){this.$element.off(".tabs.amui"),a.off(this.$content[0],"swipeleft swiperight"),this._hammer&&this._hammer.destroy(),s.removeData(this.$element,"amui.tabs")},s.fn.tabs=n,o.ready(function(t){s("[data-am-tabs]",t).tabs()}),s(document).on("click.tabs.amui.data-api","[data-am-tabs] .am-tabs-nav a",function(t){t.preventDefault(),n.call(s(this),"open")}),t.exports=o.tabs=c},function(t,e,i){"use strict";var n=i(1),s=i(2),o=function(t,e){this.options=n.extend({},o.DEFAULTS,e),this.$element=n(t),this.init()};o.DEFAULTS={checkboxClass:"am-ucheck-checkbox",radioClass:"am-ucheck-radio",checkboxTpl:' ',radioTpl:' '},o.prototype.init=function(){var t=this.$element,e=t[0],i=this.options;"checkbox"===e.type?t.addClass(i.checkboxClass).after(i.checkboxTpl):"radio"===e.type&&t.addClass(i.radioClass).after(i.radioTpl)},o.prototype.check=function(){this.$element.prop("checked",!0).trigger("change.ucheck.amui").trigger("checked.ucheck.amui")},o.prototype.uncheck=function(){this.$element.prop("checked",!1).trigger("change").trigger("unchecked.ucheck.amui")},o.prototype.toggle=function(){this.$element.prop("checked",function(t,e){return!e}).trigger("change.ucheck.amui").trigger("toggled.ucheck.amui")},o.prototype.disable=function(){this.$element.prop("disabled",!0).trigger("change.ucheck.amui").trigger("disabled.ucheck.amui")},o.prototype.enable=function(){this.$element.prop("disabled",!1),this.$element.trigger("change.ucheck.amui").trigger("enabled.ucheck.amui")},o.prototype.destroy=function(){this.$element.removeData("amui.ucheck").removeClass(this.options.checkboxClass+" "+this.options.radioClass).next(".am-ucheck-icons").remove().end().trigger("destroyed.ucheck.amui")},s.plugin("uCheck",o,{after:function(){s.support.touch&&this.parent().hover(function(){n(this).addClass("am-nohover")},function(){n(this).removeClass("am-nohover")})}}),s.ready(function(t){n("[data-am-ucheck]",t).uCheck()}),t.exports=o},function(t,e,i){"use strict";var n=i(1),s=i(2),o=function(t,e){this.options=n.extend({},o.DEFAULTS,e),this.options.patterns=n.extend({},o.patterns,this.options.patterns);var i=this.options.locales;!o.validationMessages[i]&&(this.options.locales="zh_CN"),this.$element=n(t),this.init()};o.DEFAULTS={debug:!1,locales:"zh_CN",H5validation:!1,H5inputType:["email","url","number"],patterns:{},patternClassPrefix:"js-pattern-",activeClass:"am-active",inValidClass:"am-field-error",validClass:"am-field-valid",validateOnSubmit:!0,alwaysRevalidate:!1,allFields:":input:not(:submit, :button, :disabled, .am-novalidate)",ignore:":hidden:not([data-am-selected], .am-validate)",customEvents:"validate",keyboardFields:":input:not(:submit, :button, :disabled, .am-novalidate)",keyboardEvents:"focusout, change",activeKeyup:!1,textareaMaxlenthKeyup:!0,pointerFields:'input[type="range"]:not(:disabled, .am-novalidate), input[type="radio"]:not(:disabled, .am-novalidate), input[type="checkbox"]:not(:disabled, .am-novalidate), select:not(:disabled, .am-novalidate), option:not(:disabled, .am-novalidate)',pointerEvents:"click",onValid:function(t){},onInValid:function(t){},markValid:function(t){var e=this.options,i=n(t.field),s=i.closest(".am-form-group");i.addClass(e.validClass).removeClass(e.inValidClass),s.addClass("am-form-success").removeClass("am-form-error"),e.onValid.call(this,t)},markInValid:function(t){var e=this.options,i=n(t.field),s=i.closest(".am-form-group");i.addClass(e.inValidClass+" "+e.activeClass).removeClass(e.validClass),s.addClass("am-form-error").removeClass("am-form-success"),e.onInValid.call(this,t)},validate:function(t){},submit:null},o.VERSION="2.7.2",o.patterns={email:/^((([a-zA-Z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-zA-Z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/,url:/^(https?|ftp):\/\/(((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/,number:/^-?(?:\d+|\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/,dateISO:/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/,integer:/^-?\d+$/},o.validationMessages={zh_CN:{valueMissing:"\u8bf7\u586b\u5199\uff08\u9009\u62e9\uff09\u6b64\u5b57\u6bb5",customError:{tooShort:"\u81f3\u5c11\u586b\u5199 %s \u4e2a\u5b57\u7b26",checkedOverflow:"\u81f3\u591a\u9009\u62e9 %s \u9879",checkedUnderflow:"\u81f3\u5c11\u9009\u62e9 %s \u9879"},patternMismatch:"\u8bf7\u6309\u7167\u8981\u6c42\u7684\u683c\u5f0f\u586b\u5199",rangeOverflow:"\u8bf7\u586b\u5199\u5c0f\u4e8e\u7b49\u4e8e %s \u7684\u503c",rangeUnderflow:"\u8bf7\u586b\u5199\u5927\u4e8e\u7b49\u4e8e %s \u7684\u503c",stepMismatch:"",tooLong:"\u81f3\u591a\u586b\u5199 %s \u4e2a\u5b57\u7b26",typeMismatch:"\u8bf7\u6309\u7167\u8981\u6c42\u7684\u7c7b\u578b\u586b\u5199"}},o.ERROR_MAP={tooShort:"minlength",checkedOverflow:"maxchecked",checkedUnderflow:"minchecked",rangeOverflow:"max",rangeUnderflow:"min",tooLong:"maxlength"},o.prototype.init=function(){function t(t){var e=t.toString();return e.substring(1,e.length-1)}function e(t,e,a){var r=e.split(","),l=function(t){i.validate(this)};a&&(l=s.utils.debounce(l,a)),n.each(r,function(e,i){o.on(i+".validator.amui",t,l)})}var i=this,o=this.$element,a=this.options;return(!a.H5validation||!s.support.formValidation)&&(o.attr("novalidate","novalidate"),n.each(a.H5inputType,function(e,i){var n=o.find("input[type="+i+"]");n.attr("pattern")||n.is("[class*="+a.patternClassPrefix+"]")||n.attr("pattern",t(a.patterns[i]))}),n.each(a.patterns,function(e,i){var n=o.find("."+a.patternClassPrefix+e);!n.attr("pattern")&&n.attr("pattern",t(i))}),o.on("submit.validator.amui",function(t){if("function"==typeof a.submit)return a.submit.call(i,t);if(a.validateOnSubmit){var e=i.isFormValid();return"boolean"===n.type(e)?e:!!o.data("amui.checked")||(n.when(e).then(function(){o.data("amui.checked",!0).submit()},function(){o.data("amui.checked",!1).find("."+a.inValidClass).eq(0).focus()}),!1)}}),e(":input",a.customEvents),e(a.keyboardFields,a.keyboardEvents),e(a.pointerFields,a.pointerEvents),a.textareaMaxlenthKeyup&&e("textarea[maxlength]","keyup",50),void(a.activeKeyup&&e(".am-active","keyup",50)))},o.prototype.isValid=function(t){var e=n(t),i=this.options;return(void 0===e.data("validity")||i.alwaysRevalidate)&&this.validate(t),e.data("validity")&&e.data("validity").valid},o.prototype.validate=function(t){var e=this,i=this.$element,s=this.options,o=n(t),a=o.data("equalTo");a&&o.attr("pattern","^"+i.find(a).val()+"$");var r=o.attr("pattern")||!1,l=new RegExp(r),c=null,u=null,h=o.is("[type=checkbox]")?(u=i.find('input[name="'+t.name+'"]')).filter(":checked").length:o.is("[type=radio]")?(c=this.$element.find('input[name="'+t.name+'"]')).filter(":checked").length>0:o.val();o=u&&u.length?u.first():o;var d=void 0!==o.attr("required")&&"false"!==o.attr("required"),p=parseInt(o.attr("maxlength"),10),m=parseInt(o.attr("minlength"),10),f=Number(o.attr("min")),v=Number(o.attr("max")),g=this.createValidity({field:o[0],valid:!0});if(s.debug&&window.console&&(console.log("Validate: value -> ["+h+", regex -> ["+l+"], required -> "+d),console.log("Regex test: "+l.test(h)+", Pattern: "+r)),!isNaN(p)&&h.length>p&&(g.valid=!1,g.tooLong=!0),!isNaN(m)&&h.lengthv&&(g.valid=!1,g.rangeOverflow=!0),d&&!h)g.valid=!1,g.valueMissing=!0;else if((u||o.is('select[multiple="multiple"]'))&&h){h=u?h:h.length;var y=parseInt(o.attr("minchecked"),10),w=parseInt(o.attr("maxchecked"),10);!isNaN(y)&&hw&&(g.valid=!1,g.customError="checkedOverflow")}else r&&!l.test(h)&&h&&(g.valid=!1,g.patternMismatch=!0);var b,T=function(t){this.markField(t);var i=n.Event("validated.field.validator.amui");i.validity=t,o.trigger(i).data("validity",t);var s=c||u;return s&&s.not(o).data("validity",t).each(function(){t.field=this,e.markField(t)}),t};if("function"==typeof s.validate&&(b=s.validate.call(this,g)),b){var x=new n.Deferred;return o.data("amui.dfdValidity",x.promise()),n.when(b).always(function(t){x[t.valid?"resolve":"reject"](t),T.call(e,t)})}T.call(this,g)},o.prototype.markField=function(t){var e=this.options,i="mark"+(t.valid?"":"In")+"Valid";e[i]&&e[i].call(this,t)},o.prototype.validateForm=function(){var t=this,e=this.$element,i=this.options,s=e.find(i.allFields).not(i.ignore),o=[],a=!0,r=[],l=n([]),c=[],u=!1;e.trigger("validate.form.validator.amui");var h=s.filter(function(t){var e;if("INPUT"===this.tagName&&"radio"===this.type){if(e=this.name,o[e]===!0)return!1;o[e]=!0;
-}return!0});h.each(function(){var i=n(this),s=t.isValid(this),o=i.data("validity");a=!!s&&a,r.push(o),s||(l=l.add(n(this),e));var h=i.data("amui.dfdValidity");if(h)c.push(h),u=!0;else{var d=new n.Deferred;c.push(d.promise()),d[s?"resolve":"reject"](o)}});var d={valid:a,$invalidFields:l,validity:r,promises:c,async:u};return e.trigger("validated.form.validator.amui",d),d},o.prototype.isFormValid=function(){var t=this,e=this.validateForm(),i=function(e){t.$element.trigger(e+".validator.amui")};if(e.async){var s=new n.Deferred;return n.when.apply(null,e.promises).then(function(){s.resolve(),i("valid")},function(){s.reject(),i("invalid")}),s.promise()}if(!e.valid){var o=e.$invalidFields.first();return o.is("[data-am-selected]")&&(o=o.next(".am-selected").find(".am-selected-btn")),o.focus(),i("invalid"),!1}return i("valid"),!0},o.prototype.createValidity=function(t){return n.extend({customError:t.customError||!1,patternMismatch:t.patternMismatch||!1,rangeOverflow:t.rangeOverflow||!1,rangeUnderflow:t.rangeUnderflow||!1,stepMismatch:t.stepMismatch||!1,tooLong:t.tooLong||!1,typeMismatch:t.typeMismatch||!1,valid:t.valid||!0,valueMissing:t.valueMissing||!1},t)},o.prototype.getValidationMessage=function(t){var e,i,s=o.validationMessages[this.options.locales],a="%s",r=n(t.field);return(r.is('[type="checkbox"]')||r.is('[type="radio"]'))&&(r=this.$element.find("[name="+r.attr("name")+"]").first()),n.each(t,function(t,i){return"field"===t||"valid"===t?t:"customError"===t&&i?(e=i,s=s.customError,!1):i===!0?(e=t,!1):void 0}),i=s[e]||void 0,i&&o.ERROR_MAP[e]&&(i=i.replace(a,r.attr(o.ERROR_MAP[e])||"\u89c4\u5b9a\u7684")),i},o.prototype.removeMark=function(){this.$element.find(".am-form-success, .am-form-error, ."+this.options.inValidClass+", ."+this.options.validClass).removeClass(["am-form-success","am-form-error",this.options.inValidClass,this.options.validClass].join(" "))},o.prototype.destroy=function(){this.removeMark(),this.$element.removeData("amui.validator amui.checked").off(".validator.amui").find(this.options.allFields).removeData("validity amui.dfdValidity")},s.plugin("validator",o),s.ready(function(t){n("[data-am-validator]",t).validator()}),t.exports=o},function(t,e,i){"use strict";var n=i(2),s={get:function(t){var e,i=encodeURIComponent(t)+"=",n=document.cookie.indexOf(i),s=null;return n>-1&&(e=document.cookie.indexOf(";",n),e==-1&&(e=document.cookie.length),s=decodeURIComponent(document.cookie.substring(n+i.length,e))),s},set:function(t,e,i,n,s,o){var a=encodeURIComponent(t)+"="+encodeURIComponent(e);i instanceof Date&&(a+="; expires="+i.toUTCString()),n&&(a+="; path="+n),s&&(a+="; domain="+s),o&&(a+="; secure"),document.cookie=a},unset:function(t,e,i,n){this.set(t,"",new Date(0),e,i,n)}};n.utils=n.utils||{},t.exports=n.utils.cookie=s},function(t,e,i){"use strict";var n=i(2),s=function(){var t="undefined"!=typeof Element&&"ALLOW_KEYBOARD_INPUT"in Element,e=function(){for(var t,e,i=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],n=0,s=i.length,o={};n",{async:!0,type:"text/javascript",src:i,charset:"utf-8"});s("body").append(n)}}var s=i(1),o=i(2);s(window).on("load",n),t.exports=o.duoshuo={VERSION:"2.0.1",init:n}},function(t,e,i){"use strict";function n(){s(".am-figure").each(function(t,e){var i,n=o.utils.parseOptions(s(e).attr("data-am-figure")),a=s(e);if(n.pureview)if("auto"===n.pureview){var r=s.isImgZoomAble(a.find("img")[0]);r&&a.pureview()}else a.addClass("am-figure-zoomable").pureview();i=a.data("amui.pureview"),i&&a.on("click",":not(img)",function(){i.open(0)})})}var s=i(1),o=i(2);i(20),s.isImgZoomAble=function(t){var e=new Image;e.src=t.src;var i=s(t).width()50?"add":"remove")+"Class"]("am-active")}var e=s('[data-am-widget="gotop"]'),i=e.filter(".am-gotop-fixed"),n=s(window);e.data("init")||(e.find("a").on("click",function(t){t.preventDefault(),n.smoothScroll()}),t(),n.on("scroll.gotop.amui",o.utils.debounce(t,100)),e.data("init",!0))}var s=i(1),o=i(2);i(23),s(n),t.exports=o.gotop={VERSION:"4.0.2",init:n}},function(t,e,i){"use strict";function n(){s('[data-am-widget="header"]').each(function(){if(s(this).hasClass("am-header-fixed"))return s("body").addClass("am-with-fixed-header"),!1})}var s=i(1),o=i(2);s(n),t.exports=o.header={VERSION:"2.0.0",init:n}},function(t,e,i){"use strict";var n=i(2);t.exports=n.intro={VERSION:"4.0.2",init:function(){}}},function(t,e,i){"use strict";var n=i(2);t.exports=n.listNews={VERSION:"4.0.0",init:function(){}}},function(t,e,i){function n(t){var e=o("",{id:"am-map-api-0"});o("body").append(e),e.on("load",function(){console.log("load");var e=o("",{id:"am-map-api-1"});o("body").append(e),e.on("load",function(){var e=document.createElement("script");e.textContent="("+t.toString()+")();",o("body")[0].appendChild(e)}).attr("src","http://api.map.baidu.com/getscript?type=quick&file=feature&ak=WVAXZ05oyNRXS5egLImmentg&t=20140109092002")}).attr("src","http://api.map.baidu.com/getscript?type=quick&file=api&ak=WVAXZ05oyNRXS5egLImmentg&t=20140109092002")}function s(){var t=document.querySelector(".am-map"),e=116.331398,i=39.897445,n=t.getAttribute("data-name"),s=t.getAttribute("data-address"),o=t.getAttribute("data-longitude")||e,a=t.getAttribute("data-latitude")||i,r=t.getAttribute("data-setZoom")||17,l=t.getAttribute("data-icon"),c=new BMap.Map("bd-map"),u=new BMap.Point(o,a);c.centerAndZoom(u,r),t.getAttribute("data-zoomControl")&&c.addControl(new BMap.ZoomControl),t.getAttribute("data-scaleControl")&&c.addControl(new BMap.ScaleControl);var h=new BMap.Marker(u);l&&h.setIcon(new BMap.Icon(l,new BMap.Size(40,40)));var d={width:200,title:n},p=new BMap.InfoWindow("\u5730\u5740\uff1a"+s,d),m=new BMap.Geocoder;o==e&&a==i?m.getPoint(s,function(t){t&&(c.centerAndZoom(t,r),h.setPosition(t),c.addOverlay(h),c.openInfoWindow(p,t))},""):m.getLocation(u,function(t){c.centerAndZoom(u,r),h.setPosition(u),c.addOverlay(h),s?c.openInfoWindow(p,u):c.openInfoWindow(new BMap.InfoWindow(s,d),u)})}var o=i(1),a=i(2),r=function(){o(".am-map").length&&n(s)};o(r),t.exports=a.map={VERSION:"2.0.2",init:r}},function(t,e,i){"use strict";function n(){if(s("#mechat").length){var t=s('[data-am-widget="mechat"]'),e=t.data("am-mechat-unitid"),i=s("
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-