
  /* ---------- shared Research-Reports chrome ---------- */
  * { box-sizing:border-box; }
  body { background:var(--bg); color:var(--text); font:14px/1.6 -apple-system,"Segoe UI",Roboto,Helvetica,sans-serif; margin:0; padding:18px 18px 60px; }
  @media(min-width:1100px){ body{ padding-left:max(18px,calc((100vw - 1096px)/2)); padding-right:max(18px,calc((100vw - 1096px)/2)); } }
  a { color:var(--link); text-decoration:none; }
  .wrap { max-width:1060px; margin:0 auto; }
  /* unambiguous move colours (NOT tied to the zh red=up swap) */
  .r-neg { color:#d23f3f; font-weight:600; }
  .r-pos { color:#1f9a55; font-weight:600; }
  html[data-theme="dark"] .r-neg { color:#ef6a6a; }
  html[data-theme="dark"] .r-pos { color:#3fc07e; }
  .mut { color:var(--muted); }
  /* tags / chips */
  .chip { display:inline-flex; align-items:center; gap:5px; font-size:11.5px; line-height:1; padding:5px 10px; border-radius:999px;
          background:var(--panel2); border:1px solid var(--line); color:var(--muted); white-space:nowrap; }
  .chip.tag-macro   { color:#5b8def; border-color:#5b8def55; }
  .chip.tag-fed     { color:#c77dff; border-color:#c77dff55; }
  .chip.tag-rates   { color:#3fb6c0; border-color:#3fb6c055; }
  .chip.tag-equities{ color:#46b87a; border-color:#46b87a55; }
  .chip.tag-crypto  { color:#e0973a; border-color:#e0973a55; }
  .chip.tag-energy  { color:#cf7b3a; border-color:#cf7b3a55; }
  .chip.tag-event   { color:#e0607a; border-color:#e0607a55; }
  .chip.tag-ai      { color:#b48ead; border-color:#b48ead55; }
  .chip.tag-china   { color:#d0554f; border-color:#d0554f55; }
  .chip.tag-credit  { color:#d08770; border-color:#d0877055; }
  footer.rfoot { color:var(--muted); font-size:11.5px; margin:46px auto 0; max-width:1060px; border-top:1px solid var(--line); padding-top:14px; }
  
  .ss-hero { max-width:1060px; margin:18px auto 0; }
  .ss-hero .eyebrow { font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--link); font-weight:600; margin:0 0 8px; }
  .ss-hero h1 { font-size:29px; margin:0 0 8px; letter-spacing:-.01em; }
  html[data-lang="zh"] .ss-hero h1 { letter-spacing:0; }
  .ss-hero .lens { font-size:12px; color:var(--muted); }
  .ss-wrap { max-width:1060px; margin:0 auto; }
  h2.sec { font-size:18px; margin:26px 0 8px; border-top:1px solid var(--line); padding-top:16px; display:flex; align-items:baseline; gap:9px; }
  /* status chips */
  .status-chip { display:inline-flex; align-items:center; font:700 9px/1 ui-monospace,Menlo,monospace;
    letter-spacing:.05em; text-transform:uppercase; padding:2px 7px; border-radius:6px;
    border:1px solid; white-space:nowrap; vertical-align:middle; margin-left:6px; }
  .sc-ok      { background:color-mix(in srgb,var(--ok) 12%,transparent); color:var(--ok); border-color:color-mix(in srgb,var(--ok) 30%,transparent); }
  .sc-stale   { background:color-mix(in srgb,#e0973a 14%,transparent); color:#e0973a; border-color:color-mix(in srgb,#e0973a 35%,transparent); }
  .sc-missing { background:color-mix(in srgb,var(--muted) 12%,transparent); color:var(--muted); border-color:color-mix(in srgb,var(--muted) 28%,transparent); }
  /* context badge */
  .ctx-badge { font-size:10px; font-weight:700; padding:3px 9px; border-radius:999px;
    background:color-mix(in srgb,var(--muted) 12%,transparent);
    border:1px solid color-mix(in srgb,var(--muted) 28%,transparent); color:var(--muted); }
  /* tables */
  table.ss { border-collapse:collapse; width:100%; font-size:12.5px; margin:8px 0; }
  table.ss th { text-align:left; padding:7px 9px; background:var(--panel2); color:var(--muted); font-weight:600; border-bottom:2px solid var(--line); }
  table.ss td { padding:7px 9px; border-bottom:1px solid var(--line); vertical-align:top; }
  .large-flag { font-size:9px; font-weight:800; padding:2px 7px; border-radius:6px; text-transform:uppercase; letter-spacing:.03em;
    color:#e0973a; background:color-mix(in srgb,#e0973a 13%,transparent); border:1px solid color-mix(in srgb,#e0973a 30%,transparent); }
  /* cycle-context regime chips (W5) — muted/neutral only, no up/down coloring */
  .regime-chips { display:flex; flex-wrap:wrap; gap:4px; margin-top:3px; }
  .rg-chip { font-size:9px; font-weight:600; padding:1px 6px; border-radius:5px; background:color-mix(in srgb,var(--muted) 10%,transparent); color:var(--muted); border:1px solid color-mix(in srgb,var(--muted) 22%,transparent); letter-spacing:.03em; }
  /* callout / empty state */
  .callout { border-radius:12px; padding:13px 16px; margin:14px 0; border:1px solid var(--line); background:var(--panel2); font-size:13.5px; line-height:1.6; }
  .empty-state { font-size:12.5px; color:var(--muted); padding:10px 0; font-style:italic; }
  /* section cards */
  .ss-card { background:var(--panel); border:1px solid var(--line); border-radius:14px; padding:14px 16px; margin:12px 0; }
  .ss-card .sc-hd { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:8px; }
  .sc-num { font-size:24px; font-weight:800; font-variant-numeric:tabular-nums; }
  .sc-lbl { font-size:12px; color:var(--muted); }
  /* inquiry */
  .inq-row { display:flex; align-items:flex-start; gap:10px; padding:8px 0; border-bottom:1px solid var(--line); font-size:12.5px; }
  .inq-row:last-child { border-bottom:none; }
  .inq-title { flex:1; }
  .inq-meta { font-size:10.5px; color:var(--muted); white-space:nowrap; }
  .reply-tag { font-size:9px; font-weight:800; padding:2px 7px; border-radius:6px; text-transform:uppercase;
    color:#1f9a55; background:color-mix(in srgb,#1f9a55 12%,transparent); border:1px solid color-mix(in srgb,#1f9a55 28%,transparent); }
  /* preannounce by-type grid */
  .type-grid { display:flex; flex-wrap:wrap; gap:8px; margin:8px 0; }
  .type-pill { display:inline-flex; align-items:center; gap:6px; font-size:12px; padding:5px 11px; border-radius:999px;
    background:var(--panel2); border:1px solid var(--line); }
  .type-pill b { font-variant-numeric:tabular-nums; }
  /* expander */
  details.ss-more > summary { cursor:pointer; font-size:11px; color:var(--link); margin-top:6px; list-style:none; }
  details.ss-more > summary::-webkit-details-marker { display:none; }
  /* disclaimer */
  .disc { font-size:11.5px; color:var(--muted); margin-top:12px; line-height:1.55; }
  /* back nav */
  .back-nav { font-size:12px; margin-bottom:14px; }
  /* goodwill */
  .gw-strip { display:flex; gap:16px; flex-wrap:wrap; font-size:12.5px; margin:6px 0; }
  .gw-strip .gw-yr { color:var(--muted); } .gw-strip .gw-val { font-weight:700; }

