/* ========== 全局重置 reset ========== */
html,body,h1,h2,h3,h4,h5,h6,div,dl,dt,dd,ul,ol,li,p,blockquote,pre,hr,figure,table,caption,th,td,form,fieldset,legend,input,button,textarea,menu{margin:0;padding:0}

/* 语义标签块级显示 */
header,footer,section,article,aside,nav,address,figure,figcaption,menu,details{display:block}
table{border-collapse:collapse;border-spacing:0}
caption,th{text-align:left;font-weight:normal}
html,body,fieldset,img,iframe,abbr{border:0}
i,cite,em,var,address,dfn{font-style:normal}
[hidefocus],summary,input:focus{outline:0}
li{list-style:none}
h1,h2,h3,h4,h5,h6,small{font-size:100%}
sup,sub{font-size:83%}
pre,code,kbd,samp{font-family:inherit}
q::before,q::after{content:none}
textarea,input,button{overflow:auto;margin: 0;padding: 0;border: none;outline: none;background: transparent;-webkit-appearance:none;resize:none;background:none;border:0px;-webkit-appearance: none;-moz-appearance: none;appearance: none;font: inherit;font-family: inherit;font-size: inherit;color: inherit;}
button{cursor:pointer;}
label,summary{cursor:default}
a,button{cursor:pointer}
h1,h2,h3,h4,h5,h6,em,strong,b{font-weight:bold}
del,ins,u,s,a{text-decoration:none}
/* 全局盒模型 + 基础样式 */
*{box-sizing:border-box}
*::before,*::after{box-sizing:border-box}
html,body{-webkit-tap-highlight-color:transparent;font-family:Source Han Sans,Microsoft YaHei,Arial,SimHei,Helvetica,sans-serif;font-size:18px;color:#777;}
img{vertical-align:top;max-width:100%;max-height:100%}
a{color:#777}
a:hover{color:#000}
textarea::placeholder,input::placeholder {color: #777;opacity: 1;}
/* 仅禁止非文本区域选中，保留输入框可选 */
.no-select {-webkit-user-select: none;user-select: none;}
/* ========== 通用工具类 f- 系列 ========== */
/* 清除浮动 */
.f-cb::after,.f-cbli li::after{display:block;clear:both;visibility:hidden;height:0;overflow:hidden;content:"."}
.f-cb,.f-cbli li{zoom:1}
.clear{clear:both}
/* 显示隐藏 */
.f-dn{display:none}
.f-db{display:block}
.f-ib{display:inline-block}
/* 浮动 */
.f-fl{float:left}
.f-fr{float:right}
/* 定位 */
.f-pr{position:relative !important;}
.f-oh{overflow:hidden}
/* 字体样式 */
.f-ff0{font-family:arial,宋体}
.f-ff1{font-family:"Microsoft YaHei",微软雅黑,arial,宋体}
.f-fs1{font-size:12px}
.f-fwn{font-weight:normal}
.f-fwb{font-weight:bold}
.fs14{font-size:0.78em;}
.fs16{font-size:0.89em;}
.fs18{font-size:1em;}
.fs20{font-size:1.11em;}
.fs24{font-size:1.33em;}
.fs30{font-size:1.67em;}
.fs40{font-size:2.22em;}
.fs60{font-size:3.33em;}
/* 文本对齐 */
.f-tal{text-align:left}
.f-tac{text-align:center}
.f-tar{text-align:right}
.f-taj{text-align:justify;text-justify:inter-ideograph}
.f-ti{overflow:hidden;text-indent:-30000px}
.f-ti2{text-indent:2em}
.f-lhn{line-height:normal}
/* 文本截断、换行 */
.f-wsn{white-space:nowrap}
.f-pre{white-space:pre-wrap;word-wrap:break-word;word-break:break-all}
.f-wwb{word-wrap:break-word;word-break:break-all}
.f-toe{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
/* 文本装饰 */
.f-tdu,.f-tdu:hover{text-decoration:underline}
.f-tdn,.f-tdn:hover{text-decoration:none}
/* 垂直对齐 */
.f-vam,.f-vama*{vertical-align:middle}
/* 鼠标样式 */
.f-csp{cursor:pointer}
.f-csd{cursor:default}
.f-csh{cursor:help}
.f-csm{cursor:move}
/* 隐藏滚动条 */
.f-gunlun::-webkit-scrollbar{display:none}
/* Flex 布局工具类 */
.f-fdf { display: flex; }
.f-fww{flex-wrap:wrap;/*换行*/}
.f-dflfc{display: flex;justify-content:space-between;/*左右靠两侧*/align-items :center;/*上下居中*/}
.f-dflft{display: flex;justify-content:space-between;/*左右靠两侧*/align-items :flex-start;/*上对齐*/}
.f-dflfb{display: flex;justify-content:space-between;/*左右靠两侧*/align-items :flex-end;/*下对齐*/}
.f-dflfa{display: flex;justify-content:space-between;/*左右靠两侧*/}
.f-dfcc{display: flex;justify-content:center;/*左右居中*/align-items :center;/*上下居中*/}
.f-dfct{display: flex;justify-content:center;/*左右居中*/align-items :flex-start;/*上对齐*/}
.f-dfcb{display: flex;justify-content:center;/*左右居中*/align-items :flex-end;/*下对齐*/}
.f-dfca{display: flex;justify-content:center;/*左右居中*/}
.f-dfrc{display: flex;justify-content:flex-end;/*靠右侧*/align-items :center;/*上下居中*/}
.f-dfrt{display: flex;justify-content:flex-end;/*靠右侧*/align-items :flex-start;/*上对齐*/}
.f-dfrb{display: flex;justify-content:flex-end;/*靠右侧*/align-items :flex-end;/*下对齐*/}
.f-dfra{display: flex;justify-content:flex-end;/*靠右侧*/}
.f-dflc{display: flex;align-items :center;/*上下居中*/}
.f-dflt{display: flex;align-items :flex-start;/*上对齐*/}
.f-dflb{display: flex;align-items :flex-end;/*下对齐*/}
.f-dffd1{flex-direction:row-reverse;/*水平方向右侧起点*/}
.f-dffd2{flex-direction:column;/*垂直方向上沿起点*/}
.f-dffd3{flex-direction:column-reverse;/*垂直方向下沿起点*/}

/* 外边距清零 */
.f-mt0 { margin-top: 0 !important; }
.f-mr0 { margin-right: 0 !important; }
.f-mb0 { margin-bottom: 0 !important; }
.f-ml0 { margin-left: 0 !important; }





