/* 山东专升本招生计划查询 - 移动端样式 (与 zszc 同色系) */
:root{
    --primary:#7C3AED;
    --primary-light:#F3E8FF;
    --primary-dark:#6D28D9;
    --city:#FF6A33;
    --city-bg:#FFF1EB;
    --cat:#3B82F6;
    --cat-bg:#EFF6FF;
    --teal:#14B8A6;
    --teal-bg:#CCFBF1;
    --bg:#F5F6FA;
    --card:#FFFFFF;
    --text:#1F2937;
    --text-light:#6B7280;
    --text-faint:#9CA3AF;
    --border:#E5E7EB;
    --line:#F3F4F6;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}
html{-webkit-text-size-adjust:100%;}
body{
    font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue",Arial,sans-serif;
    background:var(--bg);color:var(--text);min-height:100vh;font-size:15px;
}
a{text-decoration:none;color:inherit;}
button{font-family:inherit;border:0;background:none;cursor:pointer;}

/* -------- 顶栏 -------- */
.hdr{
    background:linear-gradient(135deg,var(--primary) 0%,#A78BFA 100%);
    color:#fff;padding:18px 16px 14px;
    position:sticky;top:0;z-index:50;
    box-shadow:0 2px 10px rgba(124,58,237,.22);
}
.hdr-inner{display:flex;align-items:center;gap:12px;max-width:600px;margin:0 auto;}
.hdr-logo{
    width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.18);
    display:flex;align-items:center;justify-content:center;
    font-size:22px;font-weight:700;flex-shrink:0;
    border:1px solid rgba(255,255,255,.25);
}
.hdr-text{flex:1;min-width:0;}
.hdr-title{font-size:16px;font-weight:700;line-height:1.2;}
.hdr-sub{font-size:11px;opacity:.88;margin-top:3px;display:flex;gap:6px;flex-wrap:wrap;}
.hdr-tag{font-size:10px;padding:1px 7px;border-radius:10px;
    background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);}
.hdr-back{display:inline-flex;align-items:center;gap:4px;font-size:13px;opacity:.92;}

/* -------- 模式切换 + 筛选 -------- */
.panel{
    background:var(--card);margin:14px 14px 0;
    border-radius:14px;padding:12px;
    box-shadow:0 1px 8px rgba(0,0,0,.06);
}
@media(min-width:600px){.panel{max-width:600px;margin-left:auto;margin-right:auto;}}
.tabs{display:flex;background:#F3F4F6;border-radius:10px;padding:3px;margin-bottom:10px;}
.tab{
    flex:1;text-align:center;padding:8px 0;border-radius:8px;
    font-size:13px;font-weight:600;color:var(--text-light);cursor:pointer;transition:all .2s;
}
.tab.on{background:var(--primary);color:#fff;box-shadow:0 2px 6px rgba(124,58,237,.3);}

.fr{display:flex;gap:6px;align-items:center;flex-wrap:wrap;}
.fr + .fr{margin-top:6px;}
.sel{
    flex:1;min-width:100px;height:34px;padding:0 22px 0 10px;
    border-radius:8px;border:1.5px solid var(--border);
    font-size:12px;color:#374151;background:#fff;
    outline:none;-webkit-appearance:none;appearance:none;cursor:pointer;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:right 6px center;
}
.sel:focus,.sel.on{border-color:var(--primary);color:var(--primary);}
.search-row{margin-top:8px;position:relative;}
.search-row .ic{position:absolute;left:9px;top:50%;transform:translateY(-50%);color:var(--text-faint);font-size:13px;pointer-events:none;}
.search{
    width:100%;height:36px;border-radius:8px;border:1.5px solid var(--border);
    font-size:13px;color:#374151;background:#fff;padding:0 60px 0 28px;
    outline:none;transition:border-color .2s;
}
.search:focus{border-color:var(--primary);}
.btn-go{
    position:absolute;right:4px;top:4px;height:28px;padding:0 14px;
    border-radius:6px;background:var(--primary);color:#fff;font-size:12px;font-weight:600;
}

/* -------- 列表区 -------- */
.list-wrap{padding:10px 14px 30px;}
@media(min-width:600px){.list-wrap{max-width:600px;margin:0 auto;padding:10px 0 30px;}}

.count-bar{display:flex;align-items:center;justify-content:space-between;
    padding:6px 4px 10px;font-size:12px;color:var(--text-light);}
.count-bar b{color:var(--primary);font-weight:700;}

.card{
    background:var(--card);border-radius:14px;
    padding:13px 14px;margin-bottom:10px;
    box-shadow:0 1px 6px rgba(0,0,0,.05);
    transition:box-shadow .2s;
    display:block;color:inherit;
}
.card:active{box-shadow:0 2px 12px rgba(0,0,0,.1);}

.row-top{display:flex;align-items:flex-start;gap:12px;}
.logo-box{
    width:48px;height:48px;border-radius:10px;
    background:var(--primary-light);
    display:flex;align-items:center;justify-content:center;
    overflow:hidden;flex-shrink:0;
    border:1px solid var(--border);
}
.logo-box img{width:100%;height:100%;object-fit:contain;}

.head-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;}
.title-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;}
.tt{font-size:15px;font-weight:700;color:#111827;line-height:1.3;flex:1;min-width:0;}
.sub{font-size:12px;color:var(--text-light);line-height:1.5;}
.sub b{color:var(--text);font-weight:600;}

.badges{display:flex;gap:5px;flex-wrap:wrap;}
.badge{
    font-size:10px;white-space:nowrap;line-height:1.7;
    padding:1px 8px;border-radius:20px;border:1px solid;font-weight:500;
}
.badge.gong{color:var(--teal);border-color:var(--teal);}
.badge.min{color:var(--city);border-color:var(--city);}
.badge.disc{color:var(--cat);border-color:var(--cat);}
.badge.math{color:var(--primary);border-color:var(--primary);background:var(--primary-light);}
.badge.batch{color:#9333EA;border-color:#9333EA;background:#FAF5FF;}
.badge.plain{color:var(--text-light);border-color:var(--border);background:#fff;}

.city-tag{
    display:inline-flex;align-items:center;
    font-size:11px;padding:2px 9px;border-radius:5px;
    background:var(--city-bg);color:var(--city);font-weight:600;
}
.city-tag::before{content:"📍";font-size:10px;margin-right:2px;}

.code{
    display:inline-block;font-size:10px;color:var(--text-faint);
    background:#F3F4F6;padding:1px 6px;border-radius:4px;
    margin-left:4px;font-weight:500;font-family:Menlo,Consolas,monospace;
}

/* -------- 首页 hero 搜索 -------- */
.hero{
    background:linear-gradient(135deg,var(--primary) 0%,#A78BFA 100%);
    color:#fff;padding:22px 16px 30px;
    box-shadow:0 2px 14px rgba(124,58,237,.25);
}
.hero-inner{max-width:600px;margin:0 auto;}
.hero-brand{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.hero-logo{
    width:46px;height:46px;border-radius:13px;background:rgba(255,255,255,.2);
    display:flex;align-items:center;justify-content:center;
    font-size:22px;font-weight:700;flex-shrink:0;
    border:1px solid rgba(255,255,255,.3);
}
.hero-title{font-size:17px;font-weight:700;line-height:1.2;}
.hero-sub{font-size:11px;opacity:.88;margin-top:4px;display:flex;gap:6px;flex-wrap:wrap;}
.hero-tag{font-size:10px;padding:2px 8px;border-radius:10px;
    background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.25);}

.hero-q-label{font-size:12px;opacity:.92;margin-bottom:8px;font-weight:500;}
.hero-search{
    position:relative;display:flex;align-items:center;
    background:#fff;border-radius:12px;padding:6px 6px 6px 36px;
    box-shadow:0 6px 18px rgba(0,0,0,.12);
}
.hero-search .ic{position:absolute;left:12px;top:50%;transform:translateY(-50%);
    color:var(--text-faint);font-size:15px;pointer-events:none;}
.hero-search input{
    flex:1;height:38px;border:0;outline:0;background:transparent;
    font-size:14px;color:var(--text);
}
.hero-search input::placeholder{color:var(--text-faint);}
.hero-search .btn-go{
    height:38px;padding:0 18px;border-radius:8px;
    background:var(--city);color:#fff;font-size:13px;font-weight:700;
    box-shadow:0 2px 6px rgba(255,106,51,.35);
}
.hero-search .btn-go:active{transform:translateY(1px);}

/* 自动补全下拉 */
.ac{
    position:absolute;left:0;right:0;top:calc(100% + 6px);
    background:#fff;border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,.18);
    max-height:60vh;overflow-y:auto;z-index:60;
    border:1px solid var(--border);
}
.ac-row{
    display:flex;justify-content:space-between;align-items:center;gap:10px;
    padding:10px 14px;border-bottom:1px solid var(--line);
    color:var(--text);font-size:13px;
}
.ac-row:last-child{border-bottom:0;}
.ac-row.on,.ac-row:hover{background:var(--primary-light);}
.ac-name{font-weight:600;flex:1;min-width:0;}
.ac-cat{font-size:11px;color:var(--text-faint);flex-shrink:0;}

/* -------- 入口卡 -------- */
.entry-row{display:flex;gap:10px;padding:14px 14px 4px;}
@media(min-width:600px){.entry-row{max-width:600px;margin:0 auto;padding-left:0;padding-right:0;}}
.entry-card{
    flex:1;background:var(--card);border-radius:14px;padding:14px;
    display:flex;align-items:center;gap:12px;
    box-shadow:0 1px 6px rgba(0,0,0,.05);
    color:inherit;
}
.entry-card:active{transform:scale(.99);}
.entry-ic{
    width:44px;height:44px;border-radius:12px;
    display:flex;align-items:center;justify-content:center;
    font-size:22px;flex-shrink:0;
}
.entry-tt{font-size:14px;font-weight:700;color:var(--text);}
.entry-sub{font-size:11px;color:var(--text-light);margin-top:3px;}

/* -------- 视图切换 (专业优先 / 学校优先) -------- */
.view-switch{
    display:flex;background:#F3F4F6;border-radius:10px;padding:3px;
    margin:0 14px 6px;
}
@media(min-width:600px){.view-switch{max-width:600px;margin-left:auto;margin-right:auto;}}
.view-switch a{
    flex:1;text-align:center;padding:8px 0;border-radius:8px;
    font-size:13px;font-weight:600;color:var(--text-light);
}
.view-switch a.on{background:var(--primary);color:#fff;box-shadow:0 2px 6px rgba(124,58,237,.3);}

/* -------- 聚合卡 (专业优先时显示多个学校 / 学校优先时显示多个专业) -------- */
.agg-list{margin-top:10px;border-top:1px dashed var(--line);padding-top:8px;}
.agg-item{
    display:flex;justify-content:space-between;align-items:center;
    padding:6px 0;border-bottom:1px solid var(--line);font-size:12px;
}
.agg-item:last-child{border-bottom:0;}
.agg-item .left{flex:1;min-width:0;display:flex;align-items:center;gap:8px;}
.agg-item .left img{width:20px;height:20px;border-radius:5px;object-fit:contain;
    background:#FAFAFE;border:1px solid var(--border);flex-shrink:0;}
.agg-item .name{font-weight:600;color:var(--text);
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.agg-item .meta{font-size:11px;color:var(--text-faint);}
.agg-item .right{display:flex;gap:6px;flex-shrink:0;font-size:11px;color:var(--text-light);}
.agg-item .right b{color:var(--city);font-weight:700;}
.agg-more{text-align:center;font-size:12px;color:var(--primary);padding:8px 0 0;font-weight:600;}

/* ==================== 简洁版 (与参考站对齐) ==================== */

/* 顶栏 */
.topnav{
    background:linear-gradient(135deg,var(--primary) 0%,#A78BFA 100%);
    color:#fff;padding:14px 16px;display:flex;align-items:center;gap:10px;
    position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(124,58,237,.18);
}
.topnav-back{font-size:22px;font-weight:300;color:#fff;line-height:1;
    width:24px;text-align:left;flex-shrink:0;}
.topnav-title{font-size:16px;font-weight:700;flex:1;min-width:0;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

/* 首页内容 */
.home{padding:16px 14px 30px;max-width:600px;margin:0 auto;}

.big-q{background:#fff;border-radius:14px;padding:16px;margin-bottom:12px;
    box-shadow:0 1px 8px rgba(0,0,0,.06);}
.big-q-label{display:block;font-size:13px;color:var(--text-light);
    font-weight:600;margin-bottom:8px;}
.big-q-row{display:flex;align-items:center;gap:6px;background:#F5F6FA;
    border-radius:10px;padding:4px 4px 4px 12px;}
.big-q-row input{flex:1;height:38px;border:0;outline:0;background:transparent;
    font-size:14px;color:var(--text);}
.big-q-row input::placeholder{color:var(--text-faint);}
.big-q-row .x{width:32px;height:32px;border-radius:8px;color:var(--text-faint);
    font-size:14px;background:transparent;}
.big-q-row .x:hover{background:rgba(0,0,0,.05);}
.big-q-row .go{height:36px;padding:0 18px;border-radius:8px;
    background:var(--primary);color:#fff;font-size:13px;font-weight:700;}
.big-q-row .go:active{background:var(--primary-dark);}

.info-block{background:#fff;border-radius:14px;padding:14px 16px;
    margin-bottom:12px;box-shadow:0 1px 8px rgba(0,0,0,.05);}
.info-title{font-weight:700;font-size:14px;margin-bottom:8px;color:var(--primary);
    display:flex;align-items:center;gap:6px;}
.info-title::before{content:'';width:3px;height:14px;background:var(--primary);border-radius:2px;}
.info-block p{font-size:13px;color:var(--text);line-height:1.7;}

/* 结果页顶部信息条 */
.cm-info{background:#fff;padding:14px 16px;border-bottom:1px solid var(--line);
    display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.cm-name{font-size:17px;font-weight:700;color:var(--text);}
.cm-meta{font-size:12px;color:var(--text-light);}

/* 筛选条 */
.bar{background:#fff;padding:10px 14px 8px;border-bottom:1px solid var(--line);
    position:sticky;top:50px;z-index:40;}
.bar-row{display:flex;gap:6px;}
.bar-sort{display:flex;background:#F3F4F6;border-radius:8px;padding:3px;margin-top:8px;}
.sb{flex:1;text-align:center;padding:7px 0;border-radius:6px;
    font-size:13px;font-weight:600;color:var(--text-light);}
.sb.on{background:var(--primary);color:#fff;box-shadow:0 1px 4px rgba(124,58,237,.3);}

/* 平铺行列表 */
.rows{padding:10px 14px 30px;max-width:600px;margin:0 auto;}
.rows-count{padding:6px 4px 10px;font-size:12px;color:var(--text-light);}
.rows-count b{color:var(--primary);font-weight:700;}

.row{background:#fff;border-radius:10px;padding:11px 14px;margin-bottom:8px;
    box-shadow:0 1px 4px rgba(0,0,0,.04);}
.row-l1{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.r-bn{font-size:15px;font-weight:700;color:var(--text);}
.r-code{font-size:11px;color:var(--text-faint);background:#F3F4F6;
    padding:1px 6px;border-radius:4px;font-family:Menlo,Consolas,monospace;}
.r-batch{font-size:10px;color:#9333EA;border:1px solid #9333EA;
    background:#FAF5FF;padding:1px 7px;border-radius:10px;font-weight:600;}

.row-l2{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:5px;font-size:13px;}
.r-sch{color:var(--text);font-weight:500;}
.r-t{font-size:10px;width:18px;height:18px;border-radius:4px;
    display:inline-flex;align-items:center;justify-content:center;font-weight:700;}
.r-t.gong{color:var(--teal);background:var(--teal-bg);}
.r-t.min{color:var(--city);background:var(--city-bg);}
.r-city{font-size:11px;color:var(--city);background:var(--city-bg);
    padding:1px 7px;border-radius:4px;font-weight:600;}
.r-city::before{content:"📍";font-size:9px;margin-right:2px;}

.row-l3{display:flex;align-items:center;gap:14px;margin-top:8px;padding-top:7px;
    border-top:1px dashed var(--line);font-size:12px;color:var(--text-light);}
.row-l3 b{font-size:15px;font-weight:700;margin-left:3px;}
.b-blue{color:var(--cat);}
.b-orange{color:var(--city);}

/* ==================== v4 主页+结果合并 ==================== */
.page-h{display:flex;align-items:center;gap:10px;padding:18px 16px 8px;
    max-width:600px;margin:0 auto;}
.page-h-bar{width:4px;height:26px;background:var(--primary);border-radius:2px;}
.page-h h1{font-size:24px;font-weight:800;color:#111;letter-spacing:.5px;}

.wrap{padding:6px 14px 30px;max-width:600px;margin:0 auto;}

/* 信息卡 */
.info-card{background:#fff;border-radius:14px;padding:14px 16px;
    margin-bottom:12px;box-shadow:0 1px 6px rgba(0,0,0,.05);}
.info-card.outlined{border:1.5px solid var(--cat);box-shadow:0 1px 8px rgba(59,130,246,.08);}
.info-h{font-size:15px;font-weight:700;color:var(--text);margin-bottom:8px;}
.info-card p{font-size:13px;color:var(--text-light);line-height:1.75;}

/* 倒计时 */
.cd-row{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.cd-title{font-size:15px;font-weight:700;color:var(--text);}
.cd-date{font-size:12px;color:var(--text-faint);margin-top:4px;font-family:Menlo,Consolas,monospace;}
.cd-pill{flex-shrink:0;padding:8px 16px;border-radius:18px;background:var(--cat);
    color:#fff;font-size:13px;font-weight:600;}

/* 搜索卡 */
.search-card{background:#fff;border-radius:14px;padding:14px 16px;
    margin-bottom:12px;box-shadow:0 1px 6px rgba(0,0,0,.05);}
.search-label{font-size:13px;font-weight:700;color:var(--text);margin-bottom:10px;}
.search-form{display:flex;gap:8px;position:relative;}
.search-input-wrap{flex:1;position:relative;display:flex;align-items:center;
    background:#F5F6FA;border-radius:10px;padding:0 4px 0 14px;height:42px;}
.search-input-wrap input{flex:1;border:0;outline:0;background:transparent;
    font-size:14px;color:var(--text);height:100%;}
.search-input-wrap input::placeholder{color:var(--text-faint);}
.search-input-wrap .x{width:28px;height:28px;border-radius:50%;
    color:var(--text-faint);font-size:12px;background:rgba(0,0,0,.06);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.search-form .go{height:42px;padding:0 22px;border-radius:10px;
    background:var(--cat);color:#fff;font-size:14px;font-weight:700;flex-shrink:0;}
.search-form .go:active{background:#2563EB;}

/* 自动补全下拉 */
.ac{position:absolute;left:0;right:74px;top:48px;background:#fff;
    border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.16);
    max-height:60vh;overflow-y:auto;z-index:60;
    border:1px solid var(--border);}
.ac-row{padding:10px 14px;border-bottom:1px solid var(--line);
    display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;}
.ac-row:last-child{border:0;}
.ac-row.on,.ac-row:hover{background:#EFF6FF;}
.ac-row .ac-name{font-size:13px;font-weight:600;color:var(--text);flex:1;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ac-row .ac-meta{font-size:11px;color:var(--text-faint);flex-shrink:0;}

/* 多候选 */
.cand-list{display:flex;flex-direction:column;gap:2px;}
.cand{display:flex;justify-content:space-between;align-items:center;
    padding:10px 12px;border-radius:8px;color:inherit;}
.cand:hover{background:#F5F6FA;}
.cand-name{font-size:14px;font-weight:600;color:var(--text);}
.cand-meta{font-size:11px;color:var(--text-faint);}

/* 筛选条 4 个下拉 */
.filter-row{display:flex;gap:8px;margin-bottom:10px;}
.filter-row .sel{flex:1;height:36px;border-radius:10px;border:1.5px solid var(--border);
    background:#fff;padding:0 22px 0 12px;font-size:13px;color:var(--text);
    -webkit-appearance:none;appearance:none;outline:none;cursor:pointer;min-width:0;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2.4'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:right 8px center;}
.filter-row .sel.on{border-color:var(--primary);color:var(--primary);font-weight:600;}

/* Tab 切换 */
.tab-row{display:flex;background:#F3F4F6;border-radius:10px;padding:3px;margin-bottom:10px;}
.tab-row a{flex:1;text-align:center;padding:10px 0;border-radius:8px;
    font-size:14px;font-weight:600;color:var(--text-light);}
.tab-row a.on{background:#fff;color:var(--primary);box-shadow:0 1px 4px rgba(0,0,0,.08);}

/* 结果分组卡 */
.g-card{background:#fff;border-radius:14px;padding:14px 16px;margin-bottom:10px;
    box-shadow:0 1px 6px rgba(0,0,0,.05);}
.g-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;
    padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:6px;}
.g-head-sch{padding-bottom:12px;}
.g-h-name{font-size:17px;font-weight:800;color:#111;}
.g-h-code{font-size:11px;color:var(--text-faint);font-family:Menlo,Consolas,monospace;
    background:#F3F4F6;padding:1px 6px;border-radius:4px;}
.g-h-right{margin-left:auto;display:flex;gap:6px;}
.g-h-logo{width:32px;height:32px;border-radius:8px;object-fit:contain;
    background:#FAFAFE;border:1px solid var(--border);flex-shrink:0;padding:2px;}
.g-h-city{font-size:12px;color:var(--text-faint);}

/* 行 */
.g-line{display:flex;align-items:center;gap:8px;padding:9px 0;
    border-bottom:1px dashed var(--line);font-size:13px;}
.g-line:last-child{border:0;}
.g-logo{width:24px;height:24px;border-radius:6px;object-fit:contain;
    background:#FAFAFE;border:1px solid var(--border);flex-shrink:0;padding:2px;}
.g-l-name{font-weight:600;color:var(--text);
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;}
.g-l-city{font-size:12px;color:var(--text-faint);}
.g-l-right{margin-left:auto;display:flex;gap:8px;align-items:center;flex-shrink:0;}

/* 标签胶囊 */
.t-year{font-size:11px;padding:3px 10px;border-radius:6px;
    background:var(--cat-bg);color:var(--cat);font-weight:600;}
.t-math{font-size:11px;padding:3px 10px;border-radius:6px;
    background:var(--city-bg);color:var(--city);font-weight:600;}
.t-gong{font-size:11px;padding:2px 9px;border-radius:6px;
    background:var(--teal-bg);color:var(--teal);font-weight:700;flex-shrink:0;}
.t-min{font-size:11px;padding:2px 9px;border-radius:6px;
    background:var(--city-bg);color:var(--city);font-weight:700;flex-shrink:0;}
.t-plan{font-size:12px;padding:4px 12px;border-radius:14px;
    background:var(--cat-bg);color:var(--cat);font-weight:700;}
.t-score{font-size:12px;padding:4px 12px;border-radius:14px;
    background:var(--primary-light);color:var(--primary);font-weight:700;}

.page-foot{padding:18px 4px 30px;text-align:center;color:var(--text-faint);
    font-size:11px;line-height:1.8;}
.empty{text-align:center;padding:40px 16px;color:var(--text-faint);font-size:14px;}

/* -------- KPI 横条 (招生人数/最低分) -------- */
.kpis{display:flex;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);}
.kpi{
    flex:1;background:#FAFBFC;border-radius:8px;padding:6px 10px;
    display:flex;flex-direction:column;gap:1px;
}
.kpi .k{font-size:10px;color:var(--text-faint);}
.kpi .v{font-size:14px;font-weight:700;color:var(--text);}
.kpi.score .v{color:var(--city);}
.kpi.plan .v{color:var(--cat);}

/* -------- 详情页 -------- */
.detail-hero{
    background:linear-gradient(135deg,var(--primary) 0%,#A78BFA 100%);
    color:#fff;padding:20px 16px 32px;
}
.detail-card{
    background:#fff;border-radius:14px;box-shadow:0 2px 12px rgba(0,0,0,.08);
    margin:-22px 14px 14px;padding:14px;
}
@media(min-width:600px){.detail-card{max-width:572px;margin-left:auto;margin-right:auto;}}
.detail-card .row-top{align-items:center;}
.detail-card .tt{font-size:17px;}
.detail-card .sub{margin-top:4px;}

.sec-title{
    margin:16px 18px 8px;font-size:13px;font-weight:700;color:var(--text-light);
    display:flex;align-items:center;gap:6px;
}
.sec-title::before{content:'';width:3px;height:14px;background:var(--primary);border-radius:2px;}
.sec-title b{color:var(--primary);}
@media(min-width:600px){.sec-title{max-width:600px;margin-left:auto;margin-right:auto;padding:0 4px;}}

.tag-cloud{padding:0 14px 6px;display:flex;flex-wrap:wrap;gap:6px;}
@media(min-width:600px){.tag-cloud{max-width:600px;margin:0 auto;padding-left:0;padding-right:0;}}
.tag-pill{
    font-size:12px;padding:4px 10px;border-radius:20px;
    background:#fff;border:1px solid var(--border);color:var(--text-light);
}
.tag-pill.on{background:var(--primary);color:#fff;border-color:var(--primary);}

.empty{text-align:center;padding:44px 16px 18px;color:var(--text-faint);font-size:14px;}

/* -------- 分页 -------- */
.pager{display:flex;align-items:center;justify-content:center;gap:6px;padding:14px 0;flex-wrap:wrap;}
.pg{
    min-width:34px;height:34px;border-radius:8px;
    border:1.5px solid var(--border);background:#fff;
    font-size:13px;color:#374151;display:flex;align-items:center;justify-content:center;padding:0 10px;
}
.pg.on{background:var(--primary);color:#fff;border-color:var(--primary);}
.pg.dis{opacity:.4;}

/* -------- 通用 -------- */
.foot{padding:18px 14px 30px;text-align:center;color:var(--text-faint);font-size:11px;line-height:1.8;}
.notice{
    margin:12px 14px 0;padding:10px 12px;border-radius:10px;font-size:12px;
    background:var(--city-bg);color:#A8451F;border-left:3px solid var(--city);
}
@media(min-width:600px){.notice{max-width:600px;margin-left:auto;margin-right:auto;}}
