
  :root {
    --primary: #2563eb; --primary-light: #3b82f6; --primary-dark: #1d4ed8;
    --accent: #f59e0b;
    --org: #7c3aed; --org-light: #a78bfa; --org-dark: #5b21b6;
    --bg: #f8fafc; --card: #fff;
    --text: #0f172a; --text-2: #475569; --text-3: #94a3b8; --border: #e2e8f0;
    --radius: 14px;
    --shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);
    --shadow-lg: 0 10px 30px rgba(0,0,0,.08);
    --shadow-xl: 0 20px 50px rgba(0,0,0,.12);
    --gold: #d97706;
  }
  *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
  body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif; color: var(--text); background: var(--bg); line-height: 1.7; -webkit-font-smoothing: antialiased; }
  a { text-decoration: none; color: inherit; }
  ul { list-style: none; }
  svg { display: block; }
  .container { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 24px; }

  /* ===== HEADER ===== */
  header.site-header { background: #fff; border-bottom: 1px solid var(--border); position: sticky; top: 0; z-index: 100; }
  .header-inner { height: 68px; display: flex; align-items: center; gap: 28px; }
  .logo { display: flex; align-items: center; gap: 10px; font-size: 19px; font-weight: 800; color: var(--primary); letter-spacing: -.3px; }
  .logo .logo-mark { width: 34px; height: 34px; border-radius: 10px; background: linear-gradient(135deg, #1d4ed8, #3b82f6); display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(37,99,235,.3); }
  .logo small { font-size: 10px; font-weight: 700; color: var(--text-3); letter-spacing: 1.2px; }
  nav.main-nav { display: flex; gap: 2px; margin-left: 8px; }
  nav.main-nav a { padding: 8px 12px; border-radius: 8px; font-size: 14.5px; font-weight: 500; color: var(--text-2); transition: all .2s; }
  nav.main-nav a:hover { color: var(--primary); background: rgba(37,99,235,.06); }
  nav.main-nav a.active { color: #fff; background: linear-gradient(135deg, var(--org-dark), var(--org)); }
  .header-right { margin-left: auto; display: flex; align-items: center; gap: 14px; }
  .search-box { display: flex; align-items: center; gap: 8px; background: var(--bg); border: 1px solid var(--border); border-radius: 10px; padding: 8px 14px; width: 250px; }
  .search-box input { border: none; background: none; outline: none; font-size: 13.5px; width: 100%; color: var(--text); }
  .search-box input::placeholder { color: var(--text-3); }
  .btn-merchant { font-size: 14px; font-weight: 700; color: #f59e0b; }

  /* ===== HERO ===== */
  .hero { position: relative; overflow: hidden; background: linear-gradient(135deg, #0f172a 0%, #1e1b4b 55%, #312e81 100%); color: #fff; padding: 54px 0 62px; }
  .hero::before { content: ''; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px); background-size: 46px 46px; }
  .hero::after { content: ''; position: absolute; width: 620px; height: 620px; right: -180px; top: -260px; border-radius: 50%; background: radial-gradient(circle, rgba(124,58,237,.45), transparent 68%); }
  .hero .container { position: relative; z-index: 2; }
  .hero-badge { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; border-radius: 999px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); font-size: 13px; font-weight: 600; color: #ddd6fe; margin-bottom: 18px; }
  .hero-badge .dot { width: 7px; height: 7px; border-radius: 50%; background: #a78bfa; box-shadow: 0 0 0 4px rgba(167,139,250,.25); }
  .hero h1 { font-size: 40px; font-weight: 800; line-height: 1.25; letter-spacing: -.5px; margin-bottom: 14px; }
  .hero h1 em { font-style: normal; background: linear-gradient(100deg, #c4b5fd, #a78bfa 45%, #7dd3fc); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
  .hero p { font-size: 15.5px; color: rgba(255,255,255,.72); max-width: 720px; margin-bottom: 30px; }
  .hero-stats { display: flex; gap: 46px; flex-wrap: wrap; }
  .hero-stat .num { font-size: 30px; font-weight: 800; letter-spacing: -.5px; background: linear-gradient(100deg,#fff,#c4b5fd); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; line-height: 1.2; }
  .hero-stat .num small { font-size: 15px; font-weight: 700; -webkit-text-fill-color: rgba(255,255,255,.6); }
  .hero-stat .lbl { font-size: 13px; color: rgba(255,255,255,.55); }

  /* ===== TOOLBAR ===== */
  .toolbar { background: #fff; border-bottom: 1px solid var(--border); position: sticky; top: 68px; z-index: 90; box-shadow: 0 2px 14px rgba(15,23,42,.04); }
  .tb-row { display: flex; align-items: center; gap: 14px; padding: 14px 0; }
  .scope-switch { display: flex; background: var(--bg); border: 1px solid var(--border); border-radius: 11px; padding: 4px; gap: 3px; flex-shrink: 0; }
  .scope-switch button { border: none; background: none; padding: 9px 18px; border-radius: 8px; font-size: 14px; font-weight: 700; color: var(--text-2); cursor: pointer; display: flex; align-items: center; gap: 7px; transition: all .22s; font-family: inherit; }
  .scope-switch button.active { background: linear-gradient(135deg, var(--org-dark), var(--org)); color: #fff; box-shadow: 0 4px 12px rgba(124,58,237,.3); }
  .city-pick { display: flex; align-items: center; gap: 7px; font-size: 14px; font-weight: 600; color: var(--text-2); padding: 9px 14px; border: 1px solid var(--border); border-radius: 10px; background: #fff; cursor: pointer; }
  .city-pick:hover { border-color: var(--org-light); color: var(--org); }
  .tb-search { margin-left: auto; display: flex; align-items: center; gap: 9px; border: 1px solid var(--border); border-radius: 11px; padding: 10px 16px; width: 320px; background: var(--bg); }
  .tb-search input { border: none; background: none; outline: none; font-size: 14px; width: 100%; font-family: inherit; }
  .biz-chips { display: flex; gap: 8px; padding: 0 0 14px; flex-wrap: wrap; align-items: center; }
  .biz-chips .chip-lbl { font-size: 13px; color: var(--text-3); font-weight: 600; margin-right: 2px; }
  .chip { border: 1px solid var(--border); background: #fff; color: var(--text-2); padding: 7px 15px; border-radius: 999px; font-size: 13.5px; font-weight: 600; cursor: pointer; transition: all .2s; font-family: inherit; display: flex; align-items: center; gap: 6px; }
  .chip .cdot { width: 7px; height: 7px; border-radius: 50%; }
  .chip:hover { border-color: #cbd5e1; transform: translateY(-1px); }
  .chip.active { color: #fff; border-color: transparent; background: linear-gradient(135deg, var(--org-dark), var(--org)); box-shadow: 0 4px 12px rgba(124,58,237,.28); }
  .chip.all.active { background: linear-gradient(135deg, #0f172a, #334155); box-shadow: 0 4px 12px rgba(15,23,42,.25); }

  /* ===== SECTION ===== */
  .section { padding: 34px 0 8px; }
  .section-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; gap: 16px; flex-wrap: wrap; }
  .section-title { display: flex; align-items: center; gap: 12px; font-size: 21px; font-weight: 800; letter-spacing: -.3px; }
  .section-icon { width: 38px; height: 38px; border-radius: 11px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
  .section-icon svg { width: 20px; height: 20px; }
  .section-sub { font-size: 13.5px; color: var(--text-3); font-weight: 500; margin-left: 2px; }
  .section-link { font-size: 13.5px; font-weight: 700; color: var(--org); display: flex; align-items: center; gap: 5px; }

  /* ===== ORG CARDS ===== */
  .org-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
  .org-card { background: #fff; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; display: flex; flex-direction: column; transition: all .28s cubic-bezier(.22,.61,.36,1); position: relative; }
  .org-card::before { content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 3px; background: linear-gradient(90deg, var(--org-dark), var(--org-light)); opacity: 0; transition: opacity .28s; }
  .org-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-xl); border-color: #ddd6fe; }
  .org-card:hover::before { opacity: 1; }
  .org-card-top { padding: 18px 18px 14px; display: flex; gap: 13px; align-items: flex-start; }
  .org-avatar { width: 46px; height: 46px; border-radius: 12px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 19px; font-weight: 800; color: #fff; letter-spacing: -.5px; }
  .org-name { font-size: 15.5px; font-weight: 700; line-height: 1.45; margin-bottom: 6px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 44px; }
  .org-card:hover .org-name { color: var(--org); }
  .org-meta-top { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; }
  .pill-city { font-size: 11.5px; font-weight: 700; color: var(--org); background: #f5f3ff; padding: 2px 8px; border-radius: 6px; }
  .pill-verified { font-size: 11px; font-weight: 700; color: #059669; background: #ecfdf5; padding: 2px 7px; border-radius: 6px; display: flex; align-items: center; gap: 3px; }
  .pill-verified.gold { color: #d97706; background: #fffbeb; }
  .org-tags { display: flex; gap: 6px; flex-wrap: nowrap; overflow: hidden; padding: 0 18px 14px; height: 40px; align-items: flex-start; }
  .tag-more { background: #f1f5f9; color: #64748b; }
  .tag { font-size: 11.5px; font-weight: 600; padding: 3px 9px; border-radius: 6px; }
  .t-gs { background: #eff6ff; color: #2563eb; }
  .t-sw { background: #ecfdf5; color: #059669; }
  .t-ip { background: #fef2f2; color: #dc2626; }
  .t-zz { background: #fffbeb; color: #d97706; }
  .t-ba { background: #f0f9ff; color: #0284c7; }
  .t-xm { background: #fdf4ff; color: #a21caf; }
  .org-latest { margin-top: auto; border-top: 1px dashed var(--border); padding: 13px 18px 15px; background: #fcfcfd; }
  .org-latest .ol-head { display: flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 800; color: var(--text-3); letter-spacing: .5px; margin-bottom: 7px; }
  .org-latest .ol-head .live { width: 5px; height: 5px; border-radius: 50%; background: #10b981; }
  .org-latest .ol-title { font-size: 13.5px; font-weight: 600; color: var(--text-2); line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-bottom: 7px; min-height: 42px; }
  .org-card:hover .ol-title { color: var(--org); }
  .org-latest .ol-date { font-size: 12px; color: var(--text-3); display: flex; align-items: center; justify-content: space-between; }
  .org-latest .ol-count { font-size: 11.5px; font-weight: 700; color: var(--org); background: #f5f3ff; padding: 2px 7px; border-radius: 6px; }

  /* ===== LEADERBOARD ===== */
  .board-tabs { display: flex; gap: 6px; background: var(--bg); border: 1px solid var(--border); border-radius: 12px; padding: 5px; width: fit-content; margin-bottom: 6px; }
  .board-tabs button { border: none; background: none; font-family: inherit; font-size: 14.5px; font-weight: 700; color: var(--text-2); padding: 10px 22px; border-radius: 9px; cursor: pointer; display: flex; align-items: center; gap: 8px; transition: all .22s; }
  .board-tabs button.active { background: #fff; color: var(--org); box-shadow: var(--shadow); }
  .board-tabs button svg { width: 16px; height: 16px; }
  .sub-tabs { display: flex; gap: 7px; flex-wrap: wrap; margin: 16px 0 18px; }
  .sub-tab { font-family: inherit; font-size: 13.5px; font-weight: 600; color: var(--text-2); background: #fff; border: 1px solid var(--border); padding: 8px 16px; border-radius: 9px; cursor: pointer; transition: all .2s; }
  .sub-tab:hover { border-color: #cbd5e1; }
  .sub-tab.active { background: linear-gradient(135deg, #f5f3ff, #ede9fe); border-color: #ddd6fe; color: var(--org-dark); font-weight: 800; }

  .board-wrap { background: #fff; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
  .board-head { display: flex; align-items: center; justify-content: space-between; padding: 16px 22px; border-bottom: 1px solid var(--border); background: linear-gradient(180deg,#fcfcfd,#fff); gap: 12px; flex-wrap: wrap; }
  .board-head .bh-title { font-size: 15.5px; font-weight: 800; display: flex; align-items: center; gap: 9px; }
  .board-head .bh-note { font-size: 12.5px; color: var(--text-3); }
  .board-head .bh-note b { color: var(--org); font-weight: 700; }
  table.board { width: 100%; border-collapse: collapse; }
  table.board th { text-align: left; font-size: 12.5px; font-weight: 700; color: var(--text-3); padding: 12px 16px; background: #fafbfc; border-bottom: 1px solid var(--border); white-space: nowrap; }
  table.board td { padding: 14px 16px; border-bottom: 1px solid #f1f5f9; font-size: 13.5px; vertical-align: middle; }
  table.board tr:last-child td { border-bottom: none; }
  table.board tbody tr { transition: background .18s; }
  table.board tbody tr:hover { background: #fafbff; }
  .rank { width: 34px; height: 34px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 800; color: var(--text-3); background: var(--bg); }
  .rank.r1 { background: linear-gradient(135deg,#f59e0b,#fbbf24); color: #fff; box-shadow: 0 4px 12px rgba(245,158,11,.35); }
  .rank.r2 { background: linear-gradient(135deg,#94a3b8,#cbd5e1); color: #fff; }
  .rank.r3 { background: linear-gradient(135deg,#b45309,#d97706); color: #fff; }
  .b-org { display: flex; align-items: center; gap: 10px; }
  .b-org .b-av { width: 34px; height: 34px; border-radius: 9px; display: flex; align-items: center; justify-content: center; color: #fff; font-weight: 800; font-size: 14px; flex-shrink: 0; }
  .b-org .b-nm { font-weight: 700; font-size: 14px; line-height: 1.4; }
  .b-org .b-nm:hover { color: var(--org); }
  .b-org .b-city { font-size: 11.5px; color: var(--text-3); }
  .b-addr { color: var(--text-2); font-size: 13px; max-width: 230px; }
  .b-contact { color: var(--text-2); font-size: 13px; white-space: nowrap; font-variant-numeric: tabular-nums; }
  .b-tags { display: flex; gap: 5px; flex-wrap: wrap; max-width: 210px; }
  .heat { display: flex; align-items: center; gap: 7px; }
  .heat-bar { width: 62px; height: 6px; border-radius: 4px; background: #eef2f7; overflow: hidden; }
  .heat-bar i { display: block; height: 100%; border-radius: 4px; background: linear-gradient(90deg,#8b5cf6,#a78bfa); }
  .heat-val { font-size: 13px; font-weight: 800; color: var(--org); font-variant-numeric: tabular-nums; }
  .badge-up { font-size: 11px; font-weight: 700; color: #059669; }
  .board-foot { padding: 14px 22px; text-align: center; border-top: 1px solid var(--border); background: #fcfcfd; }
  .board-foot a { font-size: 13.5px; font-weight: 700; color: var(--org); }
  .board-more { display: inline-flex; align-items: center; gap: 6px; }

  /* 榜单右侧说明 */
  .board-layout { display: grid; grid-template-columns: 1fr 268px; gap: 20px; align-items: start; }
  .side-card { background: #fff; border: 1px solid var(--border); border-radius: var(--radius); padding: 18px; box-shadow: var(--shadow); }
  .side-card h3 { font-size: 14.5px; font-weight: 800; margin-bottom: 12px; display: flex; align-items: center; gap: 8px; }
  .side-card .rule-list li { display: flex; gap: 9px; font-size: 13px; color: var(--text-2); padding: 7px 0; border-bottom: 1px dashed var(--border); line-height: 1.6; }
  .side-card .rule-list li:last-child { border-bottom: none; }
  .side-card .rule-list .rn { width: 18px; height: 18px; border-radius: 6px; background: #f5f3ff; color: var(--org); font-size: 11px; font-weight: 800; display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 3px; }
  .trend-mini li { display: flex; align-items: center; gap: 9px; padding: 8px 0; font-size: 13px; border-bottom: 1px dashed var(--border); }
  .trend-mini li:last-child { border-bottom: none; }
  .trend-mini .tm-r { width: 20px; height: 20px; border-radius: 6px; background: var(--bg); font-size: 11px; font-weight: 800; color: var(--text-3); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
  .trend-mini .tm-r.hot { background: linear-gradient(135deg,#f59e0b,#fbbf24); color: #fff; }
  .trend-mini .tm-n { flex: 1; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .trend-mini .tm-v { font-size: 12px; font-weight: 800; color: var(--org); }

  .data-note { font-size: 12.5px; color: var(--text-3); padding: 22px 0 6px; text-align: center; }
  .data-note code { background: #f1f5f9; padding: 1px 6px; border-radius: 4px; font-size: 12px; }

  /* ===== FOOTER ===== */
  footer.site-footer { background: #0f172a; color: #94a3b8; margin-top: 40px; padding: 34px 0 26px; }
  .foot-inner { display: flex; justify-content: space-between; gap: 30px; flex-wrap: wrap; align-items: center; }
  .foot-logo { color: #fff; font-weight: 800; font-size: 17px; display: flex; align-items: center; gap: 9px; }
  .foot-links { display: flex; gap: 20px; font-size: 13px; flex-wrap: wrap; }
  .foot-links a:hover { color: #fff; }
  .foot-copy { font-size: 12.5px; color: #64748b; }

  @media (max-width: 1180px) { .org-grid { grid-template-columns: repeat(3, 1fr); } .board-layout { grid-template-columns: 1fr; } }
  @media (max-width: 980px) { nav.main-nav { display: none; } .search-box { display: none; } .org-grid { grid-template-columns: repeat(2, 1fr); } table.board .hide-md { display: none; } }
  @media (max-width: 640px) {
    .container { padding: 0 16px; }
    .hero { padding: 34px 0 40px; } .hero h1 { font-size: 27px; } .hero-stats { gap: 26px; } .hero-stat .num { font-size: 23px; }
    .toolbar { top: 60px; } .tb-row { flex-wrap: wrap; gap: 10px; } .tb-search { margin-left: 0; width: 100%; } .scope-switch button { padding: 8px 13px; font-size: 13px; }
    .org-grid { grid-template-columns: 1fr; }
    .section-title { font-size: 18px; } .board-tabs { width: 100%; } .board-tabs button { flex: 1; justify-content: center; padding: 9px 8px; font-size: 13px; }
    table.board th, table.board td { padding: 11px 9px; font-size: 12.5px; } .b-addr { max-width: 130px; }
    .heat-bar { display: none; } .heat-val { font-size: 14px; }
    table.board th:nth-child(7), table.board td:nth-child(7) { width: 46px; }
  }


  :root {
    --primary:#2563eb; --accent:#f59e0b;
    --org:#7c3aed; --org-light:#a78bfa; --org-dark:#5b21b6;
    --bg:#f8fafc; --card:#fff; --text:#0f172a; --text-2:#475569; --text-3:#94a3b8; --border:#e2e8f0;
    --radius:14px; --shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);
    --shadow-lg:0 10px 30px rgba(0,0,0,.08); --shadow-xl:0 20px 50px rgba(0,0,0,.12);
  }
  *,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
  body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--text);background:var(--bg);line-height:1.75;-webkit-font-smoothing:antialiased}
  a{text-decoration:none;color:inherit} ul{list-style:none} svg{display:block}
  .container{width:100%;max-width:1280px;margin:0 auto;padding:0 24px}

  header.site-header{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}
  .header-inner{height:68px;display:flex;align-items:center;gap:28px}
  .logo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;color:var(--primary)}
  .logo .logo-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#1d4ed8,#3b82f6);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(37,99,235,.3)}
  .logo small{font-size:10px;font-weight:700;color:var(--text-3);letter-spacing:1.2px}
  nav.main-nav{display:flex;gap:2px;margin-left:8px}
  nav.main-nav a{padding:8px 12px;border-radius:8px;font-size:14.5px;font-weight:500;color:var(--text-2);transition:all .2s}
  nav.main-nav a:hover{color:var(--primary);background:rgba(37,99,235,.06)}
  nav.main-nav a.active{color:#fff;background:linear-gradient(135deg,var(--org-dark),var(--org))}
  .header-right{margin-left:auto;display:flex;align-items:center;gap:14px}
  .btn-merchant{font-size:14px;font-weight:700;color:#f59e0b}

  /* breadcrumb */
  .crumb-bar{background:#fff;border-bottom:1px solid var(--border)}
  .breadcrumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-3);padding:13px 0;flex-wrap:wrap}
  .breadcrumb a:hover{color:var(--org)}
  .breadcrumb .sep{color:#cbd5e1}

  /* 机构头部 */
  .org-hero{background:linear-gradient(135deg,#0f172a 0%,#1e1b4b 60%,#312e81 100%);color:#fff;padding:0 0 0;position:relative;overflow:hidden}
  .org-hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:46px 46px}
  .org-hero::after{content:'';position:absolute;width:560px;height:560px;right:-160px;top:-240px;border-radius:50%;background:radial-gradient(circle,rgba(124,58,237,.4),transparent 70%)}
  .org-hero .container{position:relative;z-index:2}
  .oh-top{display:flex;gap:22px;align-items:flex-start;padding:36px 0 28px}
  .oh-avatar{width:82px;height:82px;border-radius:20px;background:linear-gradient(135deg,#7c3aed,#a78bfa);display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:800;flex-shrink:0;box-shadow:0 12px 30px rgba(124,58,237,.4);border:2px solid rgba(255,255,255,.18)}
  .oh-main{flex:1;min-width:0}
  .oh-name{font-size:29px;font-weight:800;letter-spacing:-.4px;line-height:1.3;margin-bottom:12px}
  .oh-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
  .ob{font-size:12px;font-weight:700;padding:4px 11px;border-radius:7px;display:inline-flex;align-items:center;gap:5px}
  .ob-city{background:rgba(255,255,255,.12);color:#ddd6fe;border:1px solid rgba(255,255,255,.16)}
  .ob-gold{background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#3b1d00}
  .ob-green{background:rgba(16,185,129,.18);color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}
  .oh-tags{display:flex;gap:7px;flex-wrap:wrap}
  .oh-tags .tag{font-size:12px;font-weight:600;padding:4px 11px;border-radius:7px}
  .t-gs{background:rgba(37,99,235,.22);color:#93c5fd}.t-sw{background:rgba(5,150,105,.22);color:#6ee7b7}
  .t-ip{background:rgba(220,38,38,.22);color:#fca5a5}.t-zz{background:rgba(217,119,6,.22);color:#fcd34d}
  .t-ba{background:rgba(2,132,199,.24);color:#7dd3fc}.t-xm{background:rgba(162,28,175,.24);color:#f0abfc}
  .oh-actions{display:flex;gap:10px;flex-shrink:0;padding-top:6px}
  .btn-ghost{display:inline-flex;align-items:center;gap:7px;padding:10px 18px;border-radius:10px;font-size:13.5px;font-weight:700;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;transition:all .2s}
  .btn-ghost:hover{background:rgba(255,255,255,.18)}
  .btn-solid{display:inline-flex;align-items:center;gap:7px;padding:10px 18px;border-radius:10px;font-size:13.5px;font-weight:700;background:linear-gradient(135deg,#7c3aed,#a78bfa);color:#fff;box-shadow:0 8px 20px rgba(124,58,237,.38);transition:all .2s}
  .btn-solid:hover{transform:translateY(-2px)}

  /* 信息条 */
  .info-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.1);border-top:1px solid rgba(255,255,255,.1);position:relative;z-index:2}
  .info-item{padding:16px 22px;background:rgba(255,255,255,.04);display:flex;gap:12px;align-items:flex-start;min-width:0}
  .info-item .ii-ic{width:32px;height:32px;border-radius:9px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}
  .info-item .ii-lbl{font-size:11.5px;color:rgba(255,255,255,.5);font-weight:600;letter-spacing:.3px}
  .info-item .ii-val{font-size:13.5px;font-weight:600;color:#fff;word-break:break-all;line-height:1.5}

  /* 布局 */
  .page-wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;padding:28px 0 40px;align-items:start}
  .panel{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
  .panel + .panel{margin-top:20px}
  .panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 22px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#fcfcfd,#fff);flex-wrap:wrap}
  .panel-head h2{font-size:16px;font-weight:800;display:flex;align-items:center;gap:9px}
  .panel-head .ph-note{font-size:12.5px;color:var(--text-3)}
  .panel-body{padding:22px}

  /* 简介正文 */
  .intro p{font-size:15px;color:#334155;margin-bottom:15px;line-height:1.9}
  .intro h3{font-size:16px;font-weight:800;margin:22px 0 12px;padding-left:12px;border-left:3px solid var(--org);line-height:1.4}
  .intro h3:first-child{margin-top:0}
  .intro ul{margin:0 0 16px}
  .intro ul li{font-size:14.5px;color:#334155;padding-left:20px;position:relative;margin-bottom:8px;line-height:1.8}
  .intro ul li::before{content:'';position:absolute;left:4px;top:11px;width:6px;height:6px;border-radius:50%;background:var(--org-light)}
  .intro strong{color:var(--org-dark);font-weight:700}

  /* 关联文章列表 */
  .art-item{display:flex;gap:16px;padding:17px 22px;border-bottom:1px solid #f1f5f9;transition:background .2s;align-items:flex-start}
  .art-item:last-child{border-bottom:none}
  .art-item:hover{background:#fafbff}
  .art-thumb{width:96px;height:66px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff}
  .art-thumb svg{width:26px;height:26px;opacity:.9}
  .art-main{flex:1;min-width:0}
  .art-tags{display:flex;gap:6px;margin-bottom:7px;flex-wrap:wrap;align-items:center}
  .art-tag{font-size:11px;font-weight:700;padding:2px 8px;border-radius:5px;background:#f5f3ff;color:var(--org)}
  .art-src{font-size:11.5px;color:var(--text-3)}
  .art-title{font-size:15.5px;font-weight:700;line-height:1.5;margin-bottom:7px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .art-item:hover .art-title{color:var(--org)}
  .art-desc{font-size:13px;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:8px;line-height:1.75}
  .art-meta{display:flex;gap:14px;font-size:12px;color:var(--text-3);flex-wrap:wrap;align-items:center}
  .art-meta span{display:flex;align-items:center;gap:5px}

  /* 侧栏 */
  .side-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}
  .side-card + .side-card{margin-top:18px}
  .side-card h3{font-size:14.5px;font-weight:800;margin-bottom:15px;display:flex;align-items:center;gap:8px}
  .heat-big{text-align:center;padding:6px 0 16px;border-bottom:1px dashed var(--border);margin-bottom:15px}
  .heat-big .hv{font-size:44px;font-weight:800;line-height:1;background:linear-gradient(135deg,#7c3aed,#a78bfa);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
  .heat-big .hl{font-size:12.5px;color:var(--text-3);margin-top:6px}
  .heat-big .rankb{display:inline-block;margin-top:10px;font-size:12px;font-weight:800;color:#b45309;background:#fffbeb;padding:4px 11px;border-radius:7px}
  .kpi-row{display:flex;justify-content:space-between;padding:9px 0;font-size:13.5px;border-bottom:1px dashed var(--border)}
  .kpi-row:last-child{border-bottom:none}
  .kpi-row .k{color:var(--text-2)}
  .kpi-row .v{font-weight:800;color:var(--org);font-variant-numeric:tabular-nums}
  .list-org li{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px dashed var(--border)}
  .list-org li:last-child{border-bottom:none}
  .list-org .lo-av{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:800;flex-shrink:0}
  .list-org .lo-n{flex:1;font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .list-org .lo-v{font-size:12px;font-weight:800;color:var(--org)}
  .mini-note{font-size:12.5px;color:var(--text-3);line-height:1.7}

  footer.site-footer{background:#0f172a;color:#94a3b8;padding:34px 0 26px;margin-top:20px}
  .foot-inner{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:center}
  .foot-logo{color:#fff;font-weight:800;font-size:17px;display:flex;align-items:center;gap:9px}
  .foot-links{display:flex;gap:20px;font-size:13px;flex-wrap:wrap}
  .foot-links a:hover{color:#fff}
  .foot-copy{font-size:12.5px;color:#64748b}

  @media (max-width:1080px){.page-wrap{grid-template-columns:1fr}.info-bar{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:980px){nav.main-nav{display:none}}
  @media (max-width:640px){
    .container{padding:0 16px}
    .oh-top{flex-wrap:wrap;padding:24px 0 20px;gap:16px}.oh-avatar{width:64px;height:64px;font-size:23px;border-radius:16px}
    .oh-name{font-size:21px}.oh-actions{width:100%;padding-top:0}
    .info-bar{grid-template-columns:1fr}
    .art-thumb{display:none}
    .art-item{padding:15px 16px}
  }


/* ===== 机构库补充（生成器追加）===== */
.hub-hero-note{font-size:12.5px;color:rgba(255,255,255,.45);margin-top:14px}
.org-latest-empty{font-size:13px;color:#94a3b8}
.biz-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:3px 9px;border-radius:6px;background:#f5f3ff;color:#7c3aed}
.city-menu{position:fixed;z-index:200;top:180px;left:50%;transform:translateX(-50%);background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-xl);padding:16px;max-width:640px;width:min(92vw,640px)}
.city-menu .cm-head{font-size:13px;font-weight:800;color:#94a3b8;margin-bottom:10px;letter-spacing:.4px}
.city-menu .cm-item{border:1px solid var(--border);background:#fff;color:#475569;font-family:inherit;font-size:13.5px;font-weight:600;padding:7px 16px;border-radius:9px;margin:0 8px 8px 0;cursor:pointer;transition:all .18s}
.city-menu .cm-item:hover{border-color:#ddd6fe;color:#7c3aed}
.city-menu .cm-item.on{background:linear-gradient(135deg,#5b21b6,#7c3aed);border-color:transparent;color:#fff}
.lo-rel{font-style:normal;font-size:10.5px;font-weight:700;color:#94a3b8;background:#f1f5f9;border-radius:5px;padding:1px 6px;margin-left:6px;white-space:nowrap;flex-shrink:0}
.list-org .lo-n{display:flex;align-items:center;min-width:0}
.list-org .lo-n a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.org-name a,.ol-title a,.b-nm,.tm-n a,.lo-n a{color:inherit}
.org-name a:hover,.ol-title a:hover,.b-nm:hover,.tm-n a:hover,.lo-n a:hover{color:#7c3aed}
