
    /* ==========================================================================
       Shift Local Industry Detail Template v3.2 (Hairline Editorial System)
       Reusable across 100+ industry cluster pages via CSS Custom Properties
       ========================================================================== */
    .industry-report{
      /* Base Palette */
      --paper: #fafaf8;
      --paper-subtle: #f3f4f1;
      --surface: #ffffff;
      --ink: #252a28;
      --ink-secondary: #4e5652;
      --muted: #737a76;
      --muted-light: #949b96;
      --line: #dce0dc;
      --line-strong: #252a28;

      /* Dynamic Cluster Accent (Overridden per entry via inline style) */
      --industry-color: #789084;
      --industry-tint: rgba(155, 128, 172, 0.08);
      --industry-border: rgba(155, 128, 172, 0.35);

      /* Administrative Tier Dots */
      --tier-province: #8B75A6;
      --tier-prefecture: #668FA5;
      --tier-county: #B58A48;
      --tier-town: #438D79;

      /* Semantic Functional Accents */
      --accent-up: #668FA5;
      --accent-peer: #B58A48;
      --accent-down: var(--industry-color);
      --accent-positive: #438D79;
      --accent-caution: #B58A48;

      /* Typography */
      --font-sans: "Noto Sans SC", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", sans-serif;
      --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

      /* Layout Metrics */
      --max-w: 1240px;
      --toc-w: 210px;
      --header-h: 54px;
    }

    .industry-report *,.industry-report *::before,.industry-report *::after{
      box-sizing: border-box;
    }

    .industry-report{
      background-color: var(--paper);
      color: var(--ink);
      font-family: var(--font-sans);
      font-size: 15.5px;
      line-height: 1.85;
      -webkit-font-smoothing: antialiased;
      scroll-behavior: smooth;
    }

    @media  (prefers-reduced-motion: reduce) {
      .industry-report{
        scroll-behavior: auto;
      }
      .industry-report *,.industry-report *::before,.industry-report *::after{
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
      }
    }

    .industry-report{
      margin: 0;
      padding: 0;
      overflow-x: visible;
    }

    .industry-report a{
      color: inherit;
      text-decoration: none;
      transition: color 0.15s ease, border-color 0.15s ease, background-color 0.15s ease;
    }

    .industry-report a:focus-visible,.industry-report button:focus-visible,.industry-report summary:focus-visible,.industry-report [tabindex="0"]:focus-visible{
      outline: 2px solid var(--industry-color);
      outline-offset: 2px;
    }

    /* --------------------------------------------------------------------------
       1. Reading Progress Bar & Top Editorial Masthead
       -------------------------------------------------------------------------- */
    .industry-report .progress-rail{
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      height: 2px;
      background: rgba(220, 224, 220, 0.5);
      z-index: 100;
      pointer-events: none;
    }

    .industry-report .progress-bar{
      display: block;
      width: 100%;
      height: 100%;
      background: var(--industry-color);
      transform: scaleX(0);
      transform-origin: 0 50%;
    }

    .industry-report .masthead{
      position: sticky;
      top: 0;
      z-index: 80;
      background: rgba(250, 250, 248, 0.94);
      backdrop-filter: blur(8px);
      -webkit-backdrop-filter: blur(8px);
      border-bottom: 1px solid var(--line);
    }

    .industry-report .masthead-inner{
      max-width: var(--max-w);
      margin: 0 auto;
      padding: 0 28px;
      min-height: var(--header-h);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
    }

    .industry-report .brand-crumbs{
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 8px;
      font-size: 13px;
      color: var(--muted);
    }

    .industry-report .brand-logo{
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-family: var(--font-mono);
      font-weight: 600;
      font-size: 13px;
      color: var(--ink);
      padding: 2px 8px;
      border: 1px solid var(--line-strong);
      border-radius: 3px;
      background: var(--surface);
      letter-spacing: 0.02em;
    }

    .industry-report .brand-crumbs .sep{
      color: var(--line);
      font-family: var(--font-mono);
    }

    .industry-report .brand-crumbs a:hover{
      color: var(--ink);
      text-decoration: underline;
      text-underline-offset: 3px;
    }

    .industry-report .masthead-tools{
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .industry-report .mode-switch{
      display: inline-flex;
      align-items: center;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: var(--surface);
      padding: 2px;
      font-size: 12px;
    }

    .industry-report .mode-switch button{
      border: 0;
      background: transparent;
      color: var(--muted);
      padding: 4px 12px;
      border-radius: 999px;
      font-family: var(--font-sans);
      font-size: 12px;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 5px;
      white-space: nowrap;
    }

    .industry-report .mode-switch button.is-active{
      background: var(--ink);
      color: var(--surface);
      font-weight: 500;
    }

    /* Quick Action Mode: Collapse secondary archive sections */
    .industry-report.is-quick-mode [data-quick-collapse="true"]{
      display: none;
    }

    .industry-report .quick-mode-banner{
      display: none;
      max-width: var(--max-w);
      margin: 12px auto 0;
      padding: 0 28px;
    }

    .industry-report.is-quick-mode .quick-mode-banner{
      display: block;
    }

    .industry-report .quick-mode-banner-inner{
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding: 8px 14px;
      background: var(--industry-tint);
      border: 1px solid var(--industry-border);
      font-size: 12.5px;
      color: var(--ink-secondary);
    }

    .industry-report .quick-mode-banner button{
      border: 1px solid var(--ink);
      background: var(--surface);
      color: var(--ink);
      font-size: 11.5px;
      padding: 2px 10px;
      border-radius: 999px;
      cursor: pointer;
      white-space: nowrap;
    }

    /* --------------------------------------------------------------------------
       2. Page Container & Hero Section (Module 1)
       -------------------------------------------------------------------------- */
    .industry-report .page-shell{
      max-width: var(--max-w);
      margin: 0 auto;
      padding: 36px 28px 88px;
    }

    .industry-report .hero-dossier{
      border-top: 2px solid var(--line-strong);
      border-bottom: 1px solid var(--line);
      padding: 28px 0 32px;
    }

    .industry-report .hero-meta-bar{
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding-bottom: 20px;
      border-bottom: 1px solid var(--line);
      font-size: 12px;
      color: var(--muted);
    }

    .industry-report .hero-taxonomy{
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px;
    }

    .industry-report .badge-kind{
      display: inline-flex;
      align-items: center;
      padding: 2px 10px;
      border: 1px solid var(--line-strong);
      border-radius: 999px;
      font-size: 11.5px;
      font-weight: 500;
      color: var(--ink);
      background: var(--surface);
    }

    .industry-report .badge-industry{
      display: inline-flex;
      align-items: center;
      gap: 7px;
      padding: 2px 10px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: var(--surface);
      color: var(--ink-secondary);
      font-size: 12px;
    }

    .industry-report .badge-industry:hover{
      border-color: var(--industry-color);
      color: var(--ink);
    }

    .industry-report .industry-swatch{
      width: 8px;
      height: 8px;
      border-radius: 2px;
      background: var(--industry-color);
      display: inline-block;
    }

    .industry-report .badge-honor{
      display: inline-flex;
      align-items: center;
      gap: 5px;
      padding: 2px 9px;
      border: 1px solid var(--industry-border);
      background: var(--industry-tint);
      color: var(--ink);
      font-size: 11.5px;
      border-radius: 3px;
    }

    .industry-report .hero-doc-meta{
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 14px;
      font-family: var(--font-mono);
      font-size: 11.5px;
    }

    .industry-report .hero-doc-meta a{
      color: var(--ink);
      border-bottom: 1px solid var(--line-strong);
    }

    .industry-report .badge-quality{
      display: inline-flex;
      align-items: center;
      gap: 5px;
      padding: 2px 9px;
      border: 1px solid #bcd9c6;
      border-radius: 3px;
      background: #eef7f0;
      color: #2f6b4e;
      font-family: var(--font-body, inherit);
      font-size: 11.5px;
      white-space: nowrap;
      cursor: help;
    }

    .industry-report .hero-main-grid{
      display: grid;
      grid-template-columns: minmax(0, 1fr) 360px;
      gap: 44px;
      align-items: center;
      padding-top: 24px;
    }

    .industry-report .hero-title{
      font-size: 44px;
      font-weight: 700;
      letter-spacing: -0.025em;
      line-height: 1.18;
      margin: 0 0 14px;
      color: var(--ink);
    }

    /* Regional Tier Breadcrumb Path */
    .industry-report .location-strip{
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 8px;
      margin-bottom: 18px;
      font-size: 13px;
      color: var(--ink-secondary);
    }

    .industry-report .tier-node{
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 2px 9px;
      background: var(--surface);
      border: 1px solid var(--line);
      border-radius: 4px;
      font-size: 12.5px;
    }

    .industry-report .tier-dot{
      width: 7px;
      height: 7px;
      border-radius: 50%;
      display: inline-block;
      flex-shrink: 0;
    }

    .industry-report .tier-dot--province{ background-color: var(--tier-province); }
    .industry-report .tier-dot--prefecture{ background-color: var(--tier-prefecture); }
    .industry-report .tier-dot--county{ background-color: var(--tier-county); }
    .industry-report .tier-dot--town{ background-color: var(--tier-town); }

    .industry-report .tier-level-tag{
      font-size: 10.5px;
      color: var(--muted);
    }

    .industry-report .location-arrow{
      color: var(--muted-light);
      font-family: var(--font-mono);
      font-size: 11px;
    }

    .industry-report .carrier-pill{
      display: inline-flex;
      align-items: center;
      gap: 5px;
      padding: 2px 10px;
      background: var(--paper-subtle);
      border: 1px solid var(--line);
      border-radius: 4px;
      font-size: 12px;
      color: var(--ink-secondary);
    }

    .industry-report .hero-positioning{
      font-size: 18.5px;
      line-height: 1.75;
      color: var(--ink);
      margin: 0 0 20px;
      max-width: 680px;
      font-weight: 400;
    }

    .industry-report .product-tags{
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 8px;
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .industry-report .product-tags .label{
      font-size: 12px;
      color: var(--muted);
      margin-right: 4px;
    }

    .industry-report .product-tags a{
      display: inline-block;
      padding: 3px 12px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: var(--surface);
      font-size: 12.5px;
      color: var(--ink-secondary);
    }

    .industry-report .product-tags a:hover{
      border-color: var(--ink);
      color: var(--ink);
    }

    /* Local Industry Cutaway Illustration (Right Hero Column) */
    .industry-report .hero-visual{
      margin: 0;
      min-width: 0;
      position: relative;
    }

    .industry-report .hero-visual img.atlas-industry-illustration{
      display: block;
      width: 100%;
      aspect-ratio: 3 / 2;
      height: auto;
      object-fit: contain;
      filter: none !important;
      mix-blend-mode: normal;
      border: 0;
      border-radius: 0;
      box-shadow: none;
      background: transparent;
    }

    .industry-report .hero-visual figcaption{
      text-align: right;
      margin-top: 6px;
      font-size: 10.5px;
      color: var(--muted-light);
    }

    /* Key Figures 4-Column Strip */
    .industry-report .key-figures-grid{
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      margin: 28px 0 0;
      background: var(--surface);
      border: 1px solid var(--line);
      border-top: 2px solid var(--line-strong);
    }

    .industry-report .key-figure-cell{
      padding: 18px 20px;
      min-width: 0;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .industry-report .key-figure-cell + .key-figure-cell{
      border-left: 1px solid var(--line);
    }

    .industry-report .key-figure-label{
      font-size: 12px;
      color: var(--muted);
      margin-bottom: 6px;
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    .industry-report .key-figure-val{
      font-family: var(--font-mono);
      font-size: 26px;
      font-weight: 600;
      color: var(--ink);
      letter-spacing: -0.03em;
      line-height: 1.25;
    }

    .industry-report .key-figure-note{
      margin-top: 6px;
      font-size: 11.5px;
      color: var(--muted);
      line-height: 1.45;
    }

    /* --------------------------------------------------------------------------
       3. Cross-Place Value Chain Strip (Module 2)
       -------------------------------------------------------------------------- */
    .industry-report .xchain-panel{
      margin-top: 20px;
      background: var(--surface);
      border: 1px solid var(--line);
      padding: 18px 20px;
    }

    .industry-report .xchain-header{
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      justify-content: space-between;
      gap: 10px;
      margin-bottom: 14px;
      padding-bottom: 10px;
      border-bottom: 1px solid var(--line);
    }

    .industry-report .xchain-title-group{
      display: flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
    }

    .industry-report .xchain-kicker{
      font-family: var(--font-mono);
      font-size: 11px;
      text-transform: uppercase;
      letter-spacing: 0.06em;
      color: var(--muted);
      padding: 1px 7px;
      border: 1px solid var(--line);
      background: var(--paper);
    }

    .industry-report .xchain-title{
      font-size: 15px;
      font-weight: 600;
      color: var(--ink);
      margin: 0;
    }

    .industry-report .xchain-disclaimer{
      font-size: 12px;
      color: var(--muted);
      display: inline-flex;
      align-items: center;
      gap: 5px;
    }

    .industry-report .xchain-stages{
      display: grid;
      grid-template-columns: repeat(var(--chain-stage-count,5), minmax(0, 1fr));
      gap: 0;
      list-style: none;
      padding: 0;
      margin: 0;
      border: 1px solid var(--line);
    }

    .industry-report .xchain-stage{
      padding: 12px 14px;
      position: relative;
      background: var(--paper);
      display: flex;
      flex-direction: column;
      gap: 8px;
      min-width: 0;
    }

    .industry-report .xchain-stage + .xchain-stage{
      border-left: 1px solid var(--line);
    }

    .industry-report .xchain-stage.is-current{
      background: var(--surface);
      box-shadow: inset 0 3px 0 var(--industry-color);
    }

    .industry-report .xchain-stage-head{
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 6px;
    }

    .industry-report .xchain-stage-num{
      font-family: var(--font-mono);
      font-size: 11px;
      color: var(--muted);
    }

    .industry-report .xchain-stage-name{
      font-size: 13px;
      font-weight: 600;
      color: var(--ink);
    }

    .industry-report .here-pill{
      display: inline-block;
      font-size: 10.5px;
      font-weight: 500;
      padding: 1px 6px;
      border-radius: 3px;
      background: var(--industry-color);
      color: #fff;
      white-space: nowrap;
    }

    .industry-report .xchain-entries{
      display: flex;
      flex-wrap: wrap;
      gap: 5px 8px;
      font-size: 12.5px;
      line-height: 1.6;
    }

    .industry-report .xchain-entries a{
      color: var(--ink-secondary);
      border-bottom: 1px solid var(--line);
    }

    .industry-report .xchain-entries a:hover{
      color: var(--ink);
      border-bottom-color: var(--ink);
    }

    .industry-report .xchain-entries .current-cluster{
      font-weight: 600;
      color: var(--ink);
      background: var(--industry-tint);
      padding: 0 5px;
      border-radius: 2px;
    }

    .industry-report .xchain-note{
      font-size: 12px;
      color: var(--muted);
    }

    /* --------------------------------------------------------------------------
       4. Two-Column Body Layout (Sticky TOC + Main Report Workspace)
       -------------------------------------------------------------------------- */
    .industry-report .report-workspace{
      display: grid;
      grid-template-columns: var(--toc-w) minmax(0, 1fr);
      gap: 48px;
      margin-top: 40px;
      align-items: start;
    }

    /* Sticky Sidebar TOC */
    .industry-report .toc-sidebar{
      position: sticky;
      top: calc(var(--header-h) + 24px);
      border-left: 1px solid var(--line);
      padding-left: 16px;
    }

    .industry-report .toc-heading{
      font-family: var(--font-mono);
      font-size: 11px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: var(--muted);
      margin: 0 0 12px;
    }

    .industry-report .toc-group-label{
      font-size: 11px;
      color: var(--muted-light);
      margin: 14px 0 4px;
      font-weight: 500;
    }

    .industry-report .toc-list{
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .industry-report .toc-list li{
      margin: 0;
    }

    .industry-report .toc-link{
      display: flex;
      align-items: baseline;
      gap: 8px;
      padding: 4px 0;
      font-size: 13px;
      color: var(--muted);
      position: relative;
      line-height: 1.5;
    }

    .industry-report .toc-link:hover{
      color: var(--ink);
    }

    .industry-report .toc-link .toc-num{
      font-family: var(--font-mono);
      font-size: 11px;
      color: var(--muted-light);
      width: 18px;
      flex-shrink: 0;
    }

    .industry-report .toc-link.is-active{
      color: var(--ink);
      font-weight: 600;
    }

    .industry-report .toc-link.is-active .toc-num{
      color: var(--industry-color);
    }

    .industry-report .toc-link.is-active::before{
      content: "";
      position: absolute;
      left: -17px;
      top: 7px;
      bottom: 7px;
      width: 2px;
      background: var(--industry-color);
    }

    /* Editorial Chapter Dividers & Section Headers */
    .industry-report .report-main{
      min-width: 0;
    }

    .industry-report .chapter-banner{
      display: flex;
      align-items: center;
      gap: 12px;
      margin: 52px 0 20px;
      padding-bottom: 8px;
      border-bottom: 2px solid var(--line-strong);
    }

    .industry-report .chapter-banner:first-child{
      margin-top: 0;
    }

    .industry-report .chapter-code{
      font-family: var(--font-mono);
      font-size: 11.5px;
      font-weight: 600;
      padding: 2px 8px;
      background: var(--ink);
      color: var(--surface);
      letter-spacing: 0.05em;
    }

    .industry-report .chapter-name{
      font-size: 13px;
      font-weight: 600;
      color: var(--muted);
      letter-spacing: 0.04em;
    }

    .industry-report .report-section{
      margin-bottom: 48px;
      scroll-margin-top: calc(var(--header-h) + 20px);
    }

    .industry-report .section-head{
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 16px;
    }

    .industry-report .section-title{
      font-size: 22px;
      font-weight: 600;
      color: var(--ink);
      margin: 0;
      display: flex;
      align-items: baseline;
      gap: 10px;
      letter-spacing: -0.01em;
    }

    .industry-report .section-title .sec-num{
      font-family: var(--font-mono);
      font-size: 14px;
      color: var(--industry-color);
      font-weight: 600;
    }

    .industry-report .section-subtitle{
      font-size: 13px;
      color: var(--muted);
      margin: 0;
    }

    /* --------------------------------------------------------------------------
       5. Citations [n] & Distinct Content Badges (Editorial / Experience Post)
       -------------------------------------------------------------------------- */
    .industry-report .cite-ref{
      display: inline-block;
      font-family: var(--font-mono);
      font-size: 11px;
      line-height: 1.2;
      padding: 1px 4px;
      margin: 0 1px;
      color: var(--ink-secondary);
      background: var(--paper-subtle);
      border: 1px solid var(--line);
      border-radius: 3px;
      vertical-align: baseline;
      cursor: pointer;
    }

    .industry-report .cite-ref:hover,.industry-report .cite-ref:focus{
      background: var(--ink);
      color: var(--surface);
      border-color: var(--ink);
    }

    /* Distinct Badge 1: Editorial Judgment (编辑判断) */
    .industry-report .tag-editorial{
      display: inline-flex;
      align-items: center;
      gap: 4px;
      padding: 1px 8px;
      margin-left: 6px;
      font-size: 11.5px;
      font-weight: 500;
      color: #5b4369;
      background: rgba(155, 128, 172, 0.14);
      border: 1px solid var(--industry-color);
      border-radius: 3px;
      vertical-align: middle;
    }

    /* Distinct Badge 2: Experience Post / Dated Source Kind (经验帖·2019 等) */
    .industry-report .tag-experience{
      display: inline-flex;
      align-items: center;
      gap: 4px;
      padding: 1px 8px;
      margin-left: 6px;
      font-size: 11.5px;
      font-family: var(--font-mono);
      color: #8c6326;
      background: rgba(181, 138, 72, 0.10);
      border: 1px dashed var(--tier-county);
      border-radius: 3px;
      vertical-align: middle;
    }

    .industry-report .tag-media-kind{
      display: inline-flex;
      align-items: center;
      gap: 4px;
      padding: 1px 8px;
      margin-left: 6px;
      font-size: 11.5px;
      font-family: var(--font-mono);
      color: var(--ink-secondary);
      background: var(--paper-subtle);
      border: 1px solid var(--line);
      border-radius: 3px;
      vertical-align: middle;
    }

    /* --------------------------------------------------------------------------
       6. Module 3: Core Takeaways (核心观点)
       -------------------------------------------------------------------------- */
    .industry-report .takeaways-list{
      list-style: none;
      padding: 0;
      margin: 0;
      background: var(--surface);
      border: 1px solid var(--line);
      border-top: 2px solid var(--line-strong);
    }

    .industry-report .takeaway-item{
      display: grid;
      grid-template-columns: 44px 210px minmax(0, 1fr);
      gap: 16px;
      padding: 16px 20px;
      border-bottom: 1px solid var(--line);
      align-items: baseline;
    }

    .industry-report .takeaway-item:last-child{
      border-bottom: 0;
    }

    .industry-report .takeaway-item.is-editorial{
      background: var(--industry-tint);
      border-left: 3px solid var(--industry-color);
    }

    .industry-report .takeaway-idx{
      font-family: var(--font-mono);
      font-size: 13px;
      font-weight: 600;
      color: var(--industry-color);
    }

    .industry-report .takeaway-lead{
      font-size: 15px;
      font-weight: 600;
      color: var(--ink);
      line-height: 1.6;
    }

    .industry-report .takeaway-body{
      font-size: 15px;
      color: var(--ink-secondary);
      line-height: 1.85;
      margin: 0;
    }

    /* --------------------------------------------------------------------------
       7. Module 4: Direct Chain Position (在产业链上的位置)
       -------------------------------------------------------------------------- */
    .industry-report .chain-relations-grid{
      display: grid;
      grid-template-columns: repeat(var(--relation-group-count,3), minmax(0, 1fr));
      gap: 16px;
    }

    .industry-report .relation-column{
      background: var(--surface);
      border: 1px solid var(--line);
      border-top: 3px solid var(--line-strong);
      padding: 18px 20px;
      display: flex;
      flex-direction: column;
    }

    .industry-report .relation-column--up{ border-top-color: var(--accent-up); }
    .industry-report .relation-column--peer{ border-top-color: var(--accent-peer); }
    .industry-report .relation-column--down{ border-top-color: var(--accent-down); }

    .industry-report .relation-col-head{
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding-bottom: 12px;
      margin-bottom: 14px;
      border-bottom: 1px solid var(--line);
    }

    .industry-report .relation-col-title{
      font-size: 14px;
      font-weight: 600;
      color: var(--ink);
      margin: 0;
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .industry-report .relation-dir-badge{
      font-family: var(--font-mono);
      font-size: 10.5px;
      padding: 1px 6px;
      border-radius: 2px;
      background: var(--paper-subtle);
      color: var(--muted);
    }

    .industry-report .relation-items{
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: 14px;
    }

    .industry-report .relation-item{
      padding-bottom: 14px;
      border-bottom: 1px dashed var(--line);
    }

    .industry-report .relation-item:last-child{
      padding-bottom: 0;
      border-bottom: 0;
    }

    .industry-report .relation-entity{
      font-size: 14.5px;
      font-weight: 600;
      color: var(--ink);
      margin-bottom: 4px;
      display: block;
    }

    .industry-report .relation-desc{
      font-size: 13.5px;
      line-height: 1.75;
      color: var(--ink-secondary);
      margin: 0;
    }

    /* --------------------------------------------------------------------------
       8. Module 8: Business Model (商业模式：钱怎么流)
       -------------------------------------------------------------------------- */
    .industry-report .model-grid{
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 16px;
    }

    .industry-report .model-card{
      background: var(--surface);
      border: 1px solid var(--line);
      padding: 20px 22px;
      display: flex;
      flex-direction: column;
      gap: 8px;
    }

    .industry-report .model-card-head{
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .industry-report .model-step-num{
      font-family: var(--font-mono);
      font-size: 12px;
      font-weight: 600;
      color: var(--industry-color);
      padding: 1px 7px;
      border: 1px solid var(--industry-border);
      background: var(--industry-tint);
    }

    .industry-report .model-card-title{
      font-size: 16px;
      font-weight: 600;
      color: var(--ink);
      margin: 0;
    }

    .industry-report .model-card-text{
      font-size: 14.5px;
      line-height: 1.85;
      color: var(--ink-secondary);
      margin: 0;
    }

    /* --------------------------------------------------------------------------
       9. Module 11: Opportunities for Solo / Small Teams (核心模块重点设计)
       -------------------------------------------------------------------------- */
    .industry-report .filter-bar{
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 8px;
    }

    .industry-report .filter-btn{
      padding: 5px 14px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: var(--surface);
      font-family: var(--font-sans);
      font-size: 12.5px;
      color: var(--ink-secondary);
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }

    .industry-report .filter-btn:hover{
      border-color: var(--ink);
      color: var(--ink);
    }

    .industry-report .filter-btn.is-on{
      border-color: var(--ink);
      background: var(--ink);
      color: var(--surface);
      font-weight: 500;
    }

    .industry-report .filter-btn .count{
      font-family: var(--font-mono);
      font-size: 11px;
      opacity: 0.8;
    }

    .industry-report .opp-cards-stack{
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 18px;
    }

    .industry-report .opp-card{
      background: var(--surface);
      border: 1px solid var(--line);
      border-top: 3px solid var(--industry-color);
      padding: 22px 24px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 16px;
    }

    .industry-report .opp-card[hidden]{
      display: none !important;
    }

    /* Highlight full width for the 5th card on desktop if odd count */
    .industry-report .opp-card:last-child:nth-child(odd){
      grid-column: 1 / -1;
    }

    .industry-report .opp-card-header{
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
      padding-bottom: 12px;
      border-bottom: 1px solid var(--line);
    }

    .industry-report .opp-title-wrap{
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .industry-report .opp-index{
      font-family: var(--font-mono);
      font-size: 12px;
      color: var(--muted);
    }

    .industry-report .opp-title{
      font-size: 17.5px;
      font-weight: 600;
      color: var(--ink);
      margin: 0;
    }

    .industry-report .opp-team-badge{
      display: inline-flex;
      align-items: center;
      gap: 5px;
      padding: 2px 10px;
      border: 1px solid var(--line-strong);
      border-radius: 999px;
      font-family: var(--font-mono);
      font-size: 11.5px;
      font-weight: 500;
      color: var(--ink);
      background: var(--paper);
      white-space: nowrap;
    }

    .industry-report .opp-how{
      font-size: 14.5px;
      line-height: 1.85;
      color: var(--ink);
      margin: 0;
    }

    .industry-report .opp-meta-boxes{
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
    }

    .industry-report .opp-box{
      padding: 12px 14px;
      background: var(--paper);
      border: 1px solid var(--line);
    }

    .industry-report .opp-box--need{
      border-left: 2px solid var(--accent-positive);
    }

    .industry-report .opp-box--risk{
      border-left: 2px solid var(--accent-caution);
    }

    .industry-report .opp-box-label{
      font-size: 11.5px;
      font-weight: 600;
      color: var(--muted);
      margin-bottom: 4px;
      display: flex;
      align-items: center;
      gap: 5px;
    }

    .industry-report .opp-box--need .opp-box-label{ color: #2f6f5e; }
    .industry-report .opp-box--risk .opp-box-label{ color: #8c6326; }

    .industry-report .opp-box-text{
      font-size: 13px;
      line-height: 1.7;
      color: var(--ink-secondary);
      margin: 0;
    }

    .industry-report .opp-careers-bar{
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 8px;
      padding-top: 12px;
      border-top: 1px solid var(--line);
      font-size: 12.5px;
    }

    .industry-report .opp-careers-label{
      font-size: 12px;
      color: var(--muted);
      margin-right: 4px;
    }

    .industry-report .career-chip{
      display: inline-flex;
      align-items: center;
      gap: 5px;
      padding: 3px 10px;
      border-radius: 4px;
      font-size: 12.5px;
    }

    .industry-report .career-chip .code{
      font-family: var(--font-mono);
      font-size: 11px;
      opacity: 0.75;
    }

    .industry-report .career-chip--active{
      background: var(--surface);
      border: 1px solid var(--line-strong);
      color: var(--ink);
      font-weight: 500;
    }

    .industry-report .career-chip--active:hover{
      background: var(--ink);
      color: var(--surface);
    }

    .industry-report .career-chip--inactive{
      background: var(--paper-subtle);
      border: 1px dashed var(--line);
      color: var(--muted);
      cursor: default;
    }

    /* --------------------------------------------------------------------------
       10. Module 12: Field Guide (实地指南)
       -------------------------------------------------------------------------- */
    .industry-report .guide-checklist{
      list-style: none;
      padding: 0;
      margin: 0;
      background: var(--surface);
      border: 1px solid var(--line);
    }

    .industry-report .guide-item{
      display: grid;
      grid-template-columns: 36px minmax(0, 1fr) auto;
      gap: 12px;
      padding: 14px 20px;
      border-bottom: 1px solid var(--line);
      align-items: baseline;
    }

    .industry-report .guide-item:last-child{
      border-bottom: 0;
    }

    .industry-report .guide-num{
      font-family: var(--font-mono);
      font-size: 12.5px;
      font-weight: 600;
      color: var(--industry-color);
    }

    .industry-report .guide-text{
      font-size: 14.5px;
      line-height: 1.8;
      color: var(--ink);
      margin: 0;
    }

    .industry-report .section-footnote{
      font-size: 12px;
      color: var(--muted);
      margin: 10px 0 0;
      display: flex;
      align-items: center;
      gap: 6px;
    }

    /* --------------------------------------------------------------------------
       11. Module 9 & 10: Competition Table & Outlook (竞争格局 + 趋势与风险)
       -------------------------------------------------------------------------- */
    .industry-report .table-container{
      background: var(--surface);
      border: 1px solid var(--line);
      overflow-x: auto;
    }

    .industry-report .hairline-table{
      width: 100%;
      border-collapse: collapse;
      font-size: 13.5px;
      line-height: 1.7;
      text-align: left;
    }

    .industry-report .hairline-table th{
      font-size: 11.5px;
      font-weight: 600;
      color: var(--muted);
      padding: 11px 16px;
      border-bottom: 1px solid var(--line-strong);
      background: var(--paper);
      white-space: nowrap;
    }

    .industry-report .hairline-table td{
      padding: 13px 16px;
      border-bottom: 1px solid var(--line);
      color: var(--ink-secondary);
      vertical-align: top;
    }

    .industry-report .hairline-table tr:last-child td{
      border-bottom: 0;
    }

    .industry-report .hairline-table td:first-child{
      font-weight: 600;
      color: var(--ink);
      white-space: nowrap;
    }

    .industry-report .hairline-table tr.is-self td{
      background: var(--industry-tint);
    }

    .industry-report .hairline-table tr.is-self td:first-child{
      border-left: 3px solid var(--industry-color);
    }

    .industry-report .table-entity-link{
      color: var(--ink);
      border-bottom: 1px solid var(--line-strong);
      display: inline-flex;
      align-items: center;
      gap: 3px;
    }

    .industry-report .table-entity-link:hover{
      color: var(--industry-color);
      border-bottom-color: var(--industry-color);
    }

    /* Mobile Comparison Cards (Shown on narrow screens to prevent horizontal page overflow) */
    .industry-report .competition-mobile-cards{
      display: none;
      flex-direction: column;
      gap: 12px;
    }

    .industry-report .comp-m-card{
      background: var(--surface);
      border: 1px solid var(--line);
      padding: 14px 16px;
    }

    .industry-report .comp-m-card.is-self{
      border-top: 3px solid var(--industry-color);
      background: var(--industry-tint);
    }

    .industry-report .comp-m-head{
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      gap: 8px;
      margin-bottom: 8px;
      padding-bottom: 6px;
      border-bottom: 1px solid var(--line);
    }

    .industry-report .comp-m-head strong{
      font-size: 15px;
      color: var(--ink);
    }

    .industry-report .comp-m-head span{
      font-size: 12px;
      color: var(--muted);
    }

    .industry-report .comp-m-row{
      font-size: 13px;
      margin-top: 6px;
      line-height: 1.65;
    }

    .industry-report .comp-m-row b{
      color: var(--ink);
      margin-right: 6px;
    }

    /* Outlook Drivers vs Risks */
    .industry-report .outlook-grid{
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 18px;
    }

    .industry-report .outlook-panel{
      background: var(--surface);
      border: 1px solid var(--line);
      border-top: 3px solid var(--line-strong);
      padding: 20px 22px;
    }

    .industry-report .outlook-panel--drivers{
      border-top-color: var(--accent-positive);
    }

    .industry-report .outlook-panel--risks{
      border-top-color: var(--accent-caution);
    }

    .industry-report .outlook-panel h3{
      font-size: 15.5px;
      font-weight: 600;
      margin: 0 0 14px;
      padding-bottom: 10px;
      border-bottom: 1px solid var(--line);
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    .industry-report .outlook-list{
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    .industry-report .outlook-list li{
      position: relative;
      padding-left: 20px;
      font-size: 14px;
      line-height: 1.8;
      color: var(--ink-secondary);
    }

    .industry-report .outlook-panel--drivers .outlook-list li::before{
      content: "+";
      position: absolute;
      left: 0;
      top: 0;
      font-family: var(--font-mono);
      font-weight: 600;
      color: var(--accent-positive);
    }

    .industry-report .outlook-panel--risks .outlook-list li::before{
      content: "!";
      position: absolute;
      left: 2px;
      top: 0;
      font-family: var(--font-mono);
      font-weight: 600;
      color: var(--accent-caution);
    }

    /* --------------------------------------------------------------------------
       12. Module 5: Overview, Sub-markets & History Timeline (概况与历史)
       -------------------------------------------------------------------------- */
    .industry-report .scope-callout{
      background: var(--surface);
      border: 1px solid var(--line);
      border-left: 3px solid var(--industry-color);
      padding: 16px 20px;
      margin-bottom: 20px;
      font-size: 15px;
      line-height: 1.85;
      color: var(--ink);
    }

    .industry-report .overview-split{
      display: grid;
      grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
      gap: 24px;
      align-items: start;
    }

    .industry-report .subpanel-box{
      background: var(--surface);
      border: 1px solid var(--line);
      padding: 18px 20px;
    }

    .industry-report .subpanel-title{
      font-size: 15px;
      font-weight: 600;
      color: var(--ink);
      margin: 0 0 14px;
      padding-bottom: 10px;
      border-bottom: 1px solid var(--line);
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    .industry-report .subpanel-title span{
      font-family: var(--font-mono);
      font-size: 11.5px;
      color: var(--muted);
      font-weight: 400;
    }

    .industry-report .timeline-list{
      list-style: none;
      padding: 0;
      margin: 0;
      position: relative;
    }

    .industry-report .timeline-list li{
      display: grid;
      grid-template-columns: 84px minmax(0, 1fr);
      gap: 14px;
      padding: 10px 0 10px 16px;
      border-left: 1px solid var(--line);
      position: relative;
      margin-left: 6px;
    }

    .industry-report .timeline-list li::before{
      content: "";
      position: absolute;
      left: -4px;
      top: 18px;
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: var(--industry-color);
      border: 1px solid var(--surface);
    }

    .industry-report .timeline-year{
      font-family: var(--font-mono);
      font-size: 12.5px;
      font-weight: 600;
      color: var(--ink);
      padding-top: 2px;
    }

    .industry-report .timeline-desc{
      font-size: 13.5px;
      line-height: 1.75;
      color: var(--ink-secondary);
      margin: 0;
    }

    /* --------------------------------------------------------------------------
       13. Module 6: Data Charts & Multi-Scope Table (数据：规模怎么变的)
       -------------------------------------------------------------------------- */
    .industry-report .data-caution-banner{
      display: flex;
      align-items: flex-start;
      gap: 10px;
      padding: 12px 16px;
      background: var(--paper-subtle);
      border: 1px solid var(--line);
      font-size: 13px;
      line-height: 1.7;
      color: var(--ink-secondary);
      margin-bottom: 18px;
    }

    .industry-report .data-caution-banner i{
      color: var(--tier-county);
      font-size: 16px;
      margin-top: 2px;
      flex-shrink: 0;
    }

    .industry-report .charts-grid{
      display: grid;
      grid-template-columns: 1fr;
      gap: 18px;
      margin-bottom: 24px;
    }

    .industry-report .chart-card{
      margin: 0;
      background: var(--surface);
      border: 1px solid var(--line);
      padding: 18px 20px;
    }

    .industry-report .chart-header{
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      justify-content: space-between;
      gap: 10px;
      margin-bottom: 12px;
      padding-bottom: 10px;
      border-bottom: 1px solid var(--line);
    }

    .industry-report .chart-title-group{
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      gap: 10px;
    }

    .industry-report .chart-title{
      font-size: 15.5px;
      font-weight: 600;
      color: var(--ink);
    }

    .industry-report .chart-spacing-rule{
      font-size: 11.5px;
      color: var(--muted);
      background: var(--paper);
      padding: 1px 8px;
      border: 1px solid var(--line);
      border-radius: 3px;
    }

    .industry-report .chart-controls{
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .industry-report .chart-unit{
      font-family: var(--font-mono);
      font-size: 11.5px;
      color: var(--muted);
    }

    .industry-report .chart-toggle-btn{
      padding: 3px 10px;
      border: 1px solid var(--line);
      border-radius: 4px;
      background: var(--paper);
      font-size: 12px;
      color: var(--ink-secondary);
      cursor: pointer;
    }

    .industry-report .chart-toggle-btn:hover{
      border-color: var(--ink);
      color: var(--ink);
    }

    .industry-report .chart-svg-wrap{
      width: 100%;
      overflow-x: auto;
    }

    .industry-report .chart-svg{
      display: block;
      width: 100%;
      height: auto;
      min-width: 560px;
      overflow: visible;
    }

    .industry-report .chart-svg .grid-line{
      stroke: #e6e9e6;
      stroke-width: 1;
    }

    .industry-report .chart-svg .base-line{
      stroke: var(--ink);
      stroke-width: 1;
    }

    .industry-report .chart-svg .axis-tick{
      font-family: var(--font-mono);
      font-size: 11px;
      fill: var(--muted);
    }

    .industry-report .chart-svg .trend-path{
      fill: none;
      stroke: var(--industry-color);
      stroke-width: 2;
    }

    .industry-report .chart-svg .trend-area{
      fill: var(--industry-color);
      opacity: 0.07;
    }

    .industry-report .chart-svg .stem-line{
      stroke: var(--industry-color);
      stroke-width: 1.5;
      stroke-dasharray: 2 2;
      opacity: 0.55;
    }

    .industry-report .chart-svg .pt-node{
      cursor: pointer;
    }

    .industry-report .chart-svg .pt-circle{
      fill: var(--industry-color);
      stroke: var(--surface);
      stroke-width: 2;
      transition: r 0.15s ease;
    }

    .industry-report .chart-svg .pt-node.is-alt .pt-circle{
      fill: var(--surface);
      stroke: var(--industry-color);
      stroke-width: 2.2;
    }

    .industry-report .chart-svg .pt-node:hover .pt-circle,.industry-report .chart-svg .pt-node:focus .pt-circle{
      r: 7.5;
    }

    .industry-report .chart-svg .pt-hit{
      fill: transparent;
    }

    .industry-report .chart-svg .val-label{
      font-family: var(--font-mono);
      font-size: 11.5px;
      font-weight: 600;
      fill: var(--ink);
    }

    .industry-report .chart-svg .alt-annotation{
      font-family: var(--font-sans);
      font-size: 10.5px;
      fill: var(--muted);
    }

    .industry-report .chart-note{
      font-size: 12.5px;
      line-height: 1.7;
      color: var(--muted);
      margin: 10px 0 0;
      padding-top: 8px;
      border-top: 1px dashed var(--line);
    }

    .industry-report .chart-data-details{
      margin-top: 10px;
    }

    .industry-report .chart-data-details summary{
      cursor: pointer;
      font-size: 12.5px;
      color: var(--ink-secondary);
      user-select: none;
    }

    .industry-report .mono-num{
      font-family: var(--font-mono);
      font-weight: 600;
      color: var(--ink);
    }

    /* --------------------------------------------------------------------------
       14. Module 7: Notable Companies & Brands (知名企业与品牌)
       -------------------------------------------------------------------------- */
    .industry-report .companies-grid{
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
    }

    .industry-report .company-card{
      background: var(--surface);
      border: 1px solid var(--line);
      padding: 16px 18px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 8px;
    }

    .industry-report .company-card[hidden]{
      display: none !important;
    }

    .industry-report .company-card-top{
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
    }

    .industry-report .company-type-tag{
      font-size: 11px;
      padding: 1px 8px;
      border: 1px solid var(--line);
      border-radius: 3px;
      color: var(--muted);
      background: var(--paper);
    }

    .industry-report .company-name{
      font-size: 15.5px;
      font-weight: 600;
      color: var(--ink);
      margin: 6px 0 4px;
    }

    .industry-report .company-role{
      font-size: 13.5px;
      line-height: 1.75;
      color: var(--ink-secondary);
      margin: 0;
    }

    .industry-report .company-scale{
      margin: 6px 0 0;
      padding-top: 6px;
      border-top: 1px dashed var(--line);
      font-size: 12.5px;
      color: var(--ink);
      font-weight: 500;
    }

    /* --------------------------------------------------------------------------
       15. Modules 13, 14, 15, 16: Peers, Original Text, Sources, Continue Nav
       -------------------------------------------------------------------------- */
    .industry-report .peers-grid{
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }

    .industry-report .peer-card{
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      padding: 14px 16px;
      background: var(--surface);
      border: 1px solid var(--line);
    }

    .industry-report .peer-card:hover{
      border-color: var(--ink);
    }

    .industry-report .peer-card.is-current{
      background: var(--industry-tint);
      border-color: var(--industry-border);
    }

    .industry-report .peer-card-head{
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      margin-bottom: 6px;
    }

    .industry-report .peer-card-title{
      font-size: 15px;
      font-weight: 600;
      color: var(--ink);
    }

    .industry-report .peer-card-note{
      font-size: 13px;
      line-height: 1.65;
      color: var(--ink-secondary);
      margin: 0;
    }

    /* Original 5 Sections Collapsible */
    .industry-report .archive-details{
      background: var(--surface);
      border: 1px solid var(--line);
    }

    .industry-report .archive-details summary{
      padding: 16px 20px;
      cursor: pointer;
      list-style: none;
      display: flex;
      align-items: center;
      justify-content: space-between;
      font-size: 15.5px;
      font-weight: 600;
      color: var(--ink);
    }

    .industry-report .archive-details summary::-webkit-details-marker{
      display: none;
    }

    .industry-report .archive-summary-left{
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .industry-report .archive-toggle-icon{
      font-family: var(--font-mono);
      font-size: 14px;
      width: 20px;
      height: 20px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border: 1px solid var(--line);
      color: var(--muted);
    }

    .industry-report .archive-details[open] .archive-toggle-icon::before{
      content: "−";
    }

    .industry-report .archive-details:not([open]) .archive-toggle-icon::before{
      content: "+";
    }

    .industry-report .archive-body{
      padding: 0 20px 20px;
      border-top: 1px solid var(--line);
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 18px;
      padding-top: 18px;
    }

    .industry-report .archive-sec-item h3{
      font-size: 14.5px;
      font-weight: 600;
      color: var(--ink);
      margin: 0 0 6px;
    }

    .industry-report .archive-sec-item p{
      font-size: 13.5px;
      line-height: 1.8;
      color: var(--ink-secondary);
      margin: 0;
    }

    /* Sources List */
    .industry-report .sources-list{
      list-style: none;
      padding: 0;
      margin: 0;
      background: var(--surface);
      border: 1px solid var(--line);
    }

    .industry-report .source-item{
      display: grid;
      grid-template-columns: 42px minmax(0, 1fr) auto;
      gap: 12px;
      padding: 12px 18px;
      border-bottom: 1px solid var(--line);
      align-items: baseline;
      transition: background-color 0.25s ease;
    }

    .industry-report .source-item:last-child{
      border-bottom: 0;
    }

    .industry-report .source-item.is-highlighted{
      background-color: var(--industry-tint);
      box-shadow: inset 3px 0 0 var(--industry-color);
    }

    .industry-report .source-num{
      font-family: var(--font-mono);
      font-size: 12px;
      font-weight: 600;
      color: var(--muted);
    }

    .industry-report .source-main{
      min-width: 0;
    }

    .industry-report .source-title-link{
      font-size: 14px;
      font-weight: 500;
      color: var(--ink);
      border-bottom: 1px solid var(--line);
      display: inline-flex;
      align-items: center;
      gap: 4px;
    }

    .industry-report .source-title-link:hover{
      color: var(--industry-color);
      border-bottom-color: var(--industry-color);
    }

    .industry-report .source-meta{
      margin-top: 4px;
      font-size: 12px;
      color: var(--muted);
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 8px;
    }

    .industry-report .source-dates{
      font-family: var(--font-mono);
      font-size: 11.5px;
      color: var(--muted);
      white-space: nowrap;
    }

    .industry-report .back-to-cite-btn{
      display: none;
      margin-left: 8px;
      padding: 1px 8px;
      font-size: 11px;
      border: 1px solid var(--industry-color);
      background: var(--surface);
      color: var(--ink);
      border-radius: 3px;
      cursor: pointer;
    }

    .industry-report .source-item.is-highlighted .back-to-cite-btn{
      display: inline-block;
    }

    .industry-report .disclaimer-box{
      margin-top: 14px;
      padding: 14px 18px;
      background: var(--paper-subtle);
      border: 1px solid var(--line);
      font-size: 12.5px;
      line-height: 1.75;
      color: var(--muted);
    }

    /* Module 16: Continue Exploring Province (继续认识本省) */
    .industry-report .continue-province-section{
      margin-top: 56px;
      padding-top: 28px;
      border-top: 2px solid var(--line-strong);
    }

    .industry-report .continue-grid{
      display: grid;
      grid-template-columns: repeat(6, minmax(0, 1fr));
      gap: 10px;
      margin-top: 14px;
    }

    .industry-report .continue-card{
      padding: 14px 14px;
      background: var(--surface);
      border: 1px solid var(--line);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 8px;
    }

    .industry-report .continue-card:hover{
      border-color: var(--ink);
    }

    .industry-report .continue-card-prov{
      font-size: 11px;
      color: var(--muted);
      display: flex;
      align-items: center;
      gap: 5px;
    }

    .industry-report .continue-card-name{
      font-size: 14.5px;
      font-weight: 600;
      color: var(--ink);
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    /* --------------------------------------------------------------------------
       16. Floating Tooltip & Back to Top Button
       -------------------------------------------------------------------------- */
    .industry-report .floating-tooltip{
      position: absolute;
      z-index: 120;
      max-width: 320px;
      padding: 10px 13px;
      background: var(--surface);
      border: 1px solid var(--line-strong);
      box-shadow: 0 8px 24px rgba(37, 42, 40, 0.12);
      font-size: 12px;
      line-height: 1.6;
      color: var(--ink-secondary);
      pointer-events: none;
    }

    .industry-report .floating-tooltip[hidden]{
      display: none !important;
    }

    .industry-report .floating-tooltip .tip-title{
      display: block;
      font-weight: 600;
      color: var(--ink);
      margin-bottom: 3px;
    }

    .industry-report .floating-tooltip .tip-meta{
      display: block;
      color: var(--muted);
      font-size: 11px;
    }

    .industry-report .back-top-btn{
      position: fixed;
      right: 24px;
      bottom: 24px;
      z-index: 90;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 8px 14px;
      background: var(--surface);
      border: 1px solid var(--line-strong);
      border-radius: 999px;
      font-size: 12px;
      font-weight: 500;
      color: var(--ink);
      cursor: pointer;
      opacity: 0;
      transform: translateY(10px);
      pointer-events: none;
      transition: opacity 0.2s ease, transform 0.2s ease;
    }

    .industry-report .back-top-btn.is-visible{
      opacity: 1;
      transform: translateY(0);
      pointer-events: auto;
    }

    .industry-report .back-top-btn:hover{
      background: var(--ink);
      color: var(--surface);
    }

    /* --------------------------------------------------------------------------
       17. Responsive Breakpoints (Tablet & 375px Mobile Zero-Overflow Guarantee)
       -------------------------------------------------------------------------- */
    @media  (max-width: 1040px) {
      .industry-report .hero-main-grid{
        grid-template-columns: minmax(0, 1fr) 300px;
        gap: 28px;
      }
      .industry-report .report-workspace{
        grid-template-columns: 180px minmax(0, 1fr);
        gap: 32px;
      }
      .industry-report .takeaway-item{
        grid-template-columns: 36px 170px minmax(0, 1fr);
      }
      .industry-report .chain-relations-grid{
        grid-template-columns: 1fr;
      }
      .industry-report .overview-split{
        grid-template-columns: 1fr;
      }
      .industry-report .continue-grid{
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
    }

    @media  (max-width: 760px) {
      .industry-report .masthead-inner{
        padding: 8px 16px;
        min-height: 48px;
      }
      .industry-report .brand-crumbs .hide-sm{
        display: none;
      }
      .industry-report .page-shell{
        padding: 20px 16px 64px;
      }
      .industry-report .hero-main-grid{
        grid-template-columns: 1fr;
        gap: 20px;
      }
      .industry-report .hero-title{
        font-size: 32px;
      }
      .industry-report .hero-positioning{
        font-size: 16px;
      }
      .industry-report .key-figures-grid{
        grid-template-columns: 1fr 1fr;
      }
      .industry-report .key-figure-cell:nth-child(3){
        border-left: 0;
      }
      .industry-report .key-figure-cell:nth-child(n/**/+3){
        border-top: 1px solid var(--line);
      }
      .industry-report .key-figure-val{
        font-size: 21px;
      }
      .industry-report .xchain-stages{
        grid-template-columns: 1fr;
      }
      .industry-report .xchain-stage + .xchain-stage{
        border-left: 0;
        border-top: 1px solid var(--line);
      }
      .industry-report .xchain-stage.is-current{
        box-shadow: inset 3px 0 0 var(--industry-color);
      }

      /* Sticky Horizontal TOC on Mobile */
      .industry-report .report-workspace{
        grid-template-columns: 1fr;
        gap: 24px;
        margin-top: 24px;
      }
      .industry-report .toc-sidebar{
        position: sticky;
        top: 48px;
        z-index: 70;
        background: rgba(250, 250, 248, 0.96);
        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
        margin: 0 -16px;
        padding: 8px 16px;
        border-left: 0;
        border-bottom: 1px solid var(--line);
      }
      .industry-report .toc-heading,.industry-report .toc-group-label{
        display: none;
      }
      .industry-report .toc-list{
        display: flex;
        overflow-x: auto;
        gap: 14px;
        scrollbar-width: none;
      }
      .industry-report .toc-list::-webkit-scrollbar{
        display: none;
      }
      .industry-report .toc-link{
        white-space: nowrap;
        padding: 4px 2px;
        font-size: 12.5px;
      }
      .industry-report .toc-link.is-active::before{
        left: 0;
        right: 0;
        top: auto;
        bottom: 0;
        width: auto;
        height: 2px;
      }

      .industry-report .takeaway-item{
        grid-template-columns: 1fr;
        gap: 6px;
        padding: 14px 16px;
      }
      .industry-report .model-grid,.industry-report .opp-cards-stack,.industry-report .opp-meta-boxes,.industry-report .outlook-grid,.industry-report .companies-grid,.industry-report .peers-grid,.industry-report .archive-body{
        grid-template-columns: 1fr;
      }
      .industry-report .opp-card{
        padding: 18px 16px;
      }

      /* Switch Competition Table to Mobile Cards */
      .industry-report .competition-desktop-table{
        display: none;
      }
      .industry-report .competition-mobile-cards{
        display: flex;
      }

      .industry-report .guide-item{
        grid-template-columns: 28px minmax(0, 1fr);
      }
      .industry-report .guide-item .guide-badge-cell{
        grid-column: 2;
        margin-top: 4px;
      }
      .industry-report .source-item{
        grid-template-columns: 32px minmax(0, 1fr);
      }
      .industry-report .source-dates{
        grid-column: 2;
      }
      .industry-report .continue-grid{
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      .industry-report .back-top-btn span{
        display: none;
      }
    }
  
/* Integrate the approved report into the existing Shift shell. */
.industry-report{--site-header-h:0px;--masthead-height:54px;font-size:15.5px;line-height:1.85;isolation:isolate;min-width:0}
.industry-report .masthead{top:var(--site-header-h);z-index:25}
.industry-report .toc-sidebar{top:calc(var(--site-header-h) + var(--masthead-height) + 24px);z-index:20}
.industry-report .report-section{scroll-margin-top:calc(var(--site-header-h) + var(--masthead-height) + 64px)}
.industry-report .subpanel-box{min-width:0}
.industry-report .back-top-btn{right:88px;z-index:30}
.industry-report .progress-rail{top:var(--site-header-h);z-index:35}
.industry-report .floating-tooltip{z-index:45;overflow-wrap:anywhere}
.industry-report .atlas-continue{margin-top:56px}
@media(max-width:760px){.industry-report .toc-sidebar{top:calc(var(--site-header-h) + var(--masthead-height));display:flex;gap:14px;min-width:0;width:calc(100% + 32px);overflow-x:auto;scrollbar-width:none;align-items:center}.industry-report .toc-list{flex:none;overflow:visible;gap:14px}.industry-report .toc-list li{flex:none}.industry-report .masthead-inner{flex-wrap:wrap;gap:8px}.industry-report .back-top-btn{right:78px;bottom:20px}.industry-report .overview-split{grid-template-columns:minmax(0,1fr)}.industry-report .timeline-desc{min-width:0;overflow-wrap:anywhere}}

.industry-report .report-archive-count{font:400 12px var(--font-mono);color:var(--muted)}
.industry-report .report-paragraph{line-height:1.95;margin:0 0 18px}

@media(max-width:760px){.industry-report .back-top-btn{right:20px;bottom:80px}}

.industry-report .industry-preview-notice{max-width:1240px;margin:18px auto 0;padding:12px 20px;background:#fff6df;border:1px solid #e9d9aa;color:#6b5526;font-size:13px}

/* Shared four-act layout: sparse reports use the same components. */
.industry-report .outlook-grid:has(> :only-child),
.industry-report .chain-relations-grid:has(> :only-child){grid-template-columns:minmax(0,1fr)}
.industry-report .outlook-panel--observations{background:var(--paper,#fafbf9)}
.industry-report .xchain-stage-refs{display:inline-flex;gap:3px;flex-wrap:wrap;align-items:center}
.industry-report .xchain-stage-head{flex-wrap:wrap}

    /* Entries without an illustration use the full hero width instead of an empty 360px column. */
    .industry-report .hero-main-grid--solo{
      grid-template-columns: minmax(0, 1fr);
    }
    @media (max-width: 1040px){
      .industry-report .hero-main-grid--solo{
        grid-template-columns: minmax(0, 1fr);
      }
    }
