:root{--blue:#0e4d9c;--blue2:#1565c0;--blue-d:#0a3a7a;--ink:#1c2733;--mut:#5b6b7c;--line:#e3eaf3;
--bg:#f4f7fb;--card:#ffffff;--gold:#b7791f;--cyan:#0e7d7a;--red:#b4232a;--green:#1c6b3c;
--sh-sm:0 2px 8px rgba(16,52,96,.05);--sh-md:0 6px 18px rgba(16,52,96,.08);--sh-lg:0 12px 32px rgba(16,52,96,.12)}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
font-size:15px;line-height:1.72;color:var(--ink);
background:radial-gradient(1100px 420px at 88% -120px,rgba(21,101,192,.09),transparent 62%),
radial-gradient(900px 400px at -12% 300px,rgba(14,125,122,.05),transparent 60%),var(--bg)}
a{color:var(--blue2);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;border:0}
.wrap{max-width:1200px;margin:0 auto;padding:0 16px}
.wx-thumb{position:absolute;left:-9999px;top:0;width:1px;height:1px}

/* ---- 顶栏 ---- */
.topbar{background:linear-gradient(180deg,#ffffff,#fbfdff);border-bottom:1px solid var(--line);position:relative;z-index:40;
box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 2px 10px rgba(16,52,96,.04)}
.topbar .wrap{display:flex;align-items:center;gap:10px;height:58px}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none;min-width:0}
.logo:hover{text-decoration:none}
.logo img{width:38px;height:38px;border-radius:9px;flex:none;box-shadow:0 1px 3px rgba(0,0,0,.16)}
.logo-txt{min-width:0;display:flex;flex-direction:column;line-height:1.3}
.logo-name{font-size:16.5px;font-weight:700;color:#1c1c1c;letter-spacing:.5px;white-space:nowrap}
.logo-sub{font-style:normal;font-size:11.5px;color:#8a94a3;white-space:nowrap}
.topbar .sp{flex:1}
.topnav{font-size:13.5px;color:var(--mut)}
.topnav a{color:var(--mut);margin-left:16px}
.topnav a:hover{color:var(--blue)}

/* ---- 头图 ---- */
.hero{position:relative;color:#fff;background:#123c74 url(../images/banner.jpg) center/cover no-repeat;overflow:hidden}
.hero .veil{position:absolute;inset:0;background:linear-gradient(100deg,rgba(8,34,68,.9) 0%,rgba(10,45,88,.74) 42%,rgba(12,52,102,.4) 100%)}
.hero::before{content:"";position:absolute;right:-150px;top:-170px;width:440px;height:440px;border-radius:50%;
border:46px solid rgba(255,255,255,.07);pointer-events:none}
.hero::after{content:"";position:absolute;right:60px;bottom:-190px;width:320px;height:320px;border-radius:50%;
border:2px dashed rgba(255,255,255,.16);pointer-events:none}
.hero .wrap{position:relative;padding-top:54px;padding-bottom:48px}
.kick{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4);backdrop-filter:blur(4px);
color:#eaf3ff;font-size:12.5px;padding:4px 14px;border-radius:999px;letter-spacing:1.5px}
.hero h1{font-size:clamp(26px,4.6vw,42px);line-height:1.28;font-weight:800;margin:15px 0 12px;text-shadow:0 2px 12px rgba(4,24,48,.5)}
.hero h1 .em{color:#ffd873}
.hero .sub{max-width:760px;font-size:14.5px;color:#e5eefb;text-shadow:0 1px 6px rgba(4,24,48,.5)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px;max-width:880px}
.st{position:relative;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.3);border-radius:13px;padding:13px 15px;
backdrop-filter:blur(6px);transition:transform .2s,background .2s}
.st:hover{transform:translateY(-2px);background:rgba(255,255,255,.2)}
.st::before{content:"";position:absolute;left:15px;top:0;width:26px;height:3px;border-radius:0 0 3px 3px;background:var(--ac,#ffd873)}
.st:nth-child(1){--ac:#ffd873}.st:nth-child(2){--ac:#7fd8c8}.st:nth-child(3){--ac:#9ec3ff}.st:nth-child(4){--ac:#ffb9a3}
.st b{display:block;font-size:clamp(19px,2.6vw,26px);font-weight:800;color:#fff;line-height:1.35;font-variant-numeric:tabular-nums}
.st span{font-size:12.5px;color:#d7e5f7}
.hero .note{margin-top:16px;font-size:12px;color:#c3d6ee}

/* ---- 版块 ---- */
main{padding-bottom:8px}
.sec{margin-top:36px}
.sec-h{display:flex;align-items:baseline;gap:10px;margin-bottom:15px}
.sec-no{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;border-radius:8px;
background:linear-gradient(135deg,var(--blue2),var(--blue-d));color:#fff;font-size:12.5px;font-weight:800;letter-spacing:.5px;
box-shadow:0 3px 8px rgba(14,77,156,.25);transform:translateY(3px)}
.sec-h h2{font-size:clamp(19px,2.6vw,24px);font-weight:800;color:var(--ink);letter-spacing:.3px}
.sec-h .tip{font-size:12.5px;color:var(--mut)}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px}
/* 01/02 版块采用「数据来源与口径说明」同款卡片容器，便于区分 */
.sec-card{background:var(--card);border:1px solid var(--line);border-radius:13px;padding:17px 19px 19px;box-shadow:var(--sh-sm)}
.sec-card>.sec-h{margin-bottom:12px}
/* 03 名单版块：淡蓝底板容器，白色省份分组卡浮于其上 */
.list-sec{background:linear-gradient(180deg,#f2f7fc,#fbfdff);padding-bottom:21px}

/* ---- 名词解释 ---- */
.gloss{display:grid;grid-template-columns:1fr 1fr;gap:10px}
details.gi{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:border-color .18s,box-shadow .18s}
details.gi:hover{border-color:#c3d5ec}
details.gi[open]{border-color:#bcd0ea;box-shadow:var(--sh-md)}
details.gi summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:9px;padding:13px 16px;font-weight:700;font-size:15px}
details.gi summary::-webkit-details-marker{display:none}
details.gi summary .no{flex:none;width:23px;height:23px;border-radius:7px;background:linear-gradient(135deg,#e8f0fb,#d9e8fa);color:var(--blue);
font-size:12.5px;display:inline-flex;align-items:center;justify-content:center;font-weight:800}
details.gi summary .ar{margin-left:auto;color:#9fb2c8;font-size:12px;transition:transform .18s}
details.gi[open] summary .ar{transform:rotate(90deg);color:var(--blue)}
.gi-b{padding:0 16px 14px;font-size:13.8px;color:#384a5d}
.gi-b p+p{margin-top:8px}
.gi-b b{color:var(--blue-d)}
.gi-wide{grid-column:1/-1}

/* ---- 利弊 ---- */
.libi{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lb{position:relative;border-radius:13px;padding:17px 18px 15px;border:1px solid;overflow:hidden}
.lb::before{content:"";position:absolute;left:0;top:0;right:0;height:4px}
.lb-good{background:#f4faf5;border-color:#d3e9db;box-shadow:inset 0 3px 0 #3d9960}
.lb-care{background:#fef8f4;border-color:#f4dfd0;box-shadow:inset 0 3px 0 #e08a3c}
.lb h3{font-size:16px;margin-bottom:10px;display:flex;align-items:center;gap:8px}
.lb h3 .ic{width:25px;height:25px;border-radius:8px;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}
.lb-good h3 .ic{background:linear-gradient(135deg,#3d9960,#1c6b3c);box-shadow:0 2px 6px rgba(28,107,60,.3)}
.lb-care h3 .ic{background:linear-gradient(135deg,#e8954a,#c96a1e);box-shadow:0 2px 6px rgba(201,106,30,.3)}
.lb ul{list-style:none}
.lb li{position:relative;padding-left:18px;font-size:13.8px;color:#33445a;margin-top:7px}
.lb li::before{content:"";position:absolute;left:2px;top:9px;width:7px;height:7px;border-radius:50%}
.lb-good li::before{background:#3d9960}
.lb-care li::before{background:#e08a3c}
.lb li b{color:var(--ink)}
.libi-note{margin-top:10px;font-size:12.5px;color:var(--mut)}

/* ---- 工具条 ---- */
.tools{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);
border:1px solid var(--line);border-radius:13px;padding:10px 12px;box-shadow:var(--sh-md)}
.search-row{display:flex;gap:8px;align-items:center}
.sbox{position:relative;flex:1 1 240px}
.sbox input{width:100%;height:38px;border:1px solid #c9d7ea;border-radius:10px;padding:0 34px 0 34px;
font-size:16px;color:var(--ink);background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}
.sbox input:focus{border-color:var(--blue2);box-shadow:0 0 0 3px rgba(21,101,192,.13)}
.sbox .sic{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:#8aa0ba;font-size:14px}
.sbox .clr{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:24px;height:24px;border:0;border-radius:50%;
background:#e7eef7;color:#5b6b7c;cursor:pointer;font-size:13px;line-height:1;display:none}
.sbox .clr.on{display:block}
.sbox .clr:hover{background:#d8e4f1}
.btn{border:1px solid #c9d7ea;background:#fff;color:var(--blue-d);border-radius:10px;height:38px;padding:0 13px;
font-size:13.5px;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,transform .1s}
.btn:hover{background:#f1f7ff;border-color:var(--blue2)}
.btn:active{transform:scale(.97)}
.btn-pri{background:linear-gradient(135deg,#1565c0,#0e4d9c);border-color:var(--blue);color:#fff;box-shadow:0 2px 6px rgba(14,77,156,.25)}
.btn-pri:hover{background:linear-gradient(135deg,#1259aa,#0a3a7a)}

/* ---- 分组与表格 ---- */
.grp{margin-top:16px;background:var(--card);border:1px solid var(--line);border-radius:13px;
overflow:hidden;box-shadow:var(--sh-sm);transition:box-shadow .2s,border-color .2s}
.grp:hover{box-shadow:var(--sh-md);border-color:#c9d9ee}
.grp>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:13px 18px;
background:var(--pc-bg,linear-gradient(180deg,#f7fafd,#eef4fb));border-bottom:1px solid var(--line)}
.grp>summary::-webkit-details-marker{display:none}
.grp>summary h3{font-size:17px;font-weight:800;color:var(--pc,var(--blue-d));letter-spacing:1px}
.grp[open]>summary{border-bottom:1px solid var(--line)}
.grp-b{padding:4px 0 8px}

table.rk{width:100%;border-collapse:collapse}
table.rk thead th{font-size:12.5px;font-weight:600;color:var(--mut);text-align:left;padding:9px 16px;
border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fbfdff,#f6f9fd);white-space:nowrap}
table.rk tbody tr:last-child td{border-bottom:0}
tr.rk-row{cursor:pointer;transition:background .12s}
tr.rk-row:nth-of-type(4n+3){background:#fafcff}
tr.rk-row:hover{background:#f0f6fd}
tr.rk-row.open{background:#e9f2fc}
td{padding:12px 16px;border-bottom:1px solid #edf2f9;vertical-align:top;font-size:13.8px}
td .idx{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:8px;
background:#eef4fb;color:#7c93ad;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}
tr.rk-row.open td .idx{background:#dbe9f9;color:var(--blue-d)}
.sch{font-weight:800;font-size:15.5px;color:var(--ink);white-space:nowrap}
.rk-sub{font-size:12px;color:var(--mut);margin-top:2px;max-width:220px;white-space:normal}
td.view{white-space:nowrap}
.viewbtn{display:inline-block;font-size:12px;color:var(--blue-d);background:#eaf2fc;border:1px solid #cfe0f5;border-radius:999px;padding:3px 12px;line-height:18px;transition:background .12s,border-color .12s}
tr.rk-row:hover .viewbtn{background:#d8e8fa;border-color:#b9d3ef}
tr.rk-row.open .viewbtn{background:var(--blue2);border-color:var(--blue2);color:#fff}
.ptd{color:#33465c}
.ptd .more{color:#8aa0ba;font-size:12px}
.num{font-variant-numeric:tabular-nums;white-space:nowrap;color:#22384f;font-weight:600}
td.fee{white-space:normal;font-size:13px;color:var(--blue-d);font-weight:600}
tr.rk-detail>td{background:linear-gradient(180deg,#f8fbfe,#f4f8fc);border-bottom:1px solid #e4ecf5;padding:14px 18px 16px}
tr.rk-detail{display:none}
tr.rk-detail.show{display:table-row}
.dt{font-size:13.5px;background:var(--card);border:1px dashed #c6d5e8;border-radius:13px;padding:13px 16px 15px}
.dt-intro{font-size:13.5px;color:#3a4c60;margin-bottom:12px;padding-left:11px;border-left:3px solid #c9dbef}
.dt-h{font-size:12.5px;font-weight:800;color:var(--blue-d);letter-spacing:1px;margin:12px 0 8px;display:flex;align-items:center;gap:6px}
.dt-h::before{content:"";width:6px;height:6px;border-radius:2px;background:var(--blue2)}

.progs{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 4px rgba(16,52,96,.04)}
.pgh,.prog{display:grid;grid-template-columns:1.5fr 1.45fr 1.15fr .95fr 1.7fr;gap:10px;padding:8px 13px;align-items:start}
.pgh{background:#eef4fb;font-size:12px;color:var(--mut);font-weight:700}
.prog{border-top:1px solid #eef3f9;font-size:13px;transition:background .12s}
.prog:hover{background:#f8fbfe}
.prog:first-of-type{border-top:0}
.c-maj b{font-size:13.5px;color:var(--ink);font-weight:400;display:block}
.c-pt{color:#2f4257}
.c-pt .qs2{display:inline-block;font-size:11px;color:#0e5aa7;background:#e8f1fb;border-radius:4px;padding:0 6px;line-height:17px;margin-top:2px}
.c-md{color:#41546c}
.c-fee{color:var(--blue-d);font-variant-numeric:tabular-nums;font-weight:400}
.c-note{color:#66788c;font-size:12.4px}

.empty-tip{display:none;padding:28px 10px;text-align:center;color:var(--mut);font-size:13.5px}
.empty-tip.on{display:block}

/* ---- 回到顶部 ---- */
#backtop{position:fixed;right:18px;bottom:24px;z-index:60;width:40px;height:40px;border-radius:50%;border:1px solid #cddcee;
background:#fff;color:var(--blue);font-size:15px;cursor:pointer;box-shadow:var(--sh-md);
opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s,transform .25s,visibility .25s,background .15s,color .15s}
#backtop.on{opacity:1;visibility:visible;transform:none}
#backtop:hover{background:var(--blue);border-color:var(--blue);color:#fff}

/* ---- 来源与页脚 ---- */
.src{margin-top:32px;background:var(--card);border:1px solid var(--line);border-radius:13px;padding:17px 19px;box-shadow:var(--sh-sm)}
.src h3{font-size:15px;margin-bottom:8px;display:flex;align-items:center;gap:7px}
.src h3::before{content:"";width:5px;height:15px;border-radius:3px;background:linear-gradient(180deg,var(--blue2),var(--blue-d))}
.src ol{margin-left:18px;font-size:12.8px;color:#4b5d70}
.src ol li{margin-top:4px}
.src .fm{margin-top:10px;font-size:12.5px;color:var(--mut)}
footer{margin-top:28px;background:linear-gradient(180deg,#0d3564,#092a50);border-top:3px solid var(--blue2);color:#b9cde6;padding:24px 0 30px;font-size:12.5px}
footer .wrap{line-height:1.9}
footer a{color:#dbe8f7}

/* ---- 响应式 ---- */
@media(max-width:860px){
 .gloss,.libi{grid-template-columns:1fr}
 .sec-card{padding:13px 14px 15px}
 .stats{grid-template-columns:1fr 1fr;gap:9px}
 .grp>summary{flex-wrap:wrap}
 table.rk thead th:nth-child(3),td.ptd{display:none}
 table.rk thead th:nth-child(5),td.fee{display:none}
 .pgh{display:none}
 .pgh+.prog{border-top:0}
 .pgh,.prog{grid-template-columns:1fr 1fr;gap:6px 10px}
 .c-maj{grid-column:1/-1}
 .c-note{grid-column:1/-1;padding-top:2px;border-top:1px dashed #e7eef6}
 .c-fee::before{content:"学费：";color:#8aa0ba;font-weight:400}
 .c-md::before{content:"模式：";color:#8aa0ba;font-weight:400}
 .c-pt::before{content:"合作：";color:#8aa0ba;font-weight:400}
 body{font-size:14.5px}
 .hero .wrap{padding-top:38px;padding-bottom:34px}
 .hero::before{width:300px;height:300px;border-width:34px;right:-110px;top:-120px}
 .hero::after{display:none}
}
@media(max-width:560px){
 .topbar .wrap{height:52px}
 .logo img{width:34px;height:34px}
 .logo-name{font-size:16px}
 .logo-sub{display:none}
 .topnav{display:none}
 .search-row{flex-wrap:wrap;gap:7px}
 .sbox{flex:1 1 100%}
 .search-row .btn{flex:1 1 auto;padding:0 12px}
 td .idx{display:none}
 .sch{white-space:normal}
 td{padding:11px 12px}
 .ptd-mobile{display:block;font-size:12.3px;color:#5b6b7c;margin-top:3px}
 #backtop{right:12px;bottom:16px;width:36px;height:36px}
}
@media(min-width:561px){.ptd-mobile{display:none}}
@media(max-width:400px){
 .pgh,.prog{grid-template-columns:1fr}
 .c-md::before,.c-fee::before,.c-pt::before{content:""}
 .c-pt::after{content:""}
}
@media print{.tools,.topnav,#backtop{display:none}}

/* ---- 省份配色 ---- */
.pc0{--pc:#c62828;--pc-bg:rgba(198,40,40,0.07)}
.pc1{--pc:#2e7d32;--pc-bg:rgba(46,125,50,0.07)}
.pc2{--pc:#6a1b9a;--pc-bg:rgba(106,27,154,0.07)}
.pc3{--pc:#e65100;--pc-bg:rgba(230,81,0,0.07)}
.pc4{--pc:#1565c0;--pc-bg:rgba(21,101,192,0.07)}
.pc5{--pc:#00838f;--pc-bg:rgba(0,131,143,0.07)}
.pc6{--pc:#ad1457;--pc-bg:rgba(173,20,87,0.07)}
.pc7{--pc:#33691e;--pc-bg:rgba(51,105,30,0.07)}
.pc8{--pc:#6d4c41;--pc-bg:rgba(109,76,65,0.07)}
.pc9{--pc:#3949ab;--pc-bg:rgba(57,73,171,0.07)}
.pc10{--pc:#827717;--pc-bg:rgba(130,119,23,0.07)}
.pc11{--pc:#c2185b;--pc-bg:rgba(194,24,91,0.07)}
.pc12{--pc:#00695c;--pc-bg:rgba(0,105,92,0.07)}
.pc13{--pc:#ef6c00;--pc-bg:rgba(239,108,0,0.07)}
.pc14{--pc:#283593;--pc-bg:rgba(40,53,147,0.07)}
.pc15{--pc:#b71c1c;--pc-bg:rgba(183,28,28,0.07)}
.pc16{--pc:#4527a0;--pc-bg:rgba(69,39,160,0.07)}
.pc17{--pc:#37474f;--pc-bg:rgba(55,71,79,0.07)}

/*c69ea49c*/