Commit 71a8db153ce8a9413e4eb859a32d9590243fed93

Authored by 徐烜
1 parent 74110979

1、添加lintChart2线路模拟图第二版组件(添加了更多的可配置属性,修正一些bug)

2、添加使用van swip轮播组件的测试页面,测试内部使用vue video组件轮播视频
3、修正ZipWorkPage一些小问题,打包zip根路径下的文件是使用.作为父路径,如./index.html
4、删除一些临时的测试代码和页面

Too many changes to show.

To preserve performance only 17 of 27 files are displayed.

src/main/java/com/bsth/luban_springboot2/controller/ZipController.java
@@ -28,7 +28,7 @@ public class ZipController { @@ -28,7 +28,7 @@ public class ZipController {
28 @GetMapping(value = "/getPage") 28 @GetMapping(value = "/getPage")
29 public ResponseEntity<byte[]> getPage() { 29 public ResponseEntity<byte[]> getPage() {
30 // 打包zip文件 30 // 打包zip文件
31 - ZipWorkPage zipWorkPage = ZipWorkPage.createPageZip_pageTest4( 31 + ZipWorkPage zipWorkPage = ZipWorkPage.createPageZip_LineChartList(
32 Paths.get(sourceRootPath), Paths.get(destZipDirPath) 32 Paths.get(sourceRootPath), Paths.get(destZipDirPath)
33 ); 33 );
34 byte[] zipBytes = zipWorkPage.getZipBytes(); 34 byte[] zipBytes = zipWorkPage.getZipBytes();
@@ -47,7 +47,7 @@ public class ZipController { @@ -47,7 +47,7 @@ public class ZipController {
47 47
48 public static void main(String[] args) throws Exception { 48 public static void main(String[] args) throws Exception {
49 49
50 - ZipWorkPage zipWorkPage = ZipWorkPage.createPageZip_pageTest4( 50 + ZipWorkPage zipWorkPage = ZipWorkPage.createPageZip_van_swip(
51 Paths.get("/Users/xu/resource/project_code/bsth_project/bsth_ebus/luban_springboot2/src/main/resources/static"), 51 Paths.get("/Users/xu/resource/project_code/bsth_project/bsth_ebus/luban_springboot2/src/main/resources/static"),
52 Paths.get("/Users/xu/resource/project_code/runtime_temp/zip_pages") 52 Paths.get("/Users/xu/resource/project_code/runtime_temp/zip_pages")
53 ); 53 );
src/main/java/com/bsth/luban_springboot2/utils/ZipWorkPage.java
@@ -180,12 +180,114 @@ public class ZipWorkPage { @@ -180,12 +180,114 @@ public class ZipWorkPage {
180 } 180 }
181 181
182 /** 182 /**
183 - * 创建页面Zip(pageTest4)。 183 + * 创建页面Zip(van_swip_use_case.html)。
184 * @param sourceRootPath 来源文件根路径(目录) 184 * @param sourceRootPath 来源文件根路径(目录)
185 * @param destZipDirPath 目标zip文件存放路径(目录) 185 * @param destZipDirPath 目标zip文件存放路径(目录)
186 * @return 186 * @return
187 */ 187 */
188 - public static ZipWorkPage createPageZip_pageTest4(Path sourceRootPath, Path destZipDirPath) { 188 + public static ZipWorkPage createPageZip_van_swip(Path sourceRootPath, Path destZipDirPath) {
  189 + //----------------------- 1、添加待压缩的文件和目录 ---------------------//
  190 + ZipWorkPage zipWorkPage = new ZipWorkPage(destZipDirPath);
  191 + // jquery.min.js
  192 + zipWorkPage.addSourcePageFile(
  193 + new SourcePageFile()
  194 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "other", "jquery.min.js"))
  195 + .setZipFilePath(Paths.get("pageTemplates","other", "jquery.min.js")));
  196 + // d3.min.js
  197 + zipWorkPage.addSourcePageFile(
  198 + new SourcePageFile()
  199 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "other", "d3.min.js"))
  200 + .setZipFilePath(Paths.get("pageTemplates","other", "d3.min.js")));
  201 + // vue_v2.6.12.js
  202 + zipWorkPage.addSourcePageFile(
  203 + new SourcePageFile()
  204 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "js", "vue_v2.6.12.js"))
  205 + .setZipFilePath(Paths.get("pageTemplates","js", "vue_v2.6.12.js")));
  206 + // video js css
  207 + zipWorkPage.addSourcePageFile(
  208 + new SourcePageFile()
  209 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "css", "video-js_v7.11.4.css"))
  210 + .setZipFilePath(Paths.get("pageTemplates","css", "video-js_v7.11.4.css")));
  211 + // video js
  212 + zipWorkPage.addSourcePageFile(
  213 + new SourcePageFile()
  214 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "js", "video_v7.11.4.js"))
  215 + .setZipFilePath(Paths.get("pageTemplates","js", "video_v7.11.4.js")));
  216 + // vant css
  217 + zipWorkPage.addSourcePageFile(
  218 + new SourcePageFile()
  219 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "css", "vant_v2.2.12.css"))
  220 + .setZipFilePath(Paths.get("pageTemplates","css", "vant_v2.2.12.css")));
  221 + // vant js
  222 + zipWorkPage.addSourcePageFile(
  223 + new SourcePageFile()
  224 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "js", "vant_v2.2.12.js"))
  225 + .setZipFilePath(Paths.get("pageTemplates","js", "vant_v2.2.12.js")));
  226 + // lineChart.css
  227 + zipWorkPage.addSourcePageFile(
  228 + new SourcePageFile()
  229 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "components", "lineChart.css"))
  230 + .setZipFilePath(Paths.get("pageTemplates","components", "lineChart.css")));
  231 + // lineChart.vue.js
  232 + zipWorkPage.addSourcePageFile(
  233 + new SourcePageFile()
  234 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "components", "lineChart.vue.js"))
  235 + .setZipFilePath(Paths.get("pageTemplates","components", "lineChart.vue.js")));
  236 + // lineChartList.vue.js
  237 + zipWorkPage.addSourcePageFile(
  238 + new SourcePageFile()
  239 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "components", "lineChartList.vue.js"))
  240 + .setZipFilePath(Paths.get("pageTemplates","components", "lineChartList.vue.js")));
  241 + // testData.js
  242 + zipWorkPage.addSourcePageFile(
  243 + new SourcePageFile()
  244 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "components", "testData.js"))
  245 + .setZipFilePath(Paths.get("pageTemplates","components", "testData.js")));
  246 + // vue-video-play.js
  247 + zipWorkPage.addSourcePageFile(
  248 + new SourcePageFile()
  249 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTemplates", "js", "vue-video-player_v5.0.2.js"))
  250 + .setZipFilePath(Paths.get("pageTemplates","js", "vue-video-player_v5.0.2.js")));
  251 +
  252 + // asserts
  253 + // vue-video-play.js
  254 + zipWorkPage.addSourcePageFile(
  255 + new SourcePageFile()
  256 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "asserts", "swipe_1.jpg"))
  257 + .setZipFilePath(Paths.get("asserts", "swipe_1.jpg")));
  258 + zipWorkPage.addSourcePageFile(
  259 + new SourcePageFile()
  260 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "asserts", "swipe_2.jpg"))
  261 + .setZipFilePath(Paths.get("asserts", "swipe_2.jpg")));
  262 + zipWorkPage.addSourcePageFile(
  263 + new SourcePageFile()
  264 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "asserts", "swipe_3.jpg"))
  265 + .setZipFilePath(Paths.get("asserts", "swipe_3.jpg")));
  266 + zipWorkPage.addSourcePageFile(
  267 + new SourcePageFile()
  268 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "asserts", "swipe_4.mp4"))
  269 + .setZipFilePath(Paths.get("asserts", "swipe_4.mp4")));
  270 +
  271 + // pageTest5.html 重命名为index.html,根路径使用.
  272 + zipWorkPage.addSourcePageFile(
  273 + new SourcePageFile()
  274 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "van_swip_use_case.html"))
  275 + .setZipFilePath(Paths.get(".","index.html")));
  276 +
  277 + //-------------------------------- 2、压缩生成zip文件 -------------------------//
  278 + zipWorkPage.build();
  279 +
  280 + return zipWorkPage;
  281 +
  282 + }
  283 +
  284 + /**
  285 + * 创建页面Zip(lineChartList_use_case.html)。
  286 + * @param sourceRootPath 来源文件根路径(目录)
  287 + * @param destZipDirPath 目标zip文件存放路径(目录)
  288 + * @return
  289 + */
  290 + public static ZipWorkPage createPageZip_LineChartList(Path sourceRootPath, Path destZipDirPath) {
189 //----------------------- 1、添加待压缩的文件和目录 ---------------------// 291 //----------------------- 1、添加待压缩的文件和目录 ---------------------//
190 ZipWorkPage zipWorkPage = new ZipWorkPage(destZipDirPath); 292 ZipWorkPage zipWorkPage = new ZipWorkPage(destZipDirPath);
191 // jquery.min.js 293 // jquery.min.js
@@ -227,7 +329,7 @@ public class ZipWorkPage { @@ -227,7 +329,7 @@ public class ZipWorkPage {
227 // pageTest4.html 重命名为index.html,根路径使用. 329 // pageTest4.html 重命名为index.html,根路径使用.
228 zipWorkPage.addSourcePageFile( 330 zipWorkPage.addSourcePageFile(
229 new SourcePageFile() 331 new SourcePageFile()
230 - .setSourceFilePath(Paths.get(sourceRootPath.toString(), "pageTest4.html")) 332 + .setSourceFilePath(Paths.get(sourceRootPath.toString(), "lineChartList_use_case.html"))
231 .setZipFilePath(Paths.get(".","index.html"))); 333 .setZipFilePath(Paths.get(".","index.html")));
232 334
233 //-------------------------------- 2、压缩生成zip文件 -------------------------// 335 //-------------------------------- 2、压缩生成zip文件 -------------------------//
src/main/resources/static/asserts/swipe_1.jpg 0 → 100644

56 KB

src/main/resources/static/asserts/swipe_2.jpg 0 → 100644

464 KB

src/main/resources/static/asserts/swipe_3.jpg 0 → 100644

58.3 KB

src/main/resources/static/asserts/swipe_4.mp4 0 → 100644
No preview for this file type
src/main/resources/static/lineChar2_use_case.html 0 → 100644
  1 +<!doctype html>
  2 +<html lang="zh-CN">
  3 +<head>
  4 + <meta charset="UTF-8">
  5 + <meta name="viewport"
  6 + content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  7 + <meta http-equiv="X-UA-Compatible" content="ie=edge">
  8 + <title>测试界面5</title>
  9 +
  10 + <!-- jQuery引入 -->
  11 + <script src="pageTemplates/other/jquery.min.js"></script>
  12 + <!-- d3引入 -->
  13 + <script src="pageTemplates/other/d3.min.js"></script>
  14 + <!-- vue 引入 -->
  15 + <script src="pageTemplates/js/vue_v2.6.12.js"></script>
  16 + <!-- video js 引入(包括css) -->
  17 + <link rel="stylesheet" href="pageTemplates/css/video-js_v7.11.4.css"/>
  18 + <script src="pageTemplates/js/video_v7.11.4.js"></script>
  19 + <!-- vant 引入(包括css)-->
  20 + <link rel="stylesheet" href="pageTemplates/css/vant_v2.2.12.css"/>
  21 + <script src="pageTemplates/js/vant_v2.2.12.js"></script>
  22 + <!-- 自定义的lineChart组件引入(包括css)-->
  23 + <link rel="stylesheet" href="pageTemplates/components/lineChart.css"/>
  24 + <script src="pageTemplates/components/lineChart2.vue.js"></script>
  25 + <!-- TODO:测试线路相关数据引入 -->
  26 + <script src="pageTemplates/components/lineChart_test_data.js"></script>
  27 + <!-- 第三方vue-video-player组件(依赖video js) -->
  28 + <script src="pageTemplates/js/vue-video-player_v5.0.2.js"></script>
  29 +
  30 + <!-- 轮播图定制css -->
  31 + <style>
  32 + .my-swipe .van-swipe-item {
  33 + width: 100%;
  34 + height: 300px;
  35 + color: #fff;
  36 + font-size: 20px;
  37 + text-align: center;
  38 + background-color: #39a9ed;
  39 + }
  40 + .my-swipe .van-swipe-item img {
  41 + /*display: inline-block;*/
  42 + /*width: 100%;*/
  43 + /*height: 300px;*/
  44 +
  45 + display: block;
  46 + box-sizing: border-box;
  47 + width: 100%;
  48 + height: 300px;
  49 + /*padding: 30px 60px;*/
  50 + background-color: #fff;
  51 + pointer-events: none;
  52 + }
  53 + </style>
  54 +
  55 + <style>
  56 + html,body {
  57 + height: 100%;
  58 + }
  59 +
  60 + </style>
  61 +
  62 +</head>
  63 +<body>
  64 +
  65 +<div id="app" style="width: 100%; height: 50%; border: 3px solid black;">
  66 + <line_chart_vue
  67 + :line_name="lineName1"
  68 + :line_route_data="line1route"
  69 + :line_code="lineCode"
  70 + :line_gps_data="line1gps"
  71 + :width="width"
  72 + :height="height"
  73 + :chart_height="chart_height"
  74 + :line_name_font_size="line_name_font_size"
  75 + :line_name_font_color="line_name_font_color"
  76 + :margin_left="margin_left"
  77 + :margin_right="margin_right"
  78 + :margin_top="margin_top"
  79 + :margin_bottom="margin_bottom"
  80 + :border_size="border_size"
  81 + :background_color="background_color"
  82 + :chart_up_line_path_s_color="chart_up_line_path_s_color"
  83 + :chart_down_line_path_s_color="chart_down_line_path_s_color"
  84 + :chart_up_line_circle_f_color="chart_up_line_circle_f_color"
  85 + :chart_down_line_circle_f_color="chart_down_line_circle_f_color"
  86 + :chart_station_text_font_size="chart_station_text_font_size"
  87 + :chart_up_station_text_font_f_color="chart_up_station_text_font_f_color"
  88 + :chart_down_station_text_font_f_color="chart_down_station_text_font_f_color"
  89 + :chart_up_down_station_text_font_f_color="chart_up_down_station_text_font_f_color"
  90 + :chart_gps_up_rect_color="chart_gps_up_rect_color"
  91 + :chart_gps_up_text_f_color="chart_gps_up_text_f_color"
  92 + :chart_gps_down_rect_color="chart_gps_down_rect_color"
  93 + :chart_gps_down_text_f_color="chart_gps_down_text_f_color"
  94 + :chart_gps_up_merge_rect_color="chart_gps_up_merge_rect_color"
  95 + :chart_gps_up_merge_text_f_color="chart_gps_up_merge_text_f_color"
  96 + :chart_gps_down_merge_rect_color="chart_gps_down_merge_rect_color"
  97 + :chart_gps_down_merge_text_f_color="chart_gps_down_merge_text_f_color"
  98 + ></line_chart_vue>
  99 +
  100 +
  101 +</div>
  102 +
  103 +<div style="width: 100%; height: 50%; overflow: scroll">
  104 + <div>
  105 + <input type="button" value="上行线颜色1" onclick="up_line_color_1()"/>
  106 + <input type="button" value="上行线颜色2" onclick="up_line_color_2()"/>
  107 + <input type="button" value="上行线颜色3" onclick="up_line_color_3()"/>
  108 + </div>
  109 +
  110 + <div>
  111 + <input type="button" value="下行线颜色1" onclick="down_line_color_1()"/>
  112 + <input type="button" value="下行线颜色2" onclick="down_line_color_2()"/>
  113 + <input type="button" value="下行线颜色3" onclick="down_line_color_3()"/>
  114 + </div>
  115 +
  116 + <div>
  117 + <input type="button" value="上行线圈颜色1" onclick="up_line_circle_color_1()"/>
  118 + <input type="button" value="上行线圈颜色2" onclick="up_line_circle_color_2()"/>
  119 + <input type="button" value="上行线圈颜色3" onclick="up_line_circle_color_3()"/>
  120 + </div>
  121 +
  122 + <div>
  123 + <input type="button" value="下行线圈颜色1" onclick="down_line_circle_color_1()"/>
  124 + <input type="button" value="下行线圈颜色2" onclick="down_line_circle_color_2()"/>
  125 + <input type="button" value="下行线圈颜色3" onclick="down_line_circle_color_3()"/>
  126 + </div>
  127 +
  128 + <div>
  129 + <input type="button" value="站点名字体大小1" onclick="station_text_font_size_1()"/>
  130 + <input type="button" value="站点名字体大小2" onclick="station_text_font_size_2()"/>
  131 + <input type="button" value="站点名字体大小3" onclick="station_text_font_size_3()"/>
  132 + </div>
  133 +
  134 + <div>
  135 + <input type="button" value="上行站点颜色1" onclick="up_station_text_color_1()"/>
  136 + <input type="button" value="上行站点颜色2" onclick="up_station_text_color_2()"/>
  137 + <input type="button" value="上行站点颜色3" onclick="up_station_text_color_3()"/>
  138 + </div>
  139 +
  140 + <div>
  141 + <input type="button" value="下行站点颜色1" onclick="down_station_text_color_1()"/>
  142 + <input type="button" value="下行站点颜色2" onclick="down_station_text_color_2()"/>
  143 + <input type="button" value="下行站点颜色3" onclick="down_station_text_color_3()"/>
  144 + </div>
  145 +
  146 + <div>
  147 + <input type="button" value="上下行同名站点颜色1" onclick="up_down_station_text_color_1()"/>
  148 + <input type="button" value="上下行同名站点颜色2" onclick="up_down_station_text_color_2()"/>
  149 + <input type="button" value="上下行同名站点颜色3" onclick="up_down_station_text_color_3()"/>
  150 + </div>
  151 +
  152 + <div>
  153 + <input type="button" value="线路名称字体大小1" onclick="line_name_font_size_1()"/>
  154 + <input type="button" value="线路名称字体大小2" onclick="line_name_font_size_2()"/>
  155 + <input type="button" value="线路名称字体大小3" onclick="line_name_font_size_3()"/>
  156 + </div>
  157 +
  158 + <div>
  159 + <input type="button" value="线路名称字体颜色1" onclick="line_name_font_color_1()"/>
  160 + <input type="button" value="线路名称字体颜色2" onclick="line_name_font_color_2()"/>
  161 + <input type="button" value="线路名称字体颜色3" onclick="line_name_font_color_3()"/>
  162 + </div>
  163 +
  164 + <div>
  165 + <input type="button" value="margin_1" onclick="margin_1()"/>
  166 + <input type="button" value="margin_2" onclick="margin_2()"/>
  167 + <input type="button" value="margin_3" onclick="margin_3()"/>
  168 + </div>
  169 +
  170 + <div>
  171 + <input type="button" value="border_size_1" onclick="border_size_1()"/>
  172 + <input type="button" value="border_size_2" onclick="border_size_2()"/>
  173 + <input type="button" value="border_size_3" onclick="border_size_3()"/>
  174 + </div>
  175 +
  176 + <div>
  177 + <input type="button" value="background_color_1" onclick="background_color_1()"/>
  178 + <input type="button" value="background_color_2" onclick="background_color_2()"/>
  179 + <input type="button" value="background_color_3" onclick="background_color_3()"/>
  180 + </div>
  181 +
  182 + <div>
  183 + <input type="button" value="内部线路图高度1" onclick="chart_height_1()"/>
  184 + <input type="button" value="内部线路图高度2" onclick="chart_height_2()"/>
  185 + <input type="button" value="内部线路图高度3" onclick="chart_height_3()"/>
  186 + </div>
  187 +
  188 + <div>
  189 + <input type="button" value="上行gps框颜色1" onclick="gps_up_rect_color_1()">
  190 + <input type="button" value="上行gps框颜色2" onclick="gps_up_rect_color_2()">
  191 + <input type="button" value="上行gps框颜色3" onclick="gps_up_rect_color_3()">
  192 + </div>
  193 +
  194 + <div>
  195 + <input type="button" value="上行gps文本颜色1" onclick="gps_up_text_color_1()">
  196 + <input type="button" value="上行gps文本颜色2" onclick="gps_up_text_color_2()">
  197 + <input type="button" value="上行gps文本颜色3" onclick="gps_up_text_color_3()">
  198 + </div>
  199 +
  200 + <div>
  201 + <input type="button" value="下行gps框颜色1" onclick="gps_down_rect_color_1()">
  202 + <input type="button" value="下行gps框颜色2" onclick="gps_down_rect_color_2()">
  203 + <input type="button" value="下行gps框颜色3" onclick="gps_down_rect_color_3()">
  204 + </div>
  205 +
  206 + <div>
  207 + <input type="button" value="下行gps文本颜色1" onclick="gps_down_text_color_1()">
  208 + <input type="button" value="下行gps文本颜色2" onclick="gps_down_text_color_2()">
  209 + <input type="button" value="下行gps文本颜色3" onclick="gps_down_text_color_3()">
  210 + </div>
  211 +
  212 + <div>
  213 + <input type="button" value="上行gps合并框颜色1" onclick="gps_up_merge_rect_color_1()">
  214 + <input type="button" value="上行gps合并框颜色2" onclick="gps_up_merge_rect_color_2()">
  215 + <input type="button" value="上行gps合并框颜色3" onclick="gps_up_merge_rect_color_3()">
  216 + </div>
  217 +
  218 + <div>
  219 + <input type="button" value="上行gps合并文本颜色1" onclick="gps_up_merge_text_color_1()">
  220 + <input type="button" value="上行gps合并文本颜色2" onclick="gps_up_merge_text_color_2()">
  221 + <input type="button" value="上行gps合并文本颜色3" onclick="gps_up_merge_text_color_3()">
  222 + </div>
  223 +
  224 +
  225 + <div>
  226 + <input type="button" value="下行gps合并框颜色1" onclick="gps_down_merge_rect_color_1()">
  227 + <input type="button" value="下行gps合并框颜色2" onclick="gps_down_merge_rect_color_2()">
  228 + <input type="button" value="下行gps合并框颜色3" onclick="gps_down_merge_rect_color_3()">
  229 + </div>
  230 +
  231 + <div>
  232 + <input type="button" value="下行gps合并文本颜色1" onclick="gps_down_merge_text_color_1()">
  233 + <input type="button" value="下行gps合并文本颜色2" onclick="gps_down_merge_text_color_2()">
  234 + <input type="button" value="下行gps合并文本颜色3" onclick="gps_down_merge_text_color_3()">
  235 + </div>
  236 +</div>
  237 +
  238 +<script>
  239 +
  240 + var vm = new Vue({
  241 + data: {
  242 + lineName1: '测试线路1',
  243 + line1route: line_chart_test_data.route_test_data_1,
  244 + line1gps: line_chart_test_data.gps_test_data_1,
  245 + lineCode: '线路编码1',
  246 + width: 600,
  247 + height: 240,
  248 + chart_height: 122,
  249 +
  250 + // 图外层css
  251 + line_name_font_size: 30,
  252 + line_name_font_color: '#babdbd',
  253 + margin_left: 5,
  254 + margin_right: 5,
  255 + margin_top: 5,
  256 + margin_bottom: 0,
  257 + border_size: 1,
  258 + background_color: '#FFFFFF',
  259 +
  260 + // 图内层css
  261 + chart_up_line_path_s_color: '#5E96D2',
  262 + chart_down_line_path_s_color: '#c92121',
  263 + chart_up_line_circle_f_color: '#5e96d2',
  264 + chart_down_line_circle_f_color: '#c92121',
  265 + chart_station_text_font_size: 14,
  266 + chart_up_station_text_font_f_color: '#4556b6',
  267 + chart_down_station_text_font_f_color: '#c94f21',
  268 + chart_up_down_station_text_font_f_color: '#3e3e3e',
  269 +
  270 + chart_gps_up_rect_color: '#3e50b3',
  271 + chart_gps_up_text_f_color: '#FFFFFF',
  272 + chart_gps_down_rect_color: '#c94f21',
  273 + chart_gps_down_text_f_color: '#FFFFFF',
  274 + chart_gps_up_merge_rect_color: '#19a53a',
  275 + chart_gps_up_merge_text_f_color: '#FFFFFF',
  276 + chart_gps_down_merge_rect_color: '#19a53a',
  277 + chart_gps_down_merge_text_f_color: '#FFFFFF'
  278 + },
  279 + el: '#app',
  280 + components: {
  281 + 'line_chart_vue': line_chart_vue_v2
  282 + }
  283 + });
  284 +
  285 + function up_line_color_1() {
  286 + vm.chart_up_line_path_s_color = '#00FFFF';
  287 + }
  288 + function up_line_color_2() {
  289 + vm.chart_up_line_path_s_color = '#FFFF00';
  290 + }
  291 + function up_line_color_3() {
  292 + vm.chart_up_line_path_s_color = '#5E96D2';
  293 + }
  294 +
  295 + function down_line_color_1() {
  296 + vm.chart_down_line_path_s_color = '#00FFFF';
  297 + }
  298 + function down_line_color_2() {
  299 + vm.chart_down_line_path_s_color = '#FFFF00';
  300 + }
  301 + function down_line_color_3() {
  302 + vm.chart_down_line_path_s_color = '#5E96D2';
  303 + }
  304 +
  305 + function up_line_circle_color_1() {
  306 + vm.chart_up_line_circle_f_color = '#00FFFF';
  307 + }
  308 + function up_line_circle_color_2() {
  309 + vm.chart_up_line_circle_f_color = '#FFFF00';
  310 + }
  311 + function up_line_circle_color_3() {
  312 + vm.chart_up_line_circle_f_color = '#5e96d2';
  313 + }
  314 +
  315 + function down_line_circle_color_1() {
  316 + vm.chart_down_line_circle_f_color = '#00FFFF';
  317 + }
  318 + function down_line_circle_color_2() {
  319 + vm.chart_down_line_circle_f_color = '#FFFF00';
  320 + }
  321 + function down_line_circle_color_3() {
  322 + vm.chart_down_line_circle_f_color = '#c92121';
  323 + }
  324 +
  325 + function station_text_font_size_1() {
  326 + vm.chart_station_text_font_size = 10;
  327 + }
  328 + function station_text_font_size_2() {
  329 + vm.chart_station_text_font_size = 12;
  330 + }
  331 + function station_text_font_size_3() {
  332 + vm.chart_station_text_font_size = 14;
  333 + }
  334 +
  335 + function up_station_text_color_1() {
  336 + vm.chart_up_station_text_font_f_color = '#00FFFF';
  337 + }
  338 + function up_station_text_color_2() {
  339 + vm.chart_up_station_text_font_f_color = '#FFFF00';
  340 + }
  341 + function up_station_text_color_3() {
  342 + vm.chart_up_station_text_font_f_color = '#4556b6';
  343 + }
  344 +
  345 + function down_station_text_color_1() {
  346 + vm.chart_down_station_text_font_f_color = '#00FFFF';
  347 + }
  348 + function down_station_text_color_2() {
  349 + vm.chart_down_station_text_font_f_color = '#FFFF00';
  350 + }
  351 + function down_station_text_color_3() {
  352 + vm.chart_down_station_text_font_f_color = '#c94f21';
  353 + }
  354 +
  355 + function up_down_station_text_color_1() {
  356 + vm.chart_up_down_station_text_font_f_color = '#00FFFF';
  357 + }
  358 + function up_down_station_text_color_2() {
  359 + vm.chart_up_down_station_text_font_f_color = '#FFFF00';
  360 + }
  361 + function up_down_station_text_color_3() {
  362 + vm.chart_up_down_station_text_font_f_color = '#3e3e3e';
  363 + }
  364 +
  365 + function line_name_font_size_1() {
  366 + vm.line_name_font_size = 40;
  367 + }
  368 + function line_name_font_size_2() {
  369 + vm.line_name_font_size = 50;
  370 + }
  371 + function line_name_font_size_3() {
  372 + vm.line_name_font_size = 30;
  373 + }
  374 +
  375 + function line_name_font_color_1() {
  376 + vm.line_name_font_color = '#00FFFF';
  377 + }
  378 + function line_name_font_color_2() {
  379 + vm.line_name_font_color = '#FFFF00';
  380 + }
  381 + function line_name_font_color_3() {
  382 + vm.line_name_font_color = '#babdbd';
  383 + }
  384 +
  385 + function margin_1() {
  386 + vm.margin_left = 10;
  387 + vm.margin_right = 10;
  388 + vm.margin_top = 10;
  389 + vm.margin_bottom = 10;
  390 + }
  391 + function margin_2() {
  392 + vm.margin_left = 20;
  393 + vm.margin_right = 20;
  394 + vm.margin_top = 20;
  395 + vm.margin_bottom = 20;
  396 + }
  397 + function margin_3() {
  398 + vm.margin_left = 5;
  399 + vm.margin_right = 5;
  400 + vm.margin_top = 5;
  401 + vm.margin_bottom = 0;
  402 + }
  403 +
  404 + function border_size_1() {
  405 + vm.border_size = 2;
  406 + }
  407 + function border_size_2() {
  408 + vm.border_size = 0;
  409 + }
  410 + function border_size_3() {
  411 + vm.border_size = 1;
  412 + }
  413 +
  414 + function background_color_1() {
  415 + vm.background_color = '#000000';
  416 + }
  417 + function background_color_2() {
  418 + vm.background_color = '#00FFFF';
  419 + }
  420 + function background_color_3() {
  421 + vm.background_color = '#FFFFFF';
  422 + }
  423 +
  424 + function chart_height_1() {
  425 + vm.chart_height = 100;
  426 + }
  427 + function chart_height_2() {
  428 + vm.chart_height = 200;
  429 + }
  430 + function chart_height_3() {
  431 + vm.chart_height = 122;
  432 + }
  433 +
  434 + function gps_up_rect_color_1() {
  435 + vm.chart_gps_up_rect_color = '#000000';
  436 + }
  437 + function gps_up_rect_color_2() {
  438 + vm.chart_gps_up_rect_color = '#00FFFF';
  439 + }
  440 + function gps_up_rect_color_3() {
  441 + vm.chart_gps_up_rect_color = '#3e50b3';
  442 + }
  443 +
  444 + function gps_up_text_color_1() {
  445 + vm.chart_gps_up_text_f_color = '#000000';
  446 + }
  447 + function gps_up_text_color_2() {
  448 + vm.chart_gps_up_text_f_color = '#00FFFF';
  449 + }
  450 + function gps_up_text_color_3() {
  451 + vm.chart_gps_up_text_f_color = '#FFFFFF';
  452 + }
  453 +
  454 + function gps_down_rect_color_1() {
  455 + vm.chart_gps_down_rect_color = '#000000';
  456 + }
  457 + function gps_down_rect_color_2() {
  458 + vm.chart_gps_down_rect_color = '#00FFFF';
  459 + }
  460 + function gps_down_rect_color_3() {
  461 + vm.chart_gps_down_rect_color = '#c94f21';
  462 + }
  463 +
  464 + function gps_down_text_color_1() {
  465 + vm.chart_gps_down_text_f_color = '#000000';
  466 + }
  467 + function gps_down_text_color_2() {
  468 + vm.chart_gps_down_text_f_color = '#00FFFF';
  469 + }
  470 + function gps_down_text_color_3() {
  471 + vm.chart_gps_down_text_f_color = '#FFFFFF';
  472 + }
  473 +
  474 + function gps_up_merge_rect_color_1() {
  475 + vm.chart_gps_up_merge_rect_color = '#000000';
  476 + }
  477 + function gps_up_merge_rect_color_2() {
  478 + vm.chart_gps_up_merge_rect_color = '#00FFFF';
  479 + }
  480 + function gps_up_merge_rect_color_3() {
  481 + vm.chart_gps_up_merge_rect_color = '#19a53a';
  482 + }
  483 +
  484 + function gps_up_merge_text_color_1() {
  485 + vm.chart_gps_up_merge_text_f_color = '#000000';
  486 + }
  487 + function gps_up_merge_text_color_2() {
  488 + vm.chart_gps_up_merge_text_f_color = '#00FFFF';
  489 + }
  490 + function gps_up_merge_text_color_3() {
  491 + vm.chart_gps_up_merge_text_f_color = '#FFFFFF';
  492 + }
  493 +
  494 + function gps_down_merge_rect_color_1() {
  495 + vm.chart_gps_down_merge_rect_color = '#000000';
  496 + }
  497 + function gps_down_merge_rect_color_2() {
  498 + vm.chart_gps_down_merge_rect_color = '#00FFFF';
  499 + }
  500 + function gps_down_merge_rect_color_3() {
  501 + vm.chart_gps_down_merge_rect_color = '#19a53a';
  502 + }
  503 +
  504 + function gps_down_merge_text_color_1() {
  505 + vm.chart_gps_down_merge_text_f_color = '#000000';
  506 + }
  507 + function gps_down_merge_text_color_2() {
  508 + vm.chart_gps_down_merge_text_f_color = '#00FFFF';
  509 + }
  510 + function gps_down_merge_text_color_3() {
  511 + vm.chart_gps_down_merge_text_f_color = '#FFFFFF';
  512 + }
  513 +
  514 +
  515 +</script>
  516 +
  517 +</body>
  518 +</html>
0 \ No newline at end of file 519 \ No newline at end of file
src/main/resources/static/pageTest4.html renamed to src/main/resources/static/lineChartList_use_case.html
@@ -12,7 +12,7 @@ @@ -12,7 +12,7 @@
12 <link rel="stylesheet" href="pageTemplates/components/lineChart.css"/> 12 <link rel="stylesheet" href="pageTemplates/components/lineChart.css"/>
13 <script src="pageTemplates/components/lineChart.vue.js"></script> 13 <script src="pageTemplates/components/lineChart.vue.js"></script>
14 <script src="pageTemplates/components/lineChartList.vue.js"></script> 14 <script src="pageTemplates/components/lineChartList.vue.js"></script>
15 - <script src="pageTemplates/components/testData.js"></script> 15 + <script src="pageTemplates/components/lineChartList_test_data.js"></script>
16 16
17 </head> 17 </head>
18 <body> 18 <body>
src/main/resources/static/pageTemplates/components/lineChart2.vue.js 0 → 100644
  1 +/**
  2 + * 线路模拟图vue组件(第二版)。
  3 + * 第二版:增加了很多可配置的css属性,修正了一些bug
  4 + * 重要数据属性说明(其他属性说明,参看props的定义):
  5 + * 1、line_route_data:线路路由数据,类型:数组,默认值:[]
  6 + * 数据示例:var test_route_data = [
  7 + * {
  8 + * names: ["A起点站"], // 站点名字数组
  9 + * ids: ["ACODE_0", "ACODE_1"], // 站点编码_上下行
  10 + * type: 2, // 0:上行 1:下行 2:同名合并 3:异名合并
  11 + * stationMark: "B"
  12 + * },
  13 + * {
  14 + * names: ["B中途站", "C1中途站"],
  15 + * ids: ["BCODE_0", "C1CODE_1"],
  16 + * type: 3,
  17 + * stationMark: "Z"
  18 + * },
  19 + * {
  20 + * names: ["C中途站"],
  21 + * ids: ["CCODE_0"],
  22 + * type: 0,
  23 + * stationMark: "Z"
  24 + * },
  25 + * {
  26 + * names: ["D中途站"],
  27 + * ids: ["DCODE_0", "DCODE_1"],
  28 + * type: 2,
  29 + * stationMark: "Z"
  30 + * },
  31 + * {
  32 + * names: ["E中途站", "E1中途站"],
  33 + * ids: ["ECODE_0", "E1CODE_1"],
  34 + * type: 3,
  35 + * stationMark: "Z"
  36 + * },
  37 + * {
  38 + * names: ["F终点站"],
  39 + * ids: ["FCODE_0", "FCODE_1"],
  40 + * type: 2,
  41 + * stationMark: "E"
  42 + * }];
  43 + * 2、line_gps_data:线路gps数据,类型:数组,默认值:[]
  44 + * 数据示例:var test_gps_data = [
  45 + * {
  46 + * stopNo: 'BCODE', // 站点编码
  47 + * upDown: 0, // 上下行(0 上行 , 1 下行 , -1 无效)
  48 + * deviceId: '559L1014', // 设备编码
  49 + * instation: 1, // 0: 站外 1:站内 2:场内
  50 + * nbbm: 'W2B-064' // 车辆内部编码(自编号)
  51 + * },
  52 + * {
  53 + * stopNo: 'BCODE', // 站点编码
  54 + * upDown: 0, // 上下行(0 上行 , 1 下行 , -1 无效)
  55 + * deviceId: '559L1013', // 设备编码
  56 + * instation: 1, // 0: 站外 1:站内 2:场内
  57 + * nbbm: 'W2B-065' // 车辆内部编码(自编号)
  58 + * },
  59 + * {
  60 + * stopNo: 'CCODE', // 站点编码
  61 + * upDown: 0, // 上下行(0 上行 , 1 下行 , -1 无效)
  62 + * deviceId: '559L1015', // 设备编码
  63 + * instation: 0, // 0: 站外 1:站内 2:场内
  64 + * nbbm: 'W2B-066' // 车辆内部编码(自编号)
  65 + * },
  66 + * {
  67 + * stopNo: 'E1CODE', // 站点编码
  68 + * upDown: 1, // 上下行(0 上行 , 1 下行 , -1 无效)
  69 + * deviceId: '559L1025', // 设备编码
  70 + * instation: 1, // 0: 站外 1:站内 2:场内
  71 + * nbbm: 'W2B-026' // 车辆内部编码(自编号)
  72 + * },
  73 + *
  74 + * {
  75 + * stopNo: 'ACODE', // 站点编码
  76 + * upDown: 1, // 上下行(0 上行 , 1 下行 , -1 无效)
  77 + * deviceId: '559L1035', // 设备编码
  78 + * instation: 1, // 0: 站外 1:站内 2:场内
  79 + * nbbm: 'W2B-036' // 车辆内部编码(自编号)
  80 + * },
  81 + * {
  82 + * stopNo: 'ACODE', // 站点编码
  83 + * upDown: 1, // 上下行(0 上行 , 1 下行 , -1 无效)
  84 + * deviceId: '559L1045', // 设备编码
  85 + * instation: 1, // 0: 站外 1:站内 2:场内
  86 + * nbbm: 'W2B-046' // 车辆内部编码(自编号)
  87 + * },
  88 + * {
  89 + * stopNo: 'ACODE', // 站点编码
  90 + * upDown: 1, // 上下行(0 上行 , 1 下行 , -1 无效)
  91 + * deviceId: '559L1055', // 设备编码
  92 + * instation: 1, // 0: 站外 1:站内 2:场内
  93 + * nbbm: 'W2B-056' // 车辆内部编码(自编号)
  94 + * }];
  95 + *
  96 + */
  97 +var line_chart_vue_v2 = (function() {
  98 +
  99 + return {
  100 + data: function() {
  101 + this.private_svgns = 'http://www.w3.org/2000/svg'; // svg元素名字空间
  102 + this.private_svg = null; // 创建的根svg元素,由mounted钩子函数创建
  103 + this.private_gps_wrap_svg = null; // 创建包含gps设备显示的最外层g元素
  104 + this.private_gps_marker_cluster_svg = null; // 创建包含聚合显示gps的最外层g元素
  105 + this.private_jQuery = jQuery.noConflict(); // jquery引用
  106 + this.private_d3 = d3; // d3引用
  107 +
  108 + return {
  109 +
  110 + };
  111 + },
  112 + props: {
  113 + line_name: { // 线路名称
  114 + type: String,
  115 + required: true
  116 + },
  117 + line_code: { // 线路代码
  118 + type: String,
  119 + required: true
  120 + },
  121 + line_route_data: { // 线路路由数据
  122 + type: Array,
  123 + default: function() {
  124 + return [];
  125 + }
  126 + },
  127 + line_gps_data: { // 线路gps数据
  128 + type: Array,
  129 + default: function() {
  130 + return [];
  131 + }
  132 + },
  133 +
  134 + //------------- css相关属性 ------------//
  135 + // 图外层css
  136 + line_name_font_size: { // 线路名称字体大小
  137 + type: Number,
  138 + default: 30
  139 + },
  140 + line_name_font_color: { // 线路名称字体颜色
  141 + type: String,
  142 + default: "#babdbd"
  143 + },
  144 + width: { // 图宽度
  145 + type: Number,
  146 + default: 600
  147 + },
  148 + height: { // 图高度
  149 + type: Number,
  150 + default: 240
  151 + },
  152 + margin_left: { // 图左边margin
  153 + type: Number,
  154 + default: 5
  155 + },
  156 + margin_right: { // 图右边margin
  157 + type: Number,
  158 + default: 5
  159 + },
  160 + margin_top: { // 图上边margin
  161 + type: Number,
  162 + default: 5
  163 + },
  164 + margin_bottom: { // 图底部margin
  165 + type: Number,
  166 + default: 0
  167 + },
  168 + border_size: { // 图边框宽度
  169 + type: Number,
  170 + default: 1
  171 + },
  172 + background_color: { // 背景颜色
  173 + type: String,
  174 + default: '#FFFFFF'
  175 + },
  176 +
  177 + // 图内层css
  178 + chart_height: { // 内部线路图高度
  179 + type: Number,
  180 + default: 122
  181 + },
  182 + chart_left_padding: { // 内部线路图距离左边padding
  183 + type: Number,
  184 + default: 30
  185 + },
  186 + chart_right_padding: { // 内部线路图距离右边padding
  187 + type: Number,
  188 + default: 30
  189 + },
  190 + chart_center_top_padding: { // 内部线路图居中修正padding
  191 + type: Number,
  192 + default: 4
  193 + },
  194 + chart_station_name_max_size: { // 站定名显示最大文字个数
  195 + type: Number,
  196 + default: 7
  197 + },
  198 +
  199 + chart_up_line_path_s_color: { // 上行线颜色(对应 svg.line-chart path.station_link stroke)
  200 + type: String,
  201 + default: "#5E96D2"
  202 + },
  203 + chart_down_line_path_s_color: { // 下行线颜色(对应 svg.line-chart path.station_link.down stroke)
  204 + type: String,
  205 + default: "#c92121"
  206 + },
  207 + chart_up_line_circle_f_color: { // 上行线站点圆圈填充色(对应 svg.line-chart circle.station_circle fill)
  208 + type: String,
  209 + default: "#5e96d2"
  210 + },
  211 + chart_down_line_circle_f_color: { // 下行线站点圆圈填充色(对应 svg.line-chart circle.station_circle.down fill)
  212 + type: String,
  213 + default: "#c92121"
  214 + },
  215 + chart_station_text_font_size: { // 站名字体大小
  216 + type: Number,
  217 + default: 14
  218 + },
  219 + chart_up_station_text_font_f_color: { // 上行站名颜色(对应 svg.line-chart text.station_text.up fill)
  220 + type: String,
  221 + default: "#4556b6"
  222 + },
  223 + chart_down_station_text_font_f_color: { // 下行站名颜色(对应 svg.line-chart text.station_text.down fill)
  224 + type: String,
  225 + default: "#c94f21"
  226 + },
  227 + chart_up_down_station_text_font_f_color: { // 上行下行同名站名颜色(对应 svg.line-chart text.station_text fill)
  228 + type: String,
  229 + default: "#3e3e3e"
  230 + },
  231 +
  232 + chart_gps_up_rect_color: { // 上行gps车辆rect背景色(对应 svg.line-chart g.gps-wrap > rect[updown="0"] fill stroke)
  233 + type: String,
  234 + default: "#3e50b3"
  235 + },
  236 + chart_gps_up_text_f_color: { // 上行gps车辆文本颜色(对应 svg.line-chart g.gps-wrap > text[updown="0"] fill)
  237 + type: String,
  238 + default: '#FFFFFF'
  239 + },
  240 + chart_gps_down_rect_color: { // 下行gps车辆rect背景色(对应 svg.line-chart g.gps-wrap > rect[updown="1"] fill stroke)
  241 + type: String,
  242 + default: "#c94f21"
  243 + },
  244 + chart_gps_down_text_f_color: { // 下行gps车辆文本颜色(对应 svg.line-chart g.gps-wrap > text[updown="1"] fill)
  245 + type: String,
  246 + default: '#FFFFFF'
  247 + },
  248 + chart_gps_up_merge_rect_color: { // 上行合并gps车辆rect背景色(对应 svg.line-chart g.merge-item rect fill stroke)
  249 + type: String,
  250 + default: '#19a53a'
  251 + },
  252 + chart_gps_up_merge_text_f_color: { // 上行合并gps车辆文本颜色(对应 svg.line-chart g.merge-item text fill)
  253 + type: String,
  254 + default: '#FFFFFF'
  255 + },
  256 + chart_gps_down_merge_rect_color: { // 下行合并gps车辆rect背景色(对应 svg.line-chart g.merge-item rect fill stroke)
  257 + type: String,
  258 + default: '#19a53a'
  259 + },
  260 + chart_gps_down_merge_text_f_color: { // 下行合并gps车辆文本颜色(对应 svg.line-chart g.merge-item text fill)
  261 + type: String,
  262 + default: '#FFFFFF'
  263 + }
  264 +
  265 +
  266 + },
  267 + render(createElement) {
  268 + return createElement(
  269 + 'div',
  270 + {
  271 + style: {
  272 + 'width': this.width + "px",
  273 + 'height': this.height + 'px',
  274 + 'border': this.border_size + 'px solid black',
  275 + 'margin-left': this.margin_left + 'px',
  276 + 'margin-right': this.margin_right + 'px',
  277 + 'margin-top': this.margin_top + 'px',
  278 + 'margin-bottom': this.margin_bottom + 'px',
  279 + 'background': this.background_color,
  280 + 'position': 'relative'
  281 + }
  282 + },
  283 + [
  284 + this.createLineNameTitle(createElement)
  285 + ]
  286 + )
  287 + },
  288 + mounted: function() {
  289 + this.private_svg = this.createSvgDom();
  290 + this.private_gps_wrap_svg = this.createGpsWrapSvg(this.private_svg);
  291 + this.private_gps_marker_cluster_svg = this.createGpsMarkerClusterSvg(this.private_svg);
  292 +
  293 + this.refreshLineSvg();
  294 + this.refreshGpsSvg();
  295 + },
  296 + watch: {
  297 + //----------- 数据属性 -----------//
  298 + line_code: function(currentVal) {
  299 + let self = this;
  300 + let svg = self.private_svg;
  301 + svg.attr('data-code', currentVal);
  302 + },
  303 + line_route_data: function(currentVal, oldVal) {
  304 + let self = this;
  305 + // console.log(this.route);
  306 + // console.log("route change");
  307 + if (!self._objectEquals(currentVal, oldVal)) {
  308 + self.refreshLineSvg();
  309 + self.refreshGpsSvg();
  310 + }
  311 + },
  312 + line_gps_data: function(currentVal, oldVal) {
  313 + let self = this;
  314 + if (!self._objectEquals(currentVal, oldVal)) {
  315 + // refreshLineSvg();
  316 + self.refreshGpsSvg();
  317 + }
  318 + },
  319 +
  320 + // TODO:其他属性再议
  321 +
  322 + //----------- 图外层css(因为在createElement中使用,Vue默认自动监控)----------//
  323 + width: function() {
  324 + let self = this;
  325 + self.refreshLineSvg();
  326 + self.refreshGpsSvg();
  327 + },
  328 + height: function() {
  329 + let self = this;
  330 + self.refreshLineSvg();
  331 + self.refreshGpsSvg();
  332 + },
  333 +
  334 + // TODO:其他属性再议
  335 +
  336 + //----------- 图内层css 监控 -----------//
  337 + chart_height: function() {
  338 + let self = this;
  339 + self.refreshLineSvg();
  340 + self.refreshGpsSvg();
  341 + },
  342 +
  343 + chart_up_line_path_s_color: function(val) {
  344 + let svg = this.private_svg;
  345 + svg.selectAll('g.item path.station_link:not(.down)')
  346 + .style('stroke', val);
  347 + },
  348 + chart_down_line_path_s_color: function(val) {
  349 + let svg = this.private_svg;
  350 + svg.selectAll('g.item path.station_link.down')
  351 + .style('stroke', val);
  352 + },
  353 + chart_up_line_circle_f_color: function(val) {
  354 + let svg = this.private_svg;
  355 + svg.selectAll('g.item circle.station_circle:not(.down')
  356 + .style('fill', val);
  357 + },
  358 + chart_down_line_circle_f_color: function(val) {
  359 + let svg = this.private_svg;
  360 + svg.selectAll('g.item circle.station_circle.down')
  361 + .style('fill', val);
  362 + },
  363 + chart_station_text_font_size: function(val) {
  364 + let svg = this.private_svg;
  365 + svg.selectAll('g.item text')
  366 + .style('font-size', val);
  367 + },
  368 + chart_up_station_text_font_f_color: function(val) {
  369 + let svg = this.private_svg;
  370 + svg.selectAll('g.item text.station_text.up')
  371 + .style('stroke', val);
  372 + },
  373 + chart_down_station_text_font_f_color: function(val) {
  374 + let svg = this.private_svg;
  375 + svg.selectAll('g.item text.station_text.down')
  376 + .style('stroke', val);
  377 + },
  378 + chart_up_down_station_text_font_f_color: function(val) {
  379 + let svg = this.private_svg;
  380 + svg.selectAll('g.item text.station_text:not(.up):not(.down)')
  381 + .style('stroke', val);
  382 + },
  383 +
  384 + chart_gps_up_rect_color: function(val) {
  385 + let svg = this.private_svg;
  386 + svg.selectAll("g.gps-wrap rect[updown='0']")
  387 + .style('fill', val)
  388 + .style('stroke', val);
  389 + },
  390 + chart_gps_up_text_f_color: function(val) {
  391 + let svg = this.private_svg;
  392 + svg.selectAll("g.gps-wrap text[updown='0']")
  393 + .style('fill', val);
  394 + },
  395 + chart_gps_down_rect_color: function(val) {
  396 + let svg = this.private_svg;
  397 + svg.selectAll("g.gps-wrap rect[updown='1']")
  398 + .style('fill', val)
  399 + .style('stroke', val);
  400 + },
  401 + chart_gps_down_text_f_color: function(val) {
  402 + let svg = this.private_svg;
  403 + svg.selectAll("g.gps-wrap text[updown='1']")
  404 + .style('fill', val);
  405 + },
  406 + chart_gps_up_merge_rect_color: function(val) {
  407 + let svg = this.private_svg;
  408 + svg.selectAll("g.marker-clusterer g.merge-item[updown='0'] rect")
  409 + .style('fill', val)
  410 + .style('stroke', val);
  411 + },
  412 + chart_gps_up_merge_text_f_color: function(val) {
  413 + let svg = this.private_svg;
  414 + svg.selectAll("g.marker-clusterer g.merge-item[updown='0'] text")
  415 + .style('fill', val);
  416 + },
  417 + chart_gps_down_merge_rect_color: function(val) {
  418 + let svg = this.private_svg;
  419 + svg.selectAll("g.marker-clusterer g.merge-item[updown='1'] rect")
  420 + .style('fill', val)
  421 + .style('stroke', val);
  422 + },
  423 + chart_gps_down_merge_text_f_color: function(val) {
  424 + let svg = this.private_svg;
  425 + svg.selectAll("g.marker-clusterer g.merge-item[updown='1'] text")
  426 + .style('fill', val);
  427 + },
  428 +
  429 + // TODO:其他属性再议
  430 + },
  431 +
  432 + methods: {
  433 + createLineNameTitle: function(createElement) {
  434 + return createElement(
  435 + 'div',
  436 + {
  437 + class: {
  438 + 'top-center-big-text' : true
  439 + },
  440 + style: {
  441 + 'font-size': this.line_name_font_size + 'px',
  442 + 'color': this.line_name_font_color
  443 + },
  444 + domProps: {
  445 + innerText: this.line_name
  446 + }
  447 + }
  448 + );
  449 + },
  450 + createSvgDom: function() {
  451 + let d3 = this.private_d3;
  452 + return d3.select(this.$el).append('svg')
  453 + .classed('line-chart', true)
  454 + .attr('data-code', this.line_code)
  455 + .attr('onselectstart', 'return false')
  456 + .style('height', this.height);
  457 + },
  458 + createGpsWrapSvg: function(svgDom) {
  459 + // 添加svg wrap
  460 + return svgDom.append('g').classed('gps-wrap', true);
  461 + },
  462 + createGpsMarkerClusterSvg: function(svgDom) {
  463 + // 添加svg marker clusterer wrap(指多个图像叠加在一起)
  464 + return svgDom.append('g').classed('marker-clusterer', true);
  465 + },
  466 +
  467 + refreshLineSvg: function() {
  468 + let self = this;
  469 +
  470 + let $jQuery = self.private_jQuery;
  471 + let d3 = self.private_d3;
  472 +
  473 + let test_route_data = self.line_route_data;
  474 + let width = self.width;
  475 + let height = self.height;
  476 + let svgNameSpace = self.private_svgns;
  477 + let svg = self.private_svg;
  478 + let chart_height = self.chart_height;
  479 + let chart_top_padding = self.chart_center_top_padding;
  480 + let chart_left_padding = self.chart_left_padding;
  481 + let chart_right_padding = self.chart_right_padding;
  482 + let chart_stop_name_max_size = parseInt(self.chart_station_name_max_size);
  483 +
  484 + //------------ 1、添加g元素 ----------//
  485 + let items_update = svg.selectAll('g.item')
  486 + .data(test_route_data, function(d) {
  487 + return d.ids.join("#");
  488 + });
  489 + let items_enter = items_update;
  490 + let items_exit = items_update.exit();
  491 +
  492 + items_exit.remove();
  493 + items_enter = items_enter.enter().append('g').classed('item', true);
  494 +
  495 + // 创建x轴比例尺
  496 + let xScale = d3.scaleLinear()
  497 + .domain([0, test_route_data.length - 1]) // 定义域
  498 + .range([chart_left_padding, width - chart_right_padding]); // 值域
  499 +
  500 + //------------ 2、添加/更新线路上行path元素 ----------//
  501 + let upLineFun = d3.line()
  502 + .x(xScale)
  503 + .y(function() {
  504 + return (height - chart_height) / 2 + chart_top_padding;
  505 + });
  506 + items_enter.append('path')
  507 + .classed('station_link', true)
  508 + .style('stroke', self.chart_up_line_path_s_color)
  509 + .attr('d', function(d, i) {
  510 + return i < test_route_data.length - 1 ? upLineFun([i, i + 1]) : '';
  511 + });
  512 + items_update.select('path')
  513 + .attr('d', function(d, i) {
  514 + return i < test_route_data.length - 1 ? upLineFun([i, i + 1]) : '';
  515 + });
  516 +
  517 + //------------ 3、添加/更新线路下行path元素 ----------//
  518 + let downLineFun = d3.line()
  519 + .x(xScale)
  520 + .y(function() {
  521 + return (height - chart_height) / 2 + chart_top_padding + chart_height;
  522 + });
  523 + items_enter.append('path')
  524 + .classed('station_link', true)
  525 + .classed('down', true)
  526 + .style('stroke', self.chart_down_line_path_s_color)
  527 + .attr('d', function(d, i) {
  528 + return i < test_route_data.length - 1 ? downLineFun([i, i + 1]) : '';
  529 + });
  530 + items_update.select('path.down')
  531 + .attr('d', function(d, i) {
  532 + return i < test_route_data.length - 1 ? downLineFun([i, i + 1]) : '';
  533 + });
  534 +
  535 + //------------ 4、添加/更新线路上行circle元素 ----------//
  536 + items_enter.select(function(d) {
  537 + return d.type !== 1 ? this : null;
  538 + }).append('circle')
  539 + .classed('station_circle', true)
  540 + .style('fill', self.chart_up_line_circle_f_color)
  541 + .attr('cx', function(d, i) {
  542 + return xScale(i);
  543 + })
  544 + .attr('cy', function() {
  545 + return (height - chart_height) / 2 + chart_top_padding;
  546 + })
  547 + .attr('data-id', function(d) {
  548 + return d.ids[0];
  549 + });
  550 + items_update.select('circle')
  551 + .attr('cx', function(d, i) {
  552 + return xScale(i);
  553 + })
  554 + .attr('cy', function() {
  555 + return (height - chart_height) / 2 + chart_top_padding;
  556 + });
  557 +
  558 + //------------ 5、添加/更新线路下行circle元素 ----------//
  559 + items_enter.select(function(d) {
  560 + return d.type !== 0 ? this : null;
  561 + }).append('circle')
  562 + .classed('station_circle', true)
  563 + .classed('down', true)
  564 + .style('fill', self.chart_down_line_circle_f_color)
  565 + .attr('cx', function(d, i) {
  566 + return xScale(i);
  567 + })
  568 + .attr('cy', function() {
  569 + return (height - chart_height) / 2 + chart_top_padding + chart_height;
  570 + })
  571 + .attr('data-id', function(d) {
  572 + return d.type === 1 ? d.ids[0] : d.ids[1];
  573 + });
  574 + items_update.select('circle.down')
  575 + .attr('cx', function(d, i) {
  576 + return xScale(i);
  577 + })
  578 + .attr('cy', function() {
  579 + return (height - chart_height) / 2 + chart_top_padding + chart_height;
  580 + });
  581 +
  582 + //------------ 6、添加线路上下行站点名text元素 ----------//
  583 + items_enter.append('text')
  584 + .classed('station_text', true)
  585 + .classed('up', function(d) {
  586 + return d.type === 3 || d.type === 0;
  587 + })
  588 + .classed('down', function(d) {
  589 + return d.type === 1;
  590 + })
  591 + .style('font-size', self.chart_station_text_font_size + "px")
  592 + .style('stroke', function(d) {
  593 + if (d.type === 0) {
  594 + return self.chart_up_station_text_font_f_color;
  595 + } else if (d.type === 1) {
  596 + return self.chart_down_station_text_font_f_color;
  597 + } else if (d.type === 2) {
  598 + return self.chart_up_down_station_text_font_f_color;
  599 + } else if (d.type === 3) {
  600 + return self.chart_up_station_text_font_f_color;
  601 + } else {
  602 + return self.chart_up_station_text_font_f_color;
  603 + }
  604 + })
  605 + .text(function(d) {
  606 + if (!d.names[0]) {
  607 + return 0;
  608 + }
  609 + return d.names[0].length > chart_stop_name_max_size
  610 + ? d.names[0].substr(0, chart_stop_name_max_size) : d.names[0];
  611 + })
  612 + .attr('title', function(d) {
  613 + return d.names[0];
  614 + })
  615 + .attr('x', function(d, i) {
  616 + if (d.type !== 3) {
  617 + return xScale(i);
  618 + }
  619 +
  620 + // 处理多文本
  621 + let svg_text = document.createElementNS(svgNameSpace, 'text');
  622 + let text_str = d.names[1].length > chart_stop_name_max_size
  623 + ? d.names[1].substr(0, chart_stop_name_max_size) : d.names[1];
  624 + let text_x = xScale(i);
  625 + let text_y1 = (height - chart_height) / 2 + chart_top_padding;
  626 + let text_y2 = (chart_height - (chart_height / chart_stop_name_max_size * text_str.length)) / 2 + 5;
  627 + d3.select(svg_text)
  628 + .attr('class', 'station_text down')
  629 + .style('fill', self.chart_down_station_text_font_f_color)
  630 + .attr('title', text_str)
  631 + .attr('x', text_x + 8)
  632 + .attr('y', text_y1 + text_y2)
  633 + .text(text_str);
  634 + // svg_text添加在当前元素后面
  635 + $jQuery(this).after(svg_text);
  636 + // this.insertAdjacentElement('afterend', svg_text);
  637 +
  638 + return xScale(i) - 8;
  639 + })
  640 + .attr('y', function(d) {
  641 + let y1 = (height - chart_height) / 2 + chart_top_padding;
  642 + let text = d.names[0].length > chart_stop_name_max_size
  643 + ? d.names[0].substr(0, chart_stop_name_max_size) : d.names[0];
  644 + let y2 = (chart_height - (chart_height / chart_stop_name_max_size * text.length)) / 2 + 5;
  645 + return y1 + y2;
  646 + });
  647 + items_update.select('text.station_text')
  648 + .classed('up', function(d) {
  649 + return d.type === 3 || d.type === 0;
  650 + })
  651 + .classed('down', function(d) {
  652 + return d.type === 1;
  653 + })
  654 + .text(function(d) {
  655 + if (!d.names[0]) {
  656 + return 0;
  657 + }
  658 + return d.names[0].length > chart_stop_name_max_size
  659 + ? d.names[0].substr(0, chart_stop_name_max_size) : d.names[0];
  660 + })
  661 + .attr('title', function(d) {
  662 + return d.names[0];
  663 + })
  664 + .attr('x', function(d, i) {
  665 + if (d.type !== 3) {
  666 + return xScale(i);
  667 + }
  668 +
  669 + // 处理多文本
  670 + $jQuery(this).next().remove(); // 删除之前的多文本,next()就是下一个兄弟节点
  671 + let svg_text = document.createElementNS(svgNameSpace, 'text');
  672 + let text_str = d.names[1].length > chart_stop_name_max_size
  673 + ? d.names[1].substr(0, chart_stop_name_max_size) : d.names[1];
  674 + let text_x = xScale(i);
  675 + let text_y1 = (height - chart_height) / 2 + chart_top_padding;
  676 + let text_y2 = (chart_height - (chart_height / chart_stop_name_max_size * text_str.length)) / 2 + 5;
  677 + d3.select(svg_text)
  678 + .attr('class', 'station_text down')
  679 + .style('fill', self.chart_down_station_text_font_f_color)
  680 + .attr('title', text_str)
  681 + .attr('x', text_x + 8)
  682 + .attr('y', text_y1 + text_y2)
  683 + .text(text_str);
  684 + // svg_text添加在当前元素后面
  685 + $jQuery(this).after(svg_text);
  686 +
  687 + return xScale(i) - 8;
  688 + })
  689 + .attr('y', function(d) {
  690 + let y1 = (height - chart_height) / 2 + chart_top_padding;
  691 + let text = d.names[0].length > chart_stop_name_max_size
  692 + ? d.names[0].substr(0, chart_stop_name_max_size) : d.names[0];
  693 + let y2 = (chart_height - (chart_height / chart_stop_name_max_size * text.length)) / 2 + 5;
  694 + return y1 + y2;
  695 + });
  696 + },
  697 +
  698 + findLineCircle: function(stopNo, upDown) {
  699 + let self = this;
  700 +
  701 + let $jQuery = self.private_jQuery;
  702 +
  703 + // 查找对应的circle
  704 + let svg_circle;
  705 + try {
  706 + svg_circle = $jQuery('.station_circle[data-id=' + stopNo + "_" + upDown + ']');
  707 + if (svg_circle.length === 0) {
  708 + svg_circle = null;
  709 + }
  710 + } catch (e) {
  711 + console.log('未找到svg circle, data-id = ' + stopNo + "_" + upDown);
  712 + svg_circle = null;
  713 + }
  714 + return svg_circle;
  715 + },
  716 +
  717 + refreshGpsSvg: function() {
  718 + let self = this;
  719 +
  720 + let $jQuery = self.private_jQuery;
  721 +
  722 + let svg = self.private_svg;
  723 + let gps_wrap_svg = self.private_gps_wrap_svg;
  724 + let gps_marker_cluster_svg = self.private_gps_marker_cluster_svg;
  725 + let test_route_data = self.line_route_data;
  726 + let test_gps_data = self.line_gps_data;
  727 + let width = self.width;
  728 + let chart_left_padding = self.chart_left_padding;
  729 + let chart_right_padding = self.chart_right_padding;
  730 +
  731 + //-------------- 0、数据处理 --------------//
  732 + /*
  733 + * 按照站点编码和上下行分组
  734 + * 数据示例:
  735 + * gps_group_by_stopNo_upDown = {
  736 + * 'BCODE_0': ['559L1014', '559L1013'],
  737 + * 'CCODE_0': ['559L1015'],
  738 + * 'E1CODE_1': ['559L1025'],
  739 + * 'ACODE_1': ['559L1035', '559L1045', '559L1055']
  740 + * };
  741 + */
  742 + let gps_group_by_stopNo_upDown = {};
  743 + $jQuery.each(test_gps_data, function(i, d) {
  744 + let stopNo = d.stopNo; // 站点编码
  745 + let upDown = d.upDown; // 上下行(0 上行 , 1 下行 , -1 无效)
  746 + let groupKey = stopNo + "_" + upDown;
  747 + if (!gps_group_by_stopNo_upDown[groupKey]) {
  748 + gps_group_by_stopNo_upDown[groupKey] = [];
  749 + }
  750 + let deviceId = d.deviceId; // 设备编码
  751 + gps_group_by_stopNo_upDown[groupKey].push(deviceId);
  752 + });
  753 + /*
  754 + * 将分组后的设备编码array转换成map
  755 + * 数据示例:
  756 + * test_gps_index_mapp = {
  757 + * 'BCODE_0': {
  758 + * '559L1014': 0, '559L1013' : 1
  759 + * },
  760 + * 'CCODE_0': {
  761 + * '559L1015': 0
  762 + * },
  763 + * 'E1CODE_1': {
  764 + * '559L1025': 0
  765 + * },
  766 + * 'ACODE_1': {
  767 + * '559L1035': 0, '559L1045': 1, '559L1055': 2
  768 + * }
  769 + * };
  770 + */
  771 + let test_gps_index_mapp = {};
  772 + $jQuery.each(gps_group_by_stopNo_upDown, function(key, value) {
  773 + if (!test_gps_index_mapp[key]) {
  774 + test_gps_index_mapp[key] = {};
  775 + }
  776 + $jQuery.each(value, function(index, deviceId) {
  777 + test_gps_index_mapp[key][deviceId] = index;
  778 + })
  779 + });
  780 +
  781 + //--------------- 1、添加/更新车辆rect元素 --------------//
  782 + $jQuery('.merge_hide', svg).removeAttr('class'); // 删除.mverge_hide元素的class属性(样式)
  783 + // 绘制rect
  784 + let gps_rect_update = gps_wrap_svg.selectAll('rect')
  785 + .data(test_gps_data, function(d) {
  786 + return d.deviceId; // 指定主键,默认使用数组下标
  787 + });
  788 + let gps_rect_enter = gps_rect_update;
  789 + let gps_rect_exit = gps_rect_update.exit();
  790 + gps_rect_exit.remove();
  791 +
  792 + let gps_rect_x = function(d) {
  793 + // 查找对应的circle
  794 + let svg_circle = self.findLineCircle(d.stopNo, d.upDown);
  795 +
  796 + // 计算x
  797 + let x;
  798 + if (!svg_circle) {
  799 + x = -100;
  800 + return x;
  801 + }
  802 + let x1 = parseInt(svg_circle.attr('cx')) - 16.5;
  803 + let s = (width - (chart_left_padding + chart_right_padding)) / test_route_data.length;
  804 + if (d.instation === 0) {
  805 + if (d.upDown === 0) {
  806 + x = x1 + s;
  807 + } else {
  808 + x = x1 - s;
  809 + }
  810 + } else {
  811 + x = x1;
  812 + }
  813 +
  814 + // 显示/隐藏
  815 + if (x === -100) {
  816 + $jQuery(this).css('transition-duration', 0).hide();
  817 + } else {
  818 + $jQuery(this).show();
  819 + }
  820 +
  821 + return x;
  822 + };
  823 +
  824 + let gps_rect_y = function(d) {
  825 + // 查找对应的circle
  826 + let svg_circle = self.findLineCircle(d.stopNo, d.upDown);
  827 +
  828 + // 计算y
  829 + let y;
  830 + if (!svg_circle) {
  831 + y = -100;
  832 + return y;
  833 + }
  834 + y = parseInt(svg_circle.attr('cy'));
  835 + let index = test_gps_index_mapp[d.stopNo + "_" + d.upDown][d.deviceId];
  836 + if (d.upDown === 0) {
  837 + y = y - 22 - (index * 17);
  838 + } else {
  839 + y = y + 6 + (index * 19);
  840 + }
  841 +
  842 + return y;
  843 + };
  844 +
  845 + gps_rect_enter.enter().append('rect')
  846 + .style('fill', function(d) {
  847 + if (d.upDown === 0) {
  848 + return self.chart_gps_up_rect_color;
  849 + } else if (d.upDown === 1) {
  850 + return self.chart_gps_down_rect_color;
  851 + } else {
  852 + return self.chart_gps_up_rect_color;
  853 + }
  854 + })
  855 + .style('stroke', function(d) {
  856 + if (d.upDown === 0) {
  857 + return self.chart_gps_up_rect_color;
  858 + } else if (d.upDown === 1) {
  859 + return self.chart_gps_down_rect_color;
  860 + } else {
  861 + return self.chart_gps_up_rect_color;
  862 + }
  863 + })
  864 + .attr('_id', function(d) {
  865 + return 'rct_' + d.deviceId;
  866 + })
  867 + .transition()
  868 + .attr('x', gps_rect_x)
  869 + .attr('y', gps_rect_y)
  870 + .attr('updown', function(d) {
  871 + return d.upDown;
  872 + });
  873 + gps_rect_update
  874 + .attr('_id', function(d) {
  875 + return 'rct_' + d.deviceId;
  876 + })
  877 + .transition()
  878 + .attr('x', gps_rect_x)
  879 + .attr('y', gps_rect_y)
  880 + .attr('updown', function(d) {
  881 + return d.upDown;
  882 + });
  883 +
  884 + //--------------- 3、添加/更新车辆text元素 --------------//
  885 + let gps_text_update = gps_wrap_svg.selectAll('text')
  886 + .data(test_gps_data, function(d) {
  887 + return d.deviceId; // 指定主键,默认使用数组下标
  888 + });
  889 + let gps_text_enter = gps_text_update;
  890 + let gps_text_exit = gps_text_update.exit();
  891 + gps_text_exit.remove();
  892 +
  893 + let gps_text_x = function(d) {
  894 + // 查找对应的circle
  895 + let svg_circle = self.findLineCircle(d.stopNo, d.upDown);
  896 +
  897 + // 计算x
  898 + let x;
  899 + if (!svg_circle) {
  900 + x = -100;
  901 + return x;
  902 + }
  903 + let x1 = parseInt(svg_circle.attr('cx')) - 16.5;
  904 + let s = (width - (chart_left_padding + chart_right_padding)) / test_route_data.length;
  905 + if (d.instation === 0) {
  906 + if (d.upDown === 0) {
  907 + x = x1 + s;
  908 + } else {
  909 + x = x1 - s;
  910 + }
  911 + } else {
  912 + x = x1;
  913 + }
  914 +
  915 + // 显示/隐藏
  916 + if (x === -100) {
  917 + $jQuery(this).css('transition-duration', 0).hide();
  918 + } else {
  919 + $jQuery(this).show();
  920 + }
  921 +
  922 + return x;
  923 + };
  924 +
  925 + let gps_text_y = function(d) {
  926 + // 查找对应的circle
  927 + let svg_circle = self.findLineCircle(d.stopNo, d.upDown);
  928 +
  929 + // 计算y
  930 + let y;
  931 + if (!svg_circle) {
  932 + y = -100;
  933 + return y;
  934 + }
  935 + y = parseInt(svg_circle.attr('cy'));
  936 + let index = test_gps_index_mapp[d.stopNo + "_" + d.upDown][d.deviceId];
  937 + if (d.upDown === 0) {
  938 + y = y - 22 - (index * 17);
  939 + } else {
  940 + y = y + 6 + (index * 19);
  941 + }
  942 +
  943 + return y;
  944 + };
  945 +
  946 + let gps_text_text = function(d) {
  947 + if (d.nbbm) {
  948 + let nbbm_length = d.nbbm.length;
  949 + if (nbbm_length > 3) {
  950 + let nbbm_text = d.nbbm.substr(nbbm_length - 3);
  951 + if (d.nbbm.indexOf('-') > 0) {
  952 + return d.nbbm.substr(d.nbbm.indexOf('-') - 1, 1) + nbbm_text;
  953 + } else {
  954 + return nbbm_text;
  955 + }
  956 + } else {
  957 + return d.nbbm;
  958 + }
  959 + } else {
  960 + return d.nbbm;
  961 + }
  962 + };
  963 +
  964 + gps_text_enter.enter().append('text')
  965 + .style('fill', function(d) {
  966 + if (d.upDown === 0) {
  967 + return self.chart_gps_up_text_f_color;
  968 + } else if (d.upDown === 1) {
  969 + return self.chart_gps_down_text_f_color;
  970 + } else {
  971 + return self.chart_gps_up_text_f_color;
  972 + }
  973 + })
  974 + .attr('_id', function(d) {
  975 + return "tx_" + d.deviceId;
  976 + })
  977 + .transition()
  978 + .attr('x', gps_text_x)
  979 + .attr('y', gps_text_y)
  980 + .attr('updown', function(d) {
  981 + return d.upDown;
  982 + })
  983 + .text(gps_text_text);
  984 +
  985 + gps_text_update
  986 + .attr('_id', function(d) {
  987 + return "tx_" + d.deviceId;
  988 + })
  989 + .transition()
  990 + .attr('x', gps_text_x)
  991 + .attr('y', gps_text_y)
  992 + .attr('updown', function(d) {
  993 + return d.upDown;
  994 + })
  995 + .text(gps_text_text);
  996 +
  997 +
  998 + //--------------- 4、绘制/更新车辆合并显示元素(g rect text) --------------//
  999 + // 绘制聚合点的数据集对象列表
  1000 + let _merger_data = [];
  1001 + $jQuery.each(test_gps_index_mapp, function(key, value) {
  1002 + let stopNo = key.split("_")[0];
  1003 + let upDown = key.split("_")[1];
  1004 + let deviceIds = [];
  1005 + $jQuery.each(value, function(deviceId) {
  1006 + deviceIds.push(deviceId);
  1007 + });
  1008 + // 删除旧的合并点
  1009 + $jQuery('g[_id=' + 'merger_' + key + ']').remove();
  1010 + if (deviceIds.length <= 2) { // 小于等于2个gps,不合并
  1011 + return true;
  1012 + }
  1013 +
  1014 + // 查找circle
  1015 + let svg_circle = self.findLineCircle(stopNo, upDown);
  1016 + if (!svg_circle) {
  1017 + return true;
  1018 + }
  1019 +
  1020 + let x = parseInt(svg_circle.attr('cx'));
  1021 + let y = parseInt(svg_circle.attr('cy'));
  1022 + // 隐藏车辆rect
  1023 + $jQuery.each(deviceIds, function(i, d) {
  1024 + $jQuery('rect[_id=rct_' + d + '],text[_id=tx_' + d + ']').attr('class', 'merge_hide');
  1025 + });
  1026 +
  1027 + _merger_data.push({
  1028 + x: x,
  1029 + y: y,
  1030 + key: key,
  1031 + upDown: parseInt(upDown),
  1032 + length: deviceIds.length
  1033 + });
  1034 +
  1035 + // // 创建 merge g rect text
  1036 + // var merge_g = svg.selectAll('g.marker-clusterer')
  1037 + // .append('g')
  1038 + // .classed('merge-item', true)
  1039 + // .attr('_id', 'merger_' + key);
  1040 + // merge_g.append('rect')
  1041 + // .attr('x', x - 11)
  1042 + // .attr('y', function() {
  1043 + // return upDown == 0 ? y - 31 : y + 8;
  1044 + // });
  1045 + // merge_g.append('text')
  1046 + // .text(deviceIds.length)
  1047 + // .attr('x', x - ((deviceIds.length + '').length * 4.5))
  1048 + // .attr('y', upDown == 0 ? y - 14 : y + 24);
  1049 +
  1050 + });
  1051 +
  1052 + let merge_update = gps_marker_cluster_svg.selectAll('g')
  1053 + .data(_merger_data, function(d) {
  1054 + return d.key;
  1055 + });
  1056 + let merge_enter = merge_update;
  1057 + let merge_exit = merge_update.exit();
  1058 + merge_exit.remove();
  1059 + merge_enter = merge_enter.enter().append('g')
  1060 + .classed('merge-item', true)
  1061 + .attr('updown', function(d) {
  1062 + return d.upDown;
  1063 + })
  1064 + .attr('_id', function(d) {
  1065 + return 'merger_' + d.key;
  1066 + });
  1067 +
  1068 + merge_enter.append('rect')
  1069 + .style('fill', function(d) {
  1070 + if (d.upDown === 0) {
  1071 + return self.chart_gps_up_merge_rect_color;
  1072 + } else if (d.upDown === 1) {
  1073 + return self.chart_gps_down_merge_rect_color;
  1074 + } else {
  1075 + return self.chart_gps_up_merge_rect_color;
  1076 + }
  1077 + })
  1078 + .style('stroke', function(d) {
  1079 + if (d.upDown === 0) {
  1080 + return self.chart_gps_up_merge_rect_color;
  1081 + } else if (d.upDown === 1) {
  1082 + return self.chart_gps_down_merge_rect_color;
  1083 + } else {
  1084 + return self.chart_gps_up_merge_rect_color;
  1085 + }
  1086 + })
  1087 + .attr('x', function(d) {
  1088 + return d.x - 11;
  1089 + })
  1090 + .attr('y', function(d) {
  1091 + return d.upDown === 0 ? d.y - 31 : d.y + 8;
  1092 + });
  1093 + merge_update.select('rect')
  1094 + .attr('x', function(d) {
  1095 + return d.x - 11;
  1096 + })
  1097 + .attr('y', function(d) {
  1098 + return d.upDown === 0 ? d.y - 31 : d.y + 8;
  1099 + });
  1100 +
  1101 + merge_enter.append('text')
  1102 + .text(function(d) {
  1103 + return d.length;
  1104 + })
  1105 + .style('fill', function(d) {
  1106 + if (d.upDown === 0) {
  1107 + return self.chart_gps_up_merge_text_f_color;
  1108 + } else if (d.upDown === 1) {
  1109 + return self.chart_gps_down_merge_text_f_color;
  1110 + } else {
  1111 + return self.chart_gps_up_merge_text_f_color;
  1112 + }
  1113 + })
  1114 + .attr('x', function(d) {
  1115 + return d.x - ((d.length + '').length * 4.5);
  1116 + })
  1117 + .attr('y', function(d) {
  1118 + return d.upDown === 0 ? d.y - 14 : d.y + 24;
  1119 + });
  1120 +
  1121 + merge_update.select('text')
  1122 + .text(function(d) {
  1123 + return d.length;
  1124 + })
  1125 + .attr('x', function(d) {
  1126 + return d.x - ((d.length + '').length * 4.5);
  1127 + })
  1128 + .attr('y', function(d) {
  1129 + return d.upDown === 0 ? d.y - 14 : d.y + 24;
  1130 + });
  1131 +
  1132 + },
  1133 +
  1134 + _objectEquals: function(o1, o2) { // 比较两个对象内部值是否相等
  1135 + let self = this;
  1136 + // 判断当前的属性是不是对象
  1137 + let o1_is_object = o1 instanceof Object;
  1138 + let o2_is_object = o2 instanceof Object;
  1139 + let o1_is_array = o1 instanceof Array;
  1140 + let o2_is_array = o2 instanceof Array;
  1141 +
  1142 + if (o1_is_object && o2_is_object) { // 都是对象比较
  1143 + // 如果都是对象,判断对象的属性数量是否一致
  1144 + if (Object.keys(o1).length !== Object.keys(o2).length) {
  1145 + return false;
  1146 + }
  1147 + // 递归判断每个属性是否一致
  1148 + let o1_property_names = Object.keys(o1);
  1149 + for (let i = 0; i < o1_property_names.length; i++) {
  1150 + let o1_property_value = o1[o1_property_names[i]];
  1151 + let o2_property_value = o2[o1_property_names[i]];
  1152 + let equal = self._objectEquals(o1_property_value, o2_property_value);
  1153 + if (!equal) {
  1154 + return equal;
  1155 + }
  1156 + }
  1157 + } else if (o1_is_array && o2_is_array) { // 都是数组比较
  1158 + // 如果是数组,判断长度是否一致
  1159 + if (o1.length !== o2.length) {
  1160 + return false;
  1161 + }
  1162 +
  1163 + // 每个数组元素顺序比对
  1164 + for (let n = 0; n < o1.length; n++) {
  1165 + let equal2 = self._objectEquals(o1[n], o2[n]);
  1166 + if (!equal2) {
  1167 + return equal2;
  1168 + }
  1169 + }
  1170 + } else {
  1171 + return o1 === o2;
  1172 + }
  1173 +
  1174 + return true;
  1175 + }
  1176 + }
  1177 + };
  1178 +
  1179 +}());
src/main/resources/static/pageTemplates/components/lineChartList.vue.js
@@ -341,7 +341,7 @@ var line_chart_list_vue = (function() { @@ -341,7 +341,7 @@ var line_chart_list_vue = (function() {
341 * 所以建议data中的监控属性和非监控属性不要使用_或$开头定义 341 * 所以建议data中的监控属性和非监控属性不要使用_或$开头定义
342 */ 342 */
343 343
344 - this.private_lineChartWidth = 600; // 内部每个lineChart宽度 344 + this.private_lineChartWidth = 790 - 10; // 内部每个lineChart宽度
345 this.private_lineChartHeight = 240; // 内部每个lineChart高度 345 this.private_lineChartHeight = 240; // 内部每个lineChart高度
346 346
347 // 分页显示模式参数:page模式 347 // 分页显示模式参数:page模式
@@ -403,13 +403,13 @@ var line_chart_list_vue = (function() { @@ -403,13 +403,13 @@ var line_chart_list_vue = (function() {
403 403
404 var self = this; 404 var self = this;
405 // TODO:测试30次,后面要删除的 405 // TODO:测试30次,后面要删除的
406 - if (self.pageableTimer.count <= 30) { 406 + // if (self.pageableTimer.count <= 30) {
407 self.pageableTimer.timer = setTimeout(function() { 407 self.pageableTimer.timer = setTimeout(function() {
408 _computeInternalDataSet(self); 408 _computeInternalDataSet(self);
409 _computeViewDataSet(self); 409 _computeViewDataSet(self);
410 self.pageableTimer.count ++; 410 self.pageableTimer.count ++;
411 }, self.pageableTimer.millisecond); 411 }, self.pageableTimer.millisecond);
412 - } 412 + // }
413 } 413 }
414 }, 414 },
415 height: function() { 415 height: function() {
@@ -444,6 +444,8 @@ var line_chart_list_vue = (function() { @@ -444,6 +444,8 @@ var line_chart_list_vue = (function() {
444 _computeViewDataSet(this); 444 _computeViewDataSet(this);
445 this.pageableTimer.count ++; // 触发定时器 445 this.pageableTimer.count ++; // 触发定时器
446 446
  447 + // console.log(this.viewDataSet);
  448 +
447 } 449 }
448 }; 450 };
449 }()); 451 }());
450 \ No newline at end of file 452 \ No newline at end of file
src/main/resources/static/pageTemplates/components/testData.js renamed to src/main/resources/static/pageTemplates/components/lineChartList_test_data.js
src/main/resources/static/pageTemplates/components/lineChart_test_data.js 0 → 100644
  1 +/**
  2 + * 线路模拟图vue组件使用测试数据。
  3 + */
  4 +var line_chart_test_data = (function() {
  5 + /**
  6 + * 测试的线路路由数据
  7 + * 上行路由起点战到终点战:A B C D E F
  8 + * 下行路由终点战到起点站:A C1 D E1 F
  9 + * 按照绘制需求合并路由数据图示如下:
  10 + * A B C D E F
  11 + * A C1 D E1 F
  12 + */
  13 + var test_route_data = [
  14 + {
  15 + names: ["A起点站"], // 站点名字数组
  16 + ids: ["ACODE_0", "ACODE_1"], // 站点编码_上下行
  17 + type: 2, // 0:上行 1:下行 2:同名合并 3:异名合并
  18 + stationMark: "B"
  19 + },
  20 + {
  21 + names: ["B中途站", "C1中途站"],
  22 + ids: ["BCODE_0", "C1CODE_1"],
  23 + type: 3,
  24 + stationMark: "Z"
  25 + },
  26 + {
  27 + names: ["C中途站"],
  28 + ids: ["CCODE_0"],
  29 + type: 0,
  30 + stationMark: "Z"
  31 + },
  32 + {
  33 + names: ["D中途站"],
  34 + ids: ["DCODE_0", "DCODE_1"],
  35 + type: 2,
  36 + stationMark: "Z"
  37 + },
  38 + {
  39 + names: ["E中途站", "E1中途站"],
  40 + ids: ["ECODE_0", "E1CODE_1"],
  41 + type: 3,
  42 + stationMark: "Z"
  43 + },
  44 + {
  45 + names: ["F终点站"],
  46 + ids: ["FCODE_0", "FCODE_1"],
  47 + type: 2,
  48 + stationMark: "E"
  49 + }
  50 + ];
  51 +
  52 + var test_route_data_copy = [
  53 + {
  54 + names: ["A起点站"], // 站点名字数组
  55 + ids: ["ACODE_0", "ACODE_1"], // 站点编码_上下行
  56 + type: 2, // 0:上行 1:下行 2:同名合并 3:异名合并
  57 + stationMark: "B"
  58 + },
  59 + {
  60 + names: ["B中途站", "C1中途站"],
  61 + ids: ["BCODE_0", "C1CODE_1"],
  62 + type: 3,
  63 + stationMark: "Z"
  64 + },
  65 + {
  66 + names: ["C中途站"],
  67 + ids: ["CCODE_0"],
  68 + type: 0,
  69 + stationMark: "Z"
  70 + },
  71 + {
  72 + names: ["D中途站"],
  73 + ids: ["DCODE_0", "DCODE_1"],
  74 + type: 2,
  75 + stationMark: "Z"
  76 + },
  77 + {
  78 + names: ["E中途站", "E1中途站"],
  79 + ids: ["ECODE_0", "E1CODE_1"],
  80 + type: 3,
  81 + stationMark: "Z"
  82 + },
  83 + {
  84 + names: ["F终点站"],
  85 + ids: ["FCODE_0", "FCODE_1"],
  86 + type: 2,
  87 + stationMark: "E"
  88 + }
  89 + ];
  90 +
  91 + var test_route_data2 = [
  92 + {
  93 + names: ["A起点站中中中"], // 站点名字数组
  94 + ids: ["ACODE_0", "ACODE_1"], // 站点编码_上下行
  95 + type: 2, // 0:上行 1:下行 2:同名合并 3:异名合并
  96 + stationMark: "B"
  97 + },
  98 + {
  99 + names: ["B中途站", "C1中途站"],
  100 + ids: ["BCODE_0", "C1CODE_1"],
  101 + type: 3,
  102 + stationMark: "Z"
  103 + }
  104 + ];
  105 +
  106 + /**
  107 + * 测试用gps数据(对应后台GpsEntity)。
  108 + * @type {*[]}
  109 + */
  110 + var test_gps_data = [
  111 + {
  112 + stopNo: 'BCODE', // 站点编码
  113 + upDown: 0, // 上下行(0 上行 , 1 下行 , -1 无效)
  114 + deviceId: '559L1014', // 设备编码
  115 + instation: 1, // 0: 站外 1:站内 2:场内
  116 + nbbm: 'W2B-064' // 车辆内部编码(自编号)
  117 + },
  118 + {
  119 + stopNo: 'BCODE', // 站点编码
  120 + upDown: 0, // 上下行(0 上行 , 1 下行 , -1 无效)
  121 + deviceId: '559L1013', // 设备编码
  122 + instation: 1, // 0: 站外 1:站内 2:场内
  123 + nbbm: 'W2B-065' // 车辆内部编码(自编号)
  124 + },
  125 + {
  126 + stopNo: 'CCODE', // 站点编码
  127 + upDown: 0, // 上下行(0 上行 , 1 下行 , -1 无效)
  128 + deviceId: '559L1015', // 设备编码
  129 + instation: 0, // 0: 站外 1:站内 2:场内
  130 + nbbm: 'W2B-066' // 车辆内部编码(自编号)
  131 + },
  132 + {
  133 + stopNo: 'E1CODE', // 站点编码
  134 + upDown: 1, // 上下行(0 上行 , 1 下行 , -1 无效)
  135 + deviceId: '559L1025', // 设备编码
  136 + instation: 1, // 0: 站外 1:站内 2:场内
  137 + nbbm: 'W2B-026' // 车辆内部编码(自编号)
  138 + },
  139 +
  140 + {
  141 + stopNo: 'ACODE', // 站点编码
  142 + upDown: 1, // 上下行(0 上行 , 1 下行 , -1 无效)
  143 + deviceId: '559L1035', // 设备编码
  144 + instation: 1, // 0: 站外 1:站内 2:场内
  145 + nbbm: 'W2B-036' // 车辆内部编码(自编号)
  146 + },
  147 + {
  148 + stopNo: 'ACODE', // 站点编码
  149 + upDown: 1, // 上下行(0 上行 , 1 下行 , -1 无效)
  150 + deviceId: '559L1045', // 设备编码
  151 + instation: 1, // 0: 站外 1:站内 2:场内
  152 + nbbm: 'W2B-046' // 车辆内部编码(自编号)
  153 + },
  154 + {
  155 + stopNo: 'ACODE', // 站点编码
  156 + upDown: 1, // 上下行(0 上行 , 1 下行 , -1 无效)
  157 + deviceId: '559L1055', // 设备编码
  158 + instation: 1, // 0: 站外 1:站内 2:场内
  159 + nbbm: 'W2B-056' // 车辆内部编码(自编号)
  160 + },
  161 +
  162 + {
  163 + stopNo: 'FCODE', // 站点编码
  164 + upDown: 0, // 上下行(0 上行 , 1 下行 , -1 无效)
  165 + deviceId: '558L1035', // 设备编码
  166 + instation: 1, // 0: 站外 1:站内 2:场内
  167 + nbbm: 'W2A-036' // 车辆内部编码(自编号)
  168 + },
  169 + {
  170 + stopNo: 'FCODE', // 站点编码
  171 + upDown: 0, // 上下行(0 上行 , 1 下行 , -1 无效)
  172 + deviceId: '558L1045', // 设备编码
  173 + instation: 1, // 0: 站外 1:站内 2:场内
  174 + nbbm: 'W2A-046' // 车辆内部编码(自编号)
  175 + },
  176 + {
  177 + stopNo: 'FCODE', // 站点编码
  178 + upDown: 0, // 上下行(0 上行 , 1 下行 , -1 无效)
  179 + deviceId: '558L1055', // 设备编码
  180 + instation: 1, // 0: 站外 1:站内 2:场内
  181 + nbbm: 'W2A-056' // 车辆内部编码(自编号)
  182 + }
  183 +
  184 + ];
  185 +
  186 + return {
  187 + route_test_data_1: test_route_data,
  188 + gps_test_data_1: test_gps_data
  189 + };
  190 +
  191 +
  192 +}());
0 \ No newline at end of file 193 \ No newline at end of file
src/main/resources/static/pageTemplates/components/test.vue.js deleted 100644 → 0
1 -/**  
2 - * 第一个Vue组件  
3 - * 使用原生javascript es5标准,不使用es6标准,可以直接使用,不需要转译  
4 - */  
5 -var test_vue_com = (function() {  
6 -  
7 - return {  
8 - props: { // 属性  
9 - text: {  
10 - type: String,  
11 - default: ''  
12 - },  
13 - type: {  
14 - type: String,  
15 - default: ''  
16 - }  
17 - },  
18 - /**  
19 - * render函数代替template写法  
20 - * @param createElement  
21 - */  
22 - render(createElement) {  
23 - return createElement(  
24 - 'h1',  
25 - {  
26 - class: {  
27 - 'h1-success': this.type === 'success',  
28 - 'h1-danger': this.type === 'danger',  
29 - 'h1-warning': this.type === 'warning'  
30 - },  
31 - domProps: {  
32 - innerText: this.text  
33 - },  
34 - on: {  
35 - click: this.clickEvent  
36 - }  
37 - }  
38 - )  
39 - },  
40 - methods: {  
41 - clickEvent: function() {  
42 - this.$emit('myEvent');  
43 - }  
44 - }  
45 - };  
46 -  
47 -}());  
48 \ No newline at end of file 0 \ No newline at end of file
src/main/resources/static/pageTemplates/css/vant_v2.2.12.css 0 → 100644
  1 +@-webkit-keyframes van-slide-up-enter{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes van-slide-up-enter{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes van-slide-up-leave{to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes van-slide-up-leave{to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes van-slide-down-enter{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes van-slide-down-enter{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-webkit-keyframes van-slide-down-leave{to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes van-slide-down-leave{to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-webkit-keyframes van-slide-left-enter{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes van-slide-left-enter{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes van-slide-left-leave{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes van-slide-left-leave{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes van-slide-right-enter{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes van-slide-right-enter{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@-webkit-keyframes van-slide-right-leave{to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes van-slide-right-leave{to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@-webkit-keyframes van-fade-in{0%{opacity:0}to{opacity:1}}@keyframes van-fade-in{0%{opacity:0}to{opacity:1}}@-webkit-keyframes van-fade-out{0%{opacity:1}to{opacity:0}}@keyframes van-fade-out{0%{opacity:1}to{opacity:0}}@-webkit-keyframes van-rotate{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes van-rotate{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes van-circular{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40}to{stroke-dasharray:90,150;stroke-dashoffset:-120}}@keyframes van-circular{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40}to{stroke-dasharray:90,150;stroke-dashoffset:-120}}@-webkit-keyframes van-notice-bar-play{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes van-notice-bar-play{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes van-notice-bar-play-infinite{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes van-notice-bar-play-infinite{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes van-skeleton-blink{50%{opacity:.6}}@keyframes van-skeleton-blink{50%{opacity:.6}}@-webkit-keyframes van-cursor-flicker{0%,to{opacity:0}50%{opacity:1}}@keyframes van-cursor-flicker{0%,to{opacity:0}50%{opacity:1}}html{-webkit-tap-highlight-color:transparent}body{margin:0}a{text-decoration:none}[class*=van-]:focus,a:focus,button:focus,input:focus,textarea:focus{outline:0}ol,ul{margin:0;padding:0;list-style:none}button,input,textarea{color:inherit;font:inherit}.van-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.van-multi-ellipsis--l2,.van-multi-ellipsis--l3{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical}.van-multi-ellipsis--l3{-webkit-line-clamp:3}.van-clearfix::after{display:table;clear:both;content:''}[class*=van-hairline]::after{position:absolute;box-sizing:border-box;content:' ';pointer-events:none;top:-50%;right:-50%;bottom:-50%;left:-50%;border:0 solid #ebedf0;-webkit-transform:scale(.5);transform:scale(.5)}.van-hairline,.van-hairline--bottom,.van-hairline--left,.van-hairline--right,.van-hairline--surround,.van-hairline--top,.van-hairline--top-bottom{position:relative}.van-hairline--top::after{border-top-width:1px}.van-hairline--left::after{border-left-width:1px}.van-hairline--right::after{border-right-width:1px}.van-hairline--bottom::after{border-bottom-width:1px}.van-hairline--top-bottom::after,.van-hairline-unset--top-bottom::after{border-width:1px 0}.van-hairline--surround::after{border-width:1px}.van-fade-enter-active{-webkit-animation:.3s van-fade-in;animation:.3s van-fade-in}.van-fade-leave-active{-webkit-animation:.3s van-fade-out;animation:.3s van-fade-out}.van-slide-up-enter-active{-webkit-animation:van-slide-up-enter .3s both ease;animation:van-slide-up-enter .3s both ease}.van-slide-up-leave-active{-webkit-animation:van-slide-up-leave .3s both ease;animation:van-slide-up-leave .3s both ease}.van-slide-down-enter-active{-webkit-animation:van-slide-down-enter .3s both ease;animation:van-slide-down-enter .3s both ease}.van-slide-down-leave-active{-webkit-animation:van-slide-down-leave .3s both ease;animation:van-slide-down-leave .3s both ease}.van-slide-left-enter-active{-webkit-animation:van-slide-left-enter .3s both ease;animation:van-slide-left-enter .3s both ease}.van-slide-left-leave-active{-webkit-animation:van-slide-left-leave .3s both ease;animation:van-slide-left-leave .3s both ease}.van-slide-right-enter-active{-webkit-animation:van-slide-right-enter .3s both ease;animation:van-slide-right-enter .3s both ease}.van-slide-right-leave-active{-webkit-animation:van-slide-right-leave .3s both ease;animation:van-slide-right-leave .3s both ease}.van-info{position:absolute;top:0;right:0;box-sizing:border-box;min-width:16px;padding:0 3px;color:#fff;font-weight:500;font-size:12px;font-family:PingFang SC,Helvetica Neue,Arial,sans-serif;line-height:14px;text-align:center;background-color:#ee0a24;border:1px solid #fff;border-radius:16px;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);-webkit-transform-origin:100%;transform-origin:100%}.van-info--dot{width:8px;min-width:0;height:8px;background-color:#ee0a24;border-radius:100%}@font-face{font-weight:400;font-family:'vant-icon';font-style:normal;font-display:auto;src:url(https://img.yzcdn.cn/vant/vant-icon-0bc654.woff2) format('woff2'),url(https://img.yzcdn.cn/vant/vant-icon-0bc654.woff) format('woff'),url(https://img.yzcdn.cn/vant/vant-icon-0bc654.ttf) format('truetype')}.van-icon{position:relative;font:14px/1 "vant-icon";font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased}.van-icon,.van-icon::before{display:inline-block}.van-icon-add-o:before{content:"\F000"}.van-icon-add-square:before{content:"\F001"}.van-icon-add:before{content:"\F002"}.van-icon-after-sale:before{content:"\F003"}.van-icon-aim:before{content:"\F004"}.van-icon-alipay:before{content:"\F005"}.van-icon-apps-o:before{content:"\F006"}.van-icon-arrow-down:before{content:"\F007"}.van-icon-arrow-left:before{content:"\F008"}.van-icon-arrow-up:before{content:"\F009"}.van-icon-arrow:before{content:"\F00A"}.van-icon-ascending:before{content:"\F00B"}.van-icon-audio:before{content:"\F00C"}.van-icon-award-o:before{content:"\F00D"}.van-icon-award:before{content:"\F00E"}.van-icon-bag-o:before{content:"\F00F"}.van-icon-bag:before{content:"\F010"}.van-icon-balance-list-o:before{content:"\F011"}.van-icon-balance-list:before{content:"\F012"}.van-icon-balance-o:before{content:"\F013"}.van-icon-balance-pay:before{content:"\F014"}.van-icon-bar-chart-o:before{content:"\F015"}.van-icon-bars:before{content:"\F016"}.van-icon-bell:before{content:"\F017"}.van-icon-bill-o:before{content:"\F018"}.van-icon-bill:before{content:"\F019"}.van-icon-birthday-cake-o:before{content:"\F01A"}.van-icon-bookmark-o:before{content:"\F01B"}.van-icon-bookmark:before{content:"\F01C"}.van-icon-browsing-history-o:before{content:"\F01D"}.van-icon-browsing-history:before{content:"\F01E"}.van-icon-brush-o:before{content:"\F01F"}.van-icon-bulb-o:before{content:"\F020"}.van-icon-bullhorn-o:before{content:"\F021"}.van-icon-calender-o:before{content:"\F022"}.van-icon-card:before{content:"\F023"}.van-icon-cart-circle-o:before{content:"\F024"}.van-icon-cart-circle:before{content:"\F025"}.van-icon-cart-o:before{content:"\F026"}.van-icon-cart:before{content:"\F027"}.van-icon-cash-back-record:before{content:"\F028"}.van-icon-cash-on-deliver:before{content:"\F029"}.van-icon-cashier-o:before{content:"\F02A"}.van-icon-certificate:before{content:"\F02B"}.van-icon-chart-trending-o:before{content:"\F02C"}.van-icon-chat-o:before{content:"\F02D"}.van-icon-chat:before{content:"\F02E"}.van-icon-checked:before{content:"\F02F"}.van-icon-circle:before{content:"\F030"}.van-icon-clear:before{content:"\F031"}.van-icon-clock-o:before{content:"\F032"}.van-icon-clock:before{content:"\F033"}.van-icon-close:before{content:"\F034"}.van-icon-closed-eye:before{content:"\F035"}.van-icon-cluster-o:before{content:"\F036"}.van-icon-cluster:before{content:"\F037"}.van-icon-column:before{content:"\F038"}.van-icon-comment-circle-o:before{content:"\F039"}.van-icon-comment-circle:before{content:"\F03A"}.van-icon-comment-o:before{content:"\F03B"}.van-icon-comment:before{content:"\F03C"}.van-icon-completed:before{content:"\F03D"}.van-icon-contact:before{content:"\F03E"}.van-icon-coupon-o:before{content:"\F03F"}.van-icon-coupon:before{content:"\F040"}.van-icon-credit-pay:before{content:"\F041"}.van-icon-cross:before{content:"\F042"}.van-icon-debit-pay:before{content:"\F043"}.van-icon-delete:before{content:"\F044"}.van-icon-descending:before{content:"\F045"}.van-icon-description:before{content:"\F046"}.van-icon-desktop-o:before{content:"\F047"}.van-icon-diamond-o:before{content:"\F048"}.van-icon-diamond:before{content:"\F049"}.van-icon-discount:before{content:"\F04A"}.van-icon-down:before{content:"\F04B"}.van-icon-ecard-pay:before{content:"\F04C"}.van-icon-edit:before{content:"\F04D"}.van-icon-ellipsis:before{content:"\F04E"}.van-icon-empty:before{content:"\F04F"}.van-icon-envelop-o:before{content:"\F050"}.van-icon-exchange:before{content:"\F051"}.van-icon-expand-o:before{content:"\F052"}.van-icon-expand:before{content:"\F053"}.van-icon-eye-o:before{content:"\F054"}.van-icon-eye:before{content:"\F055"}.van-icon-fail:before{content:"\F056"}.van-icon-failure:before{content:"\F057"}.van-icon-filter-o:before{content:"\F058"}.van-icon-fire-o:before{content:"\F059"}.van-icon-fire:before{content:"\F05A"}.van-icon-flag-o:before{content:"\F05B"}.van-icon-flower-o:before{content:"\F05C"}.van-icon-free-postage:before{content:"\F05D"}.van-icon-friends-o:before{content:"\F05E"}.van-icon-friends:before{content:"\F05F"}.van-icon-gem-o:before{content:"\F060"}.van-icon-gem:before{content:"\F061"}.van-icon-gift-card-o:before{content:"\F062"}.van-icon-gift-card:before{content:"\F063"}.van-icon-gift-o:before{content:"\F064"}.van-icon-gift:before{content:"\F065"}.van-icon-gold-coin-o:before{content:"\F066"}.van-icon-gold-coin:before{content:"\F067"}.van-icon-good-job-o:before{content:"\F068"}.van-icon-good-job:before{content:"\F069"}.van-icon-goods-collect-o:before{content:"\F06A"}.van-icon-goods-collect:before{content:"\F06B"}.van-icon-graphic:before{content:"\F06C"}.van-icon-home-o:before{content:"\F06D"}.van-icon-hot-o:before{content:"\F06E"}.van-icon-hot-sale-o:before{content:"\F06F"}.van-icon-hot-sale:before{content:"\F070"}.van-icon-hot:before{content:"\F071"}.van-icon-hotel-o:before{content:"\F072"}.van-icon-idcard:before{content:"\F073"}.van-icon-info-o:before{content:"\F074"}.van-icon-info:before{content:"\F075"}.van-icon-invition:before{content:"\F076"}.van-icon-label-o:before{content:"\F077"}.van-icon-label:before{content:"\F078"}.van-icon-like-o:before{content:"\F079"}.van-icon-like:before{content:"\F07A"}.van-icon-live:before{content:"\F07B"}.van-icon-location-o:before{content:"\F07C"}.van-icon-location:before{content:"\F07D"}.van-icon-lock:before{content:"\F07E"}.van-icon-logistics:before{content:"\F07F"}.van-icon-manager-o:before{content:"\F080"}.van-icon-manager:before{content:"\F081"}.van-icon-map-marked:before{content:"\F082"}.van-icon-medel-o:before{content:"\F083"}.van-icon-medel:before{content:"\F084"}.van-icon-more-o:before{content:"\F085"}.van-icon-more:before{content:"\F086"}.van-icon-music-o:before{content:"\F087"}.van-icon-music:before{content:"\F088"}.van-icon-new-arrival-o:before{content:"\F089"}.van-icon-new-arrival:before{content:"\F08A"}.van-icon-new-o:before{content:"\F08B"}.van-icon-new:before{content:"\F08C"}.van-icon-newspaper-o:before{content:"\F08D"}.van-icon-notes-o:before{content:"\F08E"}.van-icon-orders-o:before{content:"\F08F"}.van-icon-other-pay:before{content:"\F090"}.van-icon-paid:before{content:"\F091"}.van-icon-passed:before{content:"\F092"}.van-icon-pause-circle-o:before{content:"\F093"}.van-icon-pause-circle:before{content:"\F094"}.van-icon-pause:before{content:"\F095"}.van-icon-peer-pay:before{content:"\F096"}.van-icon-pending-payment:before{content:"\F097"}.van-icon-phone-circle-o:before{content:"\F098"}.van-icon-phone-circle:before{content:"\F099"}.van-icon-phone-o:before{content:"\F09A"}.van-icon-phone:before{content:"\F09B"}.van-icon-photo-o:before{content:"\F09C"}.van-icon-photo:before{content:"\F09D"}.van-icon-photograph:before{content:"\F09E"}.van-icon-play-circle-o:before{content:"\F09F"}.van-icon-play-circle:before{content:"\F0A0"}.van-icon-play:before{content:"\F0A1"}.van-icon-plus:before{content:"\F0A2"}.van-icon-point-gift-o:before{content:"\F0A3"}.van-icon-point-gift:before{content:"\F0A4"}.van-icon-points:before{content:"\F0A5"}.van-icon-printer:before{content:"\F0A6"}.van-icon-qr-invalid:before{content:"\F0A7"}.van-icon-qr:before{content:"\F0A8"}.van-icon-question-o:before{content:"\F0A9"}.van-icon-question:before{content:"\F0AA"}.van-icon-records:before{content:"\F0AB"}.van-icon-refund-o:before{content:"\F0AC"}.van-icon-replay:before{content:"\F0AD"}.van-icon-scan:before{content:"\F0AE"}.van-icon-search:before{content:"\F0AF"}.van-icon-send-gift-o:before{content:"\F0B0"}.van-icon-send-gift:before{content:"\F0B1"}.van-icon-service-o:before{content:"\F0B2"}.van-icon-service:before{content:"\F0B3"}.van-icon-setting-o:before{content:"\F0B4"}.van-icon-setting:before{content:"\F0B5"}.van-icon-share:before{content:"\F0B6"}.van-icon-shop-collect-o:before{content:"\F0B7"}.van-icon-shop-collect:before{content:"\F0B8"}.van-icon-shop-o:before{content:"\F0B9"}.van-icon-shop:before{content:"\F0BA"}.van-icon-shopping-cart-o:before{content:"\F0BB"}.van-icon-shopping-cart:before{content:"\F0BC"}.van-icon-shrink:before{content:"\F0BD"}.van-icon-sign:before{content:"\F0BE"}.van-icon-smile-comment-o:before{content:"\F0BF"}.van-icon-smile-comment:before{content:"\F0C0"}.van-icon-smile-o:before{content:"\F0C1"}.van-icon-smile:before{content:"\F0C2"}.van-icon-star-o:before{content:"\F0C3"}.van-icon-star:before{content:"\F0C4"}.van-icon-stop-circle-o:before{content:"\F0C5"}.van-icon-stop-circle:before{content:"\F0C6"}.van-icon-stop:before{content:"\F0C7"}.van-icon-success:before{content:"\F0C8"}.van-icon-thumb-circle-o:before{content:"\F0C9"}.van-icon-thumb-circle:before{content:"\F0CA"}.van-icon-todo-list-o:before{content:"\F0CB"}.van-icon-todo-list:before{content:"\F0CC"}.van-icon-tosend:before{content:"\F0CD"}.van-icon-tv-o:before{content:"\F0CE"}.van-icon-umbrella-circle:before{content:"\F0CF"}.van-icon-underway-o:before{content:"\F0D0"}.van-icon-underway:before{content:"\F0D1"}.van-icon-upgrade:before{content:"\F0D2"}.van-icon-user-circle-o:before{content:"\F0D3"}.van-icon-user-o:before{content:"\F0D4"}.van-icon-video-o:before{content:"\F0D5"}.van-icon-video:before{content:"\F0D6"}.van-icon-vip-card-o:before{content:"\F0D7"}.van-icon-vip-card:before{content:"\F0D8"}.van-icon-volume-o:before{content:"\F0D9"}.van-icon-volume:before{content:"\F0DA"}.van-icon-wap-home-o:before{content:"\F0DB"}.van-icon-wap-home:before{content:"\F0DC"}.van-icon-wap-nav:before{content:"\F0DD"}.van-icon-warn-o:before{content:"\F0DE"}.van-icon-warning-o:before{content:"\F0DF"}.van-icon-warning:before{content:"\F0E0"}.van-icon-weapp-nav:before{content:"\F0E1"}.van-icon-wechat:before{content:"\F0E2"}.van-icon-youzan-shield:before{content:"\F0E3"}.van-icon__image{width:1em;height:1em}.van-loading,.van-loading__spinner{position:relative;vertical-align:middle}.van-loading{color:#c8c9cc;font-size:0}.van-loading__spinner{display:inline-block;width:30px;max-width:100%;height:30px;max-height:100%;-webkit-animation:van-rotate .8s linear infinite;animation:van-rotate .8s linear infinite}.van-loading__spinner--spinner{-webkit-animation-timing-function:steps(12);animation-timing-function:steps(12)}.van-circle svg,.van-loading__spinner--spinner i{position:absolute;top:0;left:0;width:100%;height:100%}.van-loading__spinner--spinner i::before{display:block;width:2px;height:25%;margin:0 auto;background-color:currentColor;border-radius:40%;content:' '}.van-loading__spinner--circular{-webkit-animation-duration:2s;animation-duration:2s}.van-loading__circular{display:block;width:100%;height:100%}.van-loading__circular circle{-webkit-animation:van-circular 1.5s ease-in-out infinite;animation:van-circular 1.5s ease-in-out infinite;stroke:currentColor;stroke-width:3;stroke-linecap:round}.van-loading__text{display:inline-block;margin-left:8px;color:#969799;font-size:14px;vertical-align:middle}.van-loading--vertical{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center}.van-loading--vertical .van-loading__text{margin:8px 0 0}.van-loading__spinner--spinner i:nth-of-type(1){-webkit-transform:rotate(30deg);transform:rotate(30deg);opacity:1}.van-loading__spinner--spinner i:nth-of-type(2){-webkit-transform:rotate(60deg);transform:rotate(60deg);opacity:.9375}.van-loading__spinner--spinner i:nth-of-type(3){-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:.875}.van-loading__spinner--spinner i:nth-of-type(4){-webkit-transform:rotate(120deg);transform:rotate(120deg);opacity:.8125}.van-loading__spinner--spinner i:nth-of-type(5){-webkit-transform:rotate(150deg);transform:rotate(150deg);opacity:.75}.van-loading__spinner--spinner i:nth-of-type(6){-webkit-transform:rotate(180deg);transform:rotate(180deg);opacity:.6875}.van-loading__spinner--spinner i:nth-of-type(7){-webkit-transform:rotate(210deg);transform:rotate(210deg);opacity:.625}.van-loading__spinner--spinner i:nth-of-type(8){-webkit-transform:rotate(240deg);transform:rotate(240deg);opacity:.5625}.van-loading__spinner--spinner i:nth-of-type(9){-webkit-transform:rotate(270deg);transform:rotate(270deg);opacity:.5}.van-loading__spinner--spinner i:nth-of-type(10){-webkit-transform:rotate(300deg);transform:rotate(300deg);opacity:.4375}.van-loading__spinner--spinner i:nth-of-type(11){-webkit-transform:rotate(330deg);transform:rotate(330deg);opacity:.375}.van-loading__spinner--spinner i:nth-of-type(12){-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:.3125}.van-button{position:relative;display:inline-block;box-sizing:border-box;height:44px;margin:0;padding:0;font-size:16px;line-height:42px;text-align:center;border-radius:2px;-webkit-transition:opacity .2s;transition:opacity .2s;-webkit-appearance:none;-webkit-text-size-adjust:100%}.van-button::before{position:absolute;top:50%;left:50%;width:100%;height:100%;background-color:#000;border:inherit;border-color:#000;border-radius:inherit;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;content:' '}.van-button:active::before{opacity:.1}.van-button--disabled::before,.van-button--loading::before{display:none}.van-button--default{color:#323233;background-color:#fff;border:1px solid #ebedf0}.van-button--primary{color:#fff;background-color:#07c160;border:1px solid #07c160}.van-button--info{color:#fff;background-color:#1989fa;border:1px solid #1989fa}.van-button--danger{color:#fff;background-color:#ee0a24;border:1px solid #ee0a24}.van-button--warning{color:#fff;background-color:#ff976a;border:1px solid #ff976a}.van-button--plain{background-color:#fff}.van-button--plain.van-button--primary{color:#07c160}.van-button--plain.van-button--info{color:#1989fa}.van-button--plain.van-button--danger{color:#ee0a24}.van-button--plain.van-button--warning{color:#ff976a}.van-button--large{width:100%;height:50px;line-height:48px}.van-button--normal{padding:0 15px;font-size:14px}.van-button--small{min-width:60px;height:30px;padding:0 8px;font-size:12px;line-height:28px}.van-button__loading{display:inline-block;color:inherit;vertical-align:top}.van-button--mini{display:inline-block;min-width:50px;height:22px;font-size:10px;line-height:20px}.van-button--mini+.van-button--mini{margin-left:4px}.van-button--block{display:block;width:100%}.van-button--disabled{opacity:.5}.van-button--hairline.van-button--round::after,.van-button--round{border-radius:999px}.van-button--hairline.van-button--square::after,.van-button--square{border-radius:0}.van-button__icon{min-width:1em;font-size:1.2em;line-height:inherit;vertical-align:top}.van-button__icon+.van-button__text,.van-button__loading+.van-button__text{display:inline-block;margin-left:5px;vertical-align:top}.van-button--hairline{border-width:0}.van-button--hairline::after{border-color:inherit;border-radius:4px}.van-cell{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;box-sizing:border-box;width:100%;padding:10px 16px;overflow:hidden;color:#323233;font-size:14px;line-height:24px;background-color:#fff}.van-cell:not(:last-child)::after{position:absolute;box-sizing:border-box;content:' ';pointer-events:none;right:0;bottom:0;left:16px;border-bottom:1px solid #ebedf0;-webkit-transform:scaleY(.5);transform:scaleY(.5)}.van-cell--borderless::after{display:none}.van-cell__label{margin-top:3px;color:#969799;font-size:12px;line-height:18px}.van-cell__title,.van-cell__value{-webkit-box-flex:1;-webkit-flex:1;flex:1}.van-cell__value{position:relative;overflow:hidden;color:#969799;text-align:right;vertical-align:middle}.van-cell__value--alone{color:#323233;text-align:left}.van-cell__left-icon,.van-cell__right-icon{min-width:1em;height:24px;font-size:16px;line-height:24px}.van-cell__left-icon{margin-right:5px}.van-cell__right-icon{margin-left:5px;color:#969799}.van-cell--clickable:active{background-color:#f2f3f5}.van-cell--required{overflow:visible}.van-cell--required::before{position:absolute;left:8px;color:#ee0a24;font-size:14px;content:'*'}.van-cell--center{-webkit-box-align:center;-webkit-align-items:center;align-items:center}.van-cell--large{padding-top:12px;padding-bottom:12px}.van-cell--large .van-cell__title{font-size:16px}.van-cell--large .van-cell__label{font-size:14px}.van-cell-group{background-color:#fff}.van-cell-group__title{padding:16px 16px 8px;color:#969799;font-size:14px;line-height:16px}.van-col{float:left;box-sizing:border-box;min-height:1px}.van-col--1{width:4.16666667%}.van-col--offset-1{margin-left:4.16666667%}.van-col--2{width:8.33333333%}.van-col--offset-2{margin-left:8.33333333%}.van-col--3{width:12.5%}.van-col--offset-3{margin-left:12.5%}.van-col--4{width:16.66666667%}.van-col--offset-4{margin-left:16.66666667%}.van-col--5{width:20.83333333%}.van-col--offset-5{margin-left:20.83333333%}.van-col--6{width:25%}.van-col--offset-6{margin-left:25%}.van-col--7{width:29.16666667%}.van-col--offset-7{margin-left:29.16666667%}.van-col--8{width:33.33333333%}.van-col--offset-8{margin-left:33.33333333%}.van-col--9{width:37.5%}.van-col--offset-9{margin-left:37.5%}.van-col--10{width:41.66666667%}.van-col--offset-10{margin-left:41.66666667%}.van-col--11{width:45.83333333%}.van-col--offset-11{margin-left:45.83333333%}.van-col--12{width:50%}.van-col--offset-12{margin-left:50%}.van-col--13{width:54.16666667%}.van-col--offset-13{margin-left:54.16666667%}.van-col--14{width:58.33333333%}.van-col--offset-14{margin-left:58.33333333%}.van-col--15{width:62.5%}.van-col--offset-15{margin-left:62.5%}.van-col--16{width:66.66666667%}.van-col--offset-16{margin-left:66.66666667%}.van-col--17{width:70.83333333%}.van-col--offset-17{margin-left:70.83333333%}.van-col--18{width:75%}.van-col--offset-18{margin-left:75%}.van-col--19{width:79.16666667%}.van-col--offset-19{margin-left:79.16666667%}.van-col--20{width:83.33333333%}.van-col--offset-20{margin-left:83.33333333%}.van-col--21{width:87.5%}.van-col--offset-21{margin-left:87.5%}.van-col--22{width:91.66666667%}.van-col--offset-22{margin-left:91.66666667%}.van-col--23{width:95.83333333%}.van-col--offset-23{margin-left:95.83333333%}.van-col--24{width:100%}.van-col--offset-24{margin-left:100%}.van-row::after{display:table;clear:both;content:""}.van-row--flex{display:-webkit-box;display:-webkit-flex;display:flex}.van-row--flex::after{display:none}.van-row--justify-center{-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.van-row--justify-end{-webkit-box-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end}.van-row--justify-space-between{-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between}.van-row--justify-space-around{-webkit-justify-content:space-around;justify-content:space-around}.van-row--align-center{-webkit-box-align:center;-webkit-align-items:center;align-items:center}.van-row--align-bottom{-webkit-box-align:end;-webkit-align-items:flex-end;align-items:flex-end}.van-grid{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.van-grid-item{position:relative;box-sizing:border-box}.van-grid-item--square{height:0}.van-grid-item__content{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;box-sizing:border-box;height:100%;padding:16px 8px;background-color:#fff}.van-grid-item__content::after{z-index:1;border-width:0 1px 1px 0}.van-grid-item__content--square{position:absolute;top:0;right:0;left:0}.van-grid-item__content--center{-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.van-grid-item__content--surround::after{border-width:1px}.van-grid-item__content--clickable:active{background-color:#f2f3f5}.van-grid-item__icon{font-size:28px}.van-grid-item__icon-wrapper{position:relative}.van-grid-item__text{color:#7d7e80;font-size:12px;word-wrap:break-word}.van-grid-item__icon+.van-grid-item__text{margin-top:8px}.van-image{position:relative;display:inline-block}.van-image--round{overflow:hidden;border-radius:50%}.van-image--round img{border-radius:inherit}.van-image__error,.van-image__img,.van-image__loading{display:block;width:100%;height:100%}.van-image__error,.van-image__loading{position:absolute;top:0;left:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;color:#969799;font-size:14px;background-color:#f8f8f8}.van-circle{position:relative;display:inline-block;text-align:center}.van-circle__layer{fill:none;stroke-linecap:round}.van-circle__text{position:absolute;top:50%;left:0;width:100%;color:#323233;font-weight:500;font-size:14px;line-height:18px;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.van-collapse-item__title .van-cell__right-icon::before{-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.van-collapse-item__title::after{visibility:hidden}.van-collapse-item__title--expanded .van-cell__right-icon::before{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.van-collapse-item__title--expanded::after{visibility:visible}.van-collapse-item__title--disabled,.van-collapse-item__title--disabled .van-cell__right-icon{color:#c8c9cc}.van-collapse-item__title--disabled:active{background-color:#fff}.van-collapse-item__wrapper{overflow:hidden;-webkit-transition:height .3s ease-in-out;transition:height .3s ease-in-out;will-change:height}.van-collapse-item__content{padding:16px;color:#969799;font-size:13px;line-height:1.5;background-color:#fff}.van-count-down,.van-divider{color:#323233;font-size:14px;line-height:20px}.van-divider{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;margin:16px 0;color:#969799;line-height:24px;border-color:#ebedf0;border-style:solid;border-width:0}.van-divider::after,.van-divider::before{display:block;-webkit-box-flex:1;-webkit-flex:1;flex:1;box-sizing:border-box;height:1px;border-color:inherit;border-style:inherit;border-width:1px 0 0}.van-divider::before{content:''}.van-divider--hairline::after,.van-divider--hairline::before{-webkit-transform:scaleY(.5);transform:scaleY(.5)}.van-divider--dashed{border-style:dashed}.van-divider--content-center::before,.van-divider--content-left::before,.van-divider--content-right::before{margin-right:16px}.van-divider--content-center::after,.van-divider--content-left::after,.van-divider--content-right::after{margin-left:16px;content:''}.van-divider--content-left::before,.van-divider--content-right::after{max-width:10%}.van-list__error-text,.van-list__finished-text,.van-list__loading{color:#969799;font-size:14px;line-height:50px;text-align:center}.van-list__placeholder{height:0;pointer-events:none}.van-nav-bar{position:relative;height:46px;line-height:46px;text-align:center;background-color:#fff;-webkit-user-select:none;user-select:none}.van-nav-bar .van-icon{color:#1989fa;vertical-align:middle}.van-nav-bar__arrow{min-width:1em;font-size:16px}.van-nav-bar__arrow+.van-nav-bar__text{margin-left:-20px;padding-left:25px}.van-nav-bar--fixed{position:fixed;top:0;left:0;width:100%}.van-nav-bar__title{max-width:60%;margin:0 auto;color:#323233;font-weight:500;font-size:16px}.van-nav-bar__left,.van-nav-bar__right{position:absolute;bottom:0;font-size:14px}.van-nav-bar__left{left:16px}.van-nav-bar__right{right:16px}.van-nav-bar__text{display:inline-block;margin:0 -16px;padding:0 16px;color:#1989fa;vertical-align:middle}.van-nav-bar__text:active{background-color:#f2f3f5}.van-notice-bar{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;height:40px;padding:0 16px;color:#ed6a0c;font-size:14px;line-height:24px;background-color:#fffbe8}.van-notice-bar__left-icon,.van-notice-bar__right-icon{min-width:22px;font-size:16px}.van-notice-bar__right-icon{text-align:right}.van-notice-bar__wrap{position:relative;-webkit-box-flex:1;-webkit-flex:1;flex:1;height:24px;overflow:hidden}.van-notice-bar__content{position:absolute;white-space:nowrap}.van-notice-bar__content.van-ellipsis{max-width:100%}.van-notice-bar__play{-webkit-animation:van-notice-bar-play linear both;animation:van-notice-bar-play linear both}.van-notice-bar__play--infinite{-webkit-animation:van-notice-bar-play-infinite linear infinite both;animation:van-notice-bar-play-infinite linear infinite both}.van-notice-bar--wrapable{height:auto;padding:8px 16px}.van-notice-bar--wrapable .van-notice-bar__wrap{height:auto}.van-notice-bar--wrapable .van-notice-bar__content{position:relative;white-space:normal;word-wrap:break-word}.van-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7)}.van-overflow-hidden{overflow:hidden!important}.van-popup{position:fixed;max-height:100%;overflow-y:auto;background-color:#fff;-webkit-transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-overflow-scrolling:touch}.van-popup--center{top:50%;left:50%;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}.van-popup--center.van-popup--round{border-radius:20px}.van-popup--top{top:0;left:0;width:100%}.van-popup--top.van-popup--round{border-radius:0 0 20px 20px}.van-popup--right{top:50%;right:0;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.van-popup--right.van-popup--round{border-radius:20px 0 0 20px}.van-popup--bottom{bottom:0;left:0;width:100%}.van-popup--bottom.van-popup--round{border-radius:20px 20px 0 0}.van-popup--left{top:50%;left:0;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.van-popup--left.van-popup--round{border-radius:0 20px 20px 0}.van-popup--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-popup-slide-top-enter,.van-popup-slide-top-leave-active{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.van-popup-slide-right-enter,.van-popup-slide-right-leave-active{-webkit-transform:translate3d(100%,-50%,0);transform:translate3d(100%,-50%,0)}.van-popup-slide-bottom-enter,.van-popup-slide-bottom-leave-active{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}.van-popup-slide-left-enter,.van-popup-slide-left-leave-active{-webkit-transform:translate3d(-100%,-50%,0);transform:translate3d(-100%,-50%,0)}.van-popup__close-icon{position:absolute;z-index:1;color:#969799;font-size:18px}.van-popup__close-icon:active{opacity:.7}.van-popup__close-icon--top-left{top:16px;left:16px}.van-popup__close-icon--top-right{top:16px;right:16px}.van-popup__close-icon--bottom-left{bottom:16px;left:16px}.van-popup__close-icon--bottom-right{right:16px;bottom:16px}.van-search,.van-search__content{display:-webkit-box;display:-webkit-flex;display:flex}.van-search{-webkit-box-align:center;-webkit-align-items:center;align-items:center;box-sizing:border-box;padding:10px 12px}.van-search__content{-webkit-box-flex:1;-webkit-flex:1;flex:1;padding-left:8px;background-color:#f7f8fa;border-radius:2px}.van-search__content--round{border-radius:17px}.van-search__label{padding:0 5px;color:#323233;font-size:14px;line-height:34px}.van-search .van-cell{-webkit-box-flex:1;-webkit-flex:1;flex:1;padding:5px 8px 5px 0;background-color:transparent}.van-search .van-cell__left-icon{color:#969799}.van-search--show-action{padding-right:0}.van-search input::-webkit-search-cancel-button,.van-search input::-webkit-search-decoration,.van-search input::-webkit-search-results-button,.van-search input::-webkit-search-results-decoration{display:none}.van-search__action{padding:0 8px;color:#323233;font-size:14px;line-height:34px}.van-search__action:active{background-color:#f2f3f5}.van-pagination{display:-webkit-box;display:-webkit-flex;display:flex;font-size:14px;line-height:40px;text-align:center}.van-pagination__item{-webkit-box-flex:1;-webkit-flex:1;flex:1;box-sizing:border-box;min-width:36px;height:40px;color:#1989fa;background-color:#fff;-webkit-user-select:none;user-select:none}.van-pagination__item:active{color:#fff;background-color:#1989fa}.van-pagination__item::after{border-width:1px 0 1px 1px}.van-pagination__item:last-child::after{border-right-width:1px}.van-pagination__item--disabled,.van-pagination__item--disabled:active{color:#7d7e80;background-color:#f8f8f8;opacity:.5}.van-pagination__item--active{color:#fff;background-color:#1989fa}.van-pagination__next,.van-pagination__prev{padding:0 4px}.van-pagination__page{-webkit-box-flex:0;-webkit-flex-grow:0;flex-grow:0}.van-pagination__page-desc{-webkit-box-flex:1;-webkit-flex:1;flex:1;height:40px;color:#7d7e80}.van-pagination--simple .van-pagination__next::after,.van-pagination--simple .van-pagination__prev::after{border-width:1px}.van-panel{background:#fff}.van-panel__header-value{color:#ee0a24}.van-panel__footer{padding:8px 16px}.van-rate{display:-webkit-inline-box;display:-webkit-inline-flex;display:inline-flex;-webkit-user-select:none;user-select:none}.van-rate__item{position:relative}.van-rate__item:not(:last-child){padding-right:4px}.van-rate__icon{display:block;width:1em;font-size:20px}.van-rate__icon--half{position:absolute;top:0;left:0;width:.5em;overflow:hidden}.van-steps{overflow:hidden;background-color:#fff}.van-steps--horizontal{padding:10px 10px 0}.van-steps--horizontal .van-steps__items{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;margin:0 0 10px;padding-bottom:22px}.van-steps--vertical{padding:0 0 0 32px}.van-step{position:relative;-webkit-box-flex:1;-webkit-flex:1;flex:1;color:#969799;font-size:14px}.van-step__circle{display:block;width:5px;height:5px;background-color:#969799;border-radius:50%}.van-step__line{position:absolute;background-color:#ebedf0}.van-step--horizontal{float:left}.van-step--horizontal:first-child .van-step__title{margin-left:0;-webkit-transform:none;transform:none}.van-step--horizontal:last-child{position:absolute;right:1px;width:auto}.van-step--horizontal:last-child .van-step__title{margin-left:0;-webkit-transform:none;transform:none}.van-step--horizontal:last-child .van-step__circle-container{right:-9px;left:auto}.van-step--horizontal .van-step__circle-container{position:absolute;top:30px;left:-8px;z-index:1;padding:0 8px;background-color:#fff;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.van-step--horizontal .van-step__title{display:inline-block;margin-left:3px;font-size:12px;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media (max-width:321px){.van-step--horizontal .van-step__title{font-size:11px}}.van-step--horizontal .van-step__line{top:30px;left:0;width:100%;height:1px}.van-step--horizontal .van-step__icon{display:block;font-size:12px}.van-step--horizontal .van-step--process{color:#323233}.van-step--vertical{display:block;float:none;padding:10px 10px 10px 0;line-height:18px}.van-step--vertical:not(:last-child)::after{border-bottom-width:1px}.van-step--vertical:first-child::before{position:absolute;top:0;left:-15px;z-index:1;width:1px;height:20px;background-color:#fff;content:''}.van-step--vertical .van-step__circle-container{position:absolute;top:19px;left:-15px;z-index:2;font-size:12px;line-height:1;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.van-step--vertical .van-step__line{top:16px;left:-15px;width:1px;height:100%}.van-step:last-child .van-step__line{width:0}.van-step--finish{color:#323233}.van-step--finish .van-step__circle,.van-step--finish .van-step__line{background-color:#07c160}.van-sticky--fixed{position:fixed;top:0;right:0;left:0;z-index:99}.van-tag{display:-webkit-inline-box;display:-webkit-inline-flex;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;padding:.2em .5em;color:#fff;font-size:10px;line-height:normal;border-radius:.2em}.van-tag::after{border-color:currentColor;border-radius:.4em}.van-tag--default{background-color:#969799}.van-tag--default.van-tag--plain{color:#969799}.van-tag--danger{background-color:#ee0a24}.van-tag--danger.van-tag--plain{color:#ee0a24}.van-tag--primary{background-color:#1989fa}.van-tag--primary.van-tag--plain{color:#1989fa}.van-tag--success{background-color:#07c160}.van-tag--success.van-tag--plain{color:#07c160}.van-tag--warning{background-color:#ff976a}.van-tag--warning.van-tag--plain{color:#ff976a}.van-tag--plain{background-color:#fff}.van-tag--mark{padding-right:.7em}.van-tag--mark,.van-tag--mark::after{border-radius:0 999px 999px 0}.van-tag--round,.van-tag--round::after{border-radius:999px}.van-tag--medium{font-size:12px}.van-tag--large{font-size:14px}.van-tag__close{margin-left:2px}.van-tab__pane,.van-tab__pane-wrapper{-webkit-flex-shrink:0;flex-shrink:0;box-sizing:border-box;width:100%}.van-tab__pane-wrapper--inactive{height:0;overflow:visible}.van-tab{position:relative;-webkit-box-flex:1;-webkit-flex:1;flex:1;box-sizing:border-box;min-width:0;padding:0 5px;color:#7d7e80;font-size:14px;line-height:44px;text-align:center;cursor:pointer}.van-tab span{display:block}.van-tab--active{color:#323233;font-weight:500}.van-tab--disabled{color:#c8c9cc}.van-tabs{position:relative}.van-tabs__wrap{overflow:hidden}.van-tabs__wrap--page-top{position:fixed}.van-tabs__wrap--content-bottom{top:auto;bottom:0}.van-tabs__wrap--scrollable .van-tab{-webkit-box-flex:0;-webkit-flex:0 0 22%;flex:0 0 22%}.van-tabs__wrap--scrollable .van-tab--complete{-webkit-box-flex:1;-webkit-flex:1 0 auto;flex:1 0 auto}.van-tabs__wrap--scrollable .van-tabs__nav{overflow:hidden;overflow-x:auto;-webkit-overflow-scrolling:touch}.van-tabs__wrap--scrollable .van-tabs__nav::-webkit-scrollbar{display:none}.van-tabs__nav{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;background-color:#fff;-webkit-user-select:none;user-select:none}.van-tabs__nav--line{box-sizing:content-box;height:100%;padding-bottom:15px}.van-tabs__nav--card{box-sizing:border-box;height:30px;margin:0 16px;border:1px solid #ee0a24;border-radius:2px}.van-tabs__nav--card .van-tab{color:#ee0a24;line-height:28px;border-right:1px solid #ee0a24}.van-tabs__nav--card .van-tab:last-child{border-right:none}.van-tabs__nav--card .van-tab.van-tab--active{color:#fff;background-color:#ee0a24}.van-tabs__nav--card .van-tab--disabled{color:#c8c9cc}.van-tabs__line{position:absolute;bottom:15px;left:0;z-index:1;height:3px;background-color:#ee0a24;border-radius:3px}.van-tabs__track{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;width:100%;height:100%;will-change:left}.van-tabs__content--animated{overflow:hidden}.van-tabs--line .van-tabs__wrap{height:44px}.van-tabs--card>.van-tabs__wrap{height:30px}.van-tabbar{display:-webkit-box;display:-webkit-flex;display:flex;width:100%;height:50px;background-color:#fff}.van-tabbar--fixed{position:fixed;bottom:0;left:0}.van-tabbar--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-tabbar-item{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-flex:1;-webkit-flex:1;flex:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;color:#7d7e80;font-size:12px;line-height:1}.van-tabbar-item__icon{position:relative;margin-bottom:5px;font-size:18px}.van-tabbar-item__icon .van-icon{display:block;min-width:1em}.van-tabbar-item__icon img{display:block;height:18px}.van-tabbar-item--active{color:#1989fa}.van-tabbar-item .van-info{margin-top:2px}.van-image-preview{position:fixed;top:0;left:0;width:100%;height:100%}.van-image-preview__swipe{height:100%}.van-image-preview__cover,.van-image-preview__image{position:absolute;top:0;left:0}.van-image-preview__image{right:0;bottom:0;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.van-image-preview__image .van-image__loading{background-color:transparent}.van-image-preview__index{position:absolute;top:10px;left:50%;color:#fff;font-size:14px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0)}.van-image-preview__overlay{background-color:rgba(0,0,0,.9)}.van-progress{position:relative;height:4px;background:#e5e5e5;border-radius:4px}.van-progress__portion{position:absolute;left:0;height:100%;background:#1989fa;border-radius:inherit}.van-progress__pivot{position:absolute;top:50%;box-sizing:border-box;min-width:3.6em;padding:0 5px;color:#fff;font-size:10px;line-height:1.6;text-align:center;word-break:keep-all;background-color:#1989fa;border-radius:1em;-webkit-transform:translate(0,-50%);transform:translate(0,-50%)}.van-sidebar{width:85px}.van-sidebar-item{display:block;box-sizing:border-box;padding:20px 12px 20px 8px;overflow:hidden;color:#323233;font-size:14px;line-height:20px;word-wrap:break-word;background-color:#fafafa;border-left:3px solid transparent;-webkit-user-select:none;user-select:none}.van-sidebar-item__text{position:relative;display:inline-block}.van-sidebar-item:active{background-color:#f2f3f5}.van-sidebar-item:not(:last-child)::after{border-bottom-width:1px}.van-sidebar-item--select{color:#323233;font-weight:500;border-color:#ee0a24;background-color:#fff}.van-sidebar-item--select::after{border-right-width:1px}.van-sidebar-item--select:active{background-color:#fff}.van-sidebar-item--disabled{color:#c8c9cc}.van-sidebar-item--disabled:active{background-color:#fafafa}.van-skeleton{display:-webkit-box;display:-webkit-flex;display:flex;padding:0 16px}.van-skeleton__avatar{-webkit-flex-shrink:0;flex-shrink:0;margin-right:16px;background-color:#f2f3f5}.van-skeleton__avatar--round{border-radius:100%}.van-skeleton__content{width:100%}.van-skeleton__avatar+.van-skeleton__content{padding-top:8px}.van-skeleton__row,.van-skeleton__title{height:16px;background-color:#f2f3f5}.van-skeleton__title{margin:0}.van-skeleton__row:not(:first-child){margin-top:12px}.van-skeleton__title+.van-skeleton__row{margin-top:20px}.van-skeleton--animate{-webkit-animation:van-skeleton-blink 1.2s ease-in-out infinite;animation:van-skeleton-blink 1.2s ease-in-out infinite}.van-slider,.van-slider__bar{position:relative;background-color:#e5e5e5;border-radius:999px}.van-slider::before{position:absolute;top:-8px;right:0;bottom:-8px;left:0;content:''}.van-slider__bar{background-color:#1989fa;border-radius:inherit;-webkit-transition:width .2s;transition:width .2s}.van-slider__button{width:24px;height:24px;background-color:#fff;border-radius:50%;box-shadow:0 1px 2px rgba(0,0,0,.5)}.van-slider__button-wrapper{position:absolute;top:50%;right:0;-webkit-transform:translate3d(50%,-50%,0);transform:translate3d(50%,-50%,0)}.van-slider--disabled{opacity:.5}.van-slider--vertical{display:inline-block;height:100%}.van-slider--vertical .van-slider__button-wrapper{top:auto;bottom:0;-webkit-transform:translate3d(50%,50%,0);transform:translate3d(50%,50%,0)}.van-stepper{font-size:0;-webkit-user-select:none;user-select:none}.van-stepper__minus,.van-stepper__plus{position:relative;box-sizing:border-box;width:28px;height:28px;margin:0;padding:4px;color:#323233;vertical-align:middle;background-color:#f2f3f5;border:0}.van-stepper__minus::before,.van-stepper__plus::before{width:13px;height:1px}.van-stepper__minus::after,.van-stepper__plus::after{width:1px;height:13px}.van-stepper__minus::after,.van-stepper__minus::before,.van-stepper__plus::after,.van-stepper__plus::before{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;background-color:currentColor;content:''}.van-stepper__minus:active,.van-stepper__plus:active{background-color:#e8e8e8}.van-stepper__minus--disabled,.van-stepper__plus--disabled{color:#c8c9cc;background-color:#f7f8fa}.van-stepper__minus--disabled:active,.van-stepper__plus--disabled:active{background-color:#f7f8fa}.van-stepper__minus{border-radius:4px 0 0 4px}.van-stepper__minus::after{display:none}.van-stepper__plus{border-radius:0 4px 4px 0}.van-stepper__input{box-sizing:border-box;width:32px;height:28px;margin:0 2px;padding:0;color:#323233;font-size:14px;text-align:center;vertical-align:middle;background-color:#f2f3f5;border:0;border-width:1px 0;border-radius:0;-webkit-appearance:none}.van-stepper__input[disabled]{color:#c8c9cc;background-color:#f2f3f5}.van-stepper input[type=number]::-webkit-inner-spin-button,.van-stepper input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.van-swipe{position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.van-swipe__track{height:100%}.van-swipe__indicators{position:absolute;bottom:12px;left:50%;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.van-swipe__indicators--vertical{top:50%;bottom:auto;left:12px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.van-swipe__indicators--vertical .van-swipe__indicator:not(:last-child){margin-bottom:6px}.van-swipe__indicator{width:6px;height:6px;background-color:#ebedf0;border-radius:100%;opacity:.3;-webkit-transition:opacity .2s;transition:opacity .2s}.van-swipe__indicator:not(:last-child){margin-right:6px}.van-swipe__indicator--active{background-color:#1989fa;opacity:1}.van-swipe-item{float:left;height:100%}.van-index-anchor{padding:0 16px;color:#323233;font-weight:500;font-size:14px;line-height:32px;background-color:transparent}.van-index-anchor--sticky{position:fixed;top:0;right:0;left:0;background-color:#fff}.van-index-bar__sidebar{position:fixed;top:50%;right:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;text-align:center;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-user-select:none;user-select:none}.van-index-bar__index{padding:0 4px 0 16px;font-weight:500;font-size:10px;line-height:14px}.van-checkbox{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;overflow:hidden;-webkit-user-select:none;user-select:none}.van-checkbox__icon{-webkit-box-flex:0;-webkit-flex:none;flex:none;height:1em;font-size:20px;line-height:1em}.van-checkbox__icon .van-icon{display:block;box-sizing:border-box;width:1.25em;height:1.25em;color:transparent;font-size:.8em;line-height:inherit;text-align:center;border:1px solid #e5e5e5;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:color,border-color,background-color;transition-property:color,border-color,background-color}.van-checkbox__icon--round .van-icon{border-radius:100%}.van-checkbox__icon--checked .van-icon{color:#fff;background-color:#1989fa;border-color:#1989fa}.van-checkbox__icon--disabled .van-icon{background-color:#ebedf0;border-color:#c8c9cc}.van-checkbox__icon--disabled.van-checkbox__icon--checked .van-icon{color:#c8c9cc}.van-checkbox__label{margin-left:8px;color:#323233;line-height:20px}.van-checkbox__label--left{margin:0 8px 0 0}.van-checkbox__label--disabled,.van-radio__icon--disabled.van-radio__icon--checked .van-icon{color:#c8c9cc}.van-field__label{-webkit-box-flex:0;-webkit-flex:none;flex:none;width:90px}.van-field__label--center{text-align:center}.van-field__label--right{text-align:right}.van-field__body{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center}.van-field__control{display:block;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:0;color:#323233;text-align:left;background-color:transparent;border:0;resize:none}.van-field__control::-webkit-input-placeholder{color:#969799}.van-field__control::placeholder{color:#969799}.van-field__control:disabled{color:#969799;-webkit-text-fill-color:#969799;background-color:transparent;opacity:1}.van-field__control--center{text-align:center}.van-field__control--right{text-align:right}.van-field__control[type=date],.van-field__control[type=datetime-local],.van-field__control[type=time]{min-height:24px}.van-field__control[type=search]{-webkit-appearance:none}.van-field__button,.van-field__clear,.van-field__icon,.van-field__right-icon{-webkit-flex-shrink:0;flex-shrink:0}.van-field__clear,.van-field__right-icon{margin-right:-8px;padding:0 8px;line-height:inherit}.van-field__clear{color:#c8c9cc;font-size:16px}.van-field__left-icon .van-icon,.van-field__right-icon .van-icon{display:block;min-width:1em;font-size:16px;line-height:inherit}.van-field__left-icon{margin-right:5px}.van-field__right-icon{color:#969799}.van-field__button{padding-left:8px}.van-field__error-message{color:#ee0a24;font-size:12px;text-align:left}.van-field__error-message--center{text-align:center}.van-field__error-message--right{text-align:right}.van-field__word-limit{margin-top:4px;color:#7d7e80;font-size:12px;line-height:16px;text-align:right}.van-field--error .van-field__control,.van-field--error .van-field__control::-webkit-input-placeholder{color:#ee0a24;-webkit-text-fill-color:#ee0a24}.van-field--error .van-field__control,.van-field--error .van-field__control::placeholder{color:#ee0a24;-webkit-text-fill-color:#ee0a24}.van-field--min-height .van-field__control{min-height:60px}.van-radio{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;overflow:hidden;-webkit-user-select:none;user-select:none}.van-radio__icon{-webkit-box-flex:0;-webkit-flex:none;flex:none;height:1em;font-size:20px;line-height:1em}.van-radio__icon .van-icon{display:block;box-sizing:border-box;width:1.25em;height:1.25em;color:transparent;font-size:.8em;line-height:inherit;text-align:center;border:1px solid #e5e5e5;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:color,border-color,background-color;transition-property:color,border-color,background-color}.van-radio__icon--round .van-icon{border-radius:100%}.van-radio__icon--checked .van-icon{color:#fff;background-color:#1989fa;border-color:#1989fa}.van-radio__icon--disabled .van-icon{background-color:#ebedf0;border-color:#c8c9cc}.van-radio__label{margin-left:8px;color:#323233;line-height:20px}.van-radio__label--left{margin:0 8px 0 0}.van-radio__label--disabled{color:#c8c9cc}.van-switch,.van-switch__node{height:1em;background-color:#fff}.van-switch{display:inline-block;box-sizing:content-box;font-size:30px;border:1px solid rgba(0,0,0,.1);-webkit-transition:background-color .3s;transition:background-color .3s;position:relative;width:2em;border-radius:1em}.van-switch__node{position:absolute;top:0;left:0;z-index:1;width:1em;border-radius:100%;box-shadow:0 3px 1px 0 rgba(0,0,0,.05),0 2px 2px 0 rgba(0,0,0,.1),0 3px 3px 0 rgba(0,0,0,.05);-webkit-transition:-webkit-transform .3s cubic-bezier(.3,1.05,.4,1.05);transition:transform .3s cubic-bezier(.3,1.05,.4,1.05);transition:transform .3s cubic-bezier(.3,1.05,.4,1.05),-webkit-transform .3s cubic-bezier(.3,1.05,.4,1.05)}.van-switch__loading{top:25%;left:25%;width:50%;height:50%;line-height:1}.van-switch--on{background-color:#1989fa}.van-switch--on .van-switch__node{-webkit-transform:translateX(1em);transform:translateX(1em)}.van-switch--disabled{opacity:.5}.van-uploader{position:relative;display:inline-block}.van-uploader__wrapper{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.van-uploader__input{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;cursor:pointer;opacity:0}.van-uploader__input-wrapper{position:relative}.van-uploader__upload{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;width:80px;height:80px;margin:0 8px 8px 0;background-color:#fff;border:1px dashed #e5e5e5;border-radius:4px}.van-uploader__upload-icon{color:#969799;font-size:24px}.van-uploader__upload-text{margin-top:8px;color:#969799;font-size:12px}.van-uploader__preview{position:relative;margin:0 8px 8px 0}.van-uploader__preview-image{display:block;width:80px;height:80px}.van-uploader__preview-delete{position:absolute;top:-8px;right:-8px;color:#969799;font-size:18px;background-color:#fff;border-radius:100%}.van-uploader__file{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;width:80px;height:80px;background-color:#f8f8f8;border-radius:4px}.van-uploader__file-icon{color:#7d7e80;font-size:20px}.van-uploader__file-name{box-sizing:border-box;width:100%;margin-top:8px;padding:0 4px;color:#7d7e80;font-size:12px;text-align:center}.van-password-input{position:relative;margin:0 16px;-webkit-user-select:none;user-select:none}.van-password-input__error-info,.van-password-input__info{margin-top:16px;font-size:14px;text-align:center}.van-password-input__info{color:#969799}.van-password-input__error-info{color:#ee0a24}.van-password-input__security{display:-webkit-box;display:-webkit-flex;display:flex;width:100%;height:50px}.van-password-input__security::after{border-radius:6px}.van-password-input__security li{position:relative;-webkit-box-flex:1;-webkit-flex:1;flex:1;height:100%;font-size:20px;line-height:50px;text-align:center;background-color:#fff}.van-password-input__security i{position:absolute;top:50%;left:50%;width:10px;height:10px;margin:-5px 0 0 -5px;background-color:#000;border-radius:100%;visibility:hidden}.van-password-input__cursor{position:absolute;top:50%;left:50%;width:1px;height:40%;background-color:#323233;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:1s van-cursor-flicker infinite;animation:1s van-cursor-flicker infinite}.van-number-keyboard{position:fixed;bottom:0;left:0;width:100%;background-color:#fff;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out;-webkit-user-select:none;user-select:none}.van-number-keyboard__title{position:relative;height:30px;color:#7d7e80;font-size:14px;line-height:30px;text-align:center}.van-number-keyboard__title-left{position:absolute;left:0}.van-number-keyboard__body{position:relative;box-sizing:border-box}.van-number-keyboard__close{position:absolute;right:0;padding:0 16px;color:#1989fa;font-size:14px}.van-number-keyboard__close:active{background-color:#f2f3f5}.van-number-keyboard__sidebar{position:absolute;right:0;bottom:0;width:25%;height:216px}.van-number-keyboard--custom .van-number-keyboard__body{padding-right:25%}.van-number-keyboard--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-key{display:inline-block;width:33.33333333%;height:54px;font-size:24px;font-style:normal;line-height:54px;text-align:center;vertical-align:middle}.van-key::after{border-width:1px 1px 0 0}.van-key--middle{width:66.66666667%}.van-key--big{width:100%;height:108px;line-height:108px}.van-key--blue,.van-key--delete{font-size:16px}.van-key--blue{color:#fff}.van-key--blue,.van-key--blue.van-key--active{background-color:#1989fa}.van-key--blue::after{border-color:#1989fa}.van-key--blue:active{background-color:#0570db}.van-key--gray{background-color:#ebedf0}.van-action-sheet__cancel:active,.van-action-sheet__item:active,.van-key--active{background-color:#f2f3f5}.van-action-sheet{max-height:90%;color:#323233}.van-action-sheet__cancel,.van-action-sheet__item{display:block;width:100%;font-size:16px;line-height:50px;text-align:center;background-color:#fff;border:0}.van-action-sheet__item{height:50px}.van-action-sheet__item--disabled{color:#c8c9cc}.van-action-sheet__item--disabled:active{background-color:#fff}.van-action-sheet__subname{margin-left:4px;color:#7d7e80;font-size:12px}.van-action-sheet__cancel::before{display:block;height:8px;background-color:#f8f8f8;content:' '}.van-action-sheet__header{font-weight:500;font-size:16px;line-height:44px;text-align:center}.van-action-sheet__description{padding:16px;color:#7d7e80;font-size:14px;line-height:20px;text-align:center}.van-action-sheet__close{position:absolute;top:0;right:0;padding:0 12px;color:#969799;font-size:18px;line-height:inherit}.van-dialog{position:fixed;top:45%;left:50%;width:320px;overflow:hidden;font-size:16px;background-color:#fff;border-radius:16px;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:.3s;transition:.3s;-webkit-transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform}@media (max-width:321px){.van-dialog{width:90%}}.van-dialog__header{padding-top:24px;font-weight:500;line-height:24px;text-align:center}.van-dialog__header--isolated{padding:24px 0}.van-dialog__message{max-height:60vh;padding:24px;overflow-y:auto;font-size:14px;line-height:20px;white-space:pre-wrap;text-align:center;word-wrap:break-word;-webkit-overflow-scrolling:touch}.van-dialog__message--has-title{padding-top:12px;color:#7d7e80}.van-dialog__message--left{text-align:left}.van-dialog__message--right{text-align:right}.van-dialog__footer{overflow:hidden;-webkit-user-select:none;user-select:none}.van-dialog__footer--buttons{display:-webkit-box;display:-webkit-flex;display:flex}.van-dialog__footer--buttons .van-button{-webkit-box-flex:1;-webkit-flex:1;flex:1}.van-dialog .van-button{border:0}.van-dialog__confirm,.van-dialog__confirm:active{color:#1989fa}.van-dialog-bounce-enter{-webkit-transform:translate3d(-50%,-50%,0) scale(.7);transform:translate3d(-50%,-50%,0) scale(.7);opacity:0}.van-dialog-bounce-leave-active{-webkit-transform:translate3d(-50%,-50%,0) scale(.9);transform:translate3d(-50%,-50%,0) scale(.9);opacity:0}.van-dropdown-item{position:fixed;right:0;left:0;overflow:hidden}.van-dropdown-item__option{text-align:left}.van-dropdown-item__option--active,.van-dropdown-item__option--active .van-dropdown-item__icon{color:#1989fa}.van-dropdown-item--up{top:0}.van-dropdown-item--down{bottom:0}.van-dropdown-item__content{position:absolute;max-height:80%}.van-dropdown-item__icon{display:block;line-height:inherit}.van-dropdown-menu,.van-dropdown-menu__item{display:-webkit-box;display:-webkit-flex;display:flex}.van-dropdown-menu{height:50px;background-color:#fff;-webkit-user-select:none;user-select:none}.van-dropdown-menu__item{-webkit-box-flex:1;-webkit-flex:1;flex:1;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;min-width:0}.van-dropdown-menu__item:active{opacity:.7}.van-dropdown-menu__item--disabled:active{opacity:1}.van-dropdown-menu__item--disabled .van-dropdown-menu__title{color:#969799}.van-dropdown-menu__title{position:relative;box-sizing:border-box;max-width:100%;padding:0 8px;color:#323233;font-size:15px;line-height:18px}.van-dropdown-menu__title::after{position:absolute;top:50%;right:-4px;margin-top:-5px;border:3px solid;border-color:transparent transparent currentColor currentColor;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:.8;content:''}.van-dropdown-menu__title--active{color:#1989fa}.van-dropdown-menu__title--down::after{margin-top:-1px;-webkit-transform:rotate(135deg);transform:rotate(135deg)}.van-picker{position:relative;background-color:#fff;-webkit-user-select:none;user-select:none;-webkit-text-size-adjust:100%}.van-picker__toolbar{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;height:44px;line-height:44px}.van-picker__cancel,.van-picker__confirm{padding:0 16px;color:#1989fa;font-size:14px;background-color:transparent;border:0}.van-picker__cancel:active,.van-picker__confirm:active{background-color:#f2f3f5}.van-picker__title{max-width:50%;font-weight:500;font-size:16px;text-align:center}.van-picker__columns,.van-picker__loading{position:relative;display:-webkit-box;display:-webkit-flex;display:flex}.van-picker__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;color:#1989fa;background-color:rgba(255,255,255,.9)}.van-picker__frame,.van-picker__mask{position:absolute;left:0;width:100%;pointer-events:none}.van-picker__frame{-webkit-transform:translateY(-50%);transform:translateY(-50%);top:50%;z-index:3}.van-picker__mask{top:0;z-index:2;height:100%;background-image:-webkit-linear-gradient(top,rgba(255,255,255,.9),rgba(255,255,255,.4)),-webkit-linear-gradient(bottom,rgba(255,255,255,.9),rgba(255,255,255,.4));background-image:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.4)),linear-gradient(0deg,rgba(255,255,255,.9),rgba(255,255,255,.4));background-repeat:no-repeat;background-position:top,bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden}.van-picker-column{-webkit-box-flex:1;-webkit-flex:1;flex:1;overflow:hidden;font-size:16px;text-align:center}.van-picker-column__wrapper{-webkit-transition-timing-function:cubic-bezier(.23,1,.68,1);transition-timing-function:cubic-bezier(.23,1,.68,1)}.van-picker-column__item{padding:0 5px;color:#000}.van-picker-column__item--disabled{opacity:.3}.van-pull-refresh{overflow:hidden;-webkit-user-select:none;user-select:none}.van-pull-refresh__track{position:relative;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.van-pull-refresh__head{position:absolute;top:-50px;left:0;width:100%;height:50px;overflow:hidden;color:#969799;font-size:14px;line-height:50px;text-align:center}.van-notify{box-sizing:border-box;padding:8px 16px;font-size:14px;line-height:20px;white-space:pre-wrap;text-align:center;word-wrap:break-word}.van-notify--primary{background-color:#1989fa}.van-notify--success{background-color:#07c160}.van-notify--danger{background-color:#ee0a24}.van-notify--warning{background-color:#ff976a}.van-toast{position:fixed;top:50%;left:50%;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;box-sizing:content-box;width:90px;max-width:70%;min-height:90px;padding:16px;color:#fff;font-size:14px;line-height:20px;white-space:pre-wrap;text-align:center;word-wrap:break-word;background-color:rgba(50,50,51,.88);border-radius:4px;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}.van-toast--unclickable *{pointer-events:none}.van-toast--html,.van-toast--text{width:-webkit-fit-content;width:fit-content;min-width:96px;min-height:unset;padding:8px 12px}.van-toast--html .van-toast__text,.van-toast--text .van-toast__text{margin-top:0}.van-toast--top{top:50px}.van-toast--bottom{top:auto;bottom:50px}.van-toast__icon{font-size:40px}.van-toast__loading{padding:4px;color:#fff}.van-toast__text{margin-top:8px}.van-swipe-cell{position:relative;overflow:hidden}.van-swipe-cell__wrapper{-webkit-transition-timing-function:cubic-bezier(.18,.89,.32,1);transition-timing-function:cubic-bezier(.18,.89,.32,1);-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.van-swipe-cell__left,.van-swipe-cell__right{position:absolute;top:0;height:100%}.van-swipe-cell__left{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.van-swipe-cell__right{right:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.van-switch-cell{padding-top:9px;padding-bottom:9px}.van-switch-cell--large{padding-top:11px;padding-bottom:11px}.van-switch-cell .van-switch{float:right}.van-tree-select{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;font-size:14px;-webkit-user-select:none;user-select:none}.van-tree-select__nav{-webkit-box-flex:1;-webkit-flex:1;flex:1;overflow-y:auto;background-color:#fafafa;-webkit-overflow-scrolling:touch}.van-tree-select__nav-item{padding:12px 8px 12px 12px}.van-tree-select__content{-webkit-box-flex:2;-webkit-flex:2;flex:2;overflow-y:auto;background-color:#fff;-webkit-overflow-scrolling:touch}.van-tree-select__item{position:relative;padding:0 32px 0 16px;font-weight:700;line-height:44px}.van-tree-select__item--active{color:#ee0a24}.van-tree-select__item--disabled{color:#c8c9cc}.van-tree-select__selected{position:absolute;top:50%;right:16px;margin-top:-8px}.van-address-edit__buttons{padding:32px 16px}.van-address-edit__buttons .van-button{margin-bottom:12px}.van-address-edit-detail{padding:0}.van-address-edit-detail__finish{color:#1989fa;font-size:12px}.van-address-list{box-sizing:border-box;height:100%;padding-bottom:100px}.van-address-list__add{position:fixed;bottom:0;left:0;z-index:999}.van-address-list__disabled-text{padding:0 16px;color:#969799;font-size:12px;line-height:30px}.van-address-item{padding:16px}.van-address-item__value{padding-right:32px}.van-address-item__name{margin-bottom:4px;font-weight:500;font-size:14px;line-height:20px}.van-address-item__address{color:#7d7e80;font-size:12px;line-height:16px}.van-address-item--disabled .van-address-item__address,.van-address-item--disabled .van-address-item__name{color:#969799}.van-address-item__edit{position:absolute;top:50%;right:16px;font-size:16px;-webkit-transform:translate(0,-50%);transform:translate(0,-50%)}.van-address-item .van-radio__icon--checked .van-icon{background-color:#ee0a24;border-color:#ee0a24}.van-card{position:relative;box-sizing:border-box;padding:8px 16px;color:#323233;font-size:12px;background-color:#fafafa}.van-card:not(:first-child){margin-top:8px}.van-card__header{display:-webkit-box;display:-webkit-flex;display:flex}.van-card__thumb{position:relative;-webkit-box-flex:0;-webkit-flex:none;flex:none;width:90px;height:90px;margin-right:8px}.van-card__content{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-flex:1;-webkit-flex:1;flex:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;min-width:0;min-height:90px}.van-card__content--centered{-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.van-card__desc,.van-card__title{word-wrap:break-word}.van-card__title{max-height:32px;font-weight:500;line-height:16px}.van-card__desc{max-height:20px;color:#7d7e80}.van-card__bottom,.van-card__desc{line-height:20px}.van-card__price{display:inline-block;color:#ee0a24;font-weight:500}.van-card__origin-price{display:inline-block;margin-left:5px;color:#7d7e80;font-size:10px;text-decoration:line-through}.van-card__num{float:right}.van-card__tag{position:absolute;top:2px;left:0}.van-card__footer{-webkit-box-flex:0;-webkit-flex:none;flex:none;text-align:right}.van-card__footer .van-button{margin-left:5px}.van-contact-card{padding:16px}.van-contact-card__value{margin-left:5px;line-height:20px}.van-contact-card--add .van-contact-card__value{line-height:40px}.van-contact-card--add .van-cell__left-icon{color:#1989fa;font-size:40px}.van-contact-card::before{position:absolute;right:0;bottom:0;left:0;height:2px;background:-webkit-repeating-linear-gradient(135deg,#ff6c6c 0,#ff6c6c 20%,transparent 0,transparent 25%,#1989fa 0,#1989fa 45%,transparent 0,transparent 50%);background:repeating-linear-gradient(-45deg,#ff6c6c 0,#ff6c6c 20%,transparent 0,transparent 25%,#1989fa 0,#1989fa 45%,transparent 0,transparent 50%);background-size:80px;content:''}.van-contact-list{box-sizing:border-box;height:100%;padding-bottom:50px}.van-contact-list__item{padding:16px}.van-contact-list__item-value{padding-right:32px}.van-contact-list__group{box-sizing:border-box;height:100%;overflow-y:scroll;-webkit-overflow-scrolling:touch}.van-contact-list__name{font-weight:500;font-size:14px;line-height:20px}.van-contact-list__edit{position:absolute;top:50%;right:16px;font-size:16px;-webkit-transform:translate(0,-50%);transform:translate(0,-50%)}.van-contact-list__add{position:fixed;bottom:0;left:0;z-index:999}.van-contact-edit__buttons{padding:32px 16px}.van-contact-edit .van-cell__title{max-width:65px}.van-contact-edit .van-button{margin-bottom:12px}.van-coupon{margin:0 16px 16px;overflow:hidden;background-color:#fff;border-radius:4px;box-shadow:0 0 4px rgba(0,0,0,.1)}.van-coupon:active{background-color:#f2f3f5}.van-coupon__content{display:-webkit-box;display:-webkit-flex;display:flex;box-sizing:border-box;height:100px;padding:24px 0 0 16px}.van-coupon h2,.van-coupon p{margin:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.van-coupon h2{height:34px;font-weight:500;line-height:34px}.van-coupon p{color:#969799;font-size:12px;line-height:16px}.van-coupon__head{position:relative;min-width:85px;padding-right:8px}.van-coupon__head p{white-space:pre-wrap}.van-coupon__amount{color:#ee0a24;font-size:24px}.van-coupon__amount span{font-size:50%}.van-coupon__amount span:not(:empty){margin-left:2px}.van-coupon__body{position:relative;-webkit-box-flex:1;-webkit-flex:1;flex:1;border-radius:0 4px 4px 0}.van-coupon__name{font-size:16px}.van-coupon__corner{position:absolute;top:16px;right:16px}.van-coupon__description{padding:8px 16px;background-color:#fafafa;border-top:1px dashed #ebedf0}.van-coupon--disabled:active{background-color:#fff}.van-coupon--disabled .van-coupon-item__content{height:90px}.van-coupon--disabled h2,.van-coupon--disabled p,.van-coupon--disabled span{color:#969799}.van-coupon-cell--selected{color:#323233}.van-coupon-list{position:relative;height:100%;background-color:#f8f8f8}.van-coupon-list__field{padding:8px 16px}.van-coupon-list__exchange{height:32px;line-height:30px}.van-coupon-list__list{box-sizing:border-box;padding:16px 0;overflow-y:auto;-webkit-overflow-scrolling:touch}.van-coupon-list__close{position:absolute;bottom:0;left:0;font-weight:500}.van-coupon-list__empty{padding-top:60px;text-align:center}.van-coupon-list__empty p{margin:16px 0;color:#969799;font-size:14px;line-height:20px}.van-coupon-list__empty img{width:200px;height:200px}.van-goods-action{position:fixed;right:0;bottom:0;left:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;background-color:#fff}.van-goods-action--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-goods-action-button{-webkit-box-flex:1;-webkit-flex:1;flex:1;height:40px;font-weight:500;font-size:14px;line-height:normal;border:0}.van-goods-action-button--first{margin-left:5px;border-top-left-radius:20px;border-bottom-left-radius:20px}.van-goods-action-button--last{margin-right:5px;border-top-right-radius:20px;border-bottom-right-radius:20px}.van-goods-action-button--warning{background:-webkit-linear-gradient(left,#ffd01e,#ff8917);background:linear-gradient(to right,#ffd01e,#ff8917)}.van-goods-action-button--danger{background:-webkit-linear-gradient(left,#ff6034,#ee0a24);background:linear-gradient(to right,#ff6034,#ee0a24)}@media (max-width:321px){.van-goods-action-button{font-size:13px}}.van-goods-action-icon{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;min-width:48px;height:50px;color:#7d7e80;font-size:10px;line-height:1;text-align:center;background-color:#fff}.van-goods-action-icon:active{background-color:#f2f3f5}.van-goods-action-icon__icon{width:1em;margin:0 auto 5px;color:#323233;font-size:18px}.van-submit-bar{position:fixed;bottom:0;left:0;z-index:100;width:100%;background-color:#fff;-webkit-user-select:none;user-select:none}.van-submit-bar__tip{padding:8px 12px;color:#f56723;font-size:12px;line-height:1.5;background-color:#fff7cc}.van-submit-bar__tip-icon{min-width:18px;font-size:12px;vertical-align:middle}.van-submit-bar__tip-text{vertical-align:middle}.van-submit-bar__bar{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end;height:50px;font-size:14px}.van-submit-bar__text{-webkit-box-flex:1;-webkit-flex:1;flex:1;padding-right:12px;color:#323233;font-weight:500;text-align:right}.van-submit-bar__text span{display:inline-block}.van-submit-bar__suffix-label{margin-left:5px}.van-submit-bar__price{color:#ee0a24;font-size:18px}.van-submit-bar__price::first-letter{font-size:14px}.van-submit-bar__button{width:110px}.van-submit-bar--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-sku-container{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-webkit-align-items:stretch;align-items:stretch;min-height:50%;max-height:80%;overflow-y:visible;font-size:14px;background:#fff}.van-sku-body{-webkit-box-flex:1;-webkit-flex:1 1 auto;flex:1 1 auto;min-height:44px;overflow-y:scroll;-webkit-overflow-scrolling:touch}.van-sku-body::-webkit-scrollbar{display:none}.van-sku-header{margin-left:16px}.van-sku-header__img-wrap{position:relative;float:left;width:96px;height:96px;margin:12px 0;overflow:hidden;background:#f8f8f8;border-radius:4px}.van-sku-header__img-wrap img{position:absolute;top:0;right:0;bottom:0;left:0;max-width:100%;max-height:100%;margin:auto}.van-sku-header__goods-info{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end;min-height:96px;padding:12px 36px 12px 8px;overflow:hidden}.van-sku-header-item{margin-top:8px;color:#969799;font-size:12px;line-height:16px}.van-sku__price-num,.van-sku__price-symbol{font-size:16px;vertical-align:middle}.van-sku__price-num{font-weight:500;font-size:22px;word-wrap:break-word}.van-sku__goods-price{color:#ee0a24}.van-sku__price-tag{position:relative;display:inline-block;margin-left:8px;padding:0 5px;overflow:hidden;color:#ee0a24;font-size:12px;line-height:16px;vertical-align:middle;border-radius:8px}.van-sku__price-tag::before{position:absolute;top:0;left:0;width:100%;height:100%;background:currentColor;opacity:.1;content:''}.van-sku-group-container{margin-left:16px;padding:12px 0 2px}.van-sku-group-container--hide-soldout .van-sku-row__item--disabled{display:none}.van-sku-row{margin:0 3px 12px 0}.van-sku-row:last-child{margin-bottom:0}.van-sku-row__title{padding-bottom:12px}.van-sku-row__item{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;min-width:40px;margin:0 12px 12px 0;overflow:hidden;color:#323233;font-size:13px;line-height:16px;vertical-align:middle;border-radius:4px}.van-sku-row__item::before{position:absolute;top:0;left:0;width:100%;height:100%;background:#f7f8fa;content:''}.van-sku-row__item-img{z-index:1;width:24px;height:24px;margin:4px 0 4px 4px;object-fit:cover;border-radius:2px}.van-sku-row__item-name{z-index:1;padding:8px}.van-sku-row__item--active{color:#ee0a24}.van-sku-row__item--active::before{background:currentColor;opacity:.1}.van-sku-row__item--disabled{color:#c8c9cc;background:#f2f3f5}.van-sku-row__item--disabled .van-sku-row__item-img{opacity:.3}.van-sku-stepper-stock{margin-left:16px;padding:12px 0}.van-sku-stepper-container{height:30px;margin-right:20px}.van-sku__stepper{float:right}.van-sku__stepper-title{float:left;line-height:30px}.van-sku__stock{display:inline-block;margin-right:8px;color:#969799;font-size:12px}.van-sku__stock-num--highlight{color:#ee0a24}.van-sku__quota{display:inline-block;color:#ee0a24;font-size:12px}.van-sku-messages{padding-bottom:32px}.van-sku-messages__image-cell .van-cell__title{max-width:90px}.van-sku-messages__image-cell .van-cell__value{overflow:visible;text-align:left}.van-sku-img-uploader{display:inline-block}.van-sku-img-uploader__uploader{vertical-align:middle}.van-sku-img-uploader__img{position:relative;float:left;width:64px;height:64px;margin-right:8px;background:#f7f8fa;border-radius:2px}.van-sku-img-uploader__img img{width:100%;height:100%;object-fit:contain}.van-sku-img-uploader__delete{position:absolute;top:-12px;right:-14px;z-index:1;padding:6px;color:rgba(50,50,51,.8);opacity:.8}.van-sku-img-uploader__delete::before{background-color:#fff;border-radius:14px}.van-sku-img-uploader__mask{position:absolute;top:0;left:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;width:100%;height:100%;color:#fff;background:rgba(50,50,51,.8)}.van-sku-img-uploader__warn-text{margin-top:6px;font-size:12px;line-height:14px}.van-sku-actions,.van-sku-img-uploader__trigger{display:-webkit-box;display:-webkit-flex;display:flex}.van-sku-img-uploader__trigger{-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;width:100%;height:100%;color:#dcdde0}.van-sku-actions{-webkit-flex-shrink:0;flex-shrink:0;padding:8px 16px}.van-sku-actions .van-button{height:40px;font-weight:500;font-size:14px;line-height:34px;border:0;border-radius:0}.van-sku-actions .van-button:first-of-type{border-top-left-radius:20px;border-bottom-left-radius:20px}.van-sku-actions .van-button:last-of-type{border-top-right-radius:20px;border-bottom-right-radius:20px}.van-sku-actions .van-button--warning{background:-webkit-linear-gradient(left,#ffd01e,#ff8917);background:linear-gradient(to right,#ffd01e,#ff8917)}.van-sku-actions .van-button--danger{background:-webkit-linear-gradient(left,#ff6034,#ee0a24);background:linear-gradient(to right,#ff6034,#ee0a24)}
0 \ No newline at end of file 2 \ No newline at end of file
src/main/resources/static/pageTemplates/css/vant_v2.2.12.min.css 0 → 100644
  1 +/**
  2 + * Skipped minification because the original files appears to be already minified.
  3 + * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
  4 + */
  5 +@-webkit-keyframes van-slide-up-enter{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes van-slide-up-enter{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes van-slide-up-leave{to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes van-slide-up-leave{to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes van-slide-down-enter{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes van-slide-down-enter{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-webkit-keyframes van-slide-down-leave{to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes van-slide-down-leave{to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-webkit-keyframes van-slide-left-enter{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes van-slide-left-enter{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes van-slide-left-leave{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes van-slide-left-leave{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes van-slide-right-enter{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes van-slide-right-enter{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@-webkit-keyframes van-slide-right-leave{to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes van-slide-right-leave{to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@-webkit-keyframes van-fade-in{0%{opacity:0}to{opacity:1}}@keyframes van-fade-in{0%{opacity:0}to{opacity:1}}@-webkit-keyframes van-fade-out{0%{opacity:1}to{opacity:0}}@keyframes van-fade-out{0%{opacity:1}to{opacity:0}}@-webkit-keyframes van-rotate{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes van-rotate{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes van-circular{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40}to{stroke-dasharray:90,150;stroke-dashoffset:-120}}@keyframes van-circular{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40}to{stroke-dasharray:90,150;stroke-dashoffset:-120}}@-webkit-keyframes van-notice-bar-play{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes van-notice-bar-play{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes van-notice-bar-play-infinite{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes van-notice-bar-play-infinite{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes van-skeleton-blink{50%{opacity:.6}}@keyframes van-skeleton-blink{50%{opacity:.6}}@-webkit-keyframes van-cursor-flicker{0%,to{opacity:0}50%{opacity:1}}@keyframes van-cursor-flicker{0%,to{opacity:0}50%{opacity:1}}html{-webkit-tap-highlight-color:transparent}body{margin:0}a{text-decoration:none}[class*=van-]:focus,a:focus,button:focus,input:focus,textarea:focus{outline:0}ol,ul{margin:0;padding:0;list-style:none}button,input,textarea{color:inherit;font:inherit}.van-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.van-multi-ellipsis--l2,.van-multi-ellipsis--l3{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical}.van-multi-ellipsis--l3{-webkit-line-clamp:3}.van-clearfix::after{display:table;clear:both;content:''}[class*=van-hairline]::after{position:absolute;box-sizing:border-box;content:' ';pointer-events:none;top:-50%;right:-50%;bottom:-50%;left:-50%;border:0 solid #ebedf0;-webkit-transform:scale(.5);transform:scale(.5)}.van-hairline,.van-hairline--bottom,.van-hairline--left,.van-hairline--right,.van-hairline--surround,.van-hairline--top,.van-hairline--top-bottom{position:relative}.van-hairline--top::after{border-top-width:1px}.van-hairline--left::after{border-left-width:1px}.van-hairline--right::after{border-right-width:1px}.van-hairline--bottom::after{border-bottom-width:1px}.van-hairline--top-bottom::after,.van-hairline-unset--top-bottom::after{border-width:1px 0}.van-hairline--surround::after{border-width:1px}.van-fade-enter-active{-webkit-animation:.3s van-fade-in;animation:.3s van-fade-in}.van-fade-leave-active{-webkit-animation:.3s van-fade-out;animation:.3s van-fade-out}.van-slide-up-enter-active{-webkit-animation:van-slide-up-enter .3s both ease;animation:van-slide-up-enter .3s both ease}.van-slide-up-leave-active{-webkit-animation:van-slide-up-leave .3s both ease;animation:van-slide-up-leave .3s both ease}.van-slide-down-enter-active{-webkit-animation:van-slide-down-enter .3s both ease;animation:van-slide-down-enter .3s both ease}.van-slide-down-leave-active{-webkit-animation:van-slide-down-leave .3s both ease;animation:van-slide-down-leave .3s both ease}.van-slide-left-enter-active{-webkit-animation:van-slide-left-enter .3s both ease;animation:van-slide-left-enter .3s both ease}.van-slide-left-leave-active{-webkit-animation:van-slide-left-leave .3s both ease;animation:van-slide-left-leave .3s both ease}.van-slide-right-enter-active{-webkit-animation:van-slide-right-enter .3s both ease;animation:van-slide-right-enter .3s both ease}.van-slide-right-leave-active{-webkit-animation:van-slide-right-leave .3s both ease;animation:van-slide-right-leave .3s both ease}.van-info{position:absolute;top:0;right:0;box-sizing:border-box;min-width:16px;padding:0 3px;color:#fff;font-weight:500;font-size:12px;font-family:PingFang SC,Helvetica Neue,Arial,sans-serif;line-height:14px;text-align:center;background-color:#ee0a24;border:1px solid #fff;border-radius:16px;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);-webkit-transform-origin:100%;transform-origin:100%}.van-info--dot{width:8px;min-width:0;height:8px;background-color:#ee0a24;border-radius:100%}@font-face{font-weight:400;font-family:'vant-icon';font-style:normal;font-display:auto;src:url(https://img.yzcdn.cn/vant/vant-icon-0bc654.woff2) format('woff2'),url(https://img.yzcdn.cn/vant/vant-icon-0bc654.woff) format('woff'),url(https://img.yzcdn.cn/vant/vant-icon-0bc654.ttf) format('truetype')}.van-icon{position:relative;font:14px/1 "vant-icon";font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased}.van-icon,.van-icon::before{display:inline-block}.van-icon-add-o:before{content:"\F000"}.van-icon-add-square:before{content:"\F001"}.van-icon-add:before{content:"\F002"}.van-icon-after-sale:before{content:"\F003"}.van-icon-aim:before{content:"\F004"}.van-icon-alipay:before{content:"\F005"}.van-icon-apps-o:before{content:"\F006"}.van-icon-arrow-down:before{content:"\F007"}.van-icon-arrow-left:before{content:"\F008"}.van-icon-arrow-up:before{content:"\F009"}.van-icon-arrow:before{content:"\F00A"}.van-icon-ascending:before{content:"\F00B"}.van-icon-audio:before{content:"\F00C"}.van-icon-award-o:before{content:"\F00D"}.van-icon-award:before{content:"\F00E"}.van-icon-bag-o:before{content:"\F00F"}.van-icon-bag:before{content:"\F010"}.van-icon-balance-list-o:before{content:"\F011"}.van-icon-balance-list:before{content:"\F012"}.van-icon-balance-o:before{content:"\F013"}.van-icon-balance-pay:before{content:"\F014"}.van-icon-bar-chart-o:before{content:"\F015"}.van-icon-bars:before{content:"\F016"}.van-icon-bell:before{content:"\F017"}.van-icon-bill-o:before{content:"\F018"}.van-icon-bill:before{content:"\F019"}.van-icon-birthday-cake-o:before{content:"\F01A"}.van-icon-bookmark-o:before{content:"\F01B"}.van-icon-bookmark:before{content:"\F01C"}.van-icon-browsing-history-o:before{content:"\F01D"}.van-icon-browsing-history:before{content:"\F01E"}.van-icon-brush-o:before{content:"\F01F"}.van-icon-bulb-o:before{content:"\F020"}.van-icon-bullhorn-o:before{content:"\F021"}.van-icon-calender-o:before{content:"\F022"}.van-icon-card:before{content:"\F023"}.van-icon-cart-circle-o:before{content:"\F024"}.van-icon-cart-circle:before{content:"\F025"}.van-icon-cart-o:before{content:"\F026"}.van-icon-cart:before{content:"\F027"}.van-icon-cash-back-record:before{content:"\F028"}.van-icon-cash-on-deliver:before{content:"\F029"}.van-icon-cashier-o:before{content:"\F02A"}.van-icon-certificate:before{content:"\F02B"}.van-icon-chart-trending-o:before{content:"\F02C"}.van-icon-chat-o:before{content:"\F02D"}.van-icon-chat:before{content:"\F02E"}.van-icon-checked:before{content:"\F02F"}.van-icon-circle:before{content:"\F030"}.van-icon-clear:before{content:"\F031"}.van-icon-clock-o:before{content:"\F032"}.van-icon-clock:before{content:"\F033"}.van-icon-close:before{content:"\F034"}.van-icon-closed-eye:before{content:"\F035"}.van-icon-cluster-o:before{content:"\F036"}.van-icon-cluster:before{content:"\F037"}.van-icon-column:before{content:"\F038"}.van-icon-comment-circle-o:before{content:"\F039"}.van-icon-comment-circle:before{content:"\F03A"}.van-icon-comment-o:before{content:"\F03B"}.van-icon-comment:before{content:"\F03C"}.van-icon-completed:before{content:"\F03D"}.van-icon-contact:before{content:"\F03E"}.van-icon-coupon-o:before{content:"\F03F"}.van-icon-coupon:before{content:"\F040"}.van-icon-credit-pay:before{content:"\F041"}.van-icon-cross:before{content:"\F042"}.van-icon-debit-pay:before{content:"\F043"}.van-icon-delete:before{content:"\F044"}.van-icon-descending:before{content:"\F045"}.van-icon-description:before{content:"\F046"}.van-icon-desktop-o:before{content:"\F047"}.van-icon-diamond-o:before{content:"\F048"}.van-icon-diamond:before{content:"\F049"}.van-icon-discount:before{content:"\F04A"}.van-icon-down:before{content:"\F04B"}.van-icon-ecard-pay:before{content:"\F04C"}.van-icon-edit:before{content:"\F04D"}.van-icon-ellipsis:before{content:"\F04E"}.van-icon-empty:before{content:"\F04F"}.van-icon-envelop-o:before{content:"\F050"}.van-icon-exchange:before{content:"\F051"}.van-icon-expand-o:before{content:"\F052"}.van-icon-expand:before{content:"\F053"}.van-icon-eye-o:before{content:"\F054"}.van-icon-eye:before{content:"\F055"}.van-icon-fail:before{content:"\F056"}.van-icon-failure:before{content:"\F057"}.van-icon-filter-o:before{content:"\F058"}.van-icon-fire-o:before{content:"\F059"}.van-icon-fire:before{content:"\F05A"}.van-icon-flag-o:before{content:"\F05B"}.van-icon-flower-o:before{content:"\F05C"}.van-icon-free-postage:before{content:"\F05D"}.van-icon-friends-o:before{content:"\F05E"}.van-icon-friends:before{content:"\F05F"}.van-icon-gem-o:before{content:"\F060"}.van-icon-gem:before{content:"\F061"}.van-icon-gift-card-o:before{content:"\F062"}.van-icon-gift-card:before{content:"\F063"}.van-icon-gift-o:before{content:"\F064"}.van-icon-gift:before{content:"\F065"}.van-icon-gold-coin-o:before{content:"\F066"}.van-icon-gold-coin:before{content:"\F067"}.van-icon-good-job-o:before{content:"\F068"}.van-icon-good-job:before{content:"\F069"}.van-icon-goods-collect-o:before{content:"\F06A"}.van-icon-goods-collect:before{content:"\F06B"}.van-icon-graphic:before{content:"\F06C"}.van-icon-home-o:before{content:"\F06D"}.van-icon-hot-o:before{content:"\F06E"}.van-icon-hot-sale-o:before{content:"\F06F"}.van-icon-hot-sale:before{content:"\F070"}.van-icon-hot:before{content:"\F071"}.van-icon-hotel-o:before{content:"\F072"}.van-icon-idcard:before{content:"\F073"}.van-icon-info-o:before{content:"\F074"}.van-icon-info:before{content:"\F075"}.van-icon-invition:before{content:"\F076"}.van-icon-label-o:before{content:"\F077"}.van-icon-label:before{content:"\F078"}.van-icon-like-o:before{content:"\F079"}.van-icon-like:before{content:"\F07A"}.van-icon-live:before{content:"\F07B"}.van-icon-location-o:before{content:"\F07C"}.van-icon-location:before{content:"\F07D"}.van-icon-lock:before{content:"\F07E"}.van-icon-logistics:before{content:"\F07F"}.van-icon-manager-o:before{content:"\F080"}.van-icon-manager:before{content:"\F081"}.van-icon-map-marked:before{content:"\F082"}.van-icon-medel-o:before{content:"\F083"}.van-icon-medel:before{content:"\F084"}.van-icon-more-o:before{content:"\F085"}.van-icon-more:before{content:"\F086"}.van-icon-music-o:before{content:"\F087"}.van-icon-music:before{content:"\F088"}.van-icon-new-arrival-o:before{content:"\F089"}.van-icon-new-arrival:before{content:"\F08A"}.van-icon-new-o:before{content:"\F08B"}.van-icon-new:before{content:"\F08C"}.van-icon-newspaper-o:before{content:"\F08D"}.van-icon-notes-o:before{content:"\F08E"}.van-icon-orders-o:before{content:"\F08F"}.van-icon-other-pay:before{content:"\F090"}.van-icon-paid:before{content:"\F091"}.van-icon-passed:before{content:"\F092"}.van-icon-pause-circle-o:before{content:"\F093"}.van-icon-pause-circle:before{content:"\F094"}.van-icon-pause:before{content:"\F095"}.van-icon-peer-pay:before{content:"\F096"}.van-icon-pending-payment:before{content:"\F097"}.van-icon-phone-circle-o:before{content:"\F098"}.van-icon-phone-circle:before{content:"\F099"}.van-icon-phone-o:before{content:"\F09A"}.van-icon-phone:before{content:"\F09B"}.van-icon-photo-o:before{content:"\F09C"}.van-icon-photo:before{content:"\F09D"}.van-icon-photograph:before{content:"\F09E"}.van-icon-play-circle-o:before{content:"\F09F"}.van-icon-play-circle:before{content:"\F0A0"}.van-icon-play:before{content:"\F0A1"}.van-icon-plus:before{content:"\F0A2"}.van-icon-point-gift-o:before{content:"\F0A3"}.van-icon-point-gift:before{content:"\F0A4"}.van-icon-points:before{content:"\F0A5"}.van-icon-printer:before{content:"\F0A6"}.van-icon-qr-invalid:before{content:"\F0A7"}.van-icon-qr:before{content:"\F0A8"}.van-icon-question-o:before{content:"\F0A9"}.van-icon-question:before{content:"\F0AA"}.van-icon-records:before{content:"\F0AB"}.van-icon-refund-o:before{content:"\F0AC"}.van-icon-replay:before{content:"\F0AD"}.van-icon-scan:before{content:"\F0AE"}.van-icon-search:before{content:"\F0AF"}.van-icon-send-gift-o:before{content:"\F0B0"}.van-icon-send-gift:before{content:"\F0B1"}.van-icon-service-o:before{content:"\F0B2"}.van-icon-service:before{content:"\F0B3"}.van-icon-setting-o:before{content:"\F0B4"}.van-icon-setting:before{content:"\F0B5"}.van-icon-share:before{content:"\F0B6"}.van-icon-shop-collect-o:before{content:"\F0B7"}.van-icon-shop-collect:before{content:"\F0B8"}.van-icon-shop-o:before{content:"\F0B9"}.van-icon-shop:before{content:"\F0BA"}.van-icon-shopping-cart-o:before{content:"\F0BB"}.van-icon-shopping-cart:before{content:"\F0BC"}.van-icon-shrink:before{content:"\F0BD"}.van-icon-sign:before{content:"\F0BE"}.van-icon-smile-comment-o:before{content:"\F0BF"}.van-icon-smile-comment:before{content:"\F0C0"}.van-icon-smile-o:before{content:"\F0C1"}.van-icon-smile:before{content:"\F0C2"}.van-icon-star-o:before{content:"\F0C3"}.van-icon-star:before{content:"\F0C4"}.van-icon-stop-circle-o:before{content:"\F0C5"}.van-icon-stop-circle:before{content:"\F0C6"}.van-icon-stop:before{content:"\F0C7"}.van-icon-success:before{content:"\F0C8"}.van-icon-thumb-circle-o:before{content:"\F0C9"}.van-icon-thumb-circle:before{content:"\F0CA"}.van-icon-todo-list-o:before{content:"\F0CB"}.van-icon-todo-list:before{content:"\F0CC"}.van-icon-tosend:before{content:"\F0CD"}.van-icon-tv-o:before{content:"\F0CE"}.van-icon-umbrella-circle:before{content:"\F0CF"}.van-icon-underway-o:before{content:"\F0D0"}.van-icon-underway:before{content:"\F0D1"}.van-icon-upgrade:before{content:"\F0D2"}.van-icon-user-circle-o:before{content:"\F0D3"}.van-icon-user-o:before{content:"\F0D4"}.van-icon-video-o:before{content:"\F0D5"}.van-icon-video:before{content:"\F0D6"}.van-icon-vip-card-o:before{content:"\F0D7"}.van-icon-vip-card:before{content:"\F0D8"}.van-icon-volume-o:before{content:"\F0D9"}.van-icon-volume:before{content:"\F0DA"}.van-icon-wap-home-o:before{content:"\F0DB"}.van-icon-wap-home:before{content:"\F0DC"}.van-icon-wap-nav:before{content:"\F0DD"}.van-icon-warn-o:before{content:"\F0DE"}.van-icon-warning-o:before{content:"\F0DF"}.van-icon-warning:before{content:"\F0E0"}.van-icon-weapp-nav:before{content:"\F0E1"}.van-icon-wechat:before{content:"\F0E2"}.van-icon-youzan-shield:before{content:"\F0E3"}.van-icon__image{width:1em;height:1em}.van-loading,.van-loading__spinner{position:relative;vertical-align:middle}.van-loading{color:#c8c9cc;font-size:0}.van-loading__spinner{display:inline-block;width:30px;max-width:100%;height:30px;max-height:100%;-webkit-animation:van-rotate .8s linear infinite;animation:van-rotate .8s linear infinite}.van-loading__spinner--spinner{-webkit-animation-timing-function:steps(12);animation-timing-function:steps(12)}.van-circle svg,.van-loading__spinner--spinner i{position:absolute;top:0;left:0;width:100%;height:100%}.van-loading__spinner--spinner i::before{display:block;width:2px;height:25%;margin:0 auto;background-color:currentColor;border-radius:40%;content:' '}.van-loading__spinner--circular{-webkit-animation-duration:2s;animation-duration:2s}.van-loading__circular{display:block;width:100%;height:100%}.van-loading__circular circle{-webkit-animation:van-circular 1.5s ease-in-out infinite;animation:van-circular 1.5s ease-in-out infinite;stroke:currentColor;stroke-width:3;stroke-linecap:round}.van-loading__text{display:inline-block;margin-left:8px;color:#969799;font-size:14px;vertical-align:middle}.van-loading--vertical{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center}.van-loading--vertical .van-loading__text{margin:8px 0 0}.van-loading__spinner--spinner i:nth-of-type(1){-webkit-transform:rotate(30deg);transform:rotate(30deg);opacity:1}.van-loading__spinner--spinner i:nth-of-type(2){-webkit-transform:rotate(60deg);transform:rotate(60deg);opacity:.9375}.van-loading__spinner--spinner i:nth-of-type(3){-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:.875}.van-loading__spinner--spinner i:nth-of-type(4){-webkit-transform:rotate(120deg);transform:rotate(120deg);opacity:.8125}.van-loading__spinner--spinner i:nth-of-type(5){-webkit-transform:rotate(150deg);transform:rotate(150deg);opacity:.75}.van-loading__spinner--spinner i:nth-of-type(6){-webkit-transform:rotate(180deg);transform:rotate(180deg);opacity:.6875}.van-loading__spinner--spinner i:nth-of-type(7){-webkit-transform:rotate(210deg);transform:rotate(210deg);opacity:.625}.van-loading__spinner--spinner i:nth-of-type(8){-webkit-transform:rotate(240deg);transform:rotate(240deg);opacity:.5625}.van-loading__spinner--spinner i:nth-of-type(9){-webkit-transform:rotate(270deg);transform:rotate(270deg);opacity:.5}.van-loading__spinner--spinner i:nth-of-type(10){-webkit-transform:rotate(300deg);transform:rotate(300deg);opacity:.4375}.van-loading__spinner--spinner i:nth-of-type(11){-webkit-transform:rotate(330deg);transform:rotate(330deg);opacity:.375}.van-loading__spinner--spinner i:nth-of-type(12){-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:.3125}.van-button{position:relative;display:inline-block;box-sizing:border-box;height:44px;margin:0;padding:0;font-size:16px;line-height:42px;text-align:center;border-radius:2px;-webkit-transition:opacity .2s;transition:opacity .2s;-webkit-appearance:none;-webkit-text-size-adjust:100%}.van-button::before{position:absolute;top:50%;left:50%;width:100%;height:100%;background-color:#000;border:inherit;border-color:#000;border-radius:inherit;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);opacity:0;content:' '}.van-button:active::before{opacity:.1}.van-button--disabled::before,.van-button--loading::before{display:none}.van-button--default{color:#323233;background-color:#fff;border:1px solid #ebedf0}.van-button--primary{color:#fff;background-color:#07c160;border:1px solid #07c160}.van-button--info{color:#fff;background-color:#1989fa;border:1px solid #1989fa}.van-button--danger{color:#fff;background-color:#ee0a24;border:1px solid #ee0a24}.van-button--warning{color:#fff;background-color:#ff976a;border:1px solid #ff976a}.van-button--plain{background-color:#fff}.van-button--plain.van-button--primary{color:#07c160}.van-button--plain.van-button--info{color:#1989fa}.van-button--plain.van-button--danger{color:#ee0a24}.van-button--plain.van-button--warning{color:#ff976a}.van-button--large{width:100%;height:50px;line-height:48px}.van-button--normal{padding:0 15px;font-size:14px}.van-button--small{min-width:60px;height:30px;padding:0 8px;font-size:12px;line-height:28px}.van-button__loading{display:inline-block;color:inherit;vertical-align:top}.van-button--mini{display:inline-block;min-width:50px;height:22px;font-size:10px;line-height:20px}.van-button--mini+.van-button--mini{margin-left:4px}.van-button--block{display:block;width:100%}.van-button--disabled{opacity:.5}.van-button--hairline.van-button--round::after,.van-button--round{border-radius:999px}.van-button--hairline.van-button--square::after,.van-button--square{border-radius:0}.van-button__icon{min-width:1em;font-size:1.2em;line-height:inherit;vertical-align:top}.van-button__icon+.van-button__text,.van-button__loading+.van-button__text{display:inline-block;margin-left:5px;vertical-align:top}.van-button--hairline{border-width:0}.van-button--hairline::after{border-color:inherit;border-radius:4px}.van-cell{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;box-sizing:border-box;width:100%;padding:10px 16px;overflow:hidden;color:#323233;font-size:14px;line-height:24px;background-color:#fff}.van-cell:not(:last-child)::after{position:absolute;box-sizing:border-box;content:' ';pointer-events:none;right:0;bottom:0;left:16px;border-bottom:1px solid #ebedf0;-webkit-transform:scaleY(.5);transform:scaleY(.5)}.van-cell--borderless::after{display:none}.van-cell__label{margin-top:3px;color:#969799;font-size:12px;line-height:18px}.van-cell__title,.van-cell__value{-webkit-box-flex:1;-webkit-flex:1;flex:1}.van-cell__value{position:relative;overflow:hidden;color:#969799;text-align:right;vertical-align:middle}.van-cell__value--alone{color:#323233;text-align:left}.van-cell__left-icon,.van-cell__right-icon{min-width:1em;height:24px;font-size:16px;line-height:24px}.van-cell__left-icon{margin-right:5px}.van-cell__right-icon{margin-left:5px;color:#969799}.van-cell--clickable:active{background-color:#f2f3f5}.van-cell--required{overflow:visible}.van-cell--required::before{position:absolute;left:8px;color:#ee0a24;font-size:14px;content:'*'}.van-cell--center{-webkit-box-align:center;-webkit-align-items:center;align-items:center}.van-cell--large{padding-top:12px;padding-bottom:12px}.van-cell--large .van-cell__title{font-size:16px}.van-cell--large .van-cell__label{font-size:14px}.van-cell-group{background-color:#fff}.van-cell-group__title{padding:16px 16px 8px;color:#969799;font-size:14px;line-height:16px}.van-col{float:left;box-sizing:border-box;min-height:1px}.van-col--1{width:4.16666667%}.van-col--offset-1{margin-left:4.16666667%}.van-col--2{width:8.33333333%}.van-col--offset-2{margin-left:8.33333333%}.van-col--3{width:12.5%}.van-col--offset-3{margin-left:12.5%}.van-col--4{width:16.66666667%}.van-col--offset-4{margin-left:16.66666667%}.van-col--5{width:20.83333333%}.van-col--offset-5{margin-left:20.83333333%}.van-col--6{width:25%}.van-col--offset-6{margin-left:25%}.van-col--7{width:29.16666667%}.van-col--offset-7{margin-left:29.16666667%}.van-col--8{width:33.33333333%}.van-col--offset-8{margin-left:33.33333333%}.van-col--9{width:37.5%}.van-col--offset-9{margin-left:37.5%}.van-col--10{width:41.66666667%}.van-col--offset-10{margin-left:41.66666667%}.van-col--11{width:45.83333333%}.van-col--offset-11{margin-left:45.83333333%}.van-col--12{width:50%}.van-col--offset-12{margin-left:50%}.van-col--13{width:54.16666667%}.van-col--offset-13{margin-left:54.16666667%}.van-col--14{width:58.33333333%}.van-col--offset-14{margin-left:58.33333333%}.van-col--15{width:62.5%}.van-col--offset-15{margin-left:62.5%}.van-col--16{width:66.66666667%}.van-col--offset-16{margin-left:66.66666667%}.van-col--17{width:70.83333333%}.van-col--offset-17{margin-left:70.83333333%}.van-col--18{width:75%}.van-col--offset-18{margin-left:75%}.van-col--19{width:79.16666667%}.van-col--offset-19{margin-left:79.16666667%}.van-col--20{width:83.33333333%}.van-col--offset-20{margin-left:83.33333333%}.van-col--21{width:87.5%}.van-col--offset-21{margin-left:87.5%}.van-col--22{width:91.66666667%}.van-col--offset-22{margin-left:91.66666667%}.van-col--23{width:95.83333333%}.van-col--offset-23{margin-left:95.83333333%}.van-col--24{width:100%}.van-col--offset-24{margin-left:100%}.van-row::after{display:table;clear:both;content:""}.van-row--flex{display:-webkit-box;display:-webkit-flex;display:flex}.van-row--flex::after{display:none}.van-row--justify-center{-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.van-row--justify-end{-webkit-box-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end}.van-row--justify-space-between{-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between}.van-row--justify-space-around{-webkit-justify-content:space-around;justify-content:space-around}.van-row--align-center{-webkit-box-align:center;-webkit-align-items:center;align-items:center}.van-row--align-bottom{-webkit-box-align:end;-webkit-align-items:flex-end;align-items:flex-end}.van-grid{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.van-grid-item{position:relative;box-sizing:border-box}.van-grid-item--square{height:0}.van-grid-item__content{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;box-sizing:border-box;height:100%;padding:16px 8px;background-color:#fff}.van-grid-item__content::after{z-index:1;border-width:0 1px 1px 0}.van-grid-item__content--square{position:absolute;top:0;right:0;left:0}.van-grid-item__content--center{-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.van-grid-item__content--surround::after{border-width:1px}.van-grid-item__content--clickable:active{background-color:#f2f3f5}.van-grid-item__icon{font-size:28px}.van-grid-item__icon-wrapper{position:relative}.van-grid-item__text{color:#7d7e80;font-size:12px;word-wrap:break-word}.van-grid-item__icon+.van-grid-item__text{margin-top:8px}.van-image{position:relative;display:inline-block}.van-image--round{overflow:hidden;border-radius:50%}.van-image--round img{border-radius:inherit}.van-image__error,.van-image__img,.van-image__loading{display:block;width:100%;height:100%}.van-image__error,.van-image__loading{position:absolute;top:0;left:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;color:#969799;font-size:14px;background-color:#f8f8f8}.van-circle{position:relative;display:inline-block;text-align:center}.van-circle__layer{fill:none;stroke-linecap:round}.van-circle__text{position:absolute;top:50%;left:0;width:100%;color:#323233;font-weight:500;font-size:14px;line-height:18px;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.van-collapse-item__title .van-cell__right-icon::before{-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.van-collapse-item__title::after{visibility:hidden}.van-collapse-item__title--expanded .van-cell__right-icon::before{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.van-collapse-item__title--expanded::after{visibility:visible}.van-collapse-item__title--disabled,.van-collapse-item__title--disabled .van-cell__right-icon{color:#c8c9cc}.van-collapse-item__title--disabled:active{background-color:#fff}.van-collapse-item__wrapper{overflow:hidden;-webkit-transition:height .3s ease-in-out;transition:height .3s ease-in-out;will-change:height}.van-collapse-item__content{padding:16px;color:#969799;font-size:13px;line-height:1.5;background-color:#fff}.van-count-down,.van-divider{color:#323233;font-size:14px;line-height:20px}.van-divider{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;margin:16px 0;color:#969799;line-height:24px;border-color:#ebedf0;border-style:solid;border-width:0}.van-divider::after,.van-divider::before{display:block;-webkit-box-flex:1;-webkit-flex:1;flex:1;box-sizing:border-box;height:1px;border-color:inherit;border-style:inherit;border-width:1px 0 0}.van-divider::before{content:''}.van-divider--hairline::after,.van-divider--hairline::before{-webkit-transform:scaleY(.5);transform:scaleY(.5)}.van-divider--dashed{border-style:dashed}.van-divider--content-center::before,.van-divider--content-left::before,.van-divider--content-right::before{margin-right:16px}.van-divider--content-center::after,.van-divider--content-left::after,.van-divider--content-right::after{margin-left:16px;content:''}.van-divider--content-left::before,.van-divider--content-right::after{max-width:10%}.van-list__error-text,.van-list__finished-text,.van-list__loading{color:#969799;font-size:14px;line-height:50px;text-align:center}.van-list__placeholder{height:0;pointer-events:none}.van-nav-bar{position:relative;height:46px;line-height:46px;text-align:center;background-color:#fff;-webkit-user-select:none;user-select:none}.van-nav-bar .van-icon{color:#1989fa;vertical-align:middle}.van-nav-bar__arrow{min-width:1em;font-size:16px}.van-nav-bar__arrow+.van-nav-bar__text{margin-left:-20px;padding-left:25px}.van-nav-bar--fixed{position:fixed;top:0;left:0;width:100%}.van-nav-bar__title{max-width:60%;margin:0 auto;color:#323233;font-weight:500;font-size:16px}.van-nav-bar__left,.van-nav-bar__right{position:absolute;bottom:0;font-size:14px}.van-nav-bar__left{left:16px}.van-nav-bar__right{right:16px}.van-nav-bar__text{display:inline-block;margin:0 -16px;padding:0 16px;color:#1989fa;vertical-align:middle}.van-nav-bar__text:active{background-color:#f2f3f5}.van-notice-bar{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;height:40px;padding:0 16px;color:#ed6a0c;font-size:14px;line-height:24px;background-color:#fffbe8}.van-notice-bar__left-icon,.van-notice-bar__right-icon{min-width:22px;font-size:16px}.van-notice-bar__right-icon{text-align:right}.van-notice-bar__wrap{position:relative;-webkit-box-flex:1;-webkit-flex:1;flex:1;height:24px;overflow:hidden}.van-notice-bar__content{position:absolute;white-space:nowrap}.van-notice-bar__content.van-ellipsis{max-width:100%}.van-notice-bar__play{-webkit-animation:van-notice-bar-play linear both;animation:van-notice-bar-play linear both}.van-notice-bar__play--infinite{-webkit-animation:van-notice-bar-play-infinite linear infinite both;animation:van-notice-bar-play-infinite linear infinite both}.van-notice-bar--wrapable{height:auto;padding:8px 16px}.van-notice-bar--wrapable .van-notice-bar__wrap{height:auto}.van-notice-bar--wrapable .van-notice-bar__content{position:relative;white-space:normal;word-wrap:break-word}.van-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7)}.van-overflow-hidden{overflow:hidden!important}.van-popup{position:fixed;max-height:100%;overflow-y:auto;background-color:#fff;-webkit-transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-overflow-scrolling:touch}.van-popup--center{top:50%;left:50%;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}.van-popup--center.van-popup--round{border-radius:20px}.van-popup--top{top:0;left:0;width:100%}.van-popup--top.van-popup--round{border-radius:0 0 20px 20px}.van-popup--right{top:50%;right:0;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.van-popup--right.van-popup--round{border-radius:20px 0 0 20px}.van-popup--bottom{bottom:0;left:0;width:100%}.van-popup--bottom.van-popup--round{border-radius:20px 20px 0 0}.van-popup--left{top:50%;left:0;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.van-popup--left.van-popup--round{border-radius:0 20px 20px 0}.van-popup--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-popup-slide-top-enter,.van-popup-slide-top-leave-active{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.van-popup-slide-right-enter,.van-popup-slide-right-leave-active{-webkit-transform:translate3d(100%,-50%,0);transform:translate3d(100%,-50%,0)}.van-popup-slide-bottom-enter,.van-popup-slide-bottom-leave-active{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}.van-popup-slide-left-enter,.van-popup-slide-left-leave-active{-webkit-transform:translate3d(-100%,-50%,0);transform:translate3d(-100%,-50%,0)}.van-popup__close-icon{position:absolute;z-index:1;color:#969799;font-size:18px}.van-popup__close-icon:active{opacity:.7}.van-popup__close-icon--top-left{top:16px;left:16px}.van-popup__close-icon--top-right{top:16px;right:16px}.van-popup__close-icon--bottom-left{bottom:16px;left:16px}.van-popup__close-icon--bottom-right{right:16px;bottom:16px}.van-search,.van-search__content{display:-webkit-box;display:-webkit-flex;display:flex}.van-search{-webkit-box-align:center;-webkit-align-items:center;align-items:center;box-sizing:border-box;padding:10px 12px}.van-search__content{-webkit-box-flex:1;-webkit-flex:1;flex:1;padding-left:8px;background-color:#f7f8fa;border-radius:2px}.van-search__content--round{border-radius:17px}.van-search__label{padding:0 5px;color:#323233;font-size:14px;line-height:34px}.van-search .van-cell{-webkit-box-flex:1;-webkit-flex:1;flex:1;padding:5px 8px 5px 0;background-color:transparent}.van-search .van-cell__left-icon{color:#969799}.van-search--show-action{padding-right:0}.van-search input::-webkit-search-cancel-button,.van-search input::-webkit-search-decoration,.van-search input::-webkit-search-results-button,.van-search input::-webkit-search-results-decoration{display:none}.van-search__action{padding:0 8px;color:#323233;font-size:14px;line-height:34px}.van-search__action:active{background-color:#f2f3f5}.van-pagination{display:-webkit-box;display:-webkit-flex;display:flex;font-size:14px;line-height:40px;text-align:center}.van-pagination__item{-webkit-box-flex:1;-webkit-flex:1;flex:1;box-sizing:border-box;min-width:36px;height:40px;color:#1989fa;background-color:#fff;-webkit-user-select:none;user-select:none}.van-pagination__item:active{color:#fff;background-color:#1989fa}.van-pagination__item::after{border-width:1px 0 1px 1px}.van-pagination__item:last-child::after{border-right-width:1px}.van-pagination__item--disabled,.van-pagination__item--disabled:active{color:#7d7e80;background-color:#f8f8f8;opacity:.5}.van-pagination__item--active{color:#fff;background-color:#1989fa}.van-pagination__next,.van-pagination__prev{padding:0 4px}.van-pagination__page{-webkit-box-flex:0;-webkit-flex-grow:0;flex-grow:0}.van-pagination__page-desc{-webkit-box-flex:1;-webkit-flex:1;flex:1;height:40px;color:#7d7e80}.van-pagination--simple .van-pagination__next::after,.van-pagination--simple .van-pagination__prev::after{border-width:1px}.van-panel{background:#fff}.van-panel__header-value{color:#ee0a24}.van-panel__footer{padding:8px 16px}.van-rate{display:-webkit-inline-box;display:-webkit-inline-flex;display:inline-flex;-webkit-user-select:none;user-select:none}.van-rate__item{position:relative}.van-rate__item:not(:last-child){padding-right:4px}.van-rate__icon{display:block;width:1em;font-size:20px}.van-rate__icon--half{position:absolute;top:0;left:0;width:.5em;overflow:hidden}.van-steps{overflow:hidden;background-color:#fff}.van-steps--horizontal{padding:10px 10px 0}.van-steps--horizontal .van-steps__items{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;margin:0 0 10px;padding-bottom:22px}.van-steps--vertical{padding:0 0 0 32px}.van-step{position:relative;-webkit-box-flex:1;-webkit-flex:1;flex:1;color:#969799;font-size:14px}.van-step__circle{display:block;width:5px;height:5px;background-color:#969799;border-radius:50%}.van-step__line{position:absolute;background-color:#ebedf0}.van-step--horizontal{float:left}.van-step--horizontal:first-child .van-step__title{margin-left:0;-webkit-transform:none;transform:none}.van-step--horizontal:last-child{position:absolute;right:1px;width:auto}.van-step--horizontal:last-child .van-step__title{margin-left:0;-webkit-transform:none;transform:none}.van-step--horizontal:last-child .van-step__circle-container{right:-9px;left:auto}.van-step--horizontal .van-step__circle-container{position:absolute;top:30px;left:-8px;z-index:1;padding:0 8px;background-color:#fff;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.van-step--horizontal .van-step__title{display:inline-block;margin-left:3px;font-size:12px;-webkit-transform:translateX(-50%);transform:translateX(-50%)}@media (max-width:321px){.van-step--horizontal .van-step__title{font-size:11px}}.van-step--horizontal .van-step__line{top:30px;left:0;width:100%;height:1px}.van-step--horizontal .van-step__icon{display:block;font-size:12px}.van-step--horizontal .van-step--process{color:#323233}.van-step--vertical{display:block;float:none;padding:10px 10px 10px 0;line-height:18px}.van-step--vertical:not(:last-child)::after{border-bottom-width:1px}.van-step--vertical:first-child::before{position:absolute;top:0;left:-15px;z-index:1;width:1px;height:20px;background-color:#fff;content:''}.van-step--vertical .van-step__circle-container{position:absolute;top:19px;left:-15px;z-index:2;font-size:12px;line-height:1;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.van-step--vertical .van-step__line{top:16px;left:-15px;width:1px;height:100%}.van-step:last-child .van-step__line{width:0}.van-step--finish{color:#323233}.van-step--finish .van-step__circle,.van-step--finish .van-step__line{background-color:#07c160}.van-sticky--fixed{position:fixed;top:0;right:0;left:0;z-index:99}.van-tag{display:-webkit-inline-box;display:-webkit-inline-flex;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;padding:.2em .5em;color:#fff;font-size:10px;line-height:normal;border-radius:.2em}.van-tag::after{border-color:currentColor;border-radius:.4em}.van-tag--default{background-color:#969799}.van-tag--default.van-tag--plain{color:#969799}.van-tag--danger{background-color:#ee0a24}.van-tag--danger.van-tag--plain{color:#ee0a24}.van-tag--primary{background-color:#1989fa}.van-tag--primary.van-tag--plain{color:#1989fa}.van-tag--success{background-color:#07c160}.van-tag--success.van-tag--plain{color:#07c160}.van-tag--warning{background-color:#ff976a}.van-tag--warning.van-tag--plain{color:#ff976a}.van-tag--plain{background-color:#fff}.van-tag--mark{padding-right:.7em}.van-tag--mark,.van-tag--mark::after{border-radius:0 999px 999px 0}.van-tag--round,.van-tag--round::after{border-radius:999px}.van-tag--medium{font-size:12px}.van-tag--large{font-size:14px}.van-tag__close{margin-left:2px}.van-tab__pane,.van-tab__pane-wrapper{-webkit-flex-shrink:0;flex-shrink:0;box-sizing:border-box;width:100%}.van-tab__pane-wrapper--inactive{height:0;overflow:visible}.van-tab{position:relative;-webkit-box-flex:1;-webkit-flex:1;flex:1;box-sizing:border-box;min-width:0;padding:0 5px;color:#7d7e80;font-size:14px;line-height:44px;text-align:center;cursor:pointer}.van-tab span{display:block}.van-tab--active{color:#323233;font-weight:500}.van-tab--disabled{color:#c8c9cc}.van-tabs{position:relative}.van-tabs__wrap{overflow:hidden}.van-tabs__wrap--page-top{position:fixed}.van-tabs__wrap--content-bottom{top:auto;bottom:0}.van-tabs__wrap--scrollable .van-tab{-webkit-box-flex:0;-webkit-flex:0 0 22%;flex:0 0 22%}.van-tabs__wrap--scrollable .van-tab--complete{-webkit-box-flex:1;-webkit-flex:1 0 auto;flex:1 0 auto}.van-tabs__wrap--scrollable .van-tabs__nav{overflow:hidden;overflow-x:auto;-webkit-overflow-scrolling:touch}.van-tabs__wrap--scrollable .van-tabs__nav::-webkit-scrollbar{display:none}.van-tabs__nav{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;background-color:#fff;-webkit-user-select:none;user-select:none}.van-tabs__nav--line{box-sizing:content-box;height:100%;padding-bottom:15px}.van-tabs__nav--card{box-sizing:border-box;height:30px;margin:0 16px;border:1px solid #ee0a24;border-radius:2px}.van-tabs__nav--card .van-tab{color:#ee0a24;line-height:28px;border-right:1px solid #ee0a24}.van-tabs__nav--card .van-tab:last-child{border-right:none}.van-tabs__nav--card .van-tab.van-tab--active{color:#fff;background-color:#ee0a24}.van-tabs__nav--card .van-tab--disabled{color:#c8c9cc}.van-tabs__line{position:absolute;bottom:15px;left:0;z-index:1;height:3px;background-color:#ee0a24;border-radius:3px}.van-tabs__track{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;width:100%;height:100%;will-change:left}.van-tabs__content--animated{overflow:hidden}.van-tabs--line .van-tabs__wrap{height:44px}.van-tabs--card>.van-tabs__wrap{height:30px}.van-tabbar{display:-webkit-box;display:-webkit-flex;display:flex;width:100%;height:50px;background-color:#fff}.van-tabbar--fixed{position:fixed;bottom:0;left:0}.van-tabbar--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-tabbar-item{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-flex:1;-webkit-flex:1;flex:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;color:#7d7e80;font-size:12px;line-height:1}.van-tabbar-item__icon{position:relative;margin-bottom:5px;font-size:18px}.van-tabbar-item__icon .van-icon{display:block;min-width:1em}.van-tabbar-item__icon img{display:block;height:18px}.van-tabbar-item--active{color:#1989fa}.van-tabbar-item .van-info{margin-top:2px}.van-image-preview{position:fixed;top:0;left:0;width:100%;height:100%}.van-image-preview__swipe{height:100%}.van-image-preview__cover,.van-image-preview__image{position:absolute;top:0;left:0}.van-image-preview__image{right:0;bottom:0;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.van-image-preview__image .van-image__loading{background-color:transparent}.van-image-preview__index{position:absolute;top:10px;left:50%;color:#fff;font-size:14px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0)}.van-image-preview__overlay{background-color:rgba(0,0,0,.9)}.van-progress{position:relative;height:4px;background:#e5e5e5;border-radius:4px}.van-progress__portion{position:absolute;left:0;height:100%;background:#1989fa;border-radius:inherit}.van-progress__pivot{position:absolute;top:50%;box-sizing:border-box;min-width:3.6em;padding:0 5px;color:#fff;font-size:10px;line-height:1.6;text-align:center;word-break:keep-all;background-color:#1989fa;border-radius:1em;-webkit-transform:translate(0,-50%);transform:translate(0,-50%)}.van-sidebar{width:85px}.van-sidebar-item{display:block;box-sizing:border-box;padding:20px 12px 20px 8px;overflow:hidden;color:#323233;font-size:14px;line-height:20px;word-wrap:break-word;background-color:#fafafa;border-left:3px solid transparent;-webkit-user-select:none;user-select:none}.van-sidebar-item__text{position:relative;display:inline-block}.van-sidebar-item:active{background-color:#f2f3f5}.van-sidebar-item:not(:last-child)::after{border-bottom-width:1px}.van-sidebar-item--select{color:#323233;font-weight:500;border-color:#ee0a24;background-color:#fff}.van-sidebar-item--select::after{border-right-width:1px}.van-sidebar-item--select:active{background-color:#fff}.van-sidebar-item--disabled{color:#c8c9cc}.van-sidebar-item--disabled:active{background-color:#fafafa}.van-skeleton{display:-webkit-box;display:-webkit-flex;display:flex;padding:0 16px}.van-skeleton__avatar{-webkit-flex-shrink:0;flex-shrink:0;margin-right:16px;background-color:#f2f3f5}.van-skeleton__avatar--round{border-radius:100%}.van-skeleton__content{width:100%}.van-skeleton__avatar+.van-skeleton__content{padding-top:8px}.van-skeleton__row,.van-skeleton__title{height:16px;background-color:#f2f3f5}.van-skeleton__title{margin:0}.van-skeleton__row:not(:first-child){margin-top:12px}.van-skeleton__title+.van-skeleton__row{margin-top:20px}.van-skeleton--animate{-webkit-animation:van-skeleton-blink 1.2s ease-in-out infinite;animation:van-skeleton-blink 1.2s ease-in-out infinite}.van-slider,.van-slider__bar{position:relative;background-color:#e5e5e5;border-radius:999px}.van-slider::before{position:absolute;top:-8px;right:0;bottom:-8px;left:0;content:''}.van-slider__bar{background-color:#1989fa;border-radius:inherit;-webkit-transition:width .2s;transition:width .2s}.van-slider__button{width:24px;height:24px;background-color:#fff;border-radius:50%;box-shadow:0 1px 2px rgba(0,0,0,.5)}.van-slider__button-wrapper{position:absolute;top:50%;right:0;-webkit-transform:translate3d(50%,-50%,0);transform:translate3d(50%,-50%,0)}.van-slider--disabled{opacity:.5}.van-slider--vertical{display:inline-block;height:100%}.van-slider--vertical .van-slider__button-wrapper{top:auto;bottom:0;-webkit-transform:translate3d(50%,50%,0);transform:translate3d(50%,50%,0)}.van-stepper{font-size:0;-webkit-user-select:none;user-select:none}.van-stepper__minus,.van-stepper__plus{position:relative;box-sizing:border-box;width:28px;height:28px;margin:0;padding:4px;color:#323233;vertical-align:middle;background-color:#f2f3f5;border:0}.van-stepper__minus::before,.van-stepper__plus::before{width:13px;height:1px}.van-stepper__minus::after,.van-stepper__plus::after{width:1px;height:13px}.van-stepper__minus::after,.van-stepper__minus::before,.van-stepper__plus::after,.van-stepper__plus::before{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;background-color:currentColor;content:''}.van-stepper__minus:active,.van-stepper__plus:active{background-color:#e8e8e8}.van-stepper__minus--disabled,.van-stepper__plus--disabled{color:#c8c9cc;background-color:#f7f8fa}.van-stepper__minus--disabled:active,.van-stepper__plus--disabled:active{background-color:#f7f8fa}.van-stepper__minus{border-radius:4px 0 0 4px}.van-stepper__minus::after{display:none}.van-stepper__plus{border-radius:0 4px 4px 0}.van-stepper__input{box-sizing:border-box;width:32px;height:28px;margin:0 2px;padding:0;color:#323233;font-size:14px;text-align:center;vertical-align:middle;background-color:#f2f3f5;border:0;border-width:1px 0;border-radius:0;-webkit-appearance:none}.van-stepper__input[disabled]{color:#c8c9cc;background-color:#f2f3f5}.van-stepper input[type=number]::-webkit-inner-spin-button,.van-stepper input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.van-swipe{position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.van-swipe__track{height:100%}.van-swipe__indicators{position:absolute;bottom:12px;left:50%;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.van-swipe__indicators--vertical{top:50%;bottom:auto;left:12px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.van-swipe__indicators--vertical .van-swipe__indicator:not(:last-child){margin-bottom:6px}.van-swipe__indicator{width:6px;height:6px;background-color:#ebedf0;border-radius:100%;opacity:.3;-webkit-transition:opacity .2s;transition:opacity .2s}.van-swipe__indicator:not(:last-child){margin-right:6px}.van-swipe__indicator--active{background-color:#1989fa;opacity:1}.van-swipe-item{float:left;height:100%}.van-index-anchor{padding:0 16px;color:#323233;font-weight:500;font-size:14px;line-height:32px;background-color:transparent}.van-index-anchor--sticky{position:fixed;top:0;right:0;left:0;background-color:#fff}.van-index-bar__sidebar{position:fixed;top:50%;right:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;text-align:center;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-user-select:none;user-select:none}.van-index-bar__index{padding:0 4px 0 16px;font-weight:500;font-size:10px;line-height:14px}.van-checkbox{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;overflow:hidden;-webkit-user-select:none;user-select:none}.van-checkbox__icon{-webkit-box-flex:0;-webkit-flex:none;flex:none;height:1em;font-size:20px;line-height:1em}.van-checkbox__icon .van-icon{display:block;box-sizing:border-box;width:1.25em;height:1.25em;color:transparent;font-size:.8em;line-height:inherit;text-align:center;border:1px solid #e5e5e5;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:color,border-color,background-color;transition-property:color,border-color,background-color}.van-checkbox__icon--round .van-icon{border-radius:100%}.van-checkbox__icon--checked .van-icon{color:#fff;background-color:#1989fa;border-color:#1989fa}.van-checkbox__icon--disabled .van-icon{background-color:#ebedf0;border-color:#c8c9cc}.van-checkbox__icon--disabled.van-checkbox__icon--checked .van-icon{color:#c8c9cc}.van-checkbox__label{margin-left:8px;color:#323233;line-height:20px}.van-checkbox__label--left{margin:0 8px 0 0}.van-checkbox__label--disabled,.van-radio__icon--disabled.van-radio__icon--checked .van-icon{color:#c8c9cc}.van-field__label{-webkit-box-flex:0;-webkit-flex:none;flex:none;width:90px}.van-field__label--center{text-align:center}.van-field__label--right{text-align:right}.van-field__body{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center}.van-field__control{display:block;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:0;color:#323233;text-align:left;background-color:transparent;border:0;resize:none}.van-field__control::-webkit-input-placeholder{color:#969799}.van-field__control::placeholder{color:#969799}.van-field__control:disabled{color:#969799;-webkit-text-fill-color:#969799;background-color:transparent;opacity:1}.van-field__control--center{text-align:center}.van-field__control--right{text-align:right}.van-field__control[type=date],.van-field__control[type=datetime-local],.van-field__control[type=time]{min-height:24px}.van-field__control[type=search]{-webkit-appearance:none}.van-field__button,.van-field__clear,.van-field__icon,.van-field__right-icon{-webkit-flex-shrink:0;flex-shrink:0}.van-field__clear,.van-field__right-icon{margin-right:-8px;padding:0 8px;line-height:inherit}.van-field__clear{color:#c8c9cc;font-size:16px}.van-field__left-icon .van-icon,.van-field__right-icon .van-icon{display:block;min-width:1em;font-size:16px;line-height:inherit}.van-field__left-icon{margin-right:5px}.van-field__right-icon{color:#969799}.van-field__button{padding-left:8px}.van-field__error-message{color:#ee0a24;font-size:12px;text-align:left}.van-field__error-message--center{text-align:center}.van-field__error-message--right{text-align:right}.van-field__word-limit{margin-top:4px;color:#7d7e80;font-size:12px;line-height:16px;text-align:right}.van-field--error .van-field__control,.van-field--error .van-field__control::-webkit-input-placeholder{color:#ee0a24;-webkit-text-fill-color:#ee0a24}.van-field--error .van-field__control,.van-field--error .van-field__control::placeholder{color:#ee0a24;-webkit-text-fill-color:#ee0a24}.van-field--min-height .van-field__control{min-height:60px}.van-radio{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;overflow:hidden;-webkit-user-select:none;user-select:none}.van-radio__icon{-webkit-box-flex:0;-webkit-flex:none;flex:none;height:1em;font-size:20px;line-height:1em}.van-radio__icon .van-icon{display:block;box-sizing:border-box;width:1.25em;height:1.25em;color:transparent;font-size:.8em;line-height:inherit;text-align:center;border:1px solid #e5e5e5;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-property:color,border-color,background-color;transition-property:color,border-color,background-color}.van-radio__icon--round .van-icon{border-radius:100%}.van-radio__icon--checked .van-icon{color:#fff;background-color:#1989fa;border-color:#1989fa}.van-radio__icon--disabled .van-icon{background-color:#ebedf0;border-color:#c8c9cc}.van-radio__label{margin-left:8px;color:#323233;line-height:20px}.van-radio__label--left{margin:0 8px 0 0}.van-radio__label--disabled{color:#c8c9cc}.van-switch,.van-switch__node{height:1em;background-color:#fff}.van-switch{display:inline-block;box-sizing:content-box;font-size:30px;border:1px solid rgba(0,0,0,.1);-webkit-transition:background-color .3s;transition:background-color .3s;position:relative;width:2em;border-radius:1em}.van-switch__node{position:absolute;top:0;left:0;z-index:1;width:1em;border-radius:100%;box-shadow:0 3px 1px 0 rgba(0,0,0,.05),0 2px 2px 0 rgba(0,0,0,.1),0 3px 3px 0 rgba(0,0,0,.05);-webkit-transition:-webkit-transform .3s cubic-bezier(.3,1.05,.4,1.05);transition:transform .3s cubic-bezier(.3,1.05,.4,1.05);transition:transform .3s cubic-bezier(.3,1.05,.4,1.05),-webkit-transform .3s cubic-bezier(.3,1.05,.4,1.05)}.van-switch__loading{top:25%;left:25%;width:50%;height:50%;line-height:1}.van-switch--on{background-color:#1989fa}.van-switch--on .van-switch__node{-webkit-transform:translateX(1em);transform:translateX(1em)}.van-switch--disabled{opacity:.5}.van-uploader{position:relative;display:inline-block}.van-uploader__wrapper{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.van-uploader__input{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;cursor:pointer;opacity:0}.van-uploader__input-wrapper{position:relative}.van-uploader__upload{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;box-sizing:border-box;width:80px;height:80px;margin:0 8px 8px 0;background-color:#fff;border:1px dashed #e5e5e5;border-radius:4px}.van-uploader__upload-icon{color:#969799;font-size:24px}.van-uploader__upload-text{margin-top:8px;color:#969799;font-size:12px}.van-uploader__preview{position:relative;margin:0 8px 8px 0}.van-uploader__preview-image{display:block;width:80px;height:80px}.van-uploader__preview-delete{position:absolute;top:-8px;right:-8px;color:#969799;font-size:18px;background-color:#fff;border-radius:100%}.van-uploader__file{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;width:80px;height:80px;background-color:#f8f8f8;border-radius:4px}.van-uploader__file-icon{color:#7d7e80;font-size:20px}.van-uploader__file-name{box-sizing:border-box;width:100%;margin-top:8px;padding:0 4px;color:#7d7e80;font-size:12px;text-align:center}.van-password-input{position:relative;margin:0 16px;-webkit-user-select:none;user-select:none}.van-password-input__error-info,.van-password-input__info{margin-top:16px;font-size:14px;text-align:center}.van-password-input__info{color:#969799}.van-password-input__error-info{color:#ee0a24}.van-password-input__security{display:-webkit-box;display:-webkit-flex;display:flex;width:100%;height:50px}.van-password-input__security::after{border-radius:6px}.van-password-input__security li{position:relative;-webkit-box-flex:1;-webkit-flex:1;flex:1;height:100%;font-size:20px;line-height:50px;text-align:center;background-color:#fff}.van-password-input__security i{position:absolute;top:50%;left:50%;width:10px;height:10px;margin:-5px 0 0 -5px;background-color:#000;border-radius:100%;visibility:hidden}.van-password-input__cursor{position:absolute;top:50%;left:50%;width:1px;height:40%;background-color:#323233;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:1s van-cursor-flicker infinite;animation:1s van-cursor-flicker infinite}.van-number-keyboard{position:fixed;bottom:0;left:0;width:100%;background-color:#fff;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out;-webkit-user-select:none;user-select:none}.van-number-keyboard__title{position:relative;height:30px;color:#7d7e80;font-size:14px;line-height:30px;text-align:center}.van-number-keyboard__title-left{position:absolute;left:0}.van-number-keyboard__body{position:relative;box-sizing:border-box}.van-number-keyboard__close{position:absolute;right:0;padding:0 16px;color:#1989fa;font-size:14px}.van-number-keyboard__close:active{background-color:#f2f3f5}.van-number-keyboard__sidebar{position:absolute;right:0;bottom:0;width:25%;height:216px}.van-number-keyboard--custom .van-number-keyboard__body{padding-right:25%}.van-number-keyboard--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-key{display:inline-block;width:33.33333333%;height:54px;font-size:24px;font-style:normal;line-height:54px;text-align:center;vertical-align:middle}.van-key::after{border-width:1px 1px 0 0}.van-key--middle{width:66.66666667%}.van-key--big{width:100%;height:108px;line-height:108px}.van-key--blue,.van-key--delete{font-size:16px}.van-key--blue{color:#fff}.van-key--blue,.van-key--blue.van-key--active{background-color:#1989fa}.van-key--blue::after{border-color:#1989fa}.van-key--blue:active{background-color:#0570db}.van-key--gray{background-color:#ebedf0}.van-action-sheet__cancel:active,.van-action-sheet__item:active,.van-key--active{background-color:#f2f3f5}.van-action-sheet{max-height:90%;color:#323233}.van-action-sheet__cancel,.van-action-sheet__item{display:block;width:100%;font-size:16px;line-height:50px;text-align:center;background-color:#fff;border:0}.van-action-sheet__item{height:50px}.van-action-sheet__item--disabled{color:#c8c9cc}.van-action-sheet__item--disabled:active{background-color:#fff}.van-action-sheet__subname{margin-left:4px;color:#7d7e80;font-size:12px}.van-action-sheet__cancel::before{display:block;height:8px;background-color:#f8f8f8;content:' '}.van-action-sheet__header{font-weight:500;font-size:16px;line-height:44px;text-align:center}.van-action-sheet__description{padding:16px;color:#7d7e80;font-size:14px;line-height:20px;text-align:center}.van-action-sheet__close{position:absolute;top:0;right:0;padding:0 12px;color:#969799;font-size:18px;line-height:inherit}.van-dialog{position:fixed;top:45%;left:50%;width:320px;overflow:hidden;font-size:16px;background-color:#fff;border-radius:16px;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:.3s;transition:.3s;-webkit-transition-property:opacity,-webkit-transform;transition-property:transform,opacity;transition-property:transform,opacity,-webkit-transform}@media (max-width:321px){.van-dialog{width:90%}}.van-dialog__header{padding-top:24px;font-weight:500;line-height:24px;text-align:center}.van-dialog__header--isolated{padding:24px 0}.van-dialog__message{max-height:60vh;padding:24px;overflow-y:auto;font-size:14px;line-height:20px;white-space:pre-wrap;text-align:center;word-wrap:break-word;-webkit-overflow-scrolling:touch}.van-dialog__message--has-title{padding-top:12px;color:#7d7e80}.van-dialog__message--left{text-align:left}.van-dialog__message--right{text-align:right}.van-dialog__footer{overflow:hidden;-webkit-user-select:none;user-select:none}.van-dialog__footer--buttons{display:-webkit-box;display:-webkit-flex;display:flex}.van-dialog__footer--buttons .van-button{-webkit-box-flex:1;-webkit-flex:1;flex:1}.van-dialog .van-button{border:0}.van-dialog__confirm,.van-dialog__confirm:active{color:#1989fa}.van-dialog-bounce-enter{-webkit-transform:translate3d(-50%,-50%,0) scale(.7);transform:translate3d(-50%,-50%,0) scale(.7);opacity:0}.van-dialog-bounce-leave-active{-webkit-transform:translate3d(-50%,-50%,0) scale(.9);transform:translate3d(-50%,-50%,0) scale(.9);opacity:0}.van-dropdown-item{position:fixed;right:0;left:0;overflow:hidden}.van-dropdown-item__option{text-align:left}.van-dropdown-item__option--active,.van-dropdown-item__option--active .van-dropdown-item__icon{color:#1989fa}.van-dropdown-item--up{top:0}.van-dropdown-item--down{bottom:0}.van-dropdown-item__content{position:absolute;max-height:80%}.van-dropdown-item__icon{display:block;line-height:inherit}.van-dropdown-menu,.van-dropdown-menu__item{display:-webkit-box;display:-webkit-flex;display:flex}.van-dropdown-menu{height:50px;background-color:#fff;-webkit-user-select:none;user-select:none}.van-dropdown-menu__item{-webkit-box-flex:1;-webkit-flex:1;flex:1;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;min-width:0}.van-dropdown-menu__item:active{opacity:.7}.van-dropdown-menu__item--disabled:active{opacity:1}.van-dropdown-menu__item--disabled .van-dropdown-menu__title{color:#969799}.van-dropdown-menu__title{position:relative;box-sizing:border-box;max-width:100%;padding:0 8px;color:#323233;font-size:15px;line-height:18px}.van-dropdown-menu__title::after{position:absolute;top:50%;right:-4px;margin-top:-5px;border:3px solid;border-color:transparent transparent currentColor currentColor;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:.8;content:''}.van-dropdown-menu__title--active{color:#1989fa}.van-dropdown-menu__title--down::after{margin-top:-1px;-webkit-transform:rotate(135deg);transform:rotate(135deg)}.van-picker{position:relative;background-color:#fff;-webkit-user-select:none;user-select:none;-webkit-text-size-adjust:100%}.van-picker__toolbar{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;height:44px;line-height:44px}.van-picker__cancel,.van-picker__confirm{padding:0 16px;color:#1989fa;font-size:14px;background-color:transparent;border:0}.van-picker__cancel:active,.van-picker__confirm:active{background-color:#f2f3f5}.van-picker__title{max-width:50%;font-weight:500;font-size:16px;text-align:center}.van-picker__columns,.van-picker__loading{position:relative;display:-webkit-box;display:-webkit-flex;display:flex}.van-picker__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;color:#1989fa;background-color:rgba(255,255,255,.9)}.van-picker__frame,.van-picker__mask{position:absolute;left:0;width:100%;pointer-events:none}.van-picker__frame{-webkit-transform:translateY(-50%);transform:translateY(-50%);top:50%;z-index:3}.van-picker__mask{top:0;z-index:2;height:100%;background-image:-webkit-linear-gradient(top,rgba(255,255,255,.9),rgba(255,255,255,.4)),-webkit-linear-gradient(bottom,rgba(255,255,255,.9),rgba(255,255,255,.4));background-image:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.4)),linear-gradient(0deg,rgba(255,255,255,.9),rgba(255,255,255,.4));background-repeat:no-repeat;background-position:top,bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden}.van-picker-column{-webkit-box-flex:1;-webkit-flex:1;flex:1;overflow:hidden;font-size:16px;text-align:center}.van-picker-column__wrapper{-webkit-transition-timing-function:cubic-bezier(.23,1,.68,1);transition-timing-function:cubic-bezier(.23,1,.68,1)}.van-picker-column__item{padding:0 5px;color:#000}.van-picker-column__item--disabled{opacity:.3}.van-pull-refresh{overflow:hidden;-webkit-user-select:none;user-select:none}.van-pull-refresh__track{position:relative;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.van-pull-refresh__head{position:absolute;top:-50px;left:0;width:100%;height:50px;overflow:hidden;color:#969799;font-size:14px;line-height:50px;text-align:center}.van-notify{box-sizing:border-box;padding:8px 16px;font-size:14px;line-height:20px;white-space:pre-wrap;text-align:center;word-wrap:break-word}.van-notify--primary{background-color:#1989fa}.van-notify--success{background-color:#07c160}.van-notify--danger{background-color:#ee0a24}.van-notify--warning{background-color:#ff976a}.van-toast{position:fixed;top:50%;left:50%;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;box-sizing:content-box;width:90px;max-width:70%;min-height:90px;padding:16px;color:#fff;font-size:14px;line-height:20px;white-space:pre-wrap;text-align:center;word-wrap:break-word;background-color:rgba(50,50,51,.88);border-radius:4px;-webkit-transform:translate3d(-50%,-50%,0);transform:translate3d(-50%,-50%,0)}.van-toast--unclickable *{pointer-events:none}.van-toast--html,.van-toast--text{width:-webkit-fit-content;width:fit-content;min-width:96px;min-height:unset;padding:8px 12px}.van-toast--html .van-toast__text,.van-toast--text .van-toast__text{margin-top:0}.van-toast--top{top:50px}.van-toast--bottom{top:auto;bottom:50px}.van-toast__icon{font-size:40px}.van-toast__loading{padding:4px;color:#fff}.van-toast__text{margin-top:8px}.van-swipe-cell{position:relative;overflow:hidden}.van-swipe-cell__wrapper{-webkit-transition-timing-function:cubic-bezier(.18,.89,.32,1);transition-timing-function:cubic-bezier(.18,.89,.32,1);-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.van-swipe-cell__left,.van-swipe-cell__right{position:absolute;top:0;height:100%}.van-swipe-cell__left{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.van-swipe-cell__right{right:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.van-switch-cell{padding-top:9px;padding-bottom:9px}.van-switch-cell--large{padding-top:11px;padding-bottom:11px}.van-switch-cell .van-switch{float:right}.van-tree-select{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;font-size:14px;-webkit-user-select:none;user-select:none}.van-tree-select__nav{-webkit-box-flex:1;-webkit-flex:1;flex:1;overflow-y:auto;background-color:#fafafa;-webkit-overflow-scrolling:touch}.van-tree-select__nav-item{padding:12px 8px 12px 12px}.van-tree-select__content{-webkit-box-flex:2;-webkit-flex:2;flex:2;overflow-y:auto;background-color:#fff;-webkit-overflow-scrolling:touch}.van-tree-select__item{position:relative;padding:0 32px 0 16px;font-weight:700;line-height:44px}.van-tree-select__item--active{color:#ee0a24}.van-tree-select__item--disabled{color:#c8c9cc}.van-tree-select__selected{position:absolute;top:50%;right:16px;margin-top:-8px}.van-address-edit__buttons{padding:32px 16px}.van-address-edit__buttons .van-button{margin-bottom:12px}.van-address-edit-detail{padding:0}.van-address-edit-detail__finish{color:#1989fa;font-size:12px}.van-address-list{box-sizing:border-box;height:100%;padding-bottom:100px}.van-address-list__add{position:fixed;bottom:0;left:0;z-index:999}.van-address-list__disabled-text{padding:0 16px;color:#969799;font-size:12px;line-height:30px}.van-address-item{padding:16px}.van-address-item__value{padding-right:32px}.van-address-item__name{margin-bottom:4px;font-weight:500;font-size:14px;line-height:20px}.van-address-item__address{color:#7d7e80;font-size:12px;line-height:16px}.van-address-item--disabled .van-address-item__address,.van-address-item--disabled .van-address-item__name{color:#969799}.van-address-item__edit{position:absolute;top:50%;right:16px;font-size:16px;-webkit-transform:translate(0,-50%);transform:translate(0,-50%)}.van-address-item .van-radio__icon--checked .van-icon{background-color:#ee0a24;border-color:#ee0a24}.van-card{position:relative;box-sizing:border-box;padding:8px 16px;color:#323233;font-size:12px;background-color:#fafafa}.van-card:not(:first-child){margin-top:8px}.van-card__header{display:-webkit-box;display:-webkit-flex;display:flex}.van-card__thumb{position:relative;-webkit-box-flex:0;-webkit-flex:none;flex:none;width:90px;height:90px;margin-right:8px}.van-card__content{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-flex:1;-webkit-flex:1;flex:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;min-width:0;min-height:90px}.van-card__content--centered{-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.van-card__desc,.van-card__title{word-wrap:break-word}.van-card__title{max-height:32px;font-weight:500;line-height:16px}.van-card__desc{max-height:20px;color:#7d7e80}.van-card__bottom,.van-card__desc{line-height:20px}.van-card__price{display:inline-block;color:#ee0a24;font-weight:500}.van-card__origin-price{display:inline-block;margin-left:5px;color:#7d7e80;font-size:10px;text-decoration:line-through}.van-card__num{float:right}.van-card__tag{position:absolute;top:2px;left:0}.van-card__footer{-webkit-box-flex:0;-webkit-flex:none;flex:none;text-align:right}.van-card__footer .van-button{margin-left:5px}.van-contact-card{padding:16px}.van-contact-card__value{margin-left:5px;line-height:20px}.van-contact-card--add .van-contact-card__value{line-height:40px}.van-contact-card--add .van-cell__left-icon{color:#1989fa;font-size:40px}.van-contact-card::before{position:absolute;right:0;bottom:0;left:0;height:2px;background:-webkit-repeating-linear-gradient(135deg,#ff6c6c 0,#ff6c6c 20%,transparent 0,transparent 25%,#1989fa 0,#1989fa 45%,transparent 0,transparent 50%);background:repeating-linear-gradient(-45deg,#ff6c6c 0,#ff6c6c 20%,transparent 0,transparent 25%,#1989fa 0,#1989fa 45%,transparent 0,transparent 50%);background-size:80px;content:''}.van-contact-list{box-sizing:border-box;height:100%;padding-bottom:50px}.van-contact-list__item{padding:16px}.van-contact-list__item-value{padding-right:32px}.van-contact-list__group{box-sizing:border-box;height:100%;overflow-y:scroll;-webkit-overflow-scrolling:touch}.van-contact-list__name{font-weight:500;font-size:14px;line-height:20px}.van-contact-list__edit{position:absolute;top:50%;right:16px;font-size:16px;-webkit-transform:translate(0,-50%);transform:translate(0,-50%)}.van-contact-list__add{position:fixed;bottom:0;left:0;z-index:999}.van-contact-edit__buttons{padding:32px 16px}.van-contact-edit .van-cell__title{max-width:65px}.van-contact-edit .van-button{margin-bottom:12px}.van-coupon{margin:0 16px 16px;overflow:hidden;background-color:#fff;border-radius:4px;box-shadow:0 0 4px rgba(0,0,0,.1)}.van-coupon:active{background-color:#f2f3f5}.van-coupon__content{display:-webkit-box;display:-webkit-flex;display:flex;box-sizing:border-box;height:100px;padding:24px 0 0 16px}.van-coupon h2,.van-coupon p{margin:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.van-coupon h2{height:34px;font-weight:500;line-height:34px}.van-coupon p{color:#969799;font-size:12px;line-height:16px}.van-coupon__head{position:relative;min-width:85px;padding-right:8px}.van-coupon__head p{white-space:pre-wrap}.van-coupon__amount{color:#ee0a24;font-size:24px}.van-coupon__amount span{font-size:50%}.van-coupon__amount span:not(:empty){margin-left:2px}.van-coupon__body{position:relative;-webkit-box-flex:1;-webkit-flex:1;flex:1;border-radius:0 4px 4px 0}.van-coupon__name{font-size:16px}.van-coupon__corner{position:absolute;top:16px;right:16px}.van-coupon__description{padding:8px 16px;background-color:#fafafa;border-top:1px dashed #ebedf0}.van-coupon--disabled:active{background-color:#fff}.van-coupon--disabled .van-coupon-item__content{height:90px}.van-coupon--disabled h2,.van-coupon--disabled p,.van-coupon--disabled span{color:#969799}.van-coupon-cell--selected{color:#323233}.van-coupon-list{position:relative;height:100%;background-color:#f8f8f8}.van-coupon-list__field{padding:8px 16px}.van-coupon-list__exchange{height:32px;line-height:30px}.van-coupon-list__list{box-sizing:border-box;padding:16px 0;overflow-y:auto;-webkit-overflow-scrolling:touch}.van-coupon-list__close{position:absolute;bottom:0;left:0;font-weight:500}.van-coupon-list__empty{padding-top:60px;text-align:center}.van-coupon-list__empty p{margin:16px 0;color:#969799;font-size:14px;line-height:20px}.van-coupon-list__empty img{width:200px;height:200px}.van-goods-action{position:fixed;right:0;bottom:0;left:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;background-color:#fff}.van-goods-action--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-goods-action-button{-webkit-box-flex:1;-webkit-flex:1;flex:1;height:40px;font-weight:500;font-size:14px;line-height:normal;border:0}.van-goods-action-button--first{margin-left:5px;border-top-left-radius:20px;border-bottom-left-radius:20px}.van-goods-action-button--last{margin-right:5px;border-top-right-radius:20px;border-bottom-right-radius:20px}.van-goods-action-button--warning{background:-webkit-linear-gradient(left,#ffd01e,#ff8917);background:linear-gradient(to right,#ffd01e,#ff8917)}.van-goods-action-button--danger{background:-webkit-linear-gradient(left,#ff6034,#ee0a24);background:linear-gradient(to right,#ff6034,#ee0a24)}@media (max-width:321px){.van-goods-action-button{font-size:13px}}.van-goods-action-icon{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;min-width:48px;height:50px;color:#7d7e80;font-size:10px;line-height:1;text-align:center;background-color:#fff}.van-goods-action-icon:active{background-color:#f2f3f5}.van-goods-action-icon__icon{width:1em;margin:0 auto 5px;color:#323233;font-size:18px}.van-submit-bar{position:fixed;bottom:0;left:0;z-index:100;width:100%;background-color:#fff;-webkit-user-select:none;user-select:none}.van-submit-bar__tip{padding:8px 12px;color:#f56723;font-size:12px;line-height:1.5;background-color:#fff7cc}.van-submit-bar__tip-icon{min-width:18px;font-size:12px;vertical-align:middle}.van-submit-bar__tip-text{vertical-align:middle}.van-submit-bar__bar{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end;height:50px;font-size:14px}.van-submit-bar__text{-webkit-box-flex:1;-webkit-flex:1;flex:1;padding-right:12px;color:#323233;font-weight:500;text-align:right}.van-submit-bar__text span{display:inline-block}.van-submit-bar__suffix-label{margin-left:5px}.van-submit-bar__price{color:#ee0a24;font-size:18px}.van-submit-bar__price::first-letter{font-size:14px}.van-submit-bar__button{width:110px}.van-submit-bar--safe-area-inset-bottom{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.van-sku-container{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-webkit-align-items:stretch;align-items:stretch;min-height:50%;max-height:80%;overflow-y:visible;font-size:14px;background:#fff}.van-sku-body{-webkit-box-flex:1;-webkit-flex:1 1 auto;flex:1 1 auto;min-height:44px;overflow-y:scroll;-webkit-overflow-scrolling:touch}.van-sku-body::-webkit-scrollbar{display:none}.van-sku-header{margin-left:16px}.van-sku-header__img-wrap{position:relative;float:left;width:96px;height:96px;margin:12px 0;overflow:hidden;background:#f8f8f8;border-radius:4px}.van-sku-header__img-wrap img{position:absolute;top:0;right:0;bottom:0;left:0;max-width:100%;max-height:100%;margin:auto}.van-sku-header__goods-info{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end;min-height:96px;padding:12px 36px 12px 8px;overflow:hidden}.van-sku-header-item{margin-top:8px;color:#969799;font-size:12px;line-height:16px}.van-sku__price-num,.van-sku__price-symbol{font-size:16px;vertical-align:middle}.van-sku__price-num{font-weight:500;font-size:22px;word-wrap:break-word}.van-sku__goods-price{color:#ee0a24}.van-sku__price-tag{position:relative;display:inline-block;margin-left:8px;padding:0 5px;overflow:hidden;color:#ee0a24;font-size:12px;line-height:16px;vertical-align:middle;border-radius:8px}.van-sku__price-tag::before{position:absolute;top:0;left:0;width:100%;height:100%;background:currentColor;opacity:.1;content:''}.van-sku-group-container{margin-left:16px;padding:12px 0 2px}.van-sku-group-container--hide-soldout .van-sku-row__item--disabled{display:none}.van-sku-row{margin:0 3px 12px 0}.van-sku-row:last-child{margin-bottom:0}.van-sku-row__title{padding-bottom:12px}.van-sku-row__item{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;min-width:40px;margin:0 12px 12px 0;overflow:hidden;color:#323233;font-size:13px;line-height:16px;vertical-align:middle;border-radius:4px}.van-sku-row__item::before{position:absolute;top:0;left:0;width:100%;height:100%;background:#f7f8fa;content:''}.van-sku-row__item-img{z-index:1;width:24px;height:24px;margin:4px 0 4px 4px;object-fit:cover;border-radius:2px}.van-sku-row__item-name{z-index:1;padding:8px}.van-sku-row__item--active{color:#ee0a24}.van-sku-row__item--active::before{background:currentColor;opacity:.1}.van-sku-row__item--disabled{color:#c8c9cc;background:#f2f3f5}.van-sku-row__item--disabled .van-sku-row__item-img{opacity:.3}.van-sku-stepper-stock{margin-left:16px;padding:12px 0}.van-sku-stepper-container{height:30px;margin-right:20px}.van-sku__stepper{float:right}.van-sku__stepper-title{float:left;line-height:30px}.van-sku__stock{display:inline-block;margin-right:8px;color:#969799;font-size:12px}.van-sku__stock-num--highlight{color:#ee0a24}.van-sku__quota{display:inline-block;color:#ee0a24;font-size:12px}.van-sku-messages{padding-bottom:32px}.van-sku-messages__image-cell .van-cell__title{max-width:90px}.van-sku-messages__image-cell .van-cell__value{overflow:visible;text-align:left}.van-sku-img-uploader{display:inline-block}.van-sku-img-uploader__uploader{vertical-align:middle}.van-sku-img-uploader__img{position:relative;float:left;width:64px;height:64px;margin-right:8px;background:#f7f8fa;border-radius:2px}.van-sku-img-uploader__img img{width:100%;height:100%;object-fit:contain}.van-sku-img-uploader__delete{position:absolute;top:-12px;right:-14px;z-index:1;padding:6px;color:rgba(50,50,51,.8);opacity:.8}.van-sku-img-uploader__delete::before{background-color:#fff;border-radius:14px}.van-sku-img-uploader__mask{position:absolute;top:0;left:0;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;width:100%;height:100%;color:#fff;background:rgba(50,50,51,.8)}.van-sku-img-uploader__warn-text{margin-top:6px;font-size:12px;line-height:14px}.van-sku-actions,.van-sku-img-uploader__trigger{display:-webkit-box;display:-webkit-flex;display:flex}.van-sku-img-uploader__trigger{-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;width:100%;height:100%;color:#dcdde0}.van-sku-actions{-webkit-flex-shrink:0;flex-shrink:0;padding:8px 16px}.van-sku-actions .van-button{height:40px;font-weight:500;font-size:14px;line-height:34px;border:0;border-radius:0}.van-sku-actions .van-button:first-of-type{border-top-left-radius:20px;border-bottom-left-radius:20px}.van-sku-actions .van-button:last-of-type{border-top-right-radius:20px;border-bottom-right-radius:20px}.van-sku-actions .van-button--warning{background:-webkit-linear-gradient(left,#ffd01e,#ff8917);background:linear-gradient(to right,#ffd01e,#ff8917)}.van-sku-actions .van-button--danger{background:-webkit-linear-gradient(left,#ff6034,#ee0a24);background:linear-gradient(to right,#ff6034,#ee0a24)}
0 \ No newline at end of file 6 \ No newline at end of file
src/main/resources/static/pageTemplates/css/video-js_v7.11.4.css 0 → 100644
  1 +@charset "UTF-8";
  2 +.vjs-modal-dialog .vjs-modal-dialog-content, .video-js .vjs-modal-dialog, .vjs-button > .vjs-icon-placeholder:before, .video-js .vjs-big-play-button .vjs-icon-placeholder:before {
  3 + position: absolute;
  4 + top: 0;
  5 + left: 0;
  6 + width: 100%;
  7 + height: 100%;
  8 +}
  9 +
  10 +.vjs-button > .vjs-icon-placeholder:before, .video-js .vjs-big-play-button .vjs-icon-placeholder:before {
  11 + text-align: center;
  12 +}
  13 +
  14 +@font-face {
  15 + font-family: VideoJS;
  16 + src: url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAABDkAAsAAAAAG6gAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADsAAABUIIslek9TLzIAAAFEAAAAPgAAAFZRiV3hY21hcAAAAYQAAADaAAADPv749/pnbHlmAAACYAAAC3AAABHQZg6OcWhlYWQAAA3QAAAAKwAAADYZw251aGhlYQAADfwAAAAdAAAAJA+RCLFobXR4AAAOHAAAABMAAACM744AAGxvY2EAAA4wAAAASAAAAEhF6kqubWF4cAAADngAAAAfAAAAIAE0AIFuYW1lAAAOmAAAASUAAAIK1cf1oHBvc3QAAA/AAAABJAAAAdPExYuNeJxjYGRgYOBiMGCwY2BycfMJYeDLSSzJY5BiYGGAAJA8MpsxJzM9kYEDxgPKsYBpDiBmg4gCACY7BUgAeJxjYGS7wTiBgZWBgaWQ5RkDA8MvCM0cwxDOeI6BgYmBlZkBKwhIc01hcPjI+FGJHcRdyA4RZgQRADK3CxEAAHic7dFZbsMgAEXRS0ycyZnnOeG7y+qC8pU1dHusIOXxuoxaOlwZYWQB0Aea4quIEN4E9LzKbKjzDeM6H/mua6Lmc/p8yhg0lvdYx15ZG8uOLQOGjMp3EzqmzJizYMmKNRu27Nhz4MiJMxeu3Ljz4Ekqm7T8P52G8PP3lnTOVk++Z6iN6QZzNN1F7ptuN7eGOjDUoaGODHVsuvU8MdTO9Hd5aqgzQ50b6sJQl4a6MtS1oW4MdWuoO0PdG+rBUI+GejLUs6FeDPVqqDdDvRvqw1CfhpqM9At0iFLaAAB4nJ1YDXBTVRZ+5/22TUlJ8we0pHlJm7RJf5O8F2j6EymlSPkpxaL8U2xpa3DKj0CBhc2IW4eWKSokIoLsuMqssM64f+jA4HSdWXXXscBq67IOs3FXZ1ZYWVyRFdo899yXtIBQZ90k7717zz3v3HPPOfd854YCCj9cL9dL0RQFOqCbGJnrHb5EayiKIWN8iA/hWBblo6hUWm8TtCDwE80WMJus/irwyxOdxeB0MDb14VNJHnXYoLLSl6FfCUYO9nYPTA8Epg9090LprfbBbZ2hY0UlJUXHQp3/vtWkS6EBv8+rPMq5u9692f/dNxJNiqwC1xPE9TCUgCsSdQWgE3XQD25lkG4CN2xmTcOXWBOyser6RN6KnGbKSbmQ3+d0OI1m2W8QzLLkI2sykrWAgJJEtA8vGGW/2Q+CmT3n8zS9wZwu2DCvtuZKZN3xkrLh36yCZuUomQSqGpY8t/25VfHVhw8z4ebGBtfLb0ya9PCaDc+8dGTvk2dsh6z7WzvowlXKUSWo9MJ15a3KrEP2loOr2Ojhw6iW6hf2BDdEccQvZGpaAy7YovSwq8kr7HGllxpd71rkS6G0Sf11sl9OvMK1+jwPPODxjUwkOim9CU3ix1wNjXDfmJSEn618Bs6lpWwUpU+8PCqLMY650zjq8VhCIP17NEKTx3eaLL+s5Pi6yJWaWjTHLR1jYzPSV9VF/6Ojdb/1kO3Mk3uhHC0x6gc1BjlKQ+nQFxTYdaJkZ7ySVxLBbhR1dsboNXp1tCYKW2LRaEzpYcIx2BKNxaL0ZaUnSqfFoiNhHKR/GkX6PWUSAaJelQaqZL1EpoHNsajSEyPSoJ9IjhIxTdjHLmwZvhRDOiFTY/YeQnvrVZmiTQtGncECXtFTBZLOVwwMRgoXHAkXzMzPn1nAJJ8jYSbMDaqN2waGLzNhih/bZynUBMpIWSg7VYi7DRx2m8ALkIdRCJwI6ArJx2EI8kaDWeTQKeAFk9fjl/1AvwktjQ1P7NjyMGQyfd4vjipX6M/i52D7Cq80kqlcxEcGXRr/FEcgs0u5uGgB4VWuMFfpdn2Re6Hi3PqzmxWKsz6+ae2Pn9hXXw/fqM859UiGC0oKYYILJBqJrsn1Z1E5qOs9rQCiUQRREjm8yJcbHF5cUJufX1vAHlefw0XgUoboS3ETfQlTxBC4SOtuE8VPRJTBSCQSjZCpk7Gqzu+masaZ2y7Zjehho4F3g82BNDkAHpORG4+OCS+f6JTPmtRn/PH1kch6d04sp7AQb25aQ/pqUyXeQ8vrebG8OYQdXOQ+585u0sdW9rqalzRURiJ+9F4MweRFrKUjl1GUYhH1A27WOHw5cTFSFPMo9EeUIGnQTZHIaJ7AHLaOKsOODaNF9jkBjYG2QEsQ2xjMUAx2bBEbeTBWMHwskBjngq56S/yfgkBnWBa4K9sqKtq2t1UI8S9He5XuBRbawAdatrQEAi30Aks2+LM8WeCbalVZkWNylvJ+dqJnzVb+OHlSoKW8nPCP7Rd+CcZ2DdWAGqJ2CBFOphgywFFCFBNtfAbGtNPBCwxvygHeYMZMY9ZboBqwq/pVrsbgN5tkv152ODlbMfiqwGMBgxa4Exz3QhovRIUp6acqZmQzRq0ypDXS2TPLT02YIkQETnOE445oOGxOmXAqUJNNG7XgupMjPq2ua9asrj5yY/yuKteO1Kx0YNJTufrirLe1mZnat7OL6rnUdCWenpW6I8mAnbsY8KWs1PuSovCW9A/Z25PQ24a7cNOqgmTkLmBMgh4THgc4b9k2IVv1/g/F5nGljwPLfOgHAzJzh45V/4+WenTzmMtR5Z7us2Tys909UHqrPY7KbckoxRvRHhmVc3cJGE97uml0R1S0jdULVl7EvZtDFVBF35N9cEdjpgmAiOlFZ+Dtoh93+D3zzHr8RRNZQhnCNMNbcegOvpEwZoL+06cJQ07h+th3fZ/7PVbVC6ngTAV/KoLFuO6+2KFcU651gEb5ugPSIb1D+Xp8V4+k3sEIGnw5mYe4If4k1lFYr6SCzmM2EQ8iWtmwjnBI9kTwe1TlfAmXh7H02by9fW2gsjKwtv0aaURKil4OdV7rDL1MXIFNrhdxohcZXYTnq47WisrKitaObbf5+yvkLi5J6lCNZZ+B6GC38VNBZBDidSS/+mSvh6s+srgC8pyKMvDtt+de3c9fU76ZPfuM8ud4Kv0fyP/LqfepMT/3oZxSqpZaTa1DaQYLY8TFsHYbWYsPoRhRWfL5eSSQbhUGgGC3YLbVMk6PitTFNGpAsNrC6D1VNBKgBHMejaiuRWEWGgsSDBTJjqWIl8kJLlsaLJ2tXDr6xGfT85bM2Q06a46x2HTgvdnV8z5YDy/27J4zt6x2VtkzjoYpkq36kaBr4eQSg7tyiVweWubXZugtadl58ydapfbORfKsDTuZ0OBgx4cfdjCf5tbWNITnL120fdOi1RV1C3uKGzNdwYLcMvZ3BxoPyTOCD1XvXTp7U10gWCVmTV9b3r2z0SkGWovb2hp9I89O8a2smlyaO8muMU+dRmtzp60IzAoFpjLr1n388boLyf0dRvxhsHZ0qbWqDkwqvvpkj4l0fY6EIXRi5sQSrAvsVYwXRy4qJ2EVtD1AN7a0HWth9ymvL1xc3WTUKK/TAHA/bXDVtVWfOMfuGxGZv4Ln/jVr9jc3j1yMv0tndmyt9Vq88Y9gH1wtLX3KWjot5++jWHgAoZZkQ14wGQ20Fli71UmKJAy4xKMSTGbVdybW7FDDAut9XpD5AzWrYO7zQ8qffqF8+Ynd/clrHcdyxGy3a/3+mfNnzC/cBsveTjnTvXf1o6vzOlZw7WtqtdmPK/Errz/6NNtD72zmNOZfbmYdTGHfoofqI79Oc+R2n1lrnL6pOm0Up7kwxhTW12Amm7WYkXR2qYrF2AmgmbAsxZjwy1xpg/m1Je2vrp8v/nz2xpmlBg4E9hrMU341wVpTOh/OfmGvAnra8q6uctr60ZQHV3Q+WMQJykMj8ZsWn2QBOmmHMB+m5pDIpTFonYigiaKAhGEiAHF7EliVnQkjoLVIMPtJpBKHYd3A8GYH9jJzrWwmHx5Qjp7vDAX0suGRym1vtm/9W1/HyR8vczfMs6Sk8DSv855/5dlX9oQq52hT8syyp2rx5Id17IAyAM3wIjQPMOHzytEB64q6D5zT91yNbnx3V/nqnd017S9Y0605k3izoXLpsxde2n38yoOV9s1LcjwzNjbdX6asnBVaBj/6/DwKwPkpcqbDG7BnsXoSqWnUAmottYF6jMSdVyYZh3zVXCjwTiwwHH6sGuRiEHQGzuRX6whZkp123oy1BWE2mEfJ/tvIRtM4ZM5bDXiMsPMaAKOTyc5uL57rqyyc5y5JE5pm1i2S2iUX0CcaQ6lC6Zog7JqSqZmYlosl2K6pwNA84zRnQW6SaALYZQGW5lhCtU/W34N6o+bKfZ8cf3/Cl/+iTX3wBzpOY4mRkeNf3rptycGSshQWgGbYt5jFc2e0+DglIrwl6DVWQ7BuwaJ3Xk1J4VL5urnLl/Wf+gHU/hZoZdKNym6lG+I34FaNeZKcSpJIo2IeCVvpdsDGfKvzJnAwmeD37Ow65ZWwSowpgwX5T69s/rB55dP5BcpgDKFV8p7q2sn/1uc93bVzT/w6UrCqDTWvfCq/oCD/qZXNoUj8BL5Kp6GU017frfNXkAtiiyf/SOCEeLqnd8R/Ql9GlCRfctS6k5chvIBuQ1zCCjoCHL2DHNHIXxMJ3kQeO8lbsUXONeSfA5EjcG6/E+KdhN4bP04vBhdi883+BFBzQbxFbvZzQeY9LNBZc0FNfn5NwfDn6rCTnTw6R8o+gfpf5hCom33cRuiTlss3KHmZjD+BPN+5gXuA2ziS/Q73mLxUkpbKN/eqwz5uK0X9F3h2d1V4nGNgZGBgAOJd776+iue3+crAzc4AAje5Bfcg0xz9YHEOBiYQBQA8FQlFAHicY2BkYGBnAAGOPgaG//85+hkYGVCBMgBGGwNYAAAAeJxjYGBgYB8EmKOPgQEAQ04BfgAAAAAAAA4AaAB+AMwA4AECAUIBbAGYAcICGAJYArQC4AMwA7AD3gQwBJYE3AUkBWYFigYgBmYGtAbqB1gIEghYCG4IhAi2COh4nGNgZGBgUGYoZWBnAAEmIOYCQgaG/2A+AwAYCQG2AHicXZBNaoNAGIZfE5PQCKFQ2lUps2oXBfOzzAESyDKBQJdGR2NQR3QSSE/QE/QEPUUPUHqsvsrXjTMw83zPvPMNCuAWP3DQDAejdm1GjzwS7pMmwi75XngAD4/CQ/oX4TFe4Qt7uMMbOzjuDc0EmXCP/C7cJ38Iu+RP4QEe8CU8pP8WHmOPX2EPz87TPo202ey2OjlnQSXV/6arOjWFmvszMWtd6CqwOlKHq6ovycLaWMWVydXKFFZnmVFlZU46tP7R2nI5ncbi/dDkfDtFBA2DDXbYkhKc+V0Bqs5Zt9JM1HQGBRTm/EezTmZNKtpcAMs9Yu6AK9caF76zoLWIWcfMGOSkVduvSWechqZsz040Ib2PY3urxBJTzriT95lipz+TN1fmAAAAeJxtkMl2wjAMRfOAhABlKm2h80C3+ajgCKKDY6cegP59TYBzukAL+z1Zsq8ctaJTTKPrsUQLbXQQI0EXKXroY4AbDDHCGBNMcYsZ7nCPB8yxwCOe8IwXvOIN7/jAJ76wxHfUqWX+OzgumWAjJMV17i0Ndlr6irLKO+qftdT7i6y4uFSUvCknay+lFYZIZaQcmfH/xIFdYn98bqhra1aKTM/6lWMnyaYirx1rFUQZFBkb2zJUtoXeJCeg0WnLtHeSFc3OtrnozNwqi0TkSpBMDB1nSde5oJXW23hTS2/T0LilglXX7dmFVxLnq5U0vYATHFk3zX3BOisoQHNDFDeZnqKDy9hRNawN7Vh727hFzcJ5c8TILrKZfH7tIPxAFP0BpLeJPA==) format("woff");
  17 + font-weight: normal;
  18 + font-style: normal;
  19 +}
  20 +.vjs-icon-play, .video-js .vjs-play-control .vjs-icon-placeholder, .video-js .vjs-big-play-button .vjs-icon-placeholder:before {
  21 + font-family: VideoJS;
  22 + font-weight: normal;
  23 + font-style: normal;
  24 +}
  25 +.vjs-icon-play:before, .video-js .vjs-play-control .vjs-icon-placeholder:before, .video-js .vjs-big-play-button .vjs-icon-placeholder:before {
  26 + content: "\f101";
  27 +}
  28 +
  29 +.vjs-icon-play-circle {
  30 + font-family: VideoJS;
  31 + font-weight: normal;
  32 + font-style: normal;
  33 +}
  34 +.vjs-icon-play-circle:before {
  35 + content: "\f102";
  36 +}
  37 +
  38 +.vjs-icon-pause, .video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder {
  39 + font-family: VideoJS;
  40 + font-weight: normal;
  41 + font-style: normal;
  42 +}
  43 +.vjs-icon-pause:before, .video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder:before {
  44 + content: "\f103";
  45 +}
  46 +
  47 +.vjs-icon-volume-mute, .video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder {
  48 + font-family: VideoJS;
  49 + font-weight: normal;
  50 + font-style: normal;
  51 +}
  52 +.vjs-icon-volume-mute:before, .video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder:before {
  53 + content: "\f104";
  54 +}
  55 +
  56 +.vjs-icon-volume-low, .video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder {
  57 + font-family: VideoJS;
  58 + font-weight: normal;
  59 + font-style: normal;
  60 +}
  61 +.vjs-icon-volume-low:before, .video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder:before {
  62 + content: "\f105";
  63 +}
  64 +
  65 +.vjs-icon-volume-mid, .video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder {
  66 + font-family: VideoJS;
  67 + font-weight: normal;
  68 + font-style: normal;
  69 +}
  70 +.vjs-icon-volume-mid:before, .video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder:before {
  71 + content: "\f106";
  72 +}
  73 +
  74 +.vjs-icon-volume-high, .video-js .vjs-mute-control .vjs-icon-placeholder {
  75 + font-family: VideoJS;
  76 + font-weight: normal;
  77 + font-style: normal;
  78 +}
  79 +.vjs-icon-volume-high:before, .video-js .vjs-mute-control .vjs-icon-placeholder:before {
  80 + content: "\f107";
  81 +}
  82 +
  83 +.vjs-icon-fullscreen-enter, .video-js .vjs-fullscreen-control .vjs-icon-placeholder {
  84 + font-family: VideoJS;
  85 + font-weight: normal;
  86 + font-style: normal;
  87 +}
  88 +.vjs-icon-fullscreen-enter:before, .video-js .vjs-fullscreen-control .vjs-icon-placeholder:before {
  89 + content: "\f108";
  90 +}
  91 +
  92 +.vjs-icon-fullscreen-exit, .video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder {
  93 + font-family: VideoJS;
  94 + font-weight: normal;
  95 + font-style: normal;
  96 +}
  97 +.vjs-icon-fullscreen-exit:before, .video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder:before {
  98 + content: "\f109";
  99 +}
  100 +
  101 +.vjs-icon-square {
  102 + font-family: VideoJS;
  103 + font-weight: normal;
  104 + font-style: normal;
  105 +}
  106 +.vjs-icon-square:before {
  107 + content: "\f10a";
  108 +}
  109 +
  110 +.vjs-icon-spinner {
  111 + font-family: VideoJS;
  112 + font-weight: normal;
  113 + font-style: normal;
  114 +}
  115 +.vjs-icon-spinner:before {
  116 + content: "\f10b";
  117 +}
  118 +
  119 +.vjs-icon-subtitles, .video-js .vjs-subs-caps-button .vjs-icon-placeholder,
  120 +.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder,
  121 +.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder,
  122 +.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder,
  123 +.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder, .video-js .vjs-subtitles-button .vjs-icon-placeholder {
  124 + font-family: VideoJS;
  125 + font-weight: normal;
  126 + font-style: normal;
  127 +}
  128 +.vjs-icon-subtitles:before, .video-js .vjs-subs-caps-button .vjs-icon-placeholder:before,
  129 +.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder:before,
  130 +.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder:before,
  131 +.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder:before,
  132 +.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder:before, .video-js .vjs-subtitles-button .vjs-icon-placeholder:before {
  133 + content: "\f10c";
  134 +}
  135 +
  136 +.vjs-icon-captions, .video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder,
  137 +.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder, .video-js .vjs-captions-button .vjs-icon-placeholder {
  138 + font-family: VideoJS;
  139 + font-weight: normal;
  140 + font-style: normal;
  141 +}
  142 +.vjs-icon-captions:before, .video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder:before,
  143 +.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder:before, .video-js .vjs-captions-button .vjs-icon-placeholder:before {
  144 + content: "\f10d";
  145 +}
  146 +
  147 +.vjs-icon-chapters, .video-js .vjs-chapters-button .vjs-icon-placeholder {
  148 + font-family: VideoJS;
  149 + font-weight: normal;
  150 + font-style: normal;
  151 +}
  152 +.vjs-icon-chapters:before, .video-js .vjs-chapters-button .vjs-icon-placeholder:before {
  153 + content: "\f10e";
  154 +}
  155 +
  156 +.vjs-icon-share {
  157 + font-family: VideoJS;
  158 + font-weight: normal;
  159 + font-style: normal;
  160 +}
  161 +.vjs-icon-share:before {
  162 + content: "\f10f";
  163 +}
  164 +
  165 +.vjs-icon-cog {
  166 + font-family: VideoJS;
  167 + font-weight: normal;
  168 + font-style: normal;
  169 +}
  170 +.vjs-icon-cog:before {
  171 + content: "\f110";
  172 +}
  173 +
  174 +.vjs-icon-circle, .vjs-seek-to-live-control .vjs-icon-placeholder, .video-js .vjs-volume-level, .video-js .vjs-play-progress {
  175 + font-family: VideoJS;
  176 + font-weight: normal;
  177 + font-style: normal;
  178 +}
  179 +.vjs-icon-circle:before, .vjs-seek-to-live-control .vjs-icon-placeholder:before, .video-js .vjs-volume-level:before, .video-js .vjs-play-progress:before {
  180 + content: "\f111";
  181 +}
  182 +
  183 +.vjs-icon-circle-outline {
  184 + font-family: VideoJS;
  185 + font-weight: normal;
  186 + font-style: normal;
  187 +}
  188 +.vjs-icon-circle-outline:before {
  189 + content: "\f112";
  190 +}
  191 +
  192 +.vjs-icon-circle-inner-circle {
  193 + font-family: VideoJS;
  194 + font-weight: normal;
  195 + font-style: normal;
  196 +}
  197 +.vjs-icon-circle-inner-circle:before {
  198 + content: "\f113";
  199 +}
  200 +
  201 +.vjs-icon-hd {
  202 + font-family: VideoJS;
  203 + font-weight: normal;
  204 + font-style: normal;
  205 +}
  206 +.vjs-icon-hd:before {
  207 + content: "\f114";
  208 +}
  209 +
  210 +.vjs-icon-cancel, .video-js .vjs-control.vjs-close-button .vjs-icon-placeholder {
  211 + font-family: VideoJS;
  212 + font-weight: normal;
  213 + font-style: normal;
  214 +}
  215 +.vjs-icon-cancel:before, .video-js .vjs-control.vjs-close-button .vjs-icon-placeholder:before {
  216 + content: "\f115";
  217 +}
  218 +
  219 +.vjs-icon-replay, .video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder {
  220 + font-family: VideoJS;
  221 + font-weight: normal;
  222 + font-style: normal;
  223 +}
  224 +.vjs-icon-replay:before, .video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder:before {
  225 + content: "\f116";
  226 +}
  227 +
  228 +.vjs-icon-facebook {
  229 + font-family: VideoJS;
  230 + font-weight: normal;
  231 + font-style: normal;
  232 +}
  233 +.vjs-icon-facebook:before {
  234 + content: "\f117";
  235 +}
  236 +
  237 +.vjs-icon-gplus {
  238 + font-family: VideoJS;
  239 + font-weight: normal;
  240 + font-style: normal;
  241 +}
  242 +.vjs-icon-gplus:before {
  243 + content: "\f118";
  244 +}
  245 +
  246 +.vjs-icon-linkedin {
  247 + font-family: VideoJS;
  248 + font-weight: normal;
  249 + font-style: normal;
  250 +}
  251 +.vjs-icon-linkedin:before {
  252 + content: "\f119";
  253 +}
  254 +
  255 +.vjs-icon-twitter {
  256 + font-family: VideoJS;
  257 + font-weight: normal;
  258 + font-style: normal;
  259 +}
  260 +.vjs-icon-twitter:before {
  261 + content: "\f11a";
  262 +}
  263 +
  264 +.vjs-icon-tumblr {
  265 + font-family: VideoJS;
  266 + font-weight: normal;
  267 + font-style: normal;
  268 +}
  269 +.vjs-icon-tumblr:before {
  270 + content: "\f11b";
  271 +}
  272 +
  273 +.vjs-icon-pinterest {
  274 + font-family: VideoJS;
  275 + font-weight: normal;
  276 + font-style: normal;
  277 +}
  278 +.vjs-icon-pinterest:before {
  279 + content: "\f11c";
  280 +}
  281 +
  282 +.vjs-icon-audio-description, .video-js .vjs-descriptions-button .vjs-icon-placeholder {
  283 + font-family: VideoJS;
  284 + font-weight: normal;
  285 + font-style: normal;
  286 +}
  287 +.vjs-icon-audio-description:before, .video-js .vjs-descriptions-button .vjs-icon-placeholder:before {
  288 + content: "\f11d";
  289 +}
  290 +
  291 +.vjs-icon-audio, .video-js .vjs-audio-button .vjs-icon-placeholder {
  292 + font-family: VideoJS;
  293 + font-weight: normal;
  294 + font-style: normal;
  295 +}
  296 +.vjs-icon-audio:before, .video-js .vjs-audio-button .vjs-icon-placeholder:before {
  297 + content: "\f11e";
  298 +}
  299 +
  300 +.vjs-icon-next-item {
  301 + font-family: VideoJS;
  302 + font-weight: normal;
  303 + font-style: normal;
  304 +}
  305 +.vjs-icon-next-item:before {
  306 + content: "\f11f";
  307 +}
  308 +
  309 +.vjs-icon-previous-item {
  310 + font-family: VideoJS;
  311 + font-weight: normal;
  312 + font-style: normal;
  313 +}
  314 +.vjs-icon-previous-item:before {
  315 + content: "\f120";
  316 +}
  317 +
  318 +.vjs-icon-picture-in-picture-enter, .video-js .vjs-picture-in-picture-control .vjs-icon-placeholder {
  319 + font-family: VideoJS;
  320 + font-weight: normal;
  321 + font-style: normal;
  322 +}
  323 +.vjs-icon-picture-in-picture-enter:before, .video-js .vjs-picture-in-picture-control .vjs-icon-placeholder:before {
  324 + content: "\f121";
  325 +}
  326 +
  327 +.vjs-icon-picture-in-picture-exit, .video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder {
  328 + font-family: VideoJS;
  329 + font-weight: normal;
  330 + font-style: normal;
  331 +}
  332 +.vjs-icon-picture-in-picture-exit:before, .video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder:before {
  333 + content: "\f122";
  334 +}
  335 +
  336 +.video-js {
  337 + display: block;
  338 + vertical-align: top;
  339 + box-sizing: border-box;
  340 + color: #fff;
  341 + background-color: #000;
  342 + position: relative;
  343 + padding: 0;
  344 + font-size: 10px;
  345 + line-height: 1;
  346 + font-weight: normal;
  347 + font-style: normal;
  348 + font-family: Arial, Helvetica, sans-serif;
  349 + word-break: initial;
  350 +}
  351 +.video-js:-moz-full-screen {
  352 + position: absolute;
  353 +}
  354 +.video-js:-webkit-full-screen {
  355 + width: 100% !important;
  356 + height: 100% !important;
  357 +}
  358 +
  359 +.video-js[tabindex="-1"] {
  360 + outline: none;
  361 +}
  362 +
  363 +.video-js *,
  364 +.video-js *:before,
  365 +.video-js *:after {
  366 + box-sizing: inherit;
  367 +}
  368 +
  369 +.video-js ul {
  370 + font-family: inherit;
  371 + font-size: inherit;
  372 + line-height: inherit;
  373 + list-style-position: outside;
  374 + margin-left: 0;
  375 + margin-right: 0;
  376 + margin-top: 0;
  377 + margin-bottom: 0;
  378 +}
  379 +
  380 +.video-js.vjs-fluid,
  381 +.video-js.vjs-16-9,
  382 +.video-js.vjs-4-3 {
  383 + width: 100%;
  384 + max-width: 100%;
  385 + height: 0;
  386 +}
  387 +
  388 +.video-js.vjs-16-9 {
  389 + padding-top: 56.25%;
  390 +}
  391 +
  392 +.video-js.vjs-4-3 {
  393 + padding-top: 75%;
  394 +}
  395 +
  396 +.video-js.vjs-fill {
  397 + width: 100%;
  398 + height: 100%;
  399 +}
  400 +
  401 +.video-js .vjs-tech {
  402 + position: absolute;
  403 + top: 0;
  404 + left: 0;
  405 + width: 100%;
  406 + height: 100%;
  407 +}
  408 +
  409 +body.vjs-full-window {
  410 + padding: 0;
  411 + margin: 0;
  412 + height: 100%;
  413 +}
  414 +
  415 +.vjs-full-window .video-js.vjs-fullscreen {
  416 + position: fixed;
  417 + overflow: hidden;
  418 + z-index: 1000;
  419 + left: 0;
  420 + top: 0;
  421 + bottom: 0;
  422 + right: 0;
  423 +}
  424 +
  425 +.video-js.vjs-fullscreen:not(.vjs-ios-native-fs) {
  426 + width: 100% !important;
  427 + height: 100% !important;
  428 + padding-top: 0 !important;
  429 +}
  430 +
  431 +.video-js.vjs-fullscreen.vjs-user-inactive {
  432 + cursor: none;
  433 +}
  434 +
  435 +.vjs-hidden {
  436 + display: none !important;
  437 +}
  438 +
  439 +.vjs-disabled {
  440 + opacity: 0.5;
  441 + cursor: default;
  442 +}
  443 +
  444 +.video-js .vjs-offscreen {
  445 + height: 1px;
  446 + left: -9999px;
  447 + position: absolute;
  448 + top: 0;
  449 + width: 1px;
  450 +}
  451 +
  452 +.vjs-lock-showing {
  453 + display: block !important;
  454 + opacity: 1;
  455 + visibility: visible;
  456 +}
  457 +
  458 +.vjs-no-js {
  459 + padding: 20px;
  460 + color: #fff;
  461 + background-color: #000;
  462 + font-size: 18px;
  463 + font-family: Arial, Helvetica, sans-serif;
  464 + text-align: center;
  465 + width: 300px;
  466 + height: 150px;
  467 + margin: 0px auto;
  468 +}
  469 +
  470 +.vjs-no-js a,
  471 +.vjs-no-js a:visited {
  472 + color: #66A8CC;
  473 +}
  474 +
  475 +.video-js .vjs-big-play-button {
  476 + font-size: 3em;
  477 + line-height: 1.5em;
  478 + height: 1.63332em;
  479 + width: 3em;
  480 + display: block;
  481 + position: absolute;
  482 + top: 10px;
  483 + left: 10px;
  484 + padding: 0;
  485 + cursor: pointer;
  486 + opacity: 1;
  487 + border: 0.06666em solid #fff;
  488 + background-color: #2B333F;
  489 + background-color: rgba(43, 51, 63, 0.7);
  490 + border-radius: 0.3em;
  491 + transition: all 0.4s;
  492 +}
  493 +.vjs-big-play-centered .vjs-big-play-button {
  494 + top: 50%;
  495 + left: 50%;
  496 + margin-top: -0.81666em;
  497 + margin-left: -1.5em;
  498 +}
  499 +
  500 +.video-js:hover .vjs-big-play-button,
  501 +.video-js .vjs-big-play-button:focus {
  502 + border-color: #fff;
  503 + background-color: #73859f;
  504 + background-color: rgba(115, 133, 159, 0.5);
  505 + transition: all 0s;
  506 +}
  507 +
  508 +.vjs-controls-disabled .vjs-big-play-button,
  509 +.vjs-has-started .vjs-big-play-button,
  510 +.vjs-using-native-controls .vjs-big-play-button,
  511 +.vjs-error .vjs-big-play-button {
  512 + display: none;
  513 +}
  514 +
  515 +.vjs-has-started.vjs-paused.vjs-show-big-play-button-on-pause .vjs-big-play-button {
  516 + display: block;
  517 +}
  518 +
  519 +.video-js button {
  520 + background: none;
  521 + border: none;
  522 + color: inherit;
  523 + display: inline-block;
  524 + font-size: inherit;
  525 + line-height: inherit;
  526 + text-transform: none;
  527 + text-decoration: none;
  528 + transition: none;
  529 + -webkit-appearance: none;
  530 + -moz-appearance: none;
  531 + appearance: none;
  532 +}
  533 +
  534 +.vjs-control .vjs-button {
  535 + width: 100%;
  536 + height: 100%;
  537 +}
  538 +
  539 +.video-js .vjs-control.vjs-close-button {
  540 + cursor: pointer;
  541 + height: 3em;
  542 + position: absolute;
  543 + right: 0;
  544 + top: 0.5em;
  545 + z-index: 2;
  546 +}
  547 +.video-js .vjs-modal-dialog {
  548 + background: rgba(0, 0, 0, 0.8);
  549 + background: linear-gradient(180deg, rgba(0, 0, 0, 0.8), rgba(255, 255, 255, 0));
  550 + overflow: auto;
  551 +}
  552 +
  553 +.video-js .vjs-modal-dialog > * {
  554 + box-sizing: border-box;
  555 +}
  556 +
  557 +.vjs-modal-dialog .vjs-modal-dialog-content {
  558 + font-size: 1.2em;
  559 + line-height: 1.5;
  560 + padding: 20px 24px;
  561 + z-index: 1;
  562 +}
  563 +
  564 +.vjs-menu-button {
  565 + cursor: pointer;
  566 +}
  567 +
  568 +.vjs-menu-button.vjs-disabled {
  569 + cursor: default;
  570 +}
  571 +
  572 +.vjs-workinghover .vjs-menu-button.vjs-disabled:hover .vjs-menu {
  573 + display: none;
  574 +}
  575 +
  576 +.vjs-menu .vjs-menu-content {
  577 + display: block;
  578 + padding: 0;
  579 + margin: 0;
  580 + font-family: Arial, Helvetica, sans-serif;
  581 + overflow: auto;
  582 +}
  583 +
  584 +.vjs-menu .vjs-menu-content > * {
  585 + box-sizing: border-box;
  586 +}
  587 +
  588 +.vjs-scrubbing .vjs-control.vjs-menu-button:hover .vjs-menu {
  589 + display: none;
  590 +}
  591 +
  592 +.vjs-menu li {
  593 + list-style: none;
  594 + margin: 0;
  595 + padding: 0.2em 0;
  596 + line-height: 1.4em;
  597 + font-size: 1.2em;
  598 + text-align: center;
  599 + text-transform: lowercase;
  600 +}
  601 +
  602 +.vjs-menu li.vjs-menu-item:focus,
  603 +.vjs-menu li.vjs-menu-item:hover,
  604 +.js-focus-visible .vjs-menu li.vjs-menu-item:hover {
  605 + background-color: #73859f;
  606 + background-color: rgba(115, 133, 159, 0.5);
  607 +}
  608 +
  609 +.vjs-menu li.vjs-selected,
  610 +.vjs-menu li.vjs-selected:focus,
  611 +.vjs-menu li.vjs-selected:hover,
  612 +.js-focus-visible .vjs-menu li.vjs-selected:hover {
  613 + background-color: #fff;
  614 + color: #2B333F;
  615 +}
  616 +
  617 +.vjs-menu li.vjs-menu-title {
  618 + text-align: center;
  619 + text-transform: uppercase;
  620 + font-size: 1em;
  621 + line-height: 2em;
  622 + padding: 0;
  623 + margin: 0 0 0.3em 0;
  624 + font-weight: bold;
  625 + cursor: default;
  626 +}
  627 +
  628 +.vjs-menu-button-popup .vjs-menu {
  629 + display: none;
  630 + position: absolute;
  631 + bottom: 0;
  632 + width: 10em;
  633 + left: -3em;
  634 + height: 0em;
  635 + margin-bottom: 1.5em;
  636 + border-top-color: rgba(43, 51, 63, 0.7);
  637 +}
  638 +
  639 +.vjs-menu-button-popup .vjs-menu .vjs-menu-content {
  640 + background-color: #2B333F;
  641 + background-color: rgba(43, 51, 63, 0.7);
  642 + position: absolute;
  643 + width: 100%;
  644 + bottom: 1.5em;
  645 + max-height: 15em;
  646 +}
  647 +
  648 +.vjs-layout-tiny .vjs-menu-button-popup .vjs-menu .vjs-menu-content,
  649 +.vjs-layout-x-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
  650 + max-height: 5em;
  651 +}
  652 +
  653 +.vjs-layout-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
  654 + max-height: 10em;
  655 +}
  656 +
  657 +.vjs-layout-medium .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
  658 + max-height: 14em;
  659 +}
  660 +
  661 +.vjs-layout-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content,
  662 +.vjs-layout-x-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content,
  663 +.vjs-layout-huge .vjs-menu-button-popup .vjs-menu .vjs-menu-content {
  664 + max-height: 25em;
  665 +}
  666 +
  667 +.vjs-workinghover .vjs-menu-button-popup.vjs-hover .vjs-menu,
  668 +.vjs-menu-button-popup .vjs-menu.vjs-lock-showing {
  669 + display: block;
  670 +}
  671 +
  672 +.video-js .vjs-menu-button-inline {
  673 + transition: all 0.4s;
  674 + overflow: hidden;
  675 +}
  676 +
  677 +.video-js .vjs-menu-button-inline:before {
  678 + width: 2.222222222em;
  679 +}
  680 +
  681 +.video-js .vjs-menu-button-inline:hover,
  682 +.video-js .vjs-menu-button-inline:focus,
  683 +.video-js .vjs-menu-button-inline.vjs-slider-active,
  684 +.video-js.vjs-no-flex .vjs-menu-button-inline {
  685 + width: 12em;
  686 +}
  687 +
  688 +.vjs-menu-button-inline .vjs-menu {
  689 + opacity: 0;
  690 + height: 100%;
  691 + width: auto;
  692 + position: absolute;
  693 + left: 4em;
  694 + top: 0;
  695 + padding: 0;
  696 + margin: 0;
  697 + transition: all 0.4s;
  698 +}
  699 +
  700 +.vjs-menu-button-inline:hover .vjs-menu,
  701 +.vjs-menu-button-inline:focus .vjs-menu,
  702 +.vjs-menu-button-inline.vjs-slider-active .vjs-menu {
  703 + display: block;
  704 + opacity: 1;
  705 +}
  706 +
  707 +.vjs-no-flex .vjs-menu-button-inline .vjs-menu {
  708 + display: block;
  709 + opacity: 1;
  710 + position: relative;
  711 + width: auto;
  712 +}
  713 +
  714 +.vjs-no-flex .vjs-menu-button-inline:hover .vjs-menu,
  715 +.vjs-no-flex .vjs-menu-button-inline:focus .vjs-menu,
  716 +.vjs-no-flex .vjs-menu-button-inline.vjs-slider-active .vjs-menu {
  717 + width: auto;
  718 +}
  719 +
  720 +.vjs-menu-button-inline .vjs-menu-content {
  721 + width: auto;
  722 + height: 100%;
  723 + margin: 0;
  724 + overflow: hidden;
  725 +}
  726 +
  727 +.video-js .vjs-control-bar {
  728 + display: none;
  729 + width: 100%;
  730 + position: absolute;
  731 + bottom: 0;
  732 + left: 0;
  733 + right: 0;
  734 + height: 3em;
  735 + background-color: #2B333F;
  736 + background-color: rgba(43, 51, 63, 0.7);
  737 +}
  738 +
  739 +.vjs-has-started .vjs-control-bar {
  740 + display: flex;
  741 + visibility: visible;
  742 + opacity: 1;
  743 + transition: visibility 0.1s, opacity 0.1s;
  744 +}
  745 +
  746 +.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  747 + visibility: visible;
  748 + opacity: 0;
  749 + transition: visibility 1s, opacity 1s;
  750 +}
  751 +
  752 +.vjs-controls-disabled .vjs-control-bar,
  753 +.vjs-using-native-controls .vjs-control-bar,
  754 +.vjs-error .vjs-control-bar {
  755 + display: none !important;
  756 +}
  757 +
  758 +.vjs-audio.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  759 + opacity: 1;
  760 + visibility: visible;
  761 +}
  762 +
  763 +.vjs-has-started.vjs-no-flex .vjs-control-bar {
  764 + display: table;
  765 +}
  766 +
  767 +.video-js .vjs-control {
  768 + position: relative;
  769 + text-align: center;
  770 + margin: 0;
  771 + padding: 0;
  772 + height: 100%;
  773 + width: 4em;
  774 + flex: none;
  775 +}
  776 +
  777 +.vjs-button > .vjs-icon-placeholder:before {
  778 + font-size: 1.8em;
  779 + line-height: 1.67;
  780 +}
  781 +
  782 +.video-js .vjs-control:focus:before,
  783 +.video-js .vjs-control:hover:before,
  784 +.video-js .vjs-control:focus {
  785 + text-shadow: 0em 0em 1em white;
  786 +}
  787 +
  788 +.video-js .vjs-control-text {
  789 + border: 0;
  790 + clip: rect(0 0 0 0);
  791 + height: 1px;
  792 + overflow: hidden;
  793 + padding: 0;
  794 + position: absolute;
  795 + width: 1px;
  796 +}
  797 +
  798 +.vjs-no-flex .vjs-control {
  799 + display: table-cell;
  800 + vertical-align: middle;
  801 +}
  802 +
  803 +.video-js .vjs-custom-control-spacer {
  804 + display: none;
  805 +}
  806 +
  807 +.video-js .vjs-progress-control {
  808 + cursor: pointer;
  809 + flex: auto;
  810 + display: flex;
  811 + align-items: center;
  812 + min-width: 4em;
  813 + touch-action: none;
  814 +}
  815 +
  816 +.video-js .vjs-progress-control.disabled {
  817 + cursor: default;
  818 +}
  819 +
  820 +.vjs-live .vjs-progress-control {
  821 + display: none;
  822 +}
  823 +
  824 +.vjs-liveui .vjs-progress-control {
  825 + display: flex;
  826 + align-items: center;
  827 +}
  828 +
  829 +.vjs-no-flex .vjs-progress-control {
  830 + width: auto;
  831 +}
  832 +
  833 +.video-js .vjs-progress-holder {
  834 + flex: auto;
  835 + transition: all 0.2s;
  836 + height: 0.3em;
  837 +}
  838 +
  839 +.video-js .vjs-progress-control .vjs-progress-holder {
  840 + margin: 0 10px;
  841 +}
  842 +
  843 +.video-js .vjs-progress-control:hover .vjs-progress-holder {
  844 + font-size: 1.6666666667em;
  845 +}
  846 +
  847 +.video-js .vjs-progress-control:hover .vjs-progress-holder.disabled {
  848 + font-size: 1em;
  849 +}
  850 +
  851 +.video-js .vjs-progress-holder .vjs-play-progress,
  852 +.video-js .vjs-progress-holder .vjs-load-progress,
  853 +.video-js .vjs-progress-holder .vjs-load-progress div {
  854 + position: absolute;
  855 + display: block;
  856 + height: 100%;
  857 + margin: 0;
  858 + padding: 0;
  859 + width: 0;
  860 +}
  861 +
  862 +.video-js .vjs-play-progress {
  863 + background-color: #fff;
  864 +}
  865 +.video-js .vjs-play-progress:before {
  866 + font-size: 0.9em;
  867 + position: absolute;
  868 + right: -0.5em;
  869 + top: -0.3333333333em;
  870 + z-index: 1;
  871 +}
  872 +
  873 +.video-js .vjs-load-progress {
  874 + background: rgba(115, 133, 159, 0.5);
  875 +}
  876 +
  877 +.video-js .vjs-load-progress div {
  878 + background: rgba(115, 133, 159, 0.75);
  879 +}
  880 +
  881 +.video-js .vjs-time-tooltip {
  882 + background-color: #fff;
  883 + background-color: rgba(255, 255, 255, 0.8);
  884 + border-radius: 0.3em;
  885 + color: #000;
  886 + float: right;
  887 + font-family: Arial, Helvetica, sans-serif;
  888 + font-size: 1em;
  889 + padding: 6px 8px 8px 8px;
  890 + pointer-events: none;
  891 + position: absolute;
  892 + top: -3.4em;
  893 + visibility: hidden;
  894 + z-index: 1;
  895 +}
  896 +
  897 +.video-js .vjs-progress-holder:focus .vjs-time-tooltip {
  898 + display: none;
  899 +}
  900 +
  901 +.video-js .vjs-progress-control:hover .vjs-time-tooltip,
  902 +.video-js .vjs-progress-control:hover .vjs-progress-holder:focus .vjs-time-tooltip {
  903 + display: block;
  904 + font-size: 0.6em;
  905 + visibility: visible;
  906 +}
  907 +
  908 +.video-js .vjs-progress-control.disabled:hover .vjs-time-tooltip {
  909 + font-size: 1em;
  910 +}
  911 +
  912 +.video-js .vjs-progress-control .vjs-mouse-display {
  913 + display: none;
  914 + position: absolute;
  915 + width: 1px;
  916 + height: 100%;
  917 + background-color: #000;
  918 + z-index: 1;
  919 +}
  920 +
  921 +.vjs-no-flex .vjs-progress-control .vjs-mouse-display {
  922 + z-index: 0;
  923 +}
  924 +
  925 +.video-js .vjs-progress-control:hover .vjs-mouse-display {
  926 + display: block;
  927 +}
  928 +
  929 +.video-js.vjs-user-inactive .vjs-progress-control .vjs-mouse-display {
  930 + visibility: hidden;
  931 + opacity: 0;
  932 + transition: visibility 1s, opacity 1s;
  933 +}
  934 +
  935 +.video-js.vjs-user-inactive.vjs-no-flex .vjs-progress-control .vjs-mouse-display {
  936 + display: none;
  937 +}
  938 +
  939 +.vjs-mouse-display .vjs-time-tooltip {
  940 + color: #fff;
  941 + background-color: #000;
  942 + background-color: rgba(0, 0, 0, 0.8);
  943 +}
  944 +
  945 +.video-js .vjs-slider {
  946 + position: relative;
  947 + cursor: pointer;
  948 + padding: 0;
  949 + margin: 0 0.45em 0 0.45em;
  950 + /* iOS Safari */
  951 + -webkit-touch-callout: none;
  952 + /* Safari */
  953 + -webkit-user-select: none;
  954 + /* Konqueror HTML */
  955 + /* Firefox */
  956 + -moz-user-select: none;
  957 + /* Internet Explorer/Edge */
  958 + -ms-user-select: none;
  959 + /* Non-prefixed version, currently supported by Chrome and Opera */
  960 + user-select: none;
  961 + background-color: #73859f;
  962 + background-color: rgba(115, 133, 159, 0.5);
  963 +}
  964 +
  965 +.video-js .vjs-slider.disabled {
  966 + cursor: default;
  967 +}
  968 +
  969 +.video-js .vjs-slider:focus {
  970 + text-shadow: 0em 0em 1em white;
  971 + box-shadow: 0 0 1em #fff;
  972 +}
  973 +
  974 +.video-js .vjs-mute-control {
  975 + cursor: pointer;
  976 + flex: none;
  977 +}
  978 +.video-js .vjs-volume-control {
  979 + cursor: pointer;
  980 + margin-right: 1em;
  981 + display: flex;
  982 +}
  983 +
  984 +.video-js .vjs-volume-control.vjs-volume-horizontal {
  985 + width: 5em;
  986 +}
  987 +
  988 +.video-js .vjs-volume-panel .vjs-volume-control {
  989 + visibility: visible;
  990 + opacity: 0;
  991 + width: 1px;
  992 + height: 1px;
  993 + margin-left: -1px;
  994 +}
  995 +
  996 +.video-js .vjs-volume-panel {
  997 + transition: width 1s;
  998 +}
  999 +.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control, .video-js .vjs-volume-panel:active .vjs-volume-control, .video-js .vjs-volume-panel:focus .vjs-volume-control, .video-js .vjs-volume-panel .vjs-volume-control:active, .video-js .vjs-volume-panel.vjs-hover .vjs-mute-control ~ .vjs-volume-control, .video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active {
  1000 + visibility: visible;
  1001 + opacity: 1;
  1002 + position: relative;
  1003 + transition: visibility 0.1s, opacity 0.1s, height 0.1s, width 0.1s, left 0s, top 0s;
  1004 +}
  1005 +.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-horizontal, .video-js .vjs-volume-panel.vjs-hover .vjs-mute-control ~ .vjs-volume-control.vjs-volume-horizontal, .video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-horizontal {
  1006 + width: 5em;
  1007 + height: 3em;
  1008 + margin-right: 0;
  1009 +}
  1010 +.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-vertical, .video-js .vjs-volume-panel.vjs-hover .vjs-mute-control ~ .vjs-volume-control.vjs-volume-vertical, .video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-vertical {
  1011 + left: -3.5em;
  1012 + transition: left 0s;
  1013 +}
  1014 +.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover, .video-js .vjs-volume-panel.vjs-volume-panel-horizontal:active, .video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active {
  1015 + width: 10em;
  1016 + transition: width 0.1s;
  1017 +}
  1018 +.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-mute-toggle-only {
  1019 + width: 4em;
  1020 +}
  1021 +
  1022 +.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical {
  1023 + height: 8em;
  1024 + width: 3em;
  1025 + left: -3000em;
  1026 + transition: visibility 1s, opacity 1s, height 1s 1s, width 1s 1s, left 1s 1s, top 1s 1s;
  1027 +}
  1028 +
  1029 +.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal {
  1030 + transition: visibility 1s, opacity 1s, height 1s 1s, width 1s, left 1s 1s, top 1s 1s;
  1031 +}
  1032 +
  1033 +.video-js.vjs-no-flex .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal {
  1034 + width: 5em;
  1035 + height: 3em;
  1036 + visibility: visible;
  1037 + opacity: 1;
  1038 + position: relative;
  1039 + transition: none;
  1040 +}
  1041 +
  1042 +.video-js.vjs-no-flex .vjs-volume-control.vjs-volume-vertical,
  1043 +.video-js.vjs-no-flex .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical {
  1044 + position: absolute;
  1045 + bottom: 3em;
  1046 + left: 0.5em;
  1047 +}
  1048 +
  1049 +.video-js .vjs-volume-panel {
  1050 + display: flex;
  1051 +}
  1052 +
  1053 +.video-js .vjs-volume-bar {
  1054 + margin: 1.35em 0.45em;
  1055 +}
  1056 +
  1057 +.vjs-volume-bar.vjs-slider-horizontal {
  1058 + width: 5em;
  1059 + height: 0.3em;
  1060 +}
  1061 +
  1062 +.vjs-volume-bar.vjs-slider-vertical {
  1063 + width: 0.3em;
  1064 + height: 5em;
  1065 + margin: 1.35em auto;
  1066 +}
  1067 +
  1068 +.video-js .vjs-volume-level {
  1069 + position: absolute;
  1070 + bottom: 0;
  1071 + left: 0;
  1072 + background-color: #fff;
  1073 +}
  1074 +.video-js .vjs-volume-level:before {
  1075 + position: absolute;
  1076 + font-size: 0.9em;
  1077 +}
  1078 +
  1079 +.vjs-slider-vertical .vjs-volume-level {
  1080 + width: 0.3em;
  1081 +}
  1082 +.vjs-slider-vertical .vjs-volume-level:before {
  1083 + top: -0.5em;
  1084 + left: -0.3em;
  1085 +}
  1086 +
  1087 +.vjs-slider-horizontal .vjs-volume-level {
  1088 + height: 0.3em;
  1089 +}
  1090 +.vjs-slider-horizontal .vjs-volume-level:before {
  1091 + top: -0.3em;
  1092 + right: -0.5em;
  1093 +}
  1094 +
  1095 +.video-js .vjs-volume-panel.vjs-volume-panel-vertical {
  1096 + width: 4em;
  1097 +}
  1098 +
  1099 +.vjs-volume-bar.vjs-slider-vertical .vjs-volume-level {
  1100 + height: 100%;
  1101 +}
  1102 +
  1103 +.vjs-volume-bar.vjs-slider-horizontal .vjs-volume-level {
  1104 + width: 100%;
  1105 +}
  1106 +
  1107 +.video-js .vjs-volume-vertical {
  1108 + width: 3em;
  1109 + height: 8em;
  1110 + bottom: 8em;
  1111 + background-color: #2B333F;
  1112 + background-color: rgba(43, 51, 63, 0.7);
  1113 +}
  1114 +
  1115 +.video-js .vjs-volume-horizontal .vjs-menu {
  1116 + left: -2em;
  1117 +}
  1118 +
  1119 +.vjs-poster {
  1120 + display: inline-block;
  1121 + vertical-align: middle;
  1122 + background-repeat: no-repeat;
  1123 + background-position: 50% 50%;
  1124 + background-size: contain;
  1125 + background-color: #000000;
  1126 + cursor: pointer;
  1127 + margin: 0;
  1128 + padding: 0;
  1129 + position: absolute;
  1130 + top: 0;
  1131 + right: 0;
  1132 + bottom: 0;
  1133 + left: 0;
  1134 + height: 100%;
  1135 +}
  1136 +
  1137 +.vjs-has-started .vjs-poster {
  1138 + display: none;
  1139 +}
  1140 +
  1141 +.vjs-audio.vjs-has-started .vjs-poster {
  1142 + display: block;
  1143 +}
  1144 +
  1145 +.vjs-using-native-controls .vjs-poster {
  1146 + display: none;
  1147 +}
  1148 +
  1149 +.video-js .vjs-live-control {
  1150 + display: flex;
  1151 + align-items: flex-start;
  1152 + flex: auto;
  1153 + font-size: 1em;
  1154 + line-height: 3em;
  1155 +}
  1156 +
  1157 +.vjs-no-flex .vjs-live-control {
  1158 + display: table-cell;
  1159 + width: auto;
  1160 + text-align: left;
  1161 +}
  1162 +
  1163 +.video-js:not(.vjs-live) .vjs-live-control,
  1164 +.video-js.vjs-liveui .vjs-live-control {
  1165 + display: none;
  1166 +}
  1167 +
  1168 +.video-js .vjs-seek-to-live-control {
  1169 + align-items: center;
  1170 + cursor: pointer;
  1171 + flex: none;
  1172 + display: inline-flex;
  1173 + height: 100%;
  1174 + padding-left: 0.5em;
  1175 + padding-right: 0.5em;
  1176 + font-size: 1em;
  1177 + line-height: 3em;
  1178 + width: auto;
  1179 + min-width: 4em;
  1180 +}
  1181 +
  1182 +.vjs-no-flex .vjs-seek-to-live-control {
  1183 + display: table-cell;
  1184 + width: auto;
  1185 + text-align: left;
  1186 +}
  1187 +
  1188 +.video-js.vjs-live:not(.vjs-liveui) .vjs-seek-to-live-control,
  1189 +.video-js:not(.vjs-live) .vjs-seek-to-live-control {
  1190 + display: none;
  1191 +}
  1192 +
  1193 +.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge {
  1194 + cursor: auto;
  1195 +}
  1196 +
  1197 +.vjs-seek-to-live-control .vjs-icon-placeholder {
  1198 + margin-right: 0.5em;
  1199 + color: #888;
  1200 +}
  1201 +
  1202 +.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-icon-placeholder {
  1203 + color: red;
  1204 +}
  1205 +
  1206 +.video-js .vjs-time-control {
  1207 + flex: none;
  1208 + font-size: 1em;
  1209 + line-height: 3em;
  1210 + min-width: 2em;
  1211 + width: auto;
  1212 + padding-left: 1em;
  1213 + padding-right: 1em;
  1214 +}
  1215 +
  1216 +.vjs-live .vjs-time-control {
  1217 + display: none;
  1218 +}
  1219 +
  1220 +.video-js .vjs-current-time,
  1221 +.vjs-no-flex .vjs-current-time {
  1222 + display: none;
  1223 +}
  1224 +
  1225 +.video-js .vjs-duration,
  1226 +.vjs-no-flex .vjs-duration {
  1227 + display: none;
  1228 +}
  1229 +
  1230 +.vjs-time-divider {
  1231 + display: none;
  1232 + line-height: 3em;
  1233 +}
  1234 +
  1235 +.vjs-live .vjs-time-divider {
  1236 + display: none;
  1237 +}
  1238 +
  1239 +.video-js .vjs-play-control {
  1240 + cursor: pointer;
  1241 +}
  1242 +
  1243 +.video-js .vjs-play-control .vjs-icon-placeholder {
  1244 + flex: none;
  1245 +}
  1246 +
  1247 +.vjs-text-track-display {
  1248 + position: absolute;
  1249 + bottom: 3em;
  1250 + left: 0;
  1251 + right: 0;
  1252 + top: 0;
  1253 + pointer-events: none;
  1254 +}
  1255 +
  1256 +.video-js.vjs-user-inactive.vjs-playing .vjs-text-track-display {
  1257 + bottom: 1em;
  1258 +}
  1259 +
  1260 +.video-js .vjs-text-track {
  1261 + font-size: 1.4em;
  1262 + text-align: center;
  1263 + margin-bottom: 0.1em;
  1264 +}
  1265 +
  1266 +.vjs-subtitles {
  1267 + color: #fff;
  1268 +}
  1269 +
  1270 +.vjs-captions {
  1271 + color: #fc6;
  1272 +}
  1273 +
  1274 +.vjs-tt-cue {
  1275 + display: block;
  1276 +}
  1277 +
  1278 +video::-webkit-media-text-track-display {
  1279 + transform: translateY(-3em);
  1280 +}
  1281 +
  1282 +.video-js.vjs-user-inactive.vjs-playing video::-webkit-media-text-track-display {
  1283 + transform: translateY(-1.5em);
  1284 +}
  1285 +
  1286 +.video-js .vjs-picture-in-picture-control {
  1287 + cursor: pointer;
  1288 + flex: none;
  1289 +}
  1290 +.video-js .vjs-fullscreen-control {
  1291 + cursor: pointer;
  1292 + flex: none;
  1293 +}
  1294 +.vjs-playback-rate > .vjs-menu-button,
  1295 +.vjs-playback-rate .vjs-playback-rate-value {
  1296 + position: absolute;
  1297 + top: 0;
  1298 + left: 0;
  1299 + width: 100%;
  1300 + height: 100%;
  1301 +}
  1302 +
  1303 +.vjs-playback-rate .vjs-playback-rate-value {
  1304 + pointer-events: none;
  1305 + font-size: 1.5em;
  1306 + line-height: 2;
  1307 + text-align: center;
  1308 +}
  1309 +
  1310 +.vjs-playback-rate .vjs-menu {
  1311 + width: 4em;
  1312 + left: 0em;
  1313 +}
  1314 +
  1315 +.vjs-error .vjs-error-display .vjs-modal-dialog-content {
  1316 + font-size: 1.4em;
  1317 + text-align: center;
  1318 +}
  1319 +
  1320 +.vjs-error .vjs-error-display:before {
  1321 + color: #fff;
  1322 + content: "X";
  1323 + font-family: Arial, Helvetica, sans-serif;
  1324 + font-size: 4em;
  1325 + left: 0;
  1326 + line-height: 1;
  1327 + margin-top: -0.5em;
  1328 + position: absolute;
  1329 + text-shadow: 0.05em 0.05em 0.1em #000;
  1330 + text-align: center;
  1331 + top: 50%;
  1332 + vertical-align: middle;
  1333 + width: 100%;
  1334 +}
  1335 +
  1336 +.vjs-loading-spinner {
  1337 + display: none;
  1338 + position: absolute;
  1339 + top: 50%;
  1340 + left: 50%;
  1341 + margin: -25px 0 0 -25px;
  1342 + opacity: 0.85;
  1343 + text-align: left;
  1344 + border: 6px solid rgba(43, 51, 63, 0.7);
  1345 + box-sizing: border-box;
  1346 + background-clip: padding-box;
  1347 + width: 50px;
  1348 + height: 50px;
  1349 + border-radius: 25px;
  1350 + visibility: hidden;
  1351 +}
  1352 +
  1353 +.vjs-seeking .vjs-loading-spinner,
  1354 +.vjs-waiting .vjs-loading-spinner {
  1355 + display: block;
  1356 + -webkit-animation: vjs-spinner-show 0s linear 0.3s forwards;
  1357 + animation: vjs-spinner-show 0s linear 0.3s forwards;
  1358 +}
  1359 +
  1360 +.vjs-loading-spinner:before,
  1361 +.vjs-loading-spinner:after {
  1362 + content: "";
  1363 + position: absolute;
  1364 + margin: -6px;
  1365 + box-sizing: inherit;
  1366 + width: inherit;
  1367 + height: inherit;
  1368 + border-radius: inherit;
  1369 + opacity: 1;
  1370 + border: inherit;
  1371 + border-color: transparent;
  1372 + border-top-color: white;
  1373 +}
  1374 +
  1375 +.vjs-seeking .vjs-loading-spinner:before,
  1376 +.vjs-seeking .vjs-loading-spinner:after,
  1377 +.vjs-waiting .vjs-loading-spinner:before,
  1378 +.vjs-waiting .vjs-loading-spinner:after {
  1379 + -webkit-animation: vjs-spinner-spin 1.1s cubic-bezier(0.6, 0.2, 0, 0.8) infinite, vjs-spinner-fade 1.1s linear infinite;
  1380 + animation: vjs-spinner-spin 1.1s cubic-bezier(0.6, 0.2, 0, 0.8) infinite, vjs-spinner-fade 1.1s linear infinite;
  1381 +}
  1382 +
  1383 +.vjs-seeking .vjs-loading-spinner:before,
  1384 +.vjs-waiting .vjs-loading-spinner:before {
  1385 + border-top-color: white;
  1386 +}
  1387 +
  1388 +.vjs-seeking .vjs-loading-spinner:after,
  1389 +.vjs-waiting .vjs-loading-spinner:after {
  1390 + border-top-color: white;
  1391 + -webkit-animation-delay: 0.44s;
  1392 + animation-delay: 0.44s;
  1393 +}
  1394 +
  1395 +@keyframes vjs-spinner-show {
  1396 + to {
  1397 + visibility: visible;
  1398 + }
  1399 +}
  1400 +@-webkit-keyframes vjs-spinner-show {
  1401 + to {
  1402 + visibility: visible;
  1403 + }
  1404 +}
  1405 +@keyframes vjs-spinner-spin {
  1406 + 100% {
  1407 + transform: rotate(360deg);
  1408 + }
  1409 +}
  1410 +@-webkit-keyframes vjs-spinner-spin {
  1411 + 100% {
  1412 + -webkit-transform: rotate(360deg);
  1413 + }
  1414 +}
  1415 +@keyframes vjs-spinner-fade {
  1416 + 0% {
  1417 + border-top-color: #73859f;
  1418 + }
  1419 + 20% {
  1420 + border-top-color: #73859f;
  1421 + }
  1422 + 35% {
  1423 + border-top-color: white;
  1424 + }
  1425 + 60% {
  1426 + border-top-color: #73859f;
  1427 + }
  1428 + 100% {
  1429 + border-top-color: #73859f;
  1430 + }
  1431 +}
  1432 +@-webkit-keyframes vjs-spinner-fade {
  1433 + 0% {
  1434 + border-top-color: #73859f;
  1435 + }
  1436 + 20% {
  1437 + border-top-color: #73859f;
  1438 + }
  1439 + 35% {
  1440 + border-top-color: white;
  1441 + }
  1442 + 60% {
  1443 + border-top-color: #73859f;
  1444 + }
  1445 + 100% {
  1446 + border-top-color: #73859f;
  1447 + }
  1448 +}
  1449 +.vjs-chapters-button .vjs-menu ul {
  1450 + width: 24em;
  1451 +}
  1452 +
  1453 +.video-js .vjs-subs-caps-button + .vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder {
  1454 + vertical-align: middle;
  1455 + display: inline-block;
  1456 + margin-bottom: -0.1em;
  1457 +}
  1458 +
  1459 +.video-js .vjs-subs-caps-button + .vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before {
  1460 + font-family: VideoJS;
  1461 + content: "";
  1462 + font-size: 1.5em;
  1463 + line-height: inherit;
  1464 +}
  1465 +
  1466 +.video-js .vjs-audio-button + .vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder {
  1467 + vertical-align: middle;
  1468 + display: inline-block;
  1469 + margin-bottom: -0.1em;
  1470 +}
  1471 +
  1472 +.video-js .vjs-audio-button + .vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before {
  1473 + font-family: VideoJS;
  1474 + content: " ";
  1475 + font-size: 1.5em;
  1476 + line-height: inherit;
  1477 +}
  1478 +
  1479 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-current-time,
  1480 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-time-divider,
  1481 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-duration,
  1482 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-remaining-time,
  1483 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-playback-rate,
  1484 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-chapters-button,
  1485 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-descriptions-button,
  1486 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-captions-button,
  1487 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-subtitles-button,
  1488 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-audio-button,
  1489 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-control, .video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-current-time,
  1490 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-time-divider,
  1491 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-duration,
  1492 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-remaining-time,
  1493 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-playback-rate,
  1494 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-chapters-button,
  1495 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-descriptions-button,
  1496 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-captions-button,
  1497 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-subtitles-button,
  1498 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-audio-button,
  1499 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-control, .video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-current-time,
  1500 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-time-divider,
  1501 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-duration,
  1502 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-remaining-time,
  1503 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-playback-rate,
  1504 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-chapters-button,
  1505 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-descriptions-button,
  1506 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-captions-button,
  1507 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-subtitles-button,
  1508 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-audio-button,
  1509 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-control {
  1510 + display: none;
  1511 +}
  1512 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover,
  1513 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,
  1514 +.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active, .video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover,
  1515 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,
  1516 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active, .video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:hover,
  1517 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:active,
  1518 +.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active {
  1519 + width: auto;
  1520 + width: initial;
  1521 +}
  1522 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small:not(.vjs-liveui) .vjs-subs-caps-button, .video-js:not(.vjs-fullscreen).vjs-layout-x-small:not(.vjs-live) .vjs-subs-caps-button, .video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-subs-caps-button {
  1523 + display: none;
  1524 +}
  1525 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small.vjs-liveui .vjs-custom-control-spacer, .video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-custom-control-spacer {
  1526 + flex: auto;
  1527 + display: block;
  1528 +}
  1529 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small.vjs-liveui.vjs-no-flex .vjs-custom-control-spacer, .video-js:not(.vjs-fullscreen).vjs-layout-tiny.vjs-no-flex .vjs-custom-control-spacer {
  1530 + width: auto;
  1531 +}
  1532 +.video-js:not(.vjs-fullscreen).vjs-layout-x-small.vjs-liveui .vjs-progress-control, .video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-progress-control {
  1533 + display: none;
  1534 +}
  1535 +
  1536 +.vjs-modal-dialog.vjs-text-track-settings {
  1537 + background-color: #2B333F;
  1538 + background-color: rgba(43, 51, 63, 0.75);
  1539 + color: #fff;
  1540 + height: 70%;
  1541 +}
  1542 +
  1543 +.vjs-text-track-settings .vjs-modal-dialog-content {
  1544 + display: table;
  1545 +}
  1546 +
  1547 +.vjs-text-track-settings .vjs-track-settings-colors,
  1548 +.vjs-text-track-settings .vjs-track-settings-font,
  1549 +.vjs-text-track-settings .vjs-track-settings-controls {
  1550 + display: table-cell;
  1551 +}
  1552 +
  1553 +.vjs-text-track-settings .vjs-track-settings-controls {
  1554 + text-align: right;
  1555 + vertical-align: bottom;
  1556 +}
  1557 +
  1558 +@supports (display: grid) {
  1559 + .vjs-text-track-settings .vjs-modal-dialog-content {
  1560 + display: grid;
  1561 + grid-template-columns: 1fr 1fr;
  1562 + grid-template-rows: 1fr;
  1563 + padding: 20px 24px 0px 24px;
  1564 + }
  1565 +
  1566 + .vjs-track-settings-controls .vjs-default-button {
  1567 + margin-bottom: 20px;
  1568 + }
  1569 +
  1570 + .vjs-text-track-settings .vjs-track-settings-controls {
  1571 + grid-column: 1/-1;
  1572 + }
  1573 +
  1574 + .vjs-layout-small .vjs-text-track-settings .vjs-modal-dialog-content,
  1575 +.vjs-layout-x-small .vjs-text-track-settings .vjs-modal-dialog-content,
  1576 +.vjs-layout-tiny .vjs-text-track-settings .vjs-modal-dialog-content {
  1577 + grid-template-columns: 1fr;
  1578 + }
  1579 +}
  1580 +.vjs-track-setting > select {
  1581 + margin-right: 1em;
  1582 + margin-bottom: 0.5em;
  1583 +}
  1584 +
  1585 +.vjs-text-track-settings fieldset {
  1586 + margin: 5px;
  1587 + padding: 3px;
  1588 + border: none;
  1589 +}
  1590 +
  1591 +.vjs-text-track-settings fieldset span {
  1592 + display: inline-block;
  1593 +}
  1594 +
  1595 +.vjs-text-track-settings fieldset span > select {
  1596 + max-width: 7.3em;
  1597 +}
  1598 +
  1599 +.vjs-text-track-settings legend {
  1600 + color: #fff;
  1601 + margin: 0 0 5px 0;
  1602 +}
  1603 +
  1604 +.vjs-text-track-settings .vjs-label {
  1605 + position: absolute;
  1606 + clip: rect(1px 1px 1px 1px);
  1607 + clip: rect(1px, 1px, 1px, 1px);
  1608 + display: block;
  1609 + margin: 0 0 5px 0;
  1610 + padding: 0;
  1611 + border: 0;
  1612 + height: 1px;
  1613 + width: 1px;
  1614 + overflow: hidden;
  1615 +}
  1616 +
  1617 +.vjs-track-settings-controls button:focus,
  1618 +.vjs-track-settings-controls button:active {
  1619 + outline-style: solid;
  1620 + outline-width: medium;
  1621 + background-image: linear-gradient(0deg, #fff 88%, #73859f 100%);
  1622 +}
  1623 +
  1624 +.vjs-track-settings-controls button:hover {
  1625 + color: rgba(43, 51, 63, 0.75);
  1626 +}
  1627 +
  1628 +.vjs-track-settings-controls button {
  1629 + background-color: #fff;
  1630 + background-image: linear-gradient(-180deg, #fff 88%, #73859f 100%);
  1631 + color: #2B333F;
  1632 + cursor: pointer;
  1633 + border-radius: 2px;
  1634 +}
  1635 +
  1636 +.vjs-track-settings-controls .vjs-default-button {
  1637 + margin-right: 1em;
  1638 +}
  1639 +
  1640 +@media print {
  1641 + .video-js > *:not(.vjs-tech):not(.vjs-poster) {
  1642 + visibility: hidden;
  1643 + }
  1644 +}
  1645 +.vjs-resize-manager {
  1646 + position: absolute;
  1647 + top: 0;
  1648 + left: 0;
  1649 + width: 100%;
  1650 + height: 100%;
  1651 + border: none;
  1652 + z-index: -1000;
  1653 +}
  1654 +
  1655 +.js-focus-visible .video-js *:focus:not(.focus-visible) {
  1656 + outline: none;
  1657 + background: none;
  1658 +}
  1659 +
  1660 +.video-js *:focus:not(:focus-visible),
  1661 +.video-js .vjs-menu *:focus:not(:focus-visible) {
  1662 + outline: none;
  1663 + background: none;
  1664 +}
src/main/resources/static/pageTemplates/css/video-js_v7.11.4.min.css 0 → 100644
  1 +@charset "UTF-8";.video-js .vjs-big-play-button .vjs-icon-placeholder:before,.video-js .vjs-modal-dialog,.vjs-button>.vjs-icon-placeholder:before,.vjs-modal-dialog .vjs-modal-dialog-content{position:absolute;top:0;left:0;width:100%;height:100%}.video-js .vjs-big-play-button .vjs-icon-placeholder:before,.vjs-button>.vjs-icon-placeholder:before{text-align:center}@font-face{font-family:VideoJS;src:url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAABDkAAsAAAAAG6gAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADsAAABUIIslek9TLzIAAAFEAAAAPgAAAFZRiV3hY21hcAAAAYQAAADaAAADPv749/pnbHlmAAACYAAAC3AAABHQZg6OcWhlYWQAAA3QAAAAKwAAADYZw251aGhlYQAADfwAAAAdAAAAJA+RCLFobXR4AAAOHAAAABMAAACM744AAGxvY2EAAA4wAAAASAAAAEhF6kqubWF4cAAADngAAAAfAAAAIAE0AIFuYW1lAAAOmAAAASUAAAIK1cf1oHBvc3QAAA/AAAABJAAAAdPExYuNeJxjYGRgYOBiMGCwY2BycfMJYeDLSSzJY5BiYGGAAJA8MpsxJzM9kYEDxgPKsYBpDiBmg4gCACY7BUgAeJxjYGS7wTiBgZWBgaWQ5RkDA8MvCM0cwxDOeI6BgYmBlZkBKwhIc01hcPjI+FGJHcRdyA4RZgQRADK3CxEAAHic7dFZbsMgAEXRS0ycyZnnOeG7y+qC8pU1dHusIOXxuoxaOlwZYWQB0Aea4quIEN4E9LzKbKjzDeM6H/mua6Lmc/p8yhg0lvdYx15ZG8uOLQOGjMp3EzqmzJizYMmKNRu27Nhz4MiJMxeu3Ljz4Ekqm7T8P52G8PP3lnTOVk++Z6iN6QZzNN1F7ptuN7eGOjDUoaGODHVsuvU8MdTO9Hd5aqgzQ50b6sJQl4a6MtS1oW4MdWuoO0PdG+rBUI+GejLUs6FeDPVqqDdDvRvqw1CfhpqM9At0iFLaAAB4nJ1YDXBTVRZ+5/22TUlJ8we0pHlJm7RJf5O8F2j6EymlSPkpxaL8U2xpa3DKj0CBhc2IW4eWKSokIoLsuMqssM64f+jA4HSdWXXXscBq67IOs3FXZ1ZYWVyRFdo899yXtIBQZ90k7717zz3v3HPPOfd854YCCj9cL9dL0RQFOqCbGJnrHb5EayiKIWN8iA/hWBblo6hUWm8TtCDwE80WMJus/irwyxOdxeB0MDb14VNJHnXYoLLSl6FfCUYO9nYPTA8Epg9090LprfbBbZ2hY0UlJUXHQp3/vtWkS6EBv8+rPMq5u9692f/dNxJNiqwC1xPE9TCUgCsSdQWgE3XQD25lkG4CN2xmTcOXWBOyser6RN6KnGbKSbmQ3+d0OI1m2W8QzLLkI2sykrWAgJJEtA8vGGW/2Q+CmT3n8zS9wZwu2DCvtuZKZN3xkrLh36yCZuUomQSqGpY8t/25VfHVhw8z4ebGBtfLb0ya9PCaDc+8dGTvk2dsh6z7WzvowlXKUSWo9MJ15a3KrEP2loOr2Ojhw6iW6hf2BDdEccQvZGpaAy7YovSwq8kr7HGllxpd71rkS6G0Sf11sl9OvMK1+jwPPODxjUwkOim9CU3ix1wNjXDfmJSEn618Bs6lpWwUpU+8PCqLMY650zjq8VhCIP17NEKTx3eaLL+s5Pi6yJWaWjTHLR1jYzPSV9VF/6Ojdb/1kO3Mk3uhHC0x6gc1BjlKQ+nQFxTYdaJkZ7ySVxLBbhR1dsboNXp1tCYKW2LRaEzpYcIx2BKNxaL0ZaUnSqfFoiNhHKR/GkX6PWUSAaJelQaqZL1EpoHNsajSEyPSoJ9IjhIxTdjHLmwZvhRDOiFTY/YeQnvrVZmiTQtGncECXtFTBZLOVwwMRgoXHAkXzMzPn1nAJJ8jYSbMDaqN2waGLzNhih/bZynUBMpIWSg7VYi7DRx2m8ALkIdRCJwI6ArJx2EI8kaDWeTQKeAFk9fjl/1AvwktjQ1P7NjyMGQyfd4vjipX6M/i52D7Cq80kqlcxEcGXRr/FEcgs0u5uGgB4VWuMFfpdn2Re6Hi3PqzmxWKsz6+ae2Pn9hXXw/fqM859UiGC0oKYYILJBqJrsn1Z1E5qOs9rQCiUQRREjm8yJcbHF5cUJufX1vAHlefw0XgUoboS3ETfQlTxBC4SOtuE8VPRJTBSCQSjZCpk7Gqzu+masaZ2y7Zjehho4F3g82BNDkAHpORG4+OCS+f6JTPmtRn/PH1kch6d04sp7AQb25aQ/pqUyXeQ8vrebG8OYQdXOQ+585u0sdW9rqalzRURiJ+9F4MweRFrKUjl1GUYhH1A27WOHw5cTFSFPMo9EeUIGnQTZHIaJ7AHLaOKsOODaNF9jkBjYG2QEsQ2xjMUAx2bBEbeTBWMHwskBjngq56S/yfgkBnWBa4K9sqKtq2t1UI8S9He5XuBRbawAdatrQEAi30Aks2+LM8WeCbalVZkWNylvJ+dqJnzVb+OHlSoKW8nPCP7Rd+CcZ2DdWAGqJ2CBFOphgywFFCFBNtfAbGtNPBCwxvygHeYMZMY9ZboBqwq/pVrsbgN5tkv152ODlbMfiqwGMBgxa4Exz3QhovRIUp6acqZmQzRq0ypDXS2TPLT02YIkQETnOE445oOGxOmXAqUJNNG7XgupMjPq2ua9asrj5yY/yuKteO1Kx0YNJTufrirLe1mZnat7OL6rnUdCWenpW6I8mAnbsY8KWs1PuSovCW9A/Z25PQ24a7cNOqgmTkLmBMgh4THgc4b9k2IVv1/g/F5nGljwPLfOgHAzJzh45V/4+WenTzmMtR5Z7us2Tys909UHqrPY7KbckoxRvRHhmVc3cJGE97uml0R1S0jdULVl7EvZtDFVBF35N9cEdjpgmAiOlFZ+Dtoh93+D3zzHr8RRNZQhnCNMNbcegOvpEwZoL+06cJQ07h+th3fZ/7PVbVC6ngTAV/KoLFuO6+2KFcU651gEb5ugPSIb1D+Xp8V4+k3sEIGnw5mYe4If4k1lFYr6SCzmM2EQ8iWtmwjnBI9kTwe1TlfAmXh7H02by9fW2gsjKwtv0aaURKil4OdV7rDL1MXIFNrhdxohcZXYTnq47WisrKitaObbf5+yvkLi5J6lCNZZ+B6GC38VNBZBDidSS/+mSvh6s+srgC8pyKMvDtt+de3c9fU76ZPfuM8ud4Kv0fyP/LqfepMT/3oZxSqpZaTa1DaQYLY8TFsHYbWYsPoRhRWfL5eSSQbhUGgGC3YLbVMk6PitTFNGpAsNrC6D1VNBKgBHMejaiuRWEWGgsSDBTJjqWIl8kJLlsaLJ2tXDr6xGfT85bM2Q06a46x2HTgvdnV8z5YDy/27J4zt6x2VtkzjoYpkq36kaBr4eQSg7tyiVweWubXZugtadl58ydapfbORfKsDTuZ0OBgx4cfdjCf5tbWNITnL120fdOi1RV1C3uKGzNdwYLcMvZ3BxoPyTOCD1XvXTp7U10gWCVmTV9b3r2z0SkGWovb2hp9I89O8a2smlyaO8muMU+dRmtzp60IzAoFpjLr1n388boLyf0dRvxhsHZ0qbWqDkwqvvpkj4l0fY6EIXRi5sQSrAvsVYwXRy4qJ2EVtD1AN7a0HWth9ymvL1xc3WTUKK/TAHA/bXDVtVWfOMfuGxGZv4Ln/jVr9jc3j1yMv0tndmyt9Vq88Y9gH1wtLX3KWjot5++jWHgAoZZkQ14wGQ20Fli71UmKJAy4xKMSTGbVdybW7FDDAut9XpD5AzWrYO7zQ8qffqF8+Ynd/clrHcdyxGy3a/3+mfNnzC/cBsveTjnTvXf1o6vzOlZw7WtqtdmPK/Errz/6NNtD72zmNOZfbmYdTGHfoofqI79Oc+R2n1lrnL6pOm0Up7kwxhTW12Amm7WYkXR2qYrF2AmgmbAsxZjwy1xpg/m1Je2vrp8v/nz2xpmlBg4E9hrMU341wVpTOh/OfmGvAnra8q6uctr60ZQHV3Q+WMQJykMj8ZsWn2QBOmmHMB+m5pDIpTFonYigiaKAhGEiAHF7EliVnQkjoLVIMPtJpBKHYd3A8GYH9jJzrWwmHx5Qjp7vDAX0suGRym1vtm/9W1/HyR8vczfMs6Sk8DSv855/5dlX9oQq52hT8syyp2rx5Id17IAyAM3wIjQPMOHzytEB64q6D5zT91yNbnx3V/nqnd017S9Y0605k3izoXLpsxde2n38yoOV9s1LcjwzNjbdX6asnBVaBj/6/DwKwPkpcqbDG7BnsXoSqWnUAmottYF6jMSdVyYZh3zVXCjwTiwwHH6sGuRiEHQGzuRX6whZkp123oy1BWE2mEfJ/tvIRtM4ZM5bDXiMsPMaAKOTyc5uL57rqyyc5y5JE5pm1i2S2iUX0CcaQ6lC6Zog7JqSqZmYlosl2K6pwNA84zRnQW6SaALYZQGW5lhCtU/W34N6o+bKfZ8cf3/Cl/+iTX3wBzpOY4mRkeNf3rptycGSshQWgGbYt5jFc2e0+DglIrwl6DVWQ7BuwaJ3Xk1J4VL5urnLl/Wf+gHU/hZoZdKNym6lG+I34FaNeZKcSpJIo2IeCVvpdsDGfKvzJnAwmeD37Ow65ZWwSowpgwX5T69s/rB55dP5BcpgDKFV8p7q2sn/1uc93bVzT/w6UrCqDTWvfCq/oCD/qZXNoUj8BL5Kp6GU017frfNXkAtiiyf/SOCEeLqnd8R/Ql9GlCRfctS6k5chvIBuQ1zCCjoCHL2DHNHIXxMJ3kQeO8lbsUXONeSfA5EjcG6/E+KdhN4bP04vBhdi883+BFBzQbxFbvZzQeY9LNBZc0FNfn5NwfDn6rCTnTw6R8o+gfpf5hCom33cRuiTlss3KHmZjD+BPN+5gXuA2ziS/Q73mLxUkpbKN/eqwz5uK0X9F3h2d1V4nGNgZGBgAOJd776+iue3+crAzc4AAje5Bfcg0xz9YHEOBiYQBQA8FQlFAHicY2BkYGBnAAGOPgaG//85+hkYGVCBMgBGGwNYAAAAeJxjYGBgYB8EmKOPgQEAQ04BfgAAAAAAAA4AaAB+AMwA4AECAUIBbAGYAcICGAJYArQC4AMwA7AD3gQwBJYE3AUkBWYFigYgBmYGtAbqB1gIEghYCG4IhAi2COh4nGNgZGBgUGYoZWBnAAEmIOYCQgaG/2A+AwAYCQG2AHicXZBNaoNAGIZfE5PQCKFQ2lUps2oXBfOzzAESyDKBQJdGR2NQR3QSSE/QE/QEPUUPUHqsvsrXjTMw83zPvPMNCuAWP3DQDAejdm1GjzwS7pMmwi75XngAD4/CQ/oX4TFe4Qt7uMMbOzjuDc0EmXCP/C7cJ38Iu+RP4QEe8CU8pP8WHmOPX2EPz87TPo202ey2OjlnQSXV/6arOjWFmvszMWtd6CqwOlKHq6ovycLaWMWVydXKFFZnmVFlZU46tP7R2nI5ncbi/dDkfDtFBA2DDXbYkhKc+V0Bqs5Zt9JM1HQGBRTm/EezTmZNKtpcAMs9Yu6AK9caF76zoLWIWcfMGOSkVduvSWechqZsz040Ib2PY3urxBJTzriT95lipz+TN1fmAAAAeJxtkMl2wjAMRfOAhABlKm2h80C3+ajgCKKDY6cegP59TYBzukAL+z1Zsq8ctaJTTKPrsUQLbXQQI0EXKXroY4AbDDHCGBNMcYsZ7nCPB8yxwCOe8IwXvOIN7/jAJ76wxHfUqWX+OzgumWAjJMV17i0Ndlr6irLKO+qftdT7i6y4uFSUvCknay+lFYZIZaQcmfH/xIFdYn98bqhra1aKTM/6lWMnyaYirx1rFUQZFBkb2zJUtoXeJCeg0WnLtHeSFc3OtrnozNwqi0TkSpBMDB1nSde5oJXW23hTS2/T0LilglXX7dmFVxLnq5U0vYATHFk3zX3BOisoQHNDFDeZnqKDy9hRNawN7Vh727hFzcJ5c8TILrKZfH7tIPxAFP0BpLeJPA==) format("woff");font-weight:400;font-style:normal}.video-js .vjs-big-play-button .vjs-icon-placeholder:before,.video-js .vjs-play-control .vjs-icon-placeholder,.vjs-icon-play{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-big-play-button .vjs-icon-placeholder:before,.video-js .vjs-play-control .vjs-icon-placeholder:before,.vjs-icon-play:before{content:"\f101"}.vjs-icon-play-circle{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-play-circle:before{content:"\f102"}.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder,.vjs-icon-pause{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-play-control.vjs-playing .vjs-icon-placeholder:before,.vjs-icon-pause:before{content:"\f103"}.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder,.vjs-icon-volume-mute{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-mute-control.vjs-vol-0 .vjs-icon-placeholder:before,.vjs-icon-volume-mute:before{content:"\f104"}.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder,.vjs-icon-volume-low{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-mute-control.vjs-vol-1 .vjs-icon-placeholder:before,.vjs-icon-volume-low:before{content:"\f105"}.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder,.vjs-icon-volume-mid{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-mute-control.vjs-vol-2 .vjs-icon-placeholder:before,.vjs-icon-volume-mid:before{content:"\f106"}.video-js .vjs-mute-control .vjs-icon-placeholder,.vjs-icon-volume-high{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-mute-control .vjs-icon-placeholder:before,.vjs-icon-volume-high:before{content:"\f107"}.video-js .vjs-fullscreen-control .vjs-icon-placeholder,.vjs-icon-fullscreen-enter{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-fullscreen-control .vjs-icon-placeholder:before,.vjs-icon-fullscreen-enter:before{content:"\f108"}.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder,.vjs-icon-fullscreen-exit{font-family:VideoJS;font-weight:400;font-style:normal}.video-js.vjs-fullscreen .vjs-fullscreen-control .vjs-icon-placeholder:before,.vjs-icon-fullscreen-exit:before{content:"\f109"}.vjs-icon-square{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-square:before{content:"\f10a"}.vjs-icon-spinner{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-spinner:before{content:"\f10b"}.video-js .vjs-subs-caps-button .vjs-icon-placeholder,.video-js .vjs-subtitles-button .vjs-icon-placeholder,.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder,.vjs-icon-subtitles{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js .vjs-subtitles-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-AU) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-GB) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-IE) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js.video-js:lang(en-NZ) .vjs-subs-caps-button .vjs-icon-placeholder:before,.vjs-icon-subtitles:before{content:"\f10c"}.video-js .vjs-captions-button .vjs-icon-placeholder,.video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder,.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder,.vjs-icon-captions{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-captions-button .vjs-icon-placeholder:before,.video-js:lang(en) .vjs-subs-caps-button .vjs-icon-placeholder:before,.video-js:lang(fr-CA) .vjs-subs-caps-button .vjs-icon-placeholder:before,.vjs-icon-captions:before{content:"\f10d"}.video-js .vjs-chapters-button .vjs-icon-placeholder,.vjs-icon-chapters{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-chapters-button .vjs-icon-placeholder:before,.vjs-icon-chapters:before{content:"\f10e"}.vjs-icon-share{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-share:before{content:"\f10f"}.vjs-icon-cog{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-cog:before{content:"\f110"}.video-js .vjs-play-progress,.video-js .vjs-volume-level,.vjs-icon-circle,.vjs-seek-to-live-control .vjs-icon-placeholder{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-play-progress:before,.video-js .vjs-volume-level:before,.vjs-icon-circle:before,.vjs-seek-to-live-control .vjs-icon-placeholder:before{content:"\f111"}.vjs-icon-circle-outline{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-circle-outline:before{content:"\f112"}.vjs-icon-circle-inner-circle{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-circle-inner-circle:before{content:"\f113"}.vjs-icon-hd{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-hd:before{content:"\f114"}.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder,.vjs-icon-cancel{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-control.vjs-close-button .vjs-icon-placeholder:before,.vjs-icon-cancel:before{content:"\f115"}.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder,.vjs-icon-replay{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-play-control.vjs-ended .vjs-icon-placeholder:before,.vjs-icon-replay:before{content:"\f116"}.vjs-icon-facebook{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-facebook:before{content:"\f117"}.vjs-icon-gplus{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-gplus:before{content:"\f118"}.vjs-icon-linkedin{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-linkedin:before{content:"\f119"}.vjs-icon-twitter{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-twitter:before{content:"\f11a"}.vjs-icon-tumblr{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-tumblr:before{content:"\f11b"}.vjs-icon-pinterest{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-pinterest:before{content:"\f11c"}.video-js .vjs-descriptions-button .vjs-icon-placeholder,.vjs-icon-audio-description{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-descriptions-button .vjs-icon-placeholder:before,.vjs-icon-audio-description:before{content:"\f11d"}.video-js .vjs-audio-button .vjs-icon-placeholder,.vjs-icon-audio{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-audio-button .vjs-icon-placeholder:before,.vjs-icon-audio:before{content:"\f11e"}.vjs-icon-next-item{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-next-item:before{content:"\f11f"}.vjs-icon-previous-item{font-family:VideoJS;font-weight:400;font-style:normal}.vjs-icon-previous-item:before{content:"\f120"}.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder,.vjs-icon-picture-in-picture-enter{font-family:VideoJS;font-weight:400;font-style:normal}.video-js .vjs-picture-in-picture-control .vjs-icon-placeholder:before,.vjs-icon-picture-in-picture-enter:before{content:"\f121"}.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder,.vjs-icon-picture-in-picture-exit{font-family:VideoJS;font-weight:400;font-style:normal}.video-js.vjs-picture-in-picture .vjs-picture-in-picture-control .vjs-icon-placeholder:before,.vjs-icon-picture-in-picture-exit:before{content:"\f122"}.video-js{display:block;vertical-align:top;box-sizing:border-box;color:#fff;background-color:#000;position:relative;padding:0;font-size:10px;line-height:1;font-weight:400;font-style:normal;font-family:Arial,Helvetica,sans-serif;word-break:initial}.video-js:-moz-full-screen{position:absolute}.video-js:-webkit-full-screen{width:100%!important;height:100%!important}.video-js[tabindex="-1"]{outline:0}.video-js *,.video-js :after,.video-js :before{box-sizing:inherit}.video-js ul{font-family:inherit;font-size:inherit;line-height:inherit;list-style-position:outside;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.video-js.vjs-16-9,.video-js.vjs-4-3,.video-js.vjs-fluid{width:100%;max-width:100%;height:0}.video-js.vjs-16-9{padding-top:56.25%}.video-js.vjs-4-3{padding-top:75%}.video-js.vjs-fill{width:100%;height:100%}.video-js .vjs-tech{position:absolute;top:0;left:0;width:100%;height:100%}body.vjs-full-window{padding:0;margin:0;height:100%}.vjs-full-window .video-js.vjs-fullscreen{position:fixed;overflow:hidden;z-index:1000;left:0;top:0;bottom:0;right:0}.video-js.vjs-fullscreen:not(.vjs-ios-native-fs){width:100%!important;height:100%!important;padding-top:0!important}.video-js.vjs-fullscreen.vjs-user-inactive{cursor:none}.vjs-hidden{display:none!important}.vjs-disabled{opacity:.5;cursor:default}.video-js .vjs-offscreen{height:1px;left:-9999px;position:absolute;top:0;width:1px}.vjs-lock-showing{display:block!important;opacity:1;visibility:visible}.vjs-no-js{padding:20px;color:#fff;background-color:#000;font-size:18px;font-family:Arial,Helvetica,sans-serif;text-align:center;width:300px;height:150px;margin:0 auto}.vjs-no-js a,.vjs-no-js a:visited{color:#66a8cc}.video-js .vjs-big-play-button{font-size:3em;line-height:1.5em;height:1.63332em;width:3em;display:block;position:absolute;top:10px;left:10px;padding:0;cursor:pointer;opacity:1;border:.06666em solid #fff;background-color:#2b333f;background-color:rgba(43,51,63,.7);border-radius:.3em;transition:all .4s}.vjs-big-play-centered .vjs-big-play-button{top:50%;left:50%;margin-top:-.81666em;margin-left:-1.5em}.video-js .vjs-big-play-button:focus,.video-js:hover .vjs-big-play-button{border-color:#fff;background-color:#73859f;background-color:rgba(115,133,159,.5);transition:all 0s}.vjs-controls-disabled .vjs-big-play-button,.vjs-error .vjs-big-play-button,.vjs-has-started .vjs-big-play-button,.vjs-using-native-controls .vjs-big-play-button{display:none}.vjs-has-started.vjs-paused.vjs-show-big-play-button-on-pause .vjs-big-play-button{display:block}.video-js button{background:0 0;border:none;color:inherit;display:inline-block;font-size:inherit;line-height:inherit;text-transform:none;text-decoration:none;transition:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.vjs-control .vjs-button{width:100%;height:100%}.video-js .vjs-control.vjs-close-button{cursor:pointer;height:3em;position:absolute;right:0;top:.5em;z-index:2}.video-js .vjs-modal-dialog{background:rgba(0,0,0,.8);background:linear-gradient(180deg,rgba(0,0,0,.8),rgba(255,255,255,0));overflow:auto}.video-js .vjs-modal-dialog>*{box-sizing:border-box}.vjs-modal-dialog .vjs-modal-dialog-content{font-size:1.2em;line-height:1.5;padding:20px 24px;z-index:1}.vjs-menu-button{cursor:pointer}.vjs-menu-button.vjs-disabled{cursor:default}.vjs-workinghover .vjs-menu-button.vjs-disabled:hover .vjs-menu{display:none}.vjs-menu .vjs-menu-content{display:block;padding:0;margin:0;font-family:Arial,Helvetica,sans-serif;overflow:auto}.vjs-menu .vjs-menu-content>*{box-sizing:border-box}.vjs-scrubbing .vjs-control.vjs-menu-button:hover .vjs-menu{display:none}.vjs-menu li{list-style:none;margin:0;padding:.2em 0;line-height:1.4em;font-size:1.2em;text-align:center;text-transform:lowercase}.js-focus-visible .vjs-menu li.vjs-menu-item:hover,.vjs-menu li.vjs-menu-item:focus,.vjs-menu li.vjs-menu-item:hover{background-color:#73859f;background-color:rgba(115,133,159,.5)}.js-focus-visible .vjs-menu li.vjs-selected:hover,.vjs-menu li.vjs-selected,.vjs-menu li.vjs-selected:focus,.vjs-menu li.vjs-selected:hover{background-color:#fff;color:#2b333f}.vjs-menu li.vjs-menu-title{text-align:center;text-transform:uppercase;font-size:1em;line-height:2em;padding:0;margin:0 0 .3em 0;font-weight:700;cursor:default}.vjs-menu-button-popup .vjs-menu{display:none;position:absolute;bottom:0;width:10em;left:-3em;height:0;margin-bottom:1.5em;border-top-color:rgba(43,51,63,.7)}.vjs-menu-button-popup .vjs-menu .vjs-menu-content{background-color:#2b333f;background-color:rgba(43,51,63,.7);position:absolute;width:100%;bottom:1.5em;max-height:15em}.vjs-layout-tiny .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-x-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:5em}.vjs-layout-small .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:10em}.vjs-layout-medium .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:14em}.vjs-layout-huge .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.vjs-layout-x-large .vjs-menu-button-popup .vjs-menu .vjs-menu-content{max-height:25em}.vjs-menu-button-popup .vjs-menu.vjs-lock-showing,.vjs-workinghover .vjs-menu-button-popup.vjs-hover .vjs-menu{display:block}.video-js .vjs-menu-button-inline{transition:all .4s;overflow:hidden}.video-js .vjs-menu-button-inline:before{width:2.222222222em}.video-js .vjs-menu-button-inline.vjs-slider-active,.video-js .vjs-menu-button-inline:focus,.video-js .vjs-menu-button-inline:hover,.video-js.vjs-no-flex .vjs-menu-button-inline{width:12em}.vjs-menu-button-inline .vjs-menu{opacity:0;height:100%;width:auto;position:absolute;left:4em;top:0;padding:0;margin:0;transition:all .4s}.vjs-menu-button-inline.vjs-slider-active .vjs-menu,.vjs-menu-button-inline:focus .vjs-menu,.vjs-menu-button-inline:hover .vjs-menu{display:block;opacity:1}.vjs-no-flex .vjs-menu-button-inline .vjs-menu{display:block;opacity:1;position:relative;width:auto}.vjs-no-flex .vjs-menu-button-inline.vjs-slider-active .vjs-menu,.vjs-no-flex .vjs-menu-button-inline:focus .vjs-menu,.vjs-no-flex .vjs-menu-button-inline:hover .vjs-menu{width:auto}.vjs-menu-button-inline .vjs-menu-content{width:auto;height:100%;margin:0;overflow:hidden}.video-js .vjs-control-bar{display:none;width:100%;position:absolute;bottom:0;left:0;right:0;height:3em;background-color:#2b333f;background-color:rgba(43,51,63,.7)}.vjs-has-started .vjs-control-bar{display:flex;visibility:visible;opacity:1;transition:visibility .1s,opacity .1s}.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar{visibility:visible;opacity:0;transition:visibility 1s,opacity 1s}.vjs-controls-disabled .vjs-control-bar,.vjs-error .vjs-control-bar,.vjs-using-native-controls .vjs-control-bar{display:none!important}.vjs-audio.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar{opacity:1;visibility:visible}.vjs-has-started.vjs-no-flex .vjs-control-bar{display:table}.video-js .vjs-control{position:relative;text-align:center;margin:0;padding:0;height:100%;width:4em;flex:none}.vjs-button>.vjs-icon-placeholder:before{font-size:1.8em;line-height:1.67}.video-js .vjs-control:focus,.video-js .vjs-control:focus:before,.video-js .vjs-control:hover:before{text-shadow:0 0 1em #fff}.video-js .vjs-control-text{border:0;clip:rect(0 0 0 0);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.vjs-no-flex .vjs-control{display:table-cell;vertical-align:middle}.video-js .vjs-custom-control-spacer{display:none}.video-js .vjs-progress-control{cursor:pointer;flex:auto;display:flex;align-items:center;min-width:4em;touch-action:none}.video-js .vjs-progress-control.disabled{cursor:default}.vjs-live .vjs-progress-control{display:none}.vjs-liveui .vjs-progress-control{display:flex;align-items:center}.vjs-no-flex .vjs-progress-control{width:auto}.video-js .vjs-progress-holder{flex:auto;transition:all .2s;height:.3em}.video-js .vjs-progress-control .vjs-progress-holder{margin:0 10px}.video-js .vjs-progress-control:hover .vjs-progress-holder{font-size:1.6666666667em}.video-js .vjs-progress-control:hover .vjs-progress-holder.disabled{font-size:1em}.video-js .vjs-progress-holder .vjs-load-progress,.video-js .vjs-progress-holder .vjs-load-progress div,.video-js .vjs-progress-holder .vjs-play-progress{position:absolute;display:block;height:100%;margin:0;padding:0;width:0}.video-js .vjs-play-progress{background-color:#fff}.video-js .vjs-play-progress:before{font-size:.9em;position:absolute;right:-.5em;top:-.3333333333em;z-index:1}.video-js .vjs-load-progress{background:rgba(115,133,159,.5)}.video-js .vjs-load-progress div{background:rgba(115,133,159,.75)}.video-js .vjs-time-tooltip{background-color:#fff;background-color:rgba(255,255,255,.8);border-radius:.3em;color:#000;float:right;font-family:Arial,Helvetica,sans-serif;font-size:1em;padding:6px 8px 8px 8px;pointer-events:none;position:absolute;top:-3.4em;visibility:hidden;z-index:1}.video-js .vjs-progress-holder:focus .vjs-time-tooltip{display:none}.video-js .vjs-progress-control:hover .vjs-progress-holder:focus .vjs-time-tooltip,.video-js .vjs-progress-control:hover .vjs-time-tooltip{display:block;font-size:.6em;visibility:visible}.video-js .vjs-progress-control.disabled:hover .vjs-time-tooltip{font-size:1em}.video-js .vjs-progress-control .vjs-mouse-display{display:none;position:absolute;width:1px;height:100%;background-color:#000;z-index:1}.vjs-no-flex .vjs-progress-control .vjs-mouse-display{z-index:0}.video-js .vjs-progress-control:hover .vjs-mouse-display{display:block}.video-js.vjs-user-inactive .vjs-progress-control .vjs-mouse-display{visibility:hidden;opacity:0;transition:visibility 1s,opacity 1s}.video-js.vjs-user-inactive.vjs-no-flex .vjs-progress-control .vjs-mouse-display{display:none}.vjs-mouse-display .vjs-time-tooltip{color:#fff;background-color:#000;background-color:rgba(0,0,0,.8)}.video-js .vjs-slider{position:relative;cursor:pointer;padding:0;margin:0 .45em 0 .45em;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#73859f;background-color:rgba(115,133,159,.5)}.video-js .vjs-slider.disabled{cursor:default}.video-js .vjs-slider:focus{text-shadow:0 0 1em #fff;box-shadow:0 0 1em #fff}.video-js .vjs-mute-control{cursor:pointer;flex:none}.video-js .vjs-volume-control{cursor:pointer;margin-right:1em;display:flex}.video-js .vjs-volume-control.vjs-volume-horizontal{width:5em}.video-js .vjs-volume-panel .vjs-volume-control{visibility:visible;opacity:0;width:1px;height:1px;margin-left:-1px}.video-js .vjs-volume-panel{transition:width 1s}.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active,.video-js .vjs-volume-panel .vjs-volume-control:active,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control,.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control,.video-js .vjs-volume-panel:active .vjs-volume-control,.video-js .vjs-volume-panel:focus .vjs-volume-control{visibility:visible;opacity:1;position:relative;transition:visibility .1s,opacity .1s,height .1s,width .1s,left 0s,top 0s}.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-horizontal,.video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-horizontal,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-horizontal,.video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-horizontal{width:5em;height:3em;margin-right:0}.video-js .vjs-volume-panel .vjs-volume-control.vjs-slider-active.vjs-volume-vertical,.video-js .vjs-volume-panel .vjs-volume-control:active.vjs-volume-vertical,.video-js .vjs-volume-panel.vjs-hover .vjs-mute-control~.vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel.vjs-hover .vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel:active .vjs-volume-control.vjs-volume-vertical,.video-js .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-vertical{left:-3.5em;transition:left 0s}.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-hover,.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js .vjs-volume-panel.vjs-volume-panel-horizontal:active{width:10em;transition:width .1s}.video-js .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-mute-toggle-only{width:4em}.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical{height:8em;width:3em;left:-3000em;transition:visibility 1s,opacity 1s,height 1s 1s,width 1s 1s,left 1s 1s,top 1s 1s}.video-js .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal{transition:visibility 1s,opacity 1s,height 1s 1s,width 1s,left 1s 1s,top 1s 1s}.video-js.vjs-no-flex .vjs-volume-panel .vjs-volume-control.vjs-volume-horizontal{width:5em;height:3em;visibility:visible;opacity:1;position:relative;transition:none}.video-js.vjs-no-flex .vjs-volume-control.vjs-volume-vertical,.video-js.vjs-no-flex .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical{position:absolute;bottom:3em;left:.5em}.video-js .vjs-volume-panel{display:flex}.video-js .vjs-volume-bar{margin:1.35em .45em}.vjs-volume-bar.vjs-slider-horizontal{width:5em;height:.3em}.vjs-volume-bar.vjs-slider-vertical{width:.3em;height:5em;margin:1.35em auto}.video-js .vjs-volume-level{position:absolute;bottom:0;left:0;background-color:#fff}.video-js .vjs-volume-level:before{position:absolute;font-size:.9em}.vjs-slider-vertical .vjs-volume-level{width:.3em}.vjs-slider-vertical .vjs-volume-level:before{top:-.5em;left:-.3em}.vjs-slider-horizontal .vjs-volume-level{height:.3em}.vjs-slider-horizontal .vjs-volume-level:before{top:-.3em;right:-.5em}.video-js .vjs-volume-panel.vjs-volume-panel-vertical{width:4em}.vjs-volume-bar.vjs-slider-vertical .vjs-volume-level{height:100%}.vjs-volume-bar.vjs-slider-horizontal .vjs-volume-level{width:100%}.video-js .vjs-volume-vertical{width:3em;height:8em;bottom:8em;background-color:#2b333f;background-color:rgba(43,51,63,.7)}.video-js .vjs-volume-horizontal .vjs-menu{left:-2em}.vjs-poster{display:inline-block;vertical-align:middle;background-repeat:no-repeat;background-position:50% 50%;background-size:contain;background-color:#000;cursor:pointer;margin:0;padding:0;position:absolute;top:0;right:0;bottom:0;left:0;height:100%}.vjs-has-started .vjs-poster{display:none}.vjs-audio.vjs-has-started .vjs-poster{display:block}.vjs-using-native-controls .vjs-poster{display:none}.video-js .vjs-live-control{display:flex;align-items:flex-start;flex:auto;font-size:1em;line-height:3em}.vjs-no-flex .vjs-live-control{display:table-cell;width:auto;text-align:left}.video-js.vjs-liveui .vjs-live-control,.video-js:not(.vjs-live) .vjs-live-control{display:none}.video-js .vjs-seek-to-live-control{align-items:center;cursor:pointer;flex:none;display:inline-flex;height:100%;padding-left:.5em;padding-right:.5em;font-size:1em;line-height:3em;width:auto;min-width:4em}.vjs-no-flex .vjs-seek-to-live-control{display:table-cell;width:auto;text-align:left}.video-js.vjs-live:not(.vjs-liveui) .vjs-seek-to-live-control,.video-js:not(.vjs-live) .vjs-seek-to-live-control{display:none}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge{cursor:auto}.vjs-seek-to-live-control .vjs-icon-placeholder{margin-right:.5em;color:#888}.vjs-seek-to-live-control.vjs-control.vjs-at-live-edge .vjs-icon-placeholder{color:red}.video-js .vjs-time-control{flex:none;font-size:1em;line-height:3em;min-width:2em;width:auto;padding-left:1em;padding-right:1em}.vjs-live .vjs-time-control{display:none}.video-js .vjs-current-time,.vjs-no-flex .vjs-current-time{display:none}.video-js .vjs-duration,.vjs-no-flex .vjs-duration{display:none}.vjs-time-divider{display:none;line-height:3em}.vjs-live .vjs-time-divider{display:none}.video-js .vjs-play-control{cursor:pointer}.video-js .vjs-play-control .vjs-icon-placeholder{flex:none}.vjs-text-track-display{position:absolute;bottom:3em;left:0;right:0;top:0;pointer-events:none}.video-js.vjs-user-inactive.vjs-playing .vjs-text-track-display{bottom:1em}.video-js .vjs-text-track{font-size:1.4em;text-align:center;margin-bottom:.1em}.vjs-subtitles{color:#fff}.vjs-captions{color:#fc6}.vjs-tt-cue{display:block}video::-webkit-media-text-track-display{transform:translateY(-3em)}.video-js.vjs-user-inactive.vjs-playing video::-webkit-media-text-track-display{transform:translateY(-1.5em)}.video-js .vjs-picture-in-picture-control{cursor:pointer;flex:none}.video-js .vjs-fullscreen-control{cursor:pointer;flex:none}.vjs-playback-rate .vjs-playback-rate-value,.vjs-playback-rate>.vjs-menu-button{position:absolute;top:0;left:0;width:100%;height:100%}.vjs-playback-rate .vjs-playback-rate-value{pointer-events:none;font-size:1.5em;line-height:2;text-align:center}.vjs-playback-rate .vjs-menu{width:4em;left:0}.vjs-error .vjs-error-display .vjs-modal-dialog-content{font-size:1.4em;text-align:center}.vjs-error .vjs-error-display:before{color:#fff;content:"X";font-family:Arial,Helvetica,sans-serif;font-size:4em;left:0;line-height:1;margin-top:-.5em;position:absolute;text-shadow:.05em .05em .1em #000;text-align:center;top:50%;vertical-align:middle;width:100%}.vjs-loading-spinner{display:none;position:absolute;top:50%;left:50%;margin:-25px 0 0 -25px;opacity:.85;text-align:left;border:6px solid rgba(43,51,63,.7);box-sizing:border-box;background-clip:padding-box;width:50px;height:50px;border-radius:25px;visibility:hidden}.vjs-seeking .vjs-loading-spinner,.vjs-waiting .vjs-loading-spinner{display:block;-webkit-animation:vjs-spinner-show 0s linear .3s forwards;animation:vjs-spinner-show 0s linear .3s forwards}.vjs-loading-spinner:after,.vjs-loading-spinner:before{content:"";position:absolute;margin:-6px;box-sizing:inherit;width:inherit;height:inherit;border-radius:inherit;opacity:1;border:inherit;border-color:transparent;border-top-color:#fff}.vjs-seeking .vjs-loading-spinner:after,.vjs-seeking .vjs-loading-spinner:before,.vjs-waiting .vjs-loading-spinner:after,.vjs-waiting .vjs-loading-spinner:before{-webkit-animation:vjs-spinner-spin 1.1s cubic-bezier(.6,.2,0,.8) infinite,vjs-spinner-fade 1.1s linear infinite;animation:vjs-spinner-spin 1.1s cubic-bezier(.6,.2,0,.8) infinite,vjs-spinner-fade 1.1s linear infinite}.vjs-seeking .vjs-loading-spinner:before,.vjs-waiting .vjs-loading-spinner:before{border-top-color:#fff}.vjs-seeking .vjs-loading-spinner:after,.vjs-waiting .vjs-loading-spinner:after{border-top-color:#fff;-webkit-animation-delay:.44s;animation-delay:.44s}@keyframes vjs-spinner-show{to{visibility:visible}}@-webkit-keyframes vjs-spinner-show{to{visibility:visible}}@keyframes vjs-spinner-spin{100%{transform:rotate(360deg)}}@-webkit-keyframes vjs-spinner-spin{100%{-webkit-transform:rotate(360deg)}}@keyframes vjs-spinner-fade{0%{border-top-color:#73859f}20%{border-top-color:#73859f}35%{border-top-color:#fff}60%{border-top-color:#73859f}100%{border-top-color:#73859f}}@-webkit-keyframes vjs-spinner-fade{0%{border-top-color:#73859f}20%{border-top-color:#73859f}35%{border-top-color:#fff}60%{border-top-color:#73859f}100%{border-top-color:#73859f}}.vjs-chapters-button .vjs-menu ul{width:24em}.video-js .vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder{vertical-align:middle;display:inline-block;margin-bottom:-.1em}.video-js .vjs-subs-caps-button+.vjs-menu .vjs-captions-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before{font-family:VideoJS;content:"";font-size:1.5em;line-height:inherit}.video-js .vjs-audio-button+.vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder{vertical-align:middle;display:inline-block;margin-bottom:-.1em}.video-js .vjs-audio-button+.vjs-menu .vjs-main-desc-menu-item .vjs-menu-item-text .vjs-icon-placeholder:before{font-family:VideoJS;content:" ";font-size:1.5em;line-height:inherit}.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-audio-button,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-captions-button,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-chapters-button,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-current-time,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-descriptions-button,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-duration,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-playback-rate,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-remaining-time,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-subtitles-button,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-time-divider,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-control,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-audio-button,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-captions-button,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-chapters-button,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-current-time,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-descriptions-button,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-duration,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-playback-rate,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-remaining-time,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-subtitles-button,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-time-divider,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-control,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-audio-button,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-captions-button,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-chapters-button,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-current-time,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-descriptions-button,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-duration,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-playback-rate,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-remaining-time,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-subtitles-button,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-time-divider,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-control{display:none}.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js:not(.vjs-fullscreen).vjs-layout-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-volume-panel.vjs-volume-panel-horizontal:hover,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:active,.video-js:not(.vjs-fullscreen).vjs-layout-x-small .vjs-volume-panel.vjs-volume-panel-horizontal:hover{width:auto;width:initial}.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-subs-caps-button,.video-js:not(.vjs-fullscreen).vjs-layout-x-small:not(.vjs-live) .vjs-subs-caps-button,.video-js:not(.vjs-fullscreen).vjs-layout-x-small:not(.vjs-liveui) .vjs-subs-caps-button{display:none}.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-custom-control-spacer,.video-js:not(.vjs-fullscreen).vjs-layout-x-small.vjs-liveui .vjs-custom-control-spacer{flex:auto;display:block}.video-js:not(.vjs-fullscreen).vjs-layout-tiny.vjs-no-flex .vjs-custom-control-spacer,.video-js:not(.vjs-fullscreen).vjs-layout-x-small.vjs-liveui.vjs-no-flex .vjs-custom-control-spacer{width:auto}.video-js:not(.vjs-fullscreen).vjs-layout-tiny .vjs-progress-control,.video-js:not(.vjs-fullscreen).vjs-layout-x-small.vjs-liveui .vjs-progress-control{display:none}.vjs-modal-dialog.vjs-text-track-settings{background-color:#2b333f;background-color:rgba(43,51,63,.75);color:#fff;height:70%}.vjs-text-track-settings .vjs-modal-dialog-content{display:table}.vjs-text-track-settings .vjs-track-settings-colors,.vjs-text-track-settings .vjs-track-settings-controls,.vjs-text-track-settings .vjs-track-settings-font{display:table-cell}.vjs-text-track-settings .vjs-track-settings-controls{text-align:right;vertical-align:bottom}@supports (display:grid){.vjs-text-track-settings .vjs-modal-dialog-content{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr;padding:20px 24px 0 24px}.vjs-track-settings-controls .vjs-default-button{margin-bottom:20px}.vjs-text-track-settings .vjs-track-settings-controls{grid-column:1/-1}.vjs-layout-small .vjs-text-track-settings .vjs-modal-dialog-content,.vjs-layout-tiny .vjs-text-track-settings .vjs-modal-dialog-content,.vjs-layout-x-small .vjs-text-track-settings .vjs-modal-dialog-content{grid-template-columns:1fr}}.vjs-track-setting>select{margin-right:1em;margin-bottom:.5em}.vjs-text-track-settings fieldset{margin:5px;padding:3px;border:none}.vjs-text-track-settings fieldset span{display:inline-block}.vjs-text-track-settings fieldset span>select{max-width:7.3em}.vjs-text-track-settings legend{color:#fff;margin:0 0 5px 0}.vjs-text-track-settings .vjs-label{position:absolute;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);display:block;margin:0 0 5px 0;padding:0;border:0;height:1px;width:1px;overflow:hidden}.vjs-track-settings-controls button:active,.vjs-track-settings-controls button:focus{outline-style:solid;outline-width:medium;background-image:linear-gradient(0deg,#fff 88%,#73859f 100%)}.vjs-track-settings-controls button:hover{color:rgba(43,51,63,.75)}.vjs-track-settings-controls button{background-color:#fff;background-image:linear-gradient(-180deg,#fff 88%,#73859f 100%);color:#2b333f;cursor:pointer;border-radius:2px}.vjs-track-settings-controls .vjs-default-button{margin-right:1em}@media print{.video-js>:not(.vjs-tech):not(.vjs-poster){visibility:hidden}}.vjs-resize-manager{position:absolute;top:0;left:0;width:100%;height:100%;border:none;z-index:-1000}.js-focus-visible .video-js :focus:not(.focus-visible){outline:0;background:0 0}.video-js .vjs-menu :focus:not(:focus-visible),.video-js :focus:not(:focus-visible){outline:0;background:0 0}
0 \ No newline at end of file 2 \ No newline at end of file