/* ============================================================================
   mobile.css — 手机端 / 微信 H5 自适应（所有页面共用，在各页 <style> 之后引入）
   仅通过媒体查询覆盖窄屏布局；用 !important 压过各页自带的 900px 规则。
   ============================================================================ */
html { -webkit-text-size-adjust: 100%; }
body { -webkit-tap-highlight-color: rgba(0,0,0,0); }
img, svg, table { max-width: 100%; }

/* 品牌副标题（窄屏 @media 里再隐藏）*/
.brand small{display:block;font-weight:500;font-size:11px;color:var(--muted);margin-top:1px;letter-spacing:0}

@media (max-width: 640px) {
  /* ---- 顶部导航：压缩 + 链接横向可滑动 ---- */
  .nav-in { gap: 8px !important; padding: 0 12px !important; height: 54px !important; }
  .brand { font-size: 14.5px !important; gap: 7px !important; flex: none; }
  .brand small { display: none !important; }
  .brand .logo { width: 26px !important; height: 26px !important; font-size: 13px !important; }
  .nav-links { flex: 1 1 auto; min-width: 0; margin-left: 2px !important; gap: 1px !important;
    overflow-x: auto; flex-wrap: nowrap !important; -webkit-overflow-scrolling: touch; }
  .nav-links::-webkit-scrollbar { display: none; }
  .nav-links a { padding: 6px 8px !important; font-size: 12.5px !important; white-space: nowrap; }
  .nav-right { gap: 6px !important; flex: none; }
  .upd { font-size: 10.5px !important; padding: 3px 7px !important; }
  .langbtn { padding: 4px 8px !important; font-size: 11px !important; }

  /* ---- Hero ---- */
  .hero-in { padding: 24px 14px 20px !important; }
  .hero h1 { font-size: 21px !important; }
  .hero p { font-size: 12.5px !important; }
  .searchbar { margin-top: 14px !important; }
  .searchbar input { font-size: 14px !important; padding: 10px 12px !important; min-width: 0; }
  .searchbar button { padding: 0 16px !important; }

  /* ---- KPI 卡片：两列 ---- */
  .kpis { grid-template-columns: repeat(2, 1fr) !important; gap: 8px !important; padding: 0 14px !important; margin-top: -14px !important; }
  .kpi { padding: 11px 13px !important; }
  .kpi .n { font-size: 19px !important; }

  /* ---- 通用容器内边距 ---- */
  .wrap { padding: 0 14px !important; margin-top: 16px !important; }
  .head { padding: 22px 14px 4px !important; }
  .head h1 { font-size: 20px !important; }
  .head p { font-size: 13px !important; }
  .note, .pagefoot { padding-left: 14px !important; padding-right: 14px !important; }
  details.foot { padding: 0 14px !important; }
  .src { columns: 1 !important; }

  /* ---- 职位列表：侧栏不固定，卡片纵向堆叠 ---- */
  .side { position: static !important; }
  .listbar { gap: 8px !important; }
  .job { flex-wrap: wrap !important; padding: 14px !important; gap: 12px !important; }
  .avatar { width: 40px !important; height: 40px !important; font-size: 16px !important; }
  .job-side { width: 100% !important; flex-direction: row !important; align-items: center !important;
    justify-content: space-between !important; text-align: left !important; margin-top: 4px !important; }
  .req, .job-req { max-width: 100% !important; }

  /* ---- 数据洞察：单列 + 更窄条形标签 ---- */
  .grid { grid-template-columns: 1fr !important; }
  .bar-row { grid-template-columns: 92px 1fr 44px !important; gap: 7px !important; }
  .donut-wrap { gap: 16px !important; }

  /* ---- 企业库 / 招聘线索 顶部工具条换行 ---- */
  .bar { gap: 8px !important; }
  .cosearch { min-width: 0 !important; width: 100% !important; order: 9; }
  .search { min-width: 0 !important; flex: 1 1 100% !important; }
  .sort { flex: 1 1 auto; }
  table { font-size: 12px !important; }
  thead th, tbody td { padding: 9px 10px !important; }
}

/* 极窄屏：隐藏顶部更新时间徽标（页脚仍有），给导航腾地方 */
@media (max-width: 470px) {
  .upd { display: none !important; }
  .hero h1 { font-size: 19px !important; }
}

/* ============================================================================
   暗色模式（全站共用）—— html[data-theme="dark"] 覆盖 CSS 变量 + 硬编码浅色面
   切换由各页 <head> 内联脚本 + 导航按钮控制，localStorage 记忆 cnh_theme
   ============================================================================ */
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0e1320; --card:#161d2e; --ink:#e7eaf3; --muted:#9aa3b8; --line:#26304a;
  --shadow:0 1px 2px rgba(0,0,0,.4),0 1px 3px rgba(0,0,0,.5);
  --shadow-lg:0 12px 34px rgba(0,0,0,.55);
}
html[data-theme="dark"] body{background:var(--bg);color:var(--ink)}
html[data-theme="dark"] .nav{background:rgba(16,21,33,.86);border-bottom-color:var(--line)}
html[data-theme="dark"] .nav-links a{color:#aab2c8}
html[data-theme="dark"] .nav-links a:hover{background:#1f2740;color:var(--ink)}
html[data-theme="dark"] .nav-links a.active{background:#2a2350;color:#c4b5fd}
html[data-theme="dark"] .chip{background:#1f2740;border-color:var(--line);color:#cbd3e6}
html[data-theme="dark"] .chip:hover{border-color:#3a456a}
html[data-theme="dark"] .chip.active{background:var(--accent);border-color:var(--accent);color:#fff}
html[data-theme="dark"] .tag{background:#222b42;color:#c0c8dc}
html[data-theme="dark"] .searchbar{background:#1b2236;box-shadow:var(--shadow-lg)}
html[data-theme="dark"] .searchbar input{color:var(--ink);background:transparent}
html[data-theme="dark"] .search,html[data-theme="dark"] .cosearch,html[data-theme="dark"] select,
html[data-theme="dark"] .sortsel select,html[data-theme="dark"] .langbtn,html[data-theme="dark"] .more,
html[data-theme="dark"] .expbtn,html[data-theme="dark"] .iconbtn,html[data-theme="dark"] .sharebtn{
  background:#1b2236;color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] .search::placeholder,html[data-theme="dark"] .searchbar input::placeholder{color:#6b7689}
html[data-theme="dark"] .empty{background:var(--card);border-color:var(--line);color:var(--muted)}
html[data-theme="dark"] .jm,html[data-theme="dark"] .jm-f{background:var(--card)}
html[data-theme="dark"] .jm-x{background:#222b42;color:#cbd3e6}
html[data-theme="dark"] .jm-copy{background:#1b2236;color:var(--ink);border-color:var(--line)}
html[data-theme="dark"] thead th{background:#1b2236;color:#aab2c8;border-bottom-color:var(--line)}
html[data-theme="dark"] tbody td{border-bottom-color:#202a40}
html[data-theme="dark"] tbody tr:hover{background:#1b2236}
html[data-theme="dark"] tbody tr.is-new{background:#1d2138}
html[data-theme="dark"] tbody tr.is-new:hover{background:#221a30}
html[data-theme="dark"] .job-req,html[data-theme="dark"] .co-intro,html[data-theme="dark"] .req{color:#9aa3b8}
html[data-theme="dark"] .job-company b,html[data-theme="dark"] .job-company .sep{color:#cbd3e6}
html[data-theme="dark"] .kw{background:#221f42;border-color:#332b63;color:#bdb6f5}
html[data-theme="dark"] .kw:hover{background:#2b2658;border-color:#433a7a}
html[data-theme="dark"] .panel,html[data-theme="dark"] .tablecard,html[data-theme="dark"] .co,html[data-theme="dark"] .side{background:var(--card);border-color:var(--line)}
html[data-theme="dark"] .bar-track,html[data-theme="dark"] .track{background:#222b42}
html[data-theme="dark"] .note,html[data-theme="dark"] .pagefoot{color:#7e8aa3;border-top-color:var(--line)}
html[data-theme="dark"] .cl li{background:#1b2236;border-color:var(--line);color:#aab2c8}
html[data-theme="dark"] .srctag,html[data-theme="dark"] .contact{color:#cbd3e6}
html[data-theme="dark"] .kwnone,html[data-theme="dark"] .contact.none{color:#5c6680}
html[data-theme="dark"] .avatar{border:1px solid var(--line)}
/* 横向药丸筛选条暗色 */
html[data-theme="dark"] .filterbar{background:#171d2c}
html[data-theme="dark"] .fbtn{background:var(--card);color:#cbd3e6;border-color:var(--line)}
html[data-theme="dark"] .fchip{background:transparent;color:#9aa3b8;border-color:transparent}
html[data-theme="dark"] .fdrop:hover .fbtn,html[data-theme="dark"] .fbtn.has,html[data-theme="dark"] .fdrop.open .fbtn{background:#2a2350;border-color:#5b4dd5;color:#c4b5fd}
html[data-theme="dark"] .fchip:hover{background:rgba(124,108,245,.18);color:#c4b5fd}
html[data-theme="dark"] .fchip.active{background:#2a2350;color:#c4b5fd;font-weight:700}
html[data-theme="dark"] .fbtn .farr{color:#7e8aa3}
html[data-theme="dark"] .fdrop:hover .fbtn .farr,html[data-theme="dark"] .fdrop.open .fbtn .farr{color:#c4b5fd}
html[data-theme="dark"] .fbtn .sort-pre{color:#7e8aa3}
html[data-theme="dark"] .fbtn .sort-sep{color:#3f4a66}
html[data-theme="dark"] .fpop{background:var(--card);border-color:var(--line)}
html[data-theme="dark"] .fpop .chip{color:#cbd3e6;background:transparent}
html[data-theme="dark"] .fpop .chip:hover{background:#1f2740}
html[data-theme="dark"] .fpop .chip.active{background:#2a2350;color:#c4b5fd}
html[data-theme="dark"] .fsep{background:#2a3550}
html[data-theme="dark"] .freset{color:#9aa3b8}
html[data-theme="dark"] .freset:hover{background:rgba(124,108,245,.18);color:#c4b5fd}
/* 顶部资讯条暗色 */
html[data-theme="dark"] .newscol{background:var(--card);border-color:var(--line)}
html[data-theme="dark"] .newsh{color:var(--ink)}
html[data-theme="dark"] .newsitem{color:#cbd3e6;border-bottom-color:rgba(255,255,255,.05)}
html[data-theme="dark"] .newsitem:hover{color:#c4b5fd}
html[data-theme="dark"] .newsmeta{color:#7e8aa3}
html[data-theme="dark"] .newsmeta .src{color:#aab2c8}
html[data-theme="dark"] .newsmeta .tag{background:#222b42;color:#aab2c8}
html[data-theme="dark"] .newsempty{color:#7e8aa3}
html[data-theme="dark"] .newsmore{color:#7e8aa3}
html[data-theme="dark"] .newsmore:hover{background:rgba(124,108,245,.18);color:#c4b5fd}
/* 首页 dashboard 暗色 */
html[data-theme="dark"] .ds{background:var(--card);border-color:var(--line)}
html[data-theme="dark"] .ds.industry{--bar:#ef4444}
html[data-theme="dark"] .ds.hiring{--bar:#f97316}
html[data-theme="dark"] .dsh{border-bottom-color:var(--line)}
html[data-theme="dark"] .dsh .title{color:var(--ink)}
html[data-theme="dark"] .dsh .lastrun{color:#7e8aa3}
html[data-theme="dark"] .ds.industry .dsh .tag{color:#fca5a5;background:#2a1414;border-color:#5e2828}
html[data-theme="dark"] .ds.hiring .dsh .tag{color:#fdba74;background:#2a1a0a;border-color:#5c3517}
html[data-theme="dark"] .dsi{border-bottom-color:rgba(255,255,255,.06)}
html[data-theme="dark"] .dsi-t{color:var(--ink)}
html[data-theme="dark"] .dsi-d{color:#aab2c8}
html[data-theme="dark"] .dsi-meta{color:#7e8aa3}
html[data-theme="dark"] .dsi-meta .src{color:#aab2c8}
html[data-theme="dark"] .dsi-meta .tag{background:#222b42;color:#aab2c8}
html[data-theme="dark"] .dsi-link{color:#a5b4fc}
html[data-theme="dark"] .ds-empty{color:#7e8aa3}
html[data-theme="dark"] .ds-empty b{color:var(--ink)}
html[data-theme="dark"] .head .summary{color:#9aa3b8}
html[data-theme="dark"] .head .summary b{color:var(--ink)}
html[data-theme="dark"] .head .sep{color:#3f4a66}
html[data-theme="dark"] .head .actions a,html[data-theme="dark"] .head .actions button{color:#a5b4fc}
html[data-theme="dark"] .pagefoot{color:#7e8aa3;border-top-color:var(--line)}
html[data-theme="dark"] .pagefoot a{color:#a5b4fc}
/* 招聘热度色阶暗色 */
html[data-theme="dark"] .hm-l0{fill:#1f2740}
html[data-theme="dark"] .hm-l1{fill:#26224a}
html[data-theme="dark"] .hm-l2{fill:#3a2d6e}
html[data-theme="dark"] .hm-l3{fill:#5341a5}
html[data-theme="dark"] .hm-l4{fill:#7765f5}
html[data-theme="dark"] .hm-l5{fill:#a395f8}
html[data-theme="dark"] .hm-top .hm-bar{background:#222b42}
html[data-theme="dark"] .hm-top li::before{background:#1f2740;color:#cbd3e6}
html[data-theme="dark"] .hm-top li:nth-child(1)::before{background:#3a2d10;color:#fde047}
html[data-theme="dark"] .hm-top li:nth-child(2)::before{background:#2a2f3c;color:#cbd3e6}
html[data-theme="dark"] .hm-top li:nth-child(3)::before{background:#3a1f0d;color:#fdba74}
html[data-theme="dark"] .co-stats>div{background:#1b2236}
html[data-theme="dark"] .cov{background:#13241c;border-color:#1f4d36;color:#5fcf9b}
html[data-theme="dark"] .hh-toast a{color:#a5b4fc}
html[data-theme="dark"] .themebtn{font-size:13px}

/* ---- 导航下拉菜单（行业资讯子栏目）---- */
.nav-drop{position:relative;display:inline-flex}
.nav-drop>a::after{content:" ▾";font-size:10px;opacity:.5;vertical-align:1px}
.nav-dropdown{
  display:none;position:absolute;top:100%;left:0;
  background:var(--card);border:1px solid var(--line);
  border-radius:10px;box-shadow:0 6px 24px rgba(0,0,0,.1);
  min-width:126px;z-index:200;padding:5px;margin-top:2px
}
.nav-drop.open .nav-dropdown,.nav-drop:focus-within .nav-dropdown{display:block}
.nav-dropdown a{
  display:block;padding:8px 14px;border-radius:7px;
  font-size:13px;font-weight:600;color:var(--muted);white-space:nowrap;margin-bottom:1px
}
.nav-dropdown a:hover{background:#f0f1f6;color:var(--ink)}
html[data-theme="dark"] .nav-dropdown{background:#161d2e;border-color:var(--line);box-shadow:0 6px 24px rgba(0,0,0,.6)}
html[data-theme="dark"] .nav-dropdown a:hover{background:#1f2740;color:var(--ink)}
@media(max-width:640px){.nav-drop>a::after{display:none}.nav-dropdown{display:none!important}}
