/* ==========================================================================
   VPNHF · 页面专属样式 · 流媒体解锁页
   只承载本页独有的版式:刊头双列、平台索引卡、支持状态标签、收尾卡
   颜色 / 圆角 / 投影一律引用 base.css 的 :root 令牌,不新增硬编码色值
   ========================================================================== */

.stream-hero{
  position:relative;
  z-index:1;
  padding-top:46px;
  padding-bottom:10px;
  overflow-x:clip;
}

.stream-head-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 352px;
  gap:44px;
  align-items:start;
}

.stream-copy{min-width:0;}

.page-title{
  margin:18px 0 0;
  max-width:20ch;
}

.stream-copy .lead{
  margin:16px 0 0;
  max-width:58ch;
  font-size:16.5px;
  line-height:1.75;
}

.stream-copy .btn-row{margin-top:24px;}

.stream-copy .trust-row{margin-top:20px;}

.stream-index{
  min-width:0;
  padding:20px 18px 16px;
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  background:var(--bg-panel);
  box-shadow:var(--shadow-card), 0 1px 0 var(--white-14) inset;
}

.stream-index-title{
  margin:0 0 10px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.02em;
  color:var(--text);
}

.stream-plat-list{
  display:flex;
  flex-direction:column;
  margin:0;
  padding:0;
  list-style:none;
}

.stream-plat-list li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 2px;
  border-bottom:1px dashed var(--border);
  font-size:13px;
  color:var(--text);
}

.stream-plat-list li:last-child{border-bottom:0;}

.stream-plat-name{
  min-width:0;
  font-weight:600;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.stream-plat-region{
  flex:none;
  font-family:var(--font-mono);
  font-size:10.5px;
  letter-spacing:.02em;
  color:var(--text-muted);
  white-space:nowrap;
}

/* —— 支持状态标签 —— */

.sup{
  display:inline-flex;
  align-items:center;
  gap:5px;
  max-width:100%;
  overflow:hidden;
  padding:2px 8px;
  border-radius:var(--radius-xs);
  font-size:11px;
  line-height:1.5;
  white-space:nowrap;
}

.sup--yes{
  background:var(--success-10);
  color:var(--success);
  font-weight:600;
}

.sup--part{
  background:var(--warn-10);
  color:var(--warn);
  font-weight:600;
}

.sup--plan{
  background:var(--accent-12);
  color:var(--accent-dark);
  font-weight:600;
}

/* —— 报错码表:首列等宽 —— */

.err-table td:first-child{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.01em;
  white-space:nowrap;
  color:var(--text);
}

/* —— 收尾卡 —— */

.endcard h2{
  margin:0 0 10px;
  font-size:clamp(19px, 2vw, 23px);
  font-weight:800;
}

.endcard p{
  margin:0;
  max-width:64ch;
  font-size:13.5px;
  line-height:1.74;
  color:var(--text-muted);
}

.endcard .btn-row{margin-top:16px;}

/* —— 响应式 —— */

@media (max-width:1040px){
  .stream-head-grid{
    grid-template-columns:minmax(0,1fr);
    gap:26px;
  }
  .stream-index{max-width:520px;}
  .page-title{max-width:none;}
}

@media (max-width:768px){
  .stream-hero{
    padding-top:30px;
    padding-bottom:6px;
  }
  .stream-copy .lead{font-size:15.5px;}
  .stream-index{max-width:none;}
}

@media (max-width:640px){
  .stream-hero{padding-top:24px;}
  .stream-index{padding:16px 14px 12px;}
  .stream-plat-list li{font-size:12.5px;padding:8px 2px;}
  .stream-plat-region{font-size:10px;}
  .endcard .btn-row .btn-ghost{width:100%;}
}