/* ══ IE / 兼容内核最小可用框架（2026-11-03，第三轮：按 IE 实测收口）══════════════
   只在 html.ie-mode 下生效，现代浏览器零影响。实测过的三处硬伤见各段注释。 */

/* overflow-x 单独给 <html>；字体只给 body。
   ⚠️ 绝不能把 font 写进 html 的规则里：页面靠 head 里一段脚本注入
   html{font-size:73.28px} 做 rem 基准，一旦被覆盖，全站 rem 缩成 16px 基准
   （实测 banner 6rem 会从 440px 掉到 96px）。 */
/* 只裁横向溢出。字号、颜色一律不覆盖：原样式（含 head 注入的 rem 基准）在 IE11 里
   本来就能正常算，多写一层反而和 Chrome 不一致（用户 2026-11-03 明确要求一致）。 */
html.ie-mode,
html.ie-mode body { overflow-x: hidden; }

/* 1) .nav_sec 的 position:sticky 在 IE 里不成立，顺带丢掉了它作为包含块的作用：
      .top_bg 的 img{height:100%} 会按整页高算（实测 5554px 盖住整页），
      .nav_ori 的 top:100% 会把导航推到页面最底部。补 position:relative 即可。 */
html.ie-mode .nav_sec { position: relative; }
html.ie-mode .top_bg { display: none; }
html.ie-mode .nav_bg { display: none; }
html.ie-mode .nav_ori { background: #2f4aa0; }

/* 2) 两列并排：IE11 的 flex + 百分比宽度会算错，改浮动（仍是两列，不是硬拍成一列） */
html.ie-mode .flexspace,
html.ie-mode .flexwarp { display: block; }
html.ie-mode .hl-row:after { content: ""; display: block; clear: both; }
html.ie-mode .hl-col { float: left; width: 48%; display: block; }
/* 每行第二个右浮：现代版靠 justify-content:space-between 让两列分居两端，
   float 默认都靠左，两列之间就没缝（"更多 →" 会贴着右列标题）。 */
html.ie-mode .hl-col:nth-child(2n) { float: right; }
html.ie-mode .hl-col .hl-body { display: block; }
html.ie-mode .hl-col .hl-body > .list_side { display: block; width: 100%; }

/* 3) 快捷通道格子：aspect-ratio 撑正方形在 IE 里高度是 0，用 padding-bottom 百分比补。
      容器 font-size:0 是为了消掉 inline-block 之间的空白字符——不去掉的话
      3×30% + 3% 间距会差几像素，格子被挤成 2 列（实测过）。 */
html.ie-mode .enter_box .list_side.track { font-size: 0; }
html.ie-mode .enter_box .enter_item.ql-item {
    display: inline-block;
    vertical-align: top;
    width: 30%;
    height: 0;
    padding-bottom: 30%;
    margin: 0 3% 8px 0;
    box-sizing: content-box;
}
html.ie-mode .enter_box .ql-ico { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
html.ie-mode .enter_box .ql-txt {
    /* 只补定位，字号/颜色沿用原样式 */
    position: absolute; left: 0; right: 0; bottom: 14%;
    display: block; text-align: center;
}

/* 4) 专题专栏：对齐 Chrome 的 Swiper 呈现——一行 3 张竖卡、只显示前 3 个专题
      （Chrome 是 slidesPerView=3 的轮播）。卡片高度靠"左列等高"，IE 里链条断掉，
      按原版底图比例给固定高；老样式在 Swiper 初始化前把容器 visibility:hidden 5 秒，
      这里直接可见。竖排标题 IE 只认 -ms- 前缀，居中用绝对定位 + transform
      （原版靠 flex 居中，行内块排法下 flex 居中失效）。 */
html.ie-mode .enter_box .list_side.policy .column_box {
    visibility: visible;
    animation: none;
    height: auto;
}
html.ie-mode .enter_box .list_side.policy .column_box .swiper-wrapper {
    display: block;
    font-size: 0;            /* 消 inline-block 空白缝，否则 3×32% 挤不下 */
}
html.ie-mode .enter_box .list_side.policy .topic-card {
    display: inline-block;
    vertical-align: top;
    text-align: center;
    width: 31.8%;            /* 32%×3+边距正好 100%，取整误差会把第三张挤下去 */
    height: 440px;           /* Chrome 实测 211×441，这里 32% 宽度下等观感 */
    margin: 0 2% 12px 0;
}
html.ie-mode .enter_box .list_side.policy .topic-card:nth-child(3n) { margin-right: 0; }
html.ie-mode .enter_box .list_side.policy .topic-card:nth-child(n+4) { display: none; }
html.ie-mode .enter_box .list_side.policy .topic-title {
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    /* IE 只认 -ms- 前缀的竖排；字号交给原样式（cqw 不认会落到 37.5px 兜底）。
       nowrap 必须加：IE 的 tb-rl 对自动高度的绝对定位元素会按剩余高度折列，
       四个字被折成两列（实测"信息公开"→两列各两字）。 */
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    white-space: nowrap;
}

/* 页脚二维码：自定义卡片里写的是 width:min(80px,16vw)，IE 不认 min() 整条丢弃，
      图按原始尺寸渲染直接盖住页脚文字（实测三张 ~800px 原图）。桌面端 min() 恒为
      80px（16vw≥80px），直接写死；margin-left/min(15px,2vw) 同理补固定值。 */
html.ie-mode .footer .flexalign img { width: 80px; margin-bottom: 15px; }
html.ie-mode .footer .flexalign > div { margin-left: 27px; }

/* 5) 轮播容器：Swiper 在 IE 里初始化不了，.swiper-wrapper 保持 flex 横排，
      只露出第一张（原先改成 block 会把所有 slide 竖着堆成一长条空白）。 */
html.ie-mode .banner_box,
html.ie-mode .list_banner,
html.ie-mode .scen_box { overflow: hidden; }
/* 校园风光：对齐 Chrome 的一行 4 张（slidesPerView=4、间距 20px，4×335+60=1400
   正好撑满容器），静态不滚。之前"只留第一张"会变成一张独占整行的大图。 */
html.ie-mode .scen_box .swiper-wrapper { display: block; font-size: 0; }
html.ie-mode .scen_box .swiper-slide {
    display: inline-block;
    vertical-align: top;
    width: calc((100% - 60px) / 4);
    margin: 0 20px 0 0;
}
html.ie-mode .scen_box .swiper-slide:nth-child(4n) { margin-right: 0; }
html.ie-mode .scen_box .swiper-slide:nth-child(n+5) { display: none; }
/* 极简轮播（head 脚本给 wrapper 加 rs-rot 类）：叠放 + 淡入淡出 */
html.ie-mode .rs-rot { position: relative; display: block; height: 100%; }
html.ie-mode .rs-rot > * {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    opacity: 0; transition: opacity .6s linear;
}
html.ie-mode .rs-rot > *:first-child { opacity: 1; }
html.ie-mode .rs-rot > *.rs-on { opacity: 1; }
/* IE11 不能解码 webp，站内的轮播/封面多是 webp：直接不占位，
   否则会显示破图图标、或者留下一块 358px 高的空白（要闻图位）。 */
html.ie-mode img[src$=".webp"] { display: none !important; }
/* 要闻图位：webp 图由 head 脚本回退成原图 jpg；一处都救不回来时
   脚本会给它加 rs-noimg，再由下面的规则收起，避免留一块 358px 空白 */
html.ie-mode .list_banner.rs-noimg { display: none; }

/* 6) 正文与表格 */
html.ie-mode table { border-collapse: collapse; }
html.ie-mode table, html.ie-mode th, html.ie-mode td { border: 1px solid #000; }
html.ie-mode th, html.ie-mode td { padding: 8px 10px; }
