:root{
  --red:#9e2b25;--red2:#c04434;--red-d:#6e1a15;
  --ink:#2b2220;--gray:#7d6b64;--line:#efdfda;--bg:#faf4f1;--card:#fff;
  --yl:#6b3fa0;--ts:#8a6412;--none:#8b949e;
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-size:15px;line-height:1.65;}
.wrap{max-width:1080px;margin:0 auto;padding:0 14px;}
a{color:var(--red2);text-decoration:none;}
a:hover{text-decoration:underline;}

/* 微信分享缩略图：移出屏幕但保持真实尺寸，供微信抓取 */
.wx-thumb{position:absolute;left:-9999px;top:-9999px;width:300px;height:300px;}

/* ===== 顶栏：logo + 全国系列导航 ===== */
.topbar{background:#fff;border-bottom:1px solid var(--line);}
.topbar-in{max-width:1080px;margin:0 auto;padding:9px 14px;display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;justify-content:space-between;}
.brand{display:flex;align-items:center;gap:9px;flex:none;text-decoration:none;}
.brand:hover{text-decoration:none;}
.brand img{width:38px;height:38px;border-radius:9px;flex:none;box-shadow:0 1px 3px rgba(0,0,0,.16);}
.brand-t{display:flex;flex-direction:column;line-height:1.3;min-width:0;}
.brand-t b{font-size:16.5px;color:var(--ink);font-weight:700;letter-spacing:.5px;}
.brand-t i{font-style:normal;font-size:11.5px;color:var(--gray);}
.provs{min-width:0;}
.provs-in{display:flex;align-items:center;gap:8px;justify-content:flex-end;}
@media(max-width:699px){
  .topbar-in{padding:8px 12px;}
  .provs-in{justify-content:flex-start;flex:1 1 100%;}
  .brand{padding:1px 0 2px;}
}
.provs-t{flex:none;font-size:13px;color:var(--gray);font-weight:600;}
.provs-l{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.provs-l::-webkit-scrollbar{display:none;}
.provs-l a{flex:none;font-size:13px;color:#6b544c;background:#f8efeb;border:1px solid #efddd5;
  border-radius:999px;padding:3px 11px;}
.provs-l a:hover{text-decoration:none;background:#f2e2db;}
.provs-l a.on{background:var(--red);border-color:var(--red);color:#fff;font-weight:600;}
.provs-more{position:relative;flex:none;}
.provs-more summary{list-style:none;cursor:pointer;font-size:12px;color:#6b544c;background:#f8efeb;
  border:1px solid #efddd5;border-radius:999px;padding:3px 11px;display:inline-flex;align-items:center;
  gap:4px;white-space:nowrap;user-select:none;}
.provs-more summary::-webkit-details-marker{display:none;}
.provs-more summary:hover{background:#f2e2db;}
.provs-more[open] summary{background:var(--red);border-color:var(--red);color:#fff;}
.provs-more .car{font-size:9px;display:inline-block;transition:transform .2s;}
.provs-more[open] .car{transform:rotate(180deg);}
.provs-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:70;background:#fff;border:1px solid var(--line);
  border-radius:12px;box-shadow:0 10px 30px rgba(110,26,21,.18);padding:12px;display:grid;
  grid-template-columns:repeat(3,1fr);gap:6px;width:240px;}
.provs-pop a{font-size:12px;color:#6b544c;background:#f8efeb;border:1px solid #efddd5;border-radius:999px;
  padding:4px 2px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.provs-pop a:hover{text-decoration:none;background:#f2e2db;}

/* ===== 版块 1：头图 ===== */
.hero{position:relative;background:var(--red-d) url("../images/banner.jpg") center/cover no-repeat;color:#fff;}
.hero::before{content:"";position:absolute;inset:0;
  background:linear-gradient(105deg,rgba(52,10,8,.94) 0%,rgba(78,16,12,.80) 44%,rgba(120,28,20,.38) 100%);}
.hero-in{position:relative;max-width:1080px;margin:0 auto;padding:50px 16px 42px;}
.kick{font-size:13.5px;letter-spacing:2px;color:#f0c1ad;margin:0 0 10px;font-weight:500;}
.hero h1{margin:0;font-size:clamp(24px,5.8vw,42px);line-height:1.32;font-weight:700;letter-spacing:1px;
  text-shadow:0 2px 14px rgba(0,0,0,.35);}
.hero h1 small{display:block;font-size:.56em;font-weight:400;letter-spacing:4px;color:#f5cdb9;margin-bottom:6px;}
.hero-sub{margin:14px 0 0;font-size:14.5px;color:#f8e3d8;max-width:640px;line-height:1.8;}
.hero-badge{display:inline-flex;gap:8px;flex-wrap:wrap;margin-top:14px;}
.hero-badge span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.26);
  border-radius:999px;padding:4px 12px;font-size:13px;color:#fdf0e8;}
.hero-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:20px;}
.hero-stats .st{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);
  border-radius:12px;padding:12px 14px;backdrop-filter:blur(3px);}
.hero-stats .n{font-size:28px;font-weight:700;color:#fff;line-height:1.15;}
.hero-stats .n small{font-size:13px;font-weight:400;color:#f3cdbb;margin-left:2px;}
.hero-stats .t{font-size:12.5px;color:#f2d4c4;margin-top:3px;line-height:1.5;}

/* ===== 版块 2：学校展示 ===== */
.sec-t{font-size:20px;margin:30px 0 4px;color:var(--ink);font-weight:700;position:relative;padding-left:11px;}
.sec-t::before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:4px;border-radius:2px;background:var(--red);}
.sec-d{margin:0 0 14px;font-size:13px;color:var(--gray);}

/* ===== 搜索与标签 ===== */
.search{position:sticky;top:0;z-index:50;background:rgba(250,244,241,.96);backdrop-filter:blur(6px);
  padding:9px 0 8px;border-bottom:1px solid var(--line);}
.search-in{max-width:1080px;margin:0 auto;padding:0 14px;}
.search-row{display:flex;gap:8px;}
.search input{flex:1;min-width:0;padding:10px 13px;border:1px solid var(--line);border-radius:9px;
  font-size:15px;background:#fff;color:var(--ink);}
.search input:focus{outline:2px solid rgba(158,43,37,.25);border-color:var(--red2);}
.tool{flex:none;padding:0 13px;border:1px solid var(--line);border-radius:9px;background:#fff;
  color:var(--red-d);font-size:13.5px;cursor:pointer;}
.tool:hover{background:#f8ece7;}
.tags{display:flex;gap:6px;overflow-x:auto;margin-top:8px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.tags::-webkit-scrollbar{display:none;}
.tags a{flex:none;font-size:13px;padding:4px 11px;border-radius:999px;border:1px solid var(--line);color:#6b544c;}
.tags a b{font-weight:700;}
.tags a:hover{text-decoration:none;}
.tags .t985{background:#fdf0ef;border-color:#f2d4d2;color:#a5322c;}
.tags .t211{background:#eaf2fc;border-color:#d3e3f7;color:#1c5ba8;}
.tags .tsyl{background:#e9f7f2;border-color:#cfe9df;color:#17795b;}
.tags .tord{background:#f1f3f6;border-color:#e2e6ec;color:#5c6b7c;}

/* ===== 分组与卡片 ===== */
.grp{margin-top:22px;scroll-margin-top:96px;}
.grp-t{font-size:16.5px;color:#fff;background:var(--red);border-radius:8px;padding:8px 12px;
  display:flex;align-items:center;gap:8px;margin:0;font-weight:600;cursor:pointer;border:none;width:100%;text-align:left;}
.grp-t em{font-style:normal;font-size:13px;opacity:.85;font-weight:400;}
.grp-t .dot{width:8px;height:8px;background:#ffd479;border-radius:50%;flex:none;}
.grp-t .caret{margin-left:auto;transition:transform .2s;font-style:normal;font-size:12px;opacity:.9;}
.grp-t[aria-expanded="false"] .caret{transform:rotate(-90deg);}
.grp-d{font-size:12.5px;color:var(--gray);margin:6px 0 0;line-height:1.6;}
.grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:11px;}
.grid[hidden]{display:none;}
.card{background:var(--card);border:1px solid var(--line);border-radius:11px;
  box-shadow:0 1px 4px rgba(110,26,21,.05);overflow:hidden;}
.card-h{display:flex;align-items:center;gap:9px;padding:12px 14px;cursor:pointer;user-select:none;}
.card-h h3{margin:0;font-size:17px;flex:1;min-width:0;letter-spacing:.3px;}
.card-h h3 a{color:var(--red-d);word-break:break-all;}
.card-h h3 a:hover{color:var(--red2);}
.card-h h3 a::after{content:"↗";font-size:12px;color:#b59d94;margin-left:4px;vertical-align:2px;}
.badges{display:flex;align-items:center;gap:5px;flex:none;}
.tag{font-size:12px;padding:2px 8px;border-radius:999px;font-weight:600;}
.tag.t985{background:#fdf0ef;color:#a5322c;}
.tag.t211{background:#eaf2fc;color:#1c5ba8;}
.tag.tsyl{background:#e9f7f2;color:#17795b;}
.tag.tord{background:#f1f3f6;color:#5c6b7c;}
.tag.tdep{background:#faf5f2;color:#7d6b64;font-weight:500;}
.arr{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;
  border-top:6px solid #a89187;transition:transform .2s;}
.card.fold .arr{transform:rotate(-90deg);}
.card-b{padding:0 14px 13px;}
.card-in{min-width:0;}
.card.fold .card-b{display:none;}
.row{display:flex;gap:10px;margin:9px 0;align-items:flex-start;}
.row .k{flex:none;width:94px;font-size:12.5px;color:var(--gray);line-height:1.45;padding-top:2px;}
.row .k em{font-style:normal;font-size:11px;opacity:.85;}
.row .v{flex:1;min-width:0;font-size:13.5px;}
.rk{display:inline-block;background:#faf0ee;color:#a5322c;border-radius:6px;padding:2px 8px;
  font-size:13px;margin:0 6px 5px 0;font-weight:600;}
.rk.syl{background:#e9f7f2;color:#17795b;}
.rk.ap{background:#fdf0ef;color:#a5322c;}
.rk.aa{background:#eaf2fc;color:#1c5ba8;}
.rk.am{background:#f4efe9;color:#5d5248;}
.rk.gj{background:#fdf6e8;color:var(--ts);}
.rk.yl{background:#f2ecfb;color:var(--yl);}
.rk.ts{background:#fdf0ee;color:#a04a3e;}
.rk.none{background:#f1f3f6;color:var(--none);font-weight:500;}
.rk b{font-size:14.5px;margin:0 1px;}
.cnt{font-style:normal;font-size:12.5px;color:var(--gray);margin-left:4px;}
.lv .tg{display:inline-block;background:#fbf1ee;border:1px solid #f0dcd5;border-radius:6px;
  padding:2px 9px;font-size:13px;color:var(--red-d);font-weight:600;margin-bottom:4px;}
.lv .dep{display:block;font-size:13.5px;color:#43352f;}
.nl{display:block;background:#fbf7f4;border:1px solid #f0e3dc;border-radius:8px;
  padding:7px 10px;font-size:12.8px;line-height:1.95;color:#43352f;margin-top:5px;word-break:break-all;}
.note{font-size:13px;color:#544640;line-height:1.75;}
.ylnote{margin:6px 0 0;font-size:12px;color:#8a6412;background:#fdf6e8;border-radius:7px;
  padding:6px 9px;line-height:1.7;}

/* ===== 版块 3：数据来源 ===== */
.src{margin-top:34px;background:#4a100d;color:#ecd2c9;}
.src .wrap{padding:26px 14px 34px;}
.src h2{font-size:17px;color:#fff;margin:0 0 12px;font-weight:600;}
.src p{font-size:13px;line-height:2.0;margin:0;color:#e0bfb2;word-break:break-all;}
.src .copy{margin-top:16px;font-size:12px;color:#b98f81;text-align:center;}

/* ===== 移动端自适应 ===== */
@media(min-width:700px){
  .hero-stats{grid-template-columns:repeat(4,1fr);}
  .grid{grid-template-columns:repeat(2,1fr);gap:13px;}
  .row .k{width:112px;font-size:13.5px;}
  body{font-size:16px;}
  .hero-in{padding:64px 16px 52px;}
}
@media(min-width:980px){
  .grid{grid-template-columns:repeat(2,1fr);}
}
