@charset "utf-8";

/* --- 基础重置 (Reset) --- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    box-sizing: border-box; /* 关键：统一盒模型 */
}

/* HTML5 元素显示定义 */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1.6;
    font-family: "Microsoft YaHei", "Heiti SC", tahoma, arial, "Hiragino Sans GB", sans-serif;
    -webkit-font-smoothing: antialiased; /*字体抗锯齿*/
    -moz-osx-font-smoothing: grayscale;
    background: #f6f6f6;
    color: #333;
    font-size: 14px;
}

ol, ul, li {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* --- 链接与图片 --- */
a {
    text-decoration: none;
    color: #333;
    transition: color 0.2s ease;
    cursor: pointer;
}
a:hover {
    color: #e60012; /* 统一定义悬停色 */
}

img {
    vertical-align: middle;
    border: none;
    max-width: 100%;
    height: auto;
}

/* --- 表单元素重置 --- */
input, textarea, select, button {
    font-family: inherit;
    font-size: inherit;
    outline: none;
}
textarea {
    resize: vertical; /* 仅允许垂直拖动 */
}

/* --- 通用辅助类 (Utility Classes) --- */
.fl { float: left; }
.fr { float: right; }

/* 清除浮动 (Clearfix) */
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {
    *zoom: 1; /* IE6/7 兼容 */
}

/* 显示/隐藏 */
.hide { display: none !important; }
.show { display: block !important; }

/* 文本对齐 */
.text-left { text-align: left; }
.text-center { text-align: center; }
.text-right { text-align: right; }

/* 颜色辅助 */
.text-red { color: #e60012 !important; }
.text-gray { color: #999 !important; }
.text-blue { color: #0091e6 !important; }

/* 单行文字截断 (超长显示省略号) */
.text-ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* 间距辅助 (Margin/Padding) */
.mt-10 { margin-top: 10px; }
.mt-15 { margin-top: 15px; }
.mt-20 { margin-top: 20px; }
.mb-10 { margin-bottom: 10px; }
.mb-15 { margin-bottom: 15px; }
.mr-10 { margin-right: 10px; }
.ml-10 { margin-left: 10px; }
.p-10 { padding: 10px; }
.p-20 { padding: 20px; }

/* 背景色辅助 */
.bg-white { background-color: #fff; }
.bg-light { background-color: #f9f9f9; }