/* 合作与推广页 —— 复用 global.css 变量,前缀 pc- 避免冲突 */
.pc-wrap {
  padding-top: 24px;
  padding-bottom: 72px;
  display: flex;
  flex-direction: column;
  gap: 56px;
}

/* Hero */
.pc-hero {
  text-align: center;
  padding: 40px 20px 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.pc-eyebrow {
  font-family: var(--font-mono);
  font-size: calc(12px * var(--sv-font-scale, 1));
  letter-spacing: 2px;
  color: var(--text-muted);
}
.pc-title {
  font-family: var(--font-display);
  font-size: clamp(26px, 4vw, 44px);
  font-weight: 850;
  line-height: 1.15;
  color: var(--text-main);
  max-width: 760px;
}
.pc-sub {
  font-size: calc(15px * var(--sv-font-scale, 1));
  color: var(--text-secondary);
  max-width: 620px;
  line-height: 1.7;
}
.pc-hero-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 6px;
}
.pc-note {
  font-size: calc(12px * var(--sv-font-scale, 1));
  color: var(--text-muted);
}

/* 通用按钮 */
.pc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 22px;
  font-size: calc(13px * var(--sv-font-scale, 1));
  font-weight: 800;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition-fast, 0.15s ease);
  border: 1px solid transparent;
  text-decoration: none;
}
.pc-btn-primary {
  background: var(--accent);
  color: var(--accent-contrast);
}
.pc-btn-primary:hover { opacity: 0.88; }
.pc-btn-ghost {
  background: transparent;
  color: var(--text-main);
  border-color: var(--line-strong);
}
.pc-btn-ghost:hover { background: var(--accent-soft); }

/* Section 通用 */
.pc-section { display: flex; flex-direction: column; gap: 24px; }
.pc-sec-head { text-align: center; display: flex; flex-direction: column; gap: 8px; }
.pc-sec-head h2 {
  font-family: var(--font-display);
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 850;
  color: var(--text-main);
}
.pc-sec-head p { font-size: calc(14px * var(--sv-font-scale, 1)); color: var(--text-muted); }

/* VIP 套餐 */
.pc-plans {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.pc-plan {
  position: relative;
  background: var(--bg-card);
  border: 1px solid var(--line-soft);
  border-radius: var(--radius-xl);
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.pc-plan-hot {
  border-color: var(--warn);
  box-shadow: 0 0 0 1px var(--warn-soft), 0 16px 40px rgba(0,0,0,0.35);
}
.pc-plan-flag {
  position: absolute;
  top: -11px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--warn);
  color: #1a1400;
  font-size: calc(11px * var(--sv-font-scale, 1));
  font-weight: 850;
  padding: 4px 12px;
  border-radius: 999px;
  white-space: nowrap;
}
.pc-plan-name { font-size: calc(15px * var(--sv-font-scale, 1)); font-weight: 800; color: var(--text-main); }
.pc-plan-price { display: flex; align-items: baseline; gap: 2px; color: var(--text-main); }
.pc-cur { font-size: calc(18px * var(--sv-font-scale, 1)); font-weight: 700; }
.pc-amt { font-family: var(--font-display); font-size: calc(40px * var(--sv-font-scale, 1)); font-weight: 850; line-height: 1; }
.pc-per { font-size: calc(13px * var(--sv-font-scale, 1)); color: var(--text-muted); }
.pc-plan-tag { font-size: calc(12px * var(--sv-font-scale, 1)); color: var(--warn); font-family: var(--font-mono); }
.pc-benefits { list-style: none; padding: 0; margin: 4px 0; display: flex; flex-direction: column; gap: 10px; }
.pc-benefits li {
  position: relative;
  padding-left: 24px;
  font-size: calc(13px * var(--sv-font-scale, 1));
  color: var(--text-secondary);
  line-height: 1.5;
}
.pc-benefits li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--rise-green);
  font-weight: 900;
}
.pc-plan-cta { margin-top: auto; width: 100%; }

/* 邀请推广(2026-08-14 首屏撤掉邀请列表后改单列,邀请卡居中) */
.pc-invite { display: grid; grid-template-columns: 1fr; gap: 18px; }
.pc-invite .pc-invite-card { width: 100%; max-width: 680px; margin: 0 auto; }
.pc-invite-card {
  background: var(--bg-card);
  border: 1px solid var(--line-soft);
  border-radius: var(--radius-xl);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.pc-invite-link-row { display: flex; gap: 10px; }
.pc-invite-input {
  flex: 1;
  min-width: 0;
  padding: 12px 14px;
  background: var(--bg-tertiary);
  border: 1px solid var(--line-soft);
  border-radius: var(--radius-md);
  color: var(--text-secondary);
  font-family: var(--font-mono);
  font-size: calc(12px * var(--sv-font-scale, 1));
}
.pc-invite-hint { font-size: calc(12px * var(--sv-font-scale, 1)); color: var(--text-muted); line-height: 1.6; }
.pc-reward-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.pc-reward {
  background: var(--bg-card);
  border: 1px solid var(--line-soft);
  border-radius: var(--radius-lg);
  padding: 18px 14px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.pc-reward-ic { font-size: calc(24px * var(--sv-font-scale, 1)); }
.pc-reward-t { font-size: calc(13px * var(--sv-font-scale, 1)); font-weight: 800; color: var(--text-main); }
.pc-reward-d { font-size: calc(12px * var(--sv-font-scale, 1)); color: var(--text-muted); line-height: 1.5; }

/* 佣金梯度表 */
.pc-tier-table {
  background: var(--bg-card);
  border: 1px solid var(--line-soft);
  border-radius: var(--radius-xl);
  overflow: hidden;
}
.pc-tier-head, .pc-tier-row {
  display: grid;
  grid-template-columns: 1.2fr 1.3fr 1.2fr 1.4fr;
  gap: 12px;
  padding: 14px 20px;
  align-items: center;
}
.pc-tier-head {
  background: var(--bg-tertiary);
  font-family: var(--font-mono);
  font-size: calc(11px * var(--sv-font-scale, 1));
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--text-muted);
}
.pc-tier-row { border-top: 1px solid var(--line-soft); font-size: calc(13px * var(--sv-font-scale, 1)); color: var(--text-secondary); }
.pc-tier-row span:first-child { font-weight: 800; color: var(--text-main); }
.pc-tier-row span:nth-child(3) { color: var(--rise-green); font-weight: 800; font-family: var(--font-mono); }

/* 渠道合作 */
.pc-channel-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.pc-channel {
  background: var(--bg-card);
  border: 1px solid var(--line-soft);
  border-radius: var(--radius-xl);
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.pc-channel-ic { font-size: calc(26px * var(--sv-font-scale, 1)); }
.pc-channel h3 { font-size: calc(15px * var(--sv-font-scale, 1)); font-weight: 800; color: var(--text-main); }
.pc-channel p { font-size: calc(13px * var(--sv-font-scale, 1)); color: var(--text-muted); line-height: 1.6; }
/* 卡内入口(2026-08-10 开放 API):marginTop auto 让它贴卡片底部,几张卡的链接在同一水平线上 */
.pc-channel-link {
  margin-top: auto; font-size: calc(13px * var(--sv-font-scale, 1)); font-weight: 600; text-decoration: none;
  color: var(--warn, #f0b90b);
}
.pc-channel-link:hover { text-decoration: underline; }

/* CTA */
.pc-cta {
  text-align: center;
  background: var(--bg-card);
  border: 1px solid var(--line-soft);
  border-radius: var(--radius-xl);
  padding: 44px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}
.pc-cta h2 { font-family: var(--font-display); font-size: calc(26px * var(--sv-font-scale, 1)); font-weight: 850; color: var(--text-main); }
.pc-cta p { font-size: calc(14px * var(--sv-font-scale, 1)); color: var(--text-secondary); max-width: 480px; }
.pc-cta-actions { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; margin-top: 4px; }

/* 响应式 */
@media (max-width: 900px) {
  .pc-plans { grid-template-columns: 1fr; }
  .pc-invite { grid-template-columns: 1fr; }
  .pc-channel-grid { grid-template-columns: repeat(2, 1fr); }
  .pc-tier-head, .pc-tier-row { grid-template-columns: 1fr 1fr; row-gap: 4px; }
  .pc-tier-head span:nth-child(n+3), .pc-tier-row span:nth-child(n+3) { display: none; }
}
@media (max-width: 560px) {
  .pc-reward-grid { grid-template-columns: 1fr; }
  .pc-channel-grid { grid-template-columns: 1fr; }
}

/* ===== 我的邀请列表(2026-08-13 邀请系统) ===== */
.pc-invitees { margin-top: 14px; }
.pc-invitees-empty { padding: 14px; border-radius: 10px; border: 1px dashed var(--line, rgba(255,255,255,.12)); color: var(--text-muted, #8a8f9c); font-size: calc(12.5px * var(--sv-font-scale, 1)); line-height: 1.6; }
.pc-invitees-head { margin-bottom: 8px; font-size: calc(13px * var(--sv-font-scale, 1)); font-weight: 700; color: var(--text-main, #eaecef); }
.pc-invitees-rows { display: grid; gap: 6px; }
.pc-invitee-row { display: grid; grid-template-columns: minmax(0, 1.4fr) 1fr 1fr 1.2fr; gap: 8px; align-items: center; padding: 9px 12px; border-radius: 9px; background: var(--bg-sunken, rgba(0,0,0,.16)); font-size: calc(12.5px * var(--sv-font-scale, 1)); }
.pc-inv-user { font-family: var(--font-mono, ui-monospace, monospace); }
.pc-inv-date, .pc-inv-reward { color: var(--text-muted, #8a8f9c); }
.pc-inv-status { font-weight: 600; }
.pc-inv-approved { color: #2ebd85; }
.pc-inv-pending { color: #f0b90b; }
.pc-inv-rejected { color: var(--text-muted, #8a8f9c); }
@media (max-width: 560px) { .pc-invitee-row { grid-template-columns: 1fr 1fr; } }

/* ===== 邀请质量详情二级视图(2026-08-14) =====
   打开时隐藏页面其余区块,形态复用 pc-tier-table 表格语言;评级色沿用站内语义
   (待审核黄=既有 pc-inv-pending;付费用橙金与待审核区分;活跃绿=rise-green)。 */
body.pc-dash-open .pc-hero,
body.pc-dash-open .pc-section:not(.pc-dash),
body.pc-dash-open .pc-cta { display: none; }
.pc-dash-top { display: flex; flex-direction: column; gap: 14px; margin-bottom: 18px; }
.pc-dash-back { align-self: flex-start; }
.pc-invitees-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.pc-dash-open-btn { padding: 5px 12px; font-size: calc(12.5px * var(--sv-font-scale, 1)); }
.pc-invitees-clickable { cursor: pointer; }
.pc-invitees-clickable .pc-invitee-row:hover { background: var(--bg-tertiary, rgba(255,255,255,.05)); }

/* 汇总条 */
.pc-dash-stats { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; margin-bottom: 12px; }
.pc-stat {
  background: var(--bg-card); border: 1px solid var(--line-soft); border-radius: 12px;
  padding: 12px 14px; display: flex; flex-direction: column; gap: 3px;
}
.pc-stat b { font-family: var(--font-mono); font-size: calc(20px * var(--sv-font-scale, 1)); font-weight: 800; color: var(--text-main); }
.pc-stat span { font-size: calc(11.5px * var(--sv-font-scale, 1)); color: var(--text-muted); }
.pc-stat-money b { color: #f7931a; }
.pc-dash-tierline { font-size: calc(12.5px * var(--sv-font-scale, 1)); color: var(--text-muted); line-height: 1.7; margin-bottom: 14px; }
.pc-dash-tierline b { color: var(--text-main); }

/* 质量分布条 */
.pc-dist { margin-bottom: 14px; }
.pc-dist-bar { display: flex; height: 10px; border-radius: 5px; overflow: hidden; gap: 2px; }
.pc-dist-seg { flex-basis: 0; min-width: 4px; }
.pc-dist-legend { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 7px; font-size: calc(12px * var(--sv-font-scale, 1)); color: var(--text-secondary); }
.pc-dist-lg { display: inline-flex; align-items: center; gap: 5px; }
.pc-dist-lg i { width: 8px; height: 8px; border-radius: 2px; display: inline-block; }
.pc-dist-seg.g-paying,  .pc-dist-lg i.g-paying  { background: #f7931a; }
.pc-dist-seg.g-active,  .pc-dist-lg i.g-active  { background: var(--rise-green, #2ebd85); }
.pc-dist-seg.g-trial,   .pc-dist-lg i.g-trial   { background: #4a9eff; }
.pc-dist-seg.g-dormant, .pc-dist-lg i.g-dormant { background: #6b7280; }
.pc-dist-seg.g-pending, .pc-dist-lg i.g-pending { background: #f0b90b; }
.pc-dist-seg.g-rejected,.pc-dist-lg i.g-rejected{ background: #56455a; }

/* 评级 tab */
.pc-dash-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }

/* 邀请详情分页条(糖哥 2026-09-01「一页只显示 10 条然后分页」)。
   只用页面既有的 pc-btn / pc-btn-ghost,不新造按钮观感。 */
.pc-dash-pager { display: flex; align-items: center; justify-content: center; gap: 12px; margin-top: 14px; }
.pc-page-info { font-size: calc(13px * var(--sv-font-scale, 1)); color: var(--text-3); }
.pc-page-btn[disabled] { opacity: .4; cursor: not-allowed; }
.pc-dash-tab {
  border: 1px solid var(--line-soft); background: var(--bg-card); color: var(--text-secondary);
  border-radius: 999px; padding: 5px 13px; font-size: calc(12.5px * var(--sv-font-scale, 1)); cursor: pointer;
}
.pc-dash-tab.on { border-color: #f0b90b; color: var(--text-main); font-weight: 700; }
.pc-dash-search {
  margin-left: auto; min-width: 180px; padding: 6px 12px; font-size: calc(12.5px * var(--sv-font-scale, 1));
  background: var(--bg-card); border: 1px solid var(--line-soft); border-radius: 999px;
  color: var(--text-main); font-family: var(--font-mono);
}
.pc-dash-search:focus { outline: none; border-color: #f0b90b; }
.pc-dash-search::placeholder { color: var(--text-muted); font-family: inherit; }

/* 明细表:8 列(含 UID)复用 pc-tier-table 观感 */
.pc-dash-grid { grid-template-columns: minmax(0, 1.25fr) 0.7fr 0.75fr 0.95fr 0.95fr 1.15fr 0.85fr 0.85fr; }
.pc-inv-uid { font-family: var(--font-mono); color: var(--text-secondary); }
.pc-dash-row { cursor: pointer; }
.pc-dash-row:hover { background: var(--bg-tertiary, rgba(255,255,255,.04)); }
.pc-dash-table .pc-tier-row span:first-child { font-weight: 400; }
.pc-dash-table .pc-tier-row span:nth-child(3) { color: var(--text-secondary); font-weight: 400; font-family: inherit; }
.pc-sortable { cursor: pointer; user-select: none; }
.pc-sortable:hover { color: var(--text-main); }
.pc-paid-amt { color: #f7931a; font-weight: 800; font-family: var(--font-mono); }
.pc-grade {
  display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: calc(11.5px * var(--sv-font-scale, 1)); font-weight: 700;
}
.pc-grade.g-paying   { color: #f7931a; background: rgba(247,147,26,.12); }
.pc-grade.g-active   { color: var(--rise-green, #2ebd85); background: rgba(46,189,133,.12); }
.pc-grade.g-trial    { color: #4a9eff; background: rgba(74,158,255,.12); }
.pc-grade.g-dormant  { color: #9aa4b2; background: rgba(107,114,128,.16); }
.pc-grade.g-pending  { color: #f0b90b; background: rgba(240,185,11,.12); }
.pc-grade.g-rejected { color: #b98a9b; background: rgba(120,70,90,.18); }

/* 展开时间线 */
.pc-inv-detail { padding: 12px 20px 14px 32px; border-top: 1px dashed var(--line-soft); background: var(--bg-sunken, rgba(0,0,0,.12)); }
.pc-tl { display: flex; flex-direction: column; gap: 7px; }
.pc-tl-step { font-size: calc(12.5px * var(--sv-font-scale, 1)); color: var(--text-secondary); display: flex; align-items: center; gap: 9px; }
.pc-tl-step i { width: 7px; height: 7px; border-radius: 50%; flex: none; background: var(--text-muted); }
.pc-tl-step.done i { background: var(--rise-green, #2ebd85); }
.pc-tl-step.wait i { background: var(--text-muted); }
.pc-tl-step.off i { background: #dc4c5c; }
.pc-inv-usage { margin-top: 9px; font-size: calc(12px * var(--sv-font-scale, 1)); color: var(--text-muted); }

@media (max-width: 900px) {
  .pc-dash-stats { grid-template-columns: repeat(3, 1fr); }
  /* 8 列裁到 4:被邀请人 / UID / 评级 / 注册 */
  .pc-dash-grid { grid-template-columns: minmax(0, 1.2fr) 0.8fr 0.8fr 1fr; }
  /* 先救回被上方 pc-tier 通用规则(span:nth-child(n+3) 隐藏)藏掉的列,再按本表的列宽裁 */
  .pc-dash-table .pc-dash-grid span { display: block; }
  .pc-dash-table .pc-dash-grid span:nth-child(n+5) { display: none; }
  .pc-inv-detail { padding-left: 20px; }
  .pc-dash-search { min-width: 140px; flex: 1 1 140px; }
}
@media (max-width: 560px) {
  .pc-dash-stats { grid-template-columns: repeat(2, 1fr); }
  /* 裁到 3:被邀请人 / UID / 评级 */
  .pc-dash-grid { grid-template-columns: minmax(0, 1.2fr) 0.85fr 0.8fr; }
  .pc-dash-table .pc-dash-grid span:nth-child(n+4) { display: none; }
}

/* 合作页同首页:图文卡片有舒服的尺寸,版心走窄档 */
.container { max-width: var(--page-narrow); }

/* 分区副标题同理:一行不无限伸长(糖哥 2026-08-24 自适应分辨率)。
   ⚠️父级 .pc-sec-head 是 flex column + text-align:center,只加 max-width 会让这行贴左,
   必须配 margin-inline:auto 才还是居中的。 */
.pc-sec-head p { max-width: min(100%, 860px); margin-inline: auto; }
