
body{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

@media (min-width:768px) {
  body { background:var(--bg-gray); font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; font-size:var(--fs-base); line-height:1.6; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
  .m-header, .quick-tags, .m-filter-bar, .m-list, .m-expand, .m-expand-overlay, .m-expand-container, .faq-section { display:none !important; }

  .pc-topbar { background:var(--brand-primary); color:var(--white); font-size:15px; }
  .pc-topbar-inner { max-width:var(--container-max); margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:6px clamp(14px,3vw,40px); }
  .pc-topbar-left { display:flex; gap:20px; }
  .pc-topbar-left a { color:#bdc3c7; }
  .pc-topbar-left a:hover { color:var(--white); }
  .pc-topbar-right { display:flex; gap:20px; align-items:center; }
  .pc-topbar-right a { color:#bdc3c7; }
  .pc-topbar-right a:hover { color:var(--white); }

  .pc-header { position:fixed; top:0; left:0; right:0; z-index:1200; background:var(--white); border-bottom:1px solid var(--border); }
  .pc-header-inner { max-width:var(--container-max); margin:0 auto; display:flex; align-items:center; padding:10px clamp(14px,3vw,40px); gap:16px; overflow:hidden; }
  .pc-header .pc-logo { display:flex; align-items:center; gap:6px; flex-shrink:0; }
  .pc-header .pc-logo-icon { width:36px; height:36px; background:var(--brand-primary); border-radius:8px; display:flex; align-items:center; justify-content:center; color:var(--white); font-size:var(--fs-lg); font-weight:700; }
  .pc-header .pc-logo-text { font-size:var(--fs-xl); font-weight:700; color:var(--brand-primary); white-space:nowrap; }

  .pc-nav { display:flex; align-items:center; gap:0; flex:1; min-width:auto; overflow:hidden; }
  .pc-nav a { padding:10px 14px; font-size:var(--fs-md); color:var(--text-dark); position:relative; white-space:nowrap; font-weight:600; font-family:"Microsoft YaHei","PingFang SC","Helvetica Neue",sans-serif; }
  .pc-nav a:hover, .pc-nav a.active { color:var(--brand-primary); }
  .pc-nav a.active::after { content:''; position:absolute; bottom:0; left:10px; right:10px; height:2px; background:var(--brand-primary); border-radius:1px; }

  .pc-phone { display:flex; align-items:center; gap:6px; font-size:var(--fs-xl); font-weight:700; color:var(--brand-primary); flex-shrink:0; white-space:nowrap; }
  .pc-phone svg { width:20px; height:20px; fill:var(--brand-primary); }
  .pc-login { display:flex; align-items:center; flex-shrink:0; margin-left:12px; }
  .pc-login .login-link { display:inline-flex; align-items:center; gap:2px; color:var(--brand-primary); text-decoration:none; white-space:nowrap; }
  .pc-login .logged-in { font-weight:500; }

  .pc-breadcrumb { max-width:var(--container-max); margin:90px auto 0; padding:14px 20px; font-size:15px; color:var(--text-placeholder); }
  .pc-breadcrumb a { color:var(--text-muted); }
  .pc-breadcrumb a:hover { color:var(--brand-primary); }
  .pc-breadcrumb span.sep { margin:0 6px; color:var(--text-disabled); }

  .pc-filter-wrap { background:var(--white); border-bottom:1px solid var(--border); }
  .pc-filter-inner { max-width:var(--container-max); margin:0 auto; }

  .pc-filter-row { display:flex; align-items:flex-start; min-height:36px; padding:8px 0; border-bottom:1px dashed #e5e5e5; }
  .pc-filter-row:last-child { border-bottom:none; }
  .pc-filter-label { width:70px; flex-shrink:0; font-size:var(--fs-md); color:var(--text-dark); font-weight:600; padding-top:4px; }
  .pc-filter-opts { flex:1; display:flex; flex-wrap:wrap; gap:4px 8px; align-content:flex-start; }
  .pc-filter-opts a { display:inline-block; padding:4px 12px; border-radius:4px; font-size:var(--fs-md); color:var(--text-2); transition:all .15s; }
  .pc-filter-opts a:hover { color:var(--brand-primary); }
  .pc-filter-opts a.active { background:var(--brand-primary-bg); color:var(--brand-primary); }

  .pc-loc-tabs { display:flex; gap:16px; margin-bottom:8px; }
  .pc-loc-tabs a { font-size:var(--fs-lg); color:var(--text-muted); padding-bottom:4px; border-bottom:2px solid transparent; }
  .pc-loc-tabs a.active { color:var(--brand-primary); border-bottom-color:var(--brand-primary); font-weight:600; }

  .pc-sub-opts { width:100%; margin-top:6px; padding:8px 12px 8px 0; background:var(--bg-gray-light); border-radius:6px; }
  .pc-sub-opts a { padding:4px 10px; font-size:var(--fs-md); color:var(--text-muted); }
  .pc-sub-opts a.active { background:var(--brand-primary-bg); color:var(--brand-primary); border-radius:4px; }

  .pc-custom-input { display:inline-flex; align-items:center; gap:4px; }
  .pc-custom-input input { width:60px; height:28px; border:1px solid #dcdfe6; border-radius:4px; padding:0 6px; font-size:15px; background:var(--white); }
  .pc-custom-input span { color:var(--text-placeholder); font-size:var(--fs-sm); }
  .pc-custom-input .pc-ok { display:inline-flex; align-items:center; justify-content:center; height:30px; padding:0 12px; background:#00A0E9; color:#fff !important; border:none; border-radius:15px; font-size:15px; font-weight:600; line-height:30px; cursor:pointer; white-space:nowrap; }

  .pc-sortbar { display:flex; align-items:center; justify-content:space-between; background:var(--white); border-radius:8px; padding:12px 20px; margin-bottom:15px; }
  .pc-sortbar .pc-count { font-size:var(--fs-base); color:var(--text-muted); }
  .pc-sortbar .pc-count strong { color:var(--brand-primary); }
  .pc-sortbar .pc-sortopts { display:flex; gap:16px; }
  .pc-sortbar .pc-sortopts a { font-size:var(--fs-base); color:var(--text-muted); }
  .pc-sortbar .pc-sortopts a.active, .pc-sortbar .pc-sortopts a:hover { color:var(--brand-primary); }

  .pc-page { display:flex; align-items:center; justify-content:center; gap:6px; padding:20px; }
  .pc-page a, .pc-page span { display:inline-flex; align-items:center; justify-content:center; min-width:36px; height:36px; padding:0 10px; border-radius:6px; font-size:var(--fs-base); color:var(--text-2); background:var(--white); border:1px solid var(--border-soft); }
  .pc-page a:hover { border-color:var(--brand-primary); color:var(--brand-primary); }
  .pc-page a.active { background:var(--brand-primary); color:var(--white); border-color:var(--brand-primary); }
  .pc-page .dots { border:none; background:none; }
}

@media (min-width:768px) and (max-width:1180px) {
  .pc-header-inner { gap:10px; }
  .pc-nav a { padding:10px 8px; font-size:var(--fs-md); }
  .pc-phone { font-size:var(--fs-lg); }
  .pc-login .login-link { gap:2px; }
  .pc-filter-label { width:66px; font-size:var(--fs-base); }
  .pc-filter-opts a, .pc-sub-opts a { font-size:var(--fs-base); padding:4px 9px; }
}

@media (max-width:767px) {
  /* 注意：.bot-footer 不在此隐藏——移动端页脚需可见（含备案信息与 FAQ 区块），与其他列表页一致 */
  .pc-topbar, .pc-header, .header, .pc-breadcrumb, .pc-filter-wrap, .pc-wrap, .pc-sortbar, .pc-page { display:none !important; }
}

@media (max-width:767px){
  .m-header {
    height: 50px !important;
    padding: 0 12px !important;
    background: var(--white) !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .04) !important;
    display: flex !important;
    align-items: center !important;
  }
  .m-header .logo {
    max-width: 36px;
    min-width: 0;
    overflow: hidden;
    flex-shrink: 0;
    margin-right: 0 !important;
  }
  .m-header .logo img {
    height: 36px !important;
    width: auto !important;
    max-width: 36px !important;
    object-fit: contain !important;
  }
  .m-header .search-box {
    flex: 1 !important;
    min-width: 0;
    height: 34px !important;
    margin: 0 8px !important;
  }
  .m-header .search-input {
    height: 34px !important;
    border: 0 !important;
    background: var(--bg-soft) !important;
    color: var(--text-2) !important;
    font-size: 15px !important;
    border-radius: 17px !important;
  }
  .m-header .search-icon {
    left: 13px !important;
  }
  .m-header .user-btn {
    width: 36px !important;
    height: 36px !important;
    flex-shrink: 0 !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .m-header .user-btn svg {
    width: 22px !important;
    height: 22px !important;
    fill: var(--text-2) !important;
  }
  .m-header .back-btn {
    display: none !important;
  }
}
