@charset "utf-8";
/* 想着升学网 手机版样式
   与电脑版分开两份，公共颜色尺寸在下面 :root 里各写一遍，改主题两边都要动 */

:root {
    --ink: #0E2A47;
    --ink2: #173E63;
    --org: #F2600C;
    --org2: #FF7A18;
    --orgbg: #FFF3E9;
    --green: #0E8F5B;
    --blue: #2B6CB0;
    --txt: #1B2430;
    --sub: #7A8592;
    --line: #EEF1F5;
    --bg: #F5F7FA;
}

* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
html, body { margin: 0; padding: 0; }
body {
    font: 14px/1.65 -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
    color: var(--txt);
    background: var(--bg);
    -webkit-text-size-adjust: 100%;
}
h1, h2, h3, h4 { margin: 0; font-weight: 700; }
p, ul, ol, dl, dd, figure { margin: 0; padding: 0; }
ul, ol { list-style: none; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; border: 0; }
table { border-collapse: collapse; }
input, select, button, textarea { font-family: inherit; font-size: 14px; color: inherit; border: 0; outline: 0; background: none; }
button { cursor: pointer; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* 页头 */
.m-head { position: sticky; top: 0; z-index: 40; background: #fff; box-shadow: 0 1px 0 #E6EAF0; padding: 9px 12px 0; }
.m-head-top { display: flex; align-items: center; gap: 10px; }
.m-logo { flex: none; display: flex; align-items: center; }
.m-logo img { height: 26px; width: auto; }
.m-search { flex: 1; display: flex; align-items: center; height: 34px; background: #F4F6F9; border: 1px solid #E9EDF2; border-radius: 17px; padding: 0 4px 0 12px; min-width: 0; }
.m-search input { flex: 1; min-width: 0; height: 32px; font-size: 13px; background: none; }
.m-search button { flex: none; height: 26px; padding: 0 12px; border-radius: 13px; background: var(--org); color: #fff; font-size: 12px; font-weight: 700; }
.m-nav { display: flex; gap: 4px; overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 9px 0; margin: 0 -12px; padding-left: 12px; padding-right: 12px; }
.m-nav::-webkit-scrollbar { display: none; }
.m-nav a { flex: none; font-size: 13px; color: #5B6672; background: #F4F6F9; border-radius: 14px; padding: 5px 12px; }
.m-nav a.cur { color: var(--org); background: var(--orgbg); font-weight: 700; }

/* 内页头部（列表、正文共用） */
.m-head2 { position: sticky; top: 0; z-index: 40; display: flex; align-items: center; gap: 8px; height: 46px; padding: 0 12px; background: #fff; box-shadow: 0 1px 0 #E6EAF0; }
.m-head2-back { width: 26px; height: 26px; display: grid; place-items: center; font-size: 22px; color: var(--ink); line-height: 1; }
.m-head2-title { flex: 1; min-width: 0; font-size: 16px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.m-head2-title s { display: block; text-decoration: none; font-size: 10px; font-weight: 400; color: var(--sub); line-height: 1.2; }
.m-head2-home { flex: none; font-size: 12px; color: #5B6672; border: 1px solid var(--line); border-radius: 13px; padding: 4px 10px; }

.m-crumb { background: #fff; padding: 8px 12px; font-size: 12px; color: var(--sub); border-bottom: 1px solid var(--line); }
.m-crumb span { color: #C3CCD6; margin: 0 4px; }
.m-crumb em { font-style: normal; color: #40505F; }

.m-main { padding-bottom: 12px; }
.m-main > section, .m-main > article, .m-main > div { margin: 10px 10px 12px; }

/* 卡片外壳 */
.m-box { background: #fff; border-radius: 12px; padding: 0 12px 10px; overflow: hidden; }
.m-box-tit { display: flex; align-items: center; gap: 8px; padding: 13px 0 9px; border-bottom: 1px solid #F0F2F5; }
.m-box-tit h2 { font-size: 16px; }
.m-box-tit h2:before { content: ""; display: inline-block; width: 3px; height: 14px; background: var(--org); border-radius: 2px; margin-right: 8px; vertical-align: -1px; }
.m-box-more { margin-left: auto; font-size: 12px; color: var(--sub); }
.m-box-ad { margin-left: auto; font-size: 10px; color: #8B95A1; background: #F0F2F5; border-radius: 3px; padding: 2px 6px; }
.m-empty { padding: 18px 2px; font-size: 12px; color: #9AA6B3; line-height: 1.8; text-align: center; }
.m-empty a { color: var(--org); }

/* 顶部 banner 与轮播：图片等比完整显示，不裁切 */
.m-mbanner a { display: block; margin: 10px 10px 0; border-radius: 10px; overflow: hidden; position: relative; background: #F2F5F9; }
.m-mbanner img { width: 100%; height: auto; }
.m-mbanner .ad { position: absolute; left: 0; top: 0; background: #E4EAF1; color: #7A8794; font-size: 9px; padding: 2px 6px; border-radius: 0 0 6px 0; }
.m-slide { position: relative; background: #fff; border-radius: 12px; overflow: hidden; }
.m-slide-item { display: none; }
.m-slide-item.on { display: block; }
.m-slide-item img { width: 100%; height: 168px; object-fit: cover; }
.m-slide-item span { position: absolute; left: 0; right: 0; bottom: 0; padding: 22px 12px 10px; font-size: 13px; line-height: 1.5; color: #fff; background: linear-gradient(180deg, rgba(14, 42, 71, 0), rgba(14, 42, 71, .72)); }
.m-slide-dots { position: absolute; right: 10px; bottom: 10px; display: flex; gap: 5px; z-index: 3; }
.m-slide-dot { width: 6px; height: 6px; border-radius: 50%; background: rgba(255, 255, 255, .55); }
.m-slide-dot.on { background: #fff; width: 15px; border-radius: 3px; }

/* 金刚区，八个入口 */
.m-entry { display: grid; grid-template-columns: repeat(4, 1fr); background: #fff; border-radius: 12px; padding: 12px 2px 2px; }
.m-entry-item { text-align: center; padding-bottom: 12px; }
.m-entry-ico { display: grid; place-items: center; width: 40px; height: 40px; margin: 0 auto 5px; border-radius: 12px; background: #F2F5F9; color: var(--ink); font-size: 15px; font-weight: 700; }
.m-entry-item em { display: block; font-style: normal; font-size: 12px; color: #33404E; }
.m-entry-item i { display: block; font-style: normal; font-size: 10px; color: #9AA6B3; margin-top: 1px; }
.m-ico-fs { background: var(--orgbg); color: var(--org); }
.m-ico-zy { background: #E9F6EF; color: var(--green); }
.m-ico-st { background: #EAF1F9; color: var(--blue); }
.m-ti-yx { background: #EAF1F9; color: var(--blue); }
.m-ti-pm { background: var(--orgbg); color: var(--org); }
.m-ti-xf { background: #E9F6EF; color: var(--green); }

/* 报考测算 */
.m-calc { background: #fff; border-radius: 12px; padding: 14px 12px; }
.m-calc h2 { font-size: 17px; }
.m-calc .sub { font-size: 11px; color: var(--sub); margin: 4px 0 12px; }
.m-calc .fg { margin-bottom: 11px; }
.m-calc label { display: block; font-size: 12px; color: var(--sub); margin-bottom: 5px; }
.m-calc select, .m-calc input { width: 100%; height: 40px; background: #fff; border: 1px solid var(--line); border-radius: 6px; padding: 0 10px; font-size: 14px; }
.m-calc select:focus, .m-calc input:focus { border-color: var(--org); box-shadow: 0 0 0 2px rgba(242, 96, 12, .1); }
.m-calc .two { display: flex; gap: 10px; }
.m-calc .two > div { flex: 1; }
.m-calc button { width: 100%; height: 44px; margin-top: 2px; border-radius: 22px; background: linear-gradient(100deg, var(--org2), #E85300); color: #fff; font-size: 16px; font-weight: 700; box-shadow: 0 5px 14px rgba(232, 83, 0, .22); }

/* 广告图横滑与两列 */
.m-jgtj { padding-bottom: 12px; }
.m-jgtj-scroll { display: flex; gap: 10px; overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 12px -12px 0; padding: 0 12px 4px; }
.m-jgtj-scroll::-webkit-scrollbar { display: none; }
.m-jgtj-scroll a { flex: none; width: 148px; background: #fff; border: 1px solid var(--line); border-radius: 9px; overflow: hidden; }
.m-jgtj-scroll img { width: 148px; height: 88px; object-fit: cover; }
.m-jgtj-scroll strong { display: block; font-size: 13px; padding: 8px 9px 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.m-jgtj-scroll em { display: block; font-style: normal; font-size: 11px; color: var(--sub); padding: 3px 9px 9px; height: 30px; overflow: hidden; }
.m-adgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.m-adgrid a { position: relative; display: block; background: #F2F5F9; border: 1px solid #E3E9F0; border-radius: 10px; overflow: hidden; }
.m-adgrid img { width: 100%; height: auto; }
.m-adgrid strong { display: block; font-size: 13px; padding: 8px 9px 0; }
.m-adgrid em { display: block; font-style: normal; font-size: 11px; color: var(--sub); padding: 2px 9px 9px; line-height: 1.6; }
.m-adgrid .ad { position: absolute; left: 0; top: 0; background: #E4EAF1; color: #7A8794; font-size: 9px; padding: 2px 6px; border-radius: 0 0 6px 0; z-index: 2; }

/* 推荐院校横滑 */
.m-yx { padding-bottom: 12px; }
.m-yx-scroll { display: flex; gap: 10px; overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 12px -12px 0; padding: 0 12px 4px; }
.m-yx-scroll::-webkit-scrollbar { display: none; }
.m-yx-scroll a { flex: none; width: 138px; border: 1px solid var(--line); border-radius: 9px; overflow: hidden; background: #fff; }
.m-yx-scroll img { width: 138px; height: 84px; object-fit: cover; }
.m-yx-scroll strong { display: block; font-size: 13px; padding: 8px 8px 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.m-yx-scroll em { display: block; font-style: normal; font-size: 11px; color: var(--sub); padding: 3px 8px 0; height: 28px; overflow: hidden; }
.m-yx-ask { display: block; margin: 7px 8px 9px; height: 26px; line-height: 26px; text-align: center; border: 1px solid #F5C7A5; border-radius: 13px; font-size: 12px; color: var(--org); }

/* 资讯列表：缩略图在左，标题在右，时间到秒 */
.m-list li { border-bottom: 1px solid #F3F5F8; }
.m-list li:last-child { border-bottom: 0; }
.m-list a { display: flex; gap: 10px; align-items: flex-start; padding: 12px 0; }
.m-list-txt { flex: 1; min-width: 0; }
.m-list-txt h2, .m-list-txt h3 { font-size: 15px; line-height: 1.45; font-weight: 700; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.m-list-txt p { margin-top: 6px; font-size: 11px; color: #9AA6B3; }
.m-list-txt p em { font-style: normal; color: var(--org); margin-right: 8px; }
.m-list-txt time { font-variant-numeric: tabular-nums; }
.m-list-img { width: 104px; height: 74px; border-radius: 7px; overflow: hidden; flex: none; background: #E7EDF4; }
.m-list-img img { width: 100%; height: 100%; object-fit: cover; }

/* 纯文字列表 */
.m-txt-list li { display: flex; gap: 10px; align-items: baseline; padding: 9px 0; border-bottom: 1px dashed #F0F2F5; }
.m-txt-list li:last-child { border-bottom: 0; }
.m-txt-list a { flex: 1; min-width: 0; font-size: 14px; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.m-txt-list time { flex: none; font-size: 11px; color: #9AA6B3; font-variant-numeric: tabular-nums; }

/* 栏目切换 */
.m-cats { display: flex; gap: 8px; overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 10px 12px; margin: 0 -12px; border-bottom: 1px solid var(--line); }
.m-cats::-webkit-scrollbar { display: none; }
.m-cats button { flex: none; height: 28px; padding: 0 12px; border-radius: 14px; background: #F4F6F9; border: 1px solid #E9EDF2; font-size: 13px; color: #40505F; }
.m-cats button.on { background: var(--orgbg); border-color: #F6BC85; color: var(--org); font-weight: 700; }

/* 各省 */
.m-province { display: flex; flex-wrap: wrap; gap: 6px; padding-top: 10px; }
.m-province a { width: calc(25% - 5px); text-align: center; font-size: 12px; color: #5B6672; background: #F6F8FA; border-radius: 5px; padding: 7px 0; }

/* 服务两列 */
.m-cta { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 12px; }
.m-cta-item { background: linear-gradient(160deg, #FFF7F0, #FFEEDC); border: 1px solid #F7DCC0; border-radius: 10px; padding: 12px; }
.m-cta-item strong { font-size: 14px; color: #8A3C00; }
.m-cta-item p { font-size: 11px; color: #A4551A; line-height: 1.7; margin: 5px 0 9px; min-height: 30px; }
.m-cta-item a { display: block; height: 30px; line-height: 30px; text-align: center; border-radius: 15px; background: var(--org); color: #fff; font-size: 13px; }
.m-cta-item2 { background: #F8FAFC; border-color: #E6EAF0; }
.m-cta-item2 strong { color: var(--ink); }
.m-cta-item2 p { color: var(--sub); }
.m-cta-item2 a { background: #fff; border: 1px solid #D8E0EA; color: var(--ink2); line-height: 28px; }

/* 常见问题 */
.m-faq { padding-top: 4px; }
.m-faq-item { border-bottom: 1px solid #F3F5F8; padding: 11px 0; }
.m-faq-item:last-child { border-bottom: 0; }
.m-faq dt { font-size: 14px; font-weight: 700; padding-left: 18px; position: relative; }
.m-faq dt:before { content: "?"; position: absolute; left: 0; top: 2px; width: 14px; height: 14px; line-height: 14px; text-align: center; font-size: 10px; color: var(--org); background: var(--orgbg); border-radius: 50%; }
.m-faq dd { font-size: 12px; color: #5A6672; line-height: 1.85; margin: 6px 0 0 18px; }

/* 资料包 */
.m-kit { background: linear-gradient(100deg, #FFF6EE, #FFEAD8); border: 1px solid #F7D9BD; border-radius: 12px; padding: 14px; }
.m-kit h2 { font-size: 16px; color: #8A3C00; }
.m-kit ul { margin: 8px 0 10px; }
.m-kit li { font-size: 12px; color: #7A4415; padding: 3px 0 3px 14px; position:relative; line-height: 1.7; }
.m-kit li:before { content: ""; position: absolute; left: 0; top: 9px; width: 6px; height: 6px; border-radius: 2px; background: var(--org); }
.m-kit input { width: 100%; height: 40px; background: #fff; border: 1px solid #EFCFAE !important; border-radius: 6px; padding: 0 12px; font-size: 14px; }
.m-kit button { width: 100%; height: 40px; margin-top: 8px; border-radius: 20px; background: linear-gradient(100deg, var(--org2), #E85300); color: #fff; font-size: 15px; font-weight: 700; }
.m-kit .tip { font-size: 11px; color: #B0764A; margin-top: 7px; text-align: center; min-height: 16px; }
.m-kit .tip.err { color: #D9482B; }
.m-kit .tip.ok { color: var(--green); }

/* 分页 */
.m-pager { padding: 12px 0 4px; }
.m-pager .pager { background: none; border: 0; padding: 0; flex-wrap: wrap; gap: 6px; }
.m-pager .pager a, .m-pager .pager .cur { min-width: 30px; height: 30px; line-height: 28px; font-size: 12px; padding: 0 8px; }
.m-pager .pager span { width: 100%; margin: 4px 0 0; text-align: center; }

/* 文章正文 */
.m-art { padding-bottom: 14px; }
.m-art-head { padding-top: 14px; }
.m-art-head h1 { font-size: 20px; line-height: 1.5; }
.m-art-meta { display: flex; flex-wrap: wrap; gap: 3px 12px; margin-top: 10px; font-size: 12px; color: #9AA6B3; }
.m-art-meta em { font-style: normal; color: var(--org); }
.m-art-meta b { font-weight: 400; color: var(--ink2); }
.m-art-meta time { font-variant-numeric: tabular-nums; }
.m-share { display: flex; align-items: center; gap: 6px; margin-top: 10px; padding-top: 10px; border-top: 1px solid #F0F2F5; position: relative; }
.m-share-tit { font-size: 11px; color: #9AA6B3; }
.m-share-btn { font-size: 11px; color: #5B6672; border: 1px solid var(--line); border-radius: 11px; padding: 2px 9px; }
.m-share-tip { position: absolute; right: 0; top: 34px; background: var(--ink); color: #fff; font-size: 11px; padding: 5px 9px; border-radius: 4px; display: none; white-space: nowrap; }
.m-share-tip.on { display: block; }

.m-art-content { padding-top: 14px; font-size: 16px; line-height: 1.95; color: #28313C; }
.m-art-content > *:first-child { margin-top: 0; }
.m-art-content p { margin: 0 0 13px; }
.m-art-content h2, .m-art-content h3, .m-art-content h4 { margin: 20px 0 10px; font-size: 17px; line-height: 1.5; }
.m-art-content img { width: 100% !important; height: auto !important; border-radius: 8px; margin: 4px 0 12px; }
.m-art-content table { display: block; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; font-size: 13px; margin: 0 0 12px; }
.m-art-content table td, .m-art-content table th { border: 1px solid #EDF0F4 !important; padding: 8px 10px !important; white-space: nowrap; text-align: center; line-height: 1.6; }
.m-art-content table th { background: #F7F9FC !important; color: #5B6672; font-weight: 400; }
.m-art-content ul, .m-art-content ol { padding-left: 20px; margin: 0 0 13px; list-style: disc; }
.m-art-content ol { list-style: decimal; }
.m-art-content a { color: var(--blue); text-decoration: underline; }
.m-art-content strong { color: var(--ink); }
.m-art-content blockquote { margin: 0 0 13px; padding: 10px 12px; background: #F7F9FC; border-left: 3px solid var(--org); border-radius: 0 6px 6px 0; font-size: 14px; color: #39434F; line-height: 1.85; }

.m-art-note { margin-top: 14px; padding-top: 12px; border-top: 1px solid #F0F2F5; font-size: 11px; color: #9AA6B3; line-height: 1.9; }
.m-art-sibling { margin-top: 14px; }
.m-art-sibling > div { background: #FAFBFC; border: 1px solid var(--line); border-radius: 8px; padding: 10px 12px; font-size: 13px; }
.m-art-sibling > div + div { margin-top: 8px; }
.m-art-sibling span { display: block; font-size: 11px; color: #9AA6B3; margin-bottom: 3px; }
.m-art-sibling a { line-height: 1.55; color: #40505F; }
.m-art-sibling em { font-style: normal; color: #A9B3BE; }

.m-lead { margin-top: 14px; background: #FAFBFC; border: 1px solid var(--line); border-radius: 10px; padding: 12px; }
.m-lead-tit strong { font-size: 15px; }
.m-lead-tit span { display: block; font-size: 11px; color: var(--sub); margin: 3px 0 10px; }
.m-lead-row { display: flex; align-items: center; gap: 8px; margin-bottom: 9px; }
.m-lead-row label { width: 38px; flex: none; font-size: 13px; color: var(--sub); }
.m-lead-row input { flex: 1; height: 36px; background: #fff; border: 1px solid var(--line) !important; border-radius: 6px; padding: 0 10px; font-size: 14px; }
.m-lead-form > button { width: 100%; height: 38px; border-radius: 19px; background: var(--org); color: #fff; font-size: 14px; font-weight: 700; }
.m-lead-tip { font-size: 12px; min-height: 17px; margin-top: 6px; color: var(--sub); }
.m-lead-tip.err { color: #D9482B; }
.m-lead-tip.ok { color: var(--green); }
.m-gzh { margin-top: 14px; text-align: center; }
.m-gzh img { width: 118px; height: 118px; margin: 0 auto 6px; }
.m-gzh p { font-size: 11px; color: var(--sub); }

.m-news-list li { border-bottom: 1px solid #F3F5F8; }
.m-news-list li:last-child { border-bottom: 0; }
.m-news-list a { display: flex; gap: 10px; padding: 11px 0; }
.m-nl-thumb { width: 96px; height: 70px; border-radius: 6px; overflow: hidden; flex: none; background: #E7EDF4; }
.m-nl-thumb img { width: 100%; height: 100%; object-fit: cover; }
.m-nl-body { flex: 1; min-width: 0; }
.m-nl-body strong { display: block; font-size: 14px; font-weight: 400; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.m-nl-body time { display: block; font-size: 11px; color: #9AA6B3; margin-top: 6px; font-variant-numeric: tabular-nums; }

/* 列表页头部 */
.m-cate-head { padding: 14px 12px; }
.m-cate-head h1 { font-size: 19px; }
.m-cate-head h1:before { content: ""; display: inline-block; width: 3.5px; height: 15px; background: var(--org); border-radius: 2px; margin-right: 8px; vertical-align: -2px; }
.m-cate-head p { margin-top: 9px; font-size: 12px; color: #5B6672; line-height: 1.85; }
.m-cate-head .num { margin-top: 7px; font-size: 11px; color: #9AA6B3; }
.m-cate-head .num em { font-style: normal; color: var(--org); font-weight: 700; }

/* 页脚 */
.m-foot { background: #EEF2F7; border-top: 1px solid #E1E7EE; color: #6B7784; font-size: 11px; padding: 14px 12px 20px; text-align: center; line-height: 1.9; }
.m-foot-link { display: flex; justify-content: center; flex-wrap: wrap; gap: 4px 14px; margin-bottom: 8px; }
.m-foot-link a { color: var(--ink2); font-size: 12px; }
.m-foot-copy { color: #6B7784; }
.m-foot-icp a { color: #6B7784; }
.m-foot-declare { margin-top: 6px; color: #8B98A6; }
.m-search2 { display: flex; gap: 8px; padding: 10px 12px; background: #fff; border-bottom: 1px solid var(--line); }
.m-search2 input { flex: 1; min-width: 0; height: 36px; background: #F4F6F9; border: 1px solid #E9EDF2; border-radius: 18px; padding: 0 14px; font-size: 14px; }
.m-search2 input:focus { border-color: var(--org); background: #fff; }
.m-search2 button { flex: none; width: 68px; height: 36px; border-radius: 18px; background: var(--org); color: #fff; font-size: 14px; font-weight: 700; }

/* 底部咨询条、弹窗、回顶 */
.m-fixbar { position: fixed; left: 0; right: 0; bottom: 56px; z-index: 44; display: flex; gap: 10px; padding: 8px 12px calc(8px + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid #E6EAF0; }
.m-fixbar-btn { flex: 1; height: 38px; line-height: 38px; text-align: center; border-radius: 19px; font-size: 14px; font-weight: 700; }
.m-fixbar-wx { background: linear-gradient(100deg, var(--org2), #E85300); color: #fff; }
.m-fixbar-tel { background: #fff; border: 1px solid var(--line); color: var(--ink); }
.m-fixbar-holder { height: 104px; }
.m-toast { position: fixed; left: 50%; bottom: 170px; transform: translateX(-50%); z-index: 60; background: rgba(14, 42, 71, .9); color: #fff; font-size: 12px; padding: 9px 14px; border-radius: 16px; display: none; white-space: nowrap; }
.m-toast.on { display: block; }
.m-modal { position: fixed; inset: 0; z-index: 70; background: rgba(6, 20, 36, .55); display: none; align-items: flex-end; }
.m-modal.on { display: flex; }
.m-modal-box { width: 100%; background: #fff; border-radius: 16px 16px 0 0; padding: 18px 16px calc(20px + env(safe-area-inset-bottom)); text-align: center; }
.m-modal-box h3 { font-size: 17px; }
.m-modal-box p { font-size: 12px; color: var(--sub); margin: 6px 0 12px; }
.m-modal-num { font-size: 22px; font-weight: 700; color: var(--org); letter-spacing: 1px; margin-bottom: 14px; }
.m-modal-btn { width: 100%; height: 44px; border-radius: 22px; background: linear-gradient(100deg, var(--org2), #E85300); color: #fff; font-size: 16px; font-weight: 700; }
.m-modal-close { display: block; font-size: 22px; color: #9AA6B3; line-height: 1; margin-bottom: 6px; }
.m-backtop { position: fixed; right: 10px; bottom: 168px; z-index: 43; width: 38px; height: 38px; line-height: 36px; text-align: center; background: #fff; border: 1px solid var(--line); border-radius: 50%; color: var(--sub); font-size: 16px; display: none; }

/* 底部主导航 */
.m-tabbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 45; display: flex; background: #fff; border-top: 1px solid #E6EAF0; padding-bottom: env(safe-area-inset-bottom); }
.m-tabbar a { flex: 1; padding: 5px 0 6px; text-align: center; font-size: 10px; color: #8B96A3; }
.m-tabbar a.cur { color: var(--org); font-weight: 700; }
.m-tabbar a i { display: block; font-style: normal; font-size: 17px; line-height: 22px; height: 22px; }
.m-tabbar a.mid i { width: 34px; height: 34px; line-height: 34px; margin: -14px auto 1px; border-radius: 50%; background: linear-gradient(100deg, var(--org2), #E85300); color: #fff; font-size: 15px; box-shadow: 0 4px 12px rgba(232, 83, 0, .32), 0 0 0 4px #fff; }
.m-tabbar a.mid { color: var(--org); }

/* 旧版页面兜底 */
.m-header { position: sticky; top: 0; z-index: 40; display: flex; align-items: center; gap: 8px; height: 46px; padding: 0 12px; background: #fff; box-shadow: 0 1px 0 #E6EAF0; }
.m-header-back { width: 26px; height: 26px; display: grid; place-items: center; font-size: 22px; color: var(--ink); }
.m-header-title { flex: 1; font-size: 16px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.m-header-home { font-size: 12px; color: #5B6672; border: 1px solid var(--line); border-radius: 13px; padding: 4px 10px; }
.m-breadcrumb { background: #fff; padding: 8px 12px; font-size: 12px; color: var(--sub); border-bottom: 1px solid var(--line); }
.m-intro { margin: 10px; background: #fff; border-radius: 12px; padding: 14px; }
.m-intro h1 { font-size: 19px; line-height: 1.5; }
.m-intro-content { font-size: 15px; line-height: 1.9; color: #28313C; margin-top: 10px; }
.m-intro-content p { margin: 0 0 12px; }
.m-intro-content img { width: 100%; height: auto; border-radius: 8px; }

/* 旧版列表页残留类名，保证不裸奔 */
.wrap { max-width: 640px; margin: 0 auto; }
.listleft { float: left; }
.righttext { overflow: hidden; }
.clearfix:after { content: ""; display: block; clear: both; }
.articletext { font-size: 16px; line-height: 1.95; }
.articletime { font-size: 12px; color: #9AA6B3; }
