.page-products{
  --p-cut:16px;
  --p-edge:clamp(18px,4vw,40px);
  background:var(--ink);
  color:var(--text);
  font-family:var(--font-body);
  overflow-x:clip;
  padding-bottom:clamp(48px,7vw,96px);
}

/* ---------- 面包屑 ---------- */
.page-products .breadcrumbs{
  padding-block:clamp(16px,2.4vw,28px) 0;
}
.page-products .breadcrumbs ol{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.08em;
  color:var(--dim);
}
.page-products .breadcrumbs li+li::before{
  content:"/";
  margin-right:10px;
  color:var(--line);
}
.page-products .breadcrumbs a{
  color:var(--dim);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:color .2s var(--ease), border-color .2s var(--ease);
}
.page-products .breadcrumbs a:hover{
  color:var(--cyan);
  border-bottom-color:var(--cyan);
}
.page-products .breadcrumbs [aria-current="page"]{
  color:var(--text);
}

/* ---------- 首屏 ---------- */
.page-products .hero{
  position:relative;
  margin-top:clamp(8px,1.4vw,18px);
}
.page-products .hero__stage{
  position:relative;
  padding:clamp(30px,5vw,68px) 0 clamp(64px,8vw,104px);
  background:
    linear-gradient(148deg, rgba(108,59,255,.30) 0%, rgba(108,59,255,0) 54%),
    linear-gradient(180deg, var(--panel), var(--panel));
  clip-path:polygon(0 0, 100% 0, 100% calc(100% - 54px), 0 100%);
}
.page-products .hero__stage::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(rgba(42,37,66,.95) 1px, transparent 1px);
  background-size:24px 24px;
  opacity:.55;
  pointer-events:none;
}
.page-products .hero__stage::after{
  content:"";
  position:absolute;
  right:-10%;
  top:-34%;
  width:50%;
  aspect-ratio:1;
  border:1px solid rgba(63,240,208,.26);
  border-radius:50%;
  pointer-events:none;
}
.page-products .hero__grid{
  position:relative;
  z-index:1;
  display:grid;
  gap:clamp(26px,4vw,52px);
  align-items:center;
}
@media (min-width:900px){
  .page-products .hero__grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);
  }
}
.page-products .hero__copy .display-1{
  margin:14px 0 0;
}
.page-products .hero__copy .lede{
  margin-top:18px;
}
.page-products .hero__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}
.page-products .hero__meta{
  margin:20px 0 0;
  font-size:12px;
  letter-spacing:.14em;
  color:var(--cyan);
}
.page-products .hero__shot{
  margin:0;
  padding:clamp(8px,1.2vw,14px);
  background:var(--panel-2);
  border:1px solid var(--line);
  clip-path:polygon(var(--p-cut) 0, 100% 0, 100% calc(100% - var(--p-cut)), calc(100% - var(--p-cut)) 100%, 0 100%, 0 var(--p-cut));
}
.page-products .hero__shot img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}

/* ---------- 三档会员速览条 ---------- */
.page-products .tierbar{
  position:relative;
  z-index:2;
  margin-top:-38px;
  padding:clamp(18px,2.6vw,28px) clamp(18px,3vw,34px);
  background:linear-gradient(180deg, var(--panel-2), var(--panel));
  border:1px solid var(--line);
  border-left:3px solid var(--purple);
  clip-path:polygon(0 0, calc(100% - 20px) 0, 100% 20px, 100% 100%, 20px 100%, 0 calc(100% - 20px));
  display:grid;
  gap:18px;
}
@media (min-width:860px){
  .page-products .tierbar{
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    gap:clamp(24px,3.4vw,48px);
  }
}
.page-products .tierbar__lead{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(16px,1.9vw,19px);
  letter-spacing:.05em;
  color:var(--text);
}
.page-products .tierbar__list{
  display:grid;
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
}
@media (min-width:640px){
  .page-products .tierbar__list{
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:clamp(14px,2.4vw,28px);
  }
}
.page-products .tierbar__item{
  display:grid;
  gap:5px;
  padding-left:14px;
  border-left:1px solid var(--line);
}
.page-products .tierbar__name{
  font-family:var(--font-display);
  font-size:16px;
  letter-spacing:.08em;
  color:var(--cyan);
}
.page-products .tierbar__desc{
  font-size:11.5px;
  letter-spacing:.04em;
  color:var(--dim);
  line-height:1.6;
}

/* ---------- 章节骨架 ---------- */
.page-products .section{
  padding-block:clamp(52px,7vw,96px);
}
.page-products .band{
  position:relative;
  background:var(--panel);
}
.page-products .band--tint{
  background:linear-gradient(180deg, var(--panel), var(--panel-2) 58%, var(--panel));
}
.page-products .band--deep{
  background:linear-gradient(180deg, var(--panel-2), var(--ink) 70%);
}
.page-products .band::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, var(--line) 18%, var(--line) 82%, transparent);
}
.page-products .band__head{
  max-width:64ch;
  margin-bottom:clamp(26px,3.6vw,48px);
}
.page-products .band__head .lede{
  margin-top:14px;
}
.page-products .band__head h3{
  margin-top:6px;
}

/* ---------- 分栏 ---------- */
.page-products .duo{
  display:grid;
  gap:clamp(26px,4vw,52px);
  align-items:start;
}
@media (min-width:960px){
  .page-products .duo{
    grid-template-columns:minmax(0,1fr) minmax(0,1.42fr);
  }
  .page-products .duo--flip{
    grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);
  }
}
.page-products .duo__aside .display-2{
  margin-top:12px;
}
.page-products .duo__body .lede{
  margin-top:0;
}
.page-products .duo__link{
  margin-top:24px;
}
.page-products .duo__link a{
  font-family:var(--font-mono);
  font-size:13px;
  letter-spacing:.08em;
  color:var(--cyan);
  text-decoration:none;
  border-bottom:1px solid rgba(63,240,208,.4);
  padding-bottom:2px;
  transition:border-color .2s var(--ease), color .2s var(--ease);
}
.page-products .duo__link a:hover{
  border-bottom-color:var(--cyan);
}

/* ---------- 数据条 ---------- */
.page-products .factline{
  display:flex;
  flex-wrap:wrap;
  gap:clamp(18px,3vw,40px);
  margin:clamp(24px,3vw,34px) 0 0;
  padding:clamp(18px,2.4vw,24px) 0;
  list-style:none;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.page-products .factline li{
  display:grid;
  gap:4px;
  min-width:110px;
}
.page-products .factline b{
  font-family:var(--font-mono);
  font-size:clamp(19px,2.2vw,25px);
  font-weight:600;
  letter-spacing:-.01em;
  color:var(--cyan);
  font-variant-numeric:tabular-nums;
}
.page-products .factline span{
  font-size:11.5px;
  letter-spacing:.08em;
  color:var(--dim);
}

/* ---------- 功能清单 ---------- */
.page-products .feat{
  display:grid;
  gap:clamp(18px,2.4vw,26px);
  margin:clamp(26px,3.4vw,40px) 0 0;
  padding:0;
  list-style:none;
}
.page-products .feat li{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:clamp(14px,2vw,24px);
  align-items:start;
}
.page-products .feat__k{
  font-size:12px;
  letter-spacing:.16em;
  color:var(--purple-lift);
  padding-top:4px;
}
.page-products .feat h3{
  margin:0 0 6px;
  font-family:var(--font-display);
  font-size:18px;
  letter-spacing:.05em;
  color:var(--text);
}
.page-products .feat p{
  margin:0;
  font-size:15px;
  color:var(--dim);
  line-height:1.75;
}

/* ---------- 版本公告三段条 ---------- */
.page-products .flow{
  display:grid;
  gap:clamp(16px,2.2vw,24px);
  margin:0;
  padding:0;
  list-style:none;
}
@media (min-width:840px){
  .page-products .flow{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
}
.page-products .flow__step{
  position:relative;
  padding:clamp(22px,2.8vw,32px);
  background:var(--ink);
  border:1px solid var(--line);
  border-top:2px solid var(--purple);
}
.page-products .flow__no{
  display:inline-block;
  margin-bottom:14px;
  font-size:11px;
  letter-spacing:.22em;
  color:var(--cyan);
}
.page-products .flow__step h3{
  margin:0 0 10px;
  font-family:var(--font-display);
  font-size:clamp(18px,2vw,21px);
  letter-spacing:.05em;
  color:var(--text);
}
.page-products .flow__step p{
  margin:0;
  font-size:15px;
  line-height:1.75;
  color:var(--dim);
}

/* ---------- 评测两栏 ---------- */
.page-products .cols{
  display:grid;
  gap:clamp(18px,2.6vw,28px);
}
@media (min-width:680px){
  .page-products .cols{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}
.page-products .col-card{
  position:relative;
  padding:clamp(20px,2.6vw,30px) clamp(20px,2.6vw,30px) clamp(20px,2.6vw,30px) calc(clamp(20px,2.6vw,30px) + 6px);
  background:linear-gradient(180deg, var(--panel-2), var(--panel));
  border:1px solid var(--line);
}
.page-products .col-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:3px;
  background:var(--cyan);
}
.page-products .col-card:last-child::before{
  background:var(--amber);
}
.page-products .col-card h3{
  margin:0 0 12px;
  font-family:var(--font-display);
  font-size:clamp(19px,2.2vw,22px);
  letter-spacing:.06em;
  color:var(--text);
}
.page-products .col-card p{
  margin:0 0 12px;
  font-size:15px;
  line-height:1.78;
  color:var(--dim);
}
.page-products .col-card p:last-child{
  margin-bottom:0;
}
.page-products .col-card__note{
  font-size:11.5px;
  letter-spacing:.1em;
  color:var(--purple-lift);
}

/* ---------- 图片容器 ---------- */
.page-products .pp-figure{
  position:relative;
  margin:0;
  padding:clamp(10px,1.4vw,16px);
  background:var(--panel-2);
  border:1px solid var(--line);
  clip-path:polygon(0 var(--p-cut), var(--p-cut) 0, 100% 0, 100% calc(100% - var(--p-cut)), calc(100% - var(--p-cut)) 100%, 0 100%);
}
.page-products .pp-figure--wide{
  margin-top:clamp(28px,4vw,52px);
}
.page-products .pp-figure img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}
.page-products .pp-figure figcaption{
  margin-top:12px;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.05em;
  line-height:1.7;
  color:var(--dim);
}

/* ---------- 会员对照 ---------- */
.page-products .tside h3{
  margin:0 0 18px;
  font-family:var(--font-display);
  font-size:clamp(19px,2.2vw,22px);
  letter-spacing:.06em;
  color:var(--text);
}
.page-products .tside__list{
  display:grid;
  gap:clamp(16px,2.2vw,24px);
  margin:0;
  padding:0;
  list-style:none;
}
.page-products .tside__list li{
  padding-left:16px;
  border-left:2px solid var(--line);
}
.page-products .tside__n{
  display:block;
  margin-bottom:8px;
  font-size:12px;
  letter-spacing:.2em;
  color:var(--cyan);
}
.page-products .tside__list p{
  margin:0;
  font-size:14.5px;
  line-height:1.78;
  color:var(--dim);
}
.page-products .tmatrix{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.page-products .tiers{
  width:100%;
  min-width:520px;
  border-collapse:collapse;
  font-size:14px;
}
.page-products .tiers th,
.page-products .tiers td{
  padding:13px 14px;
  text-align:left;
  border-bottom:1px solid var(--line);
}
.page-products .tiers thead th{
  font-family:var(--font-mono);
  font-size:11.5px;
  font-weight:500;
  letter-spacing:.16em;
  color:var(--dim);
  white-space:nowrap;
  border-bottom:1px solid var(--purple);
}
.page-products .tiers thead th:nth-child(3){
  color:var(--cyan);
}
.page-products .tiers thead th:nth-child(4){
  color:var(--purple-lift);
}
.page-products .tiers tbody th{
  font-weight:400;
  color:var(--text);
  white-space:nowrap;
}
.page-products .tiers tbody tr:nth-child(even){
  background:rgba(30,25,53,.42);
}
.page-products .tiers tbody tr:hover{
  background:rgba(108,59,255,.12);
}
.page-products .tiers .on{
  color:var(--cyan);
  font-family:var(--font-mono);
  font-size:12.5px;
  letter-spacing:.06em;
}
.page-products .tiers .off{
  color:#5B5880;
  font-family:var(--font-mono);
  font-size:12.5px;
  letter-spacing:.06em;
}

/* ---------- 概率两小卡 ---------- */
.page-products .two-up{
  display:grid;
  gap:clamp(16px,2.4vw,24px);
  margin-top:clamp(22px,3vw,32px);
}
@media (min-width:680px){
  .page-products .two-up{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}
.page-products .mini{
  padding:clamp(18px,2.4vw,26px);
  background:var(--panel-2);
  border:1px solid var(--line);
}
.page-products .mini h3{
  margin:0 0 10px;
  font-family:var(--font-display);
  font-size:17px;
  letter-spacing:.06em;
  color:var(--purple-lift);
}
.page-products .mini p{
  margin:0;
  font-size:14.5px;
  line-height:1.78;
  color:var(--dim);
}

/* ---------- 日常功能编号清单 ---------- */
.page-products .ledger{
  display:grid;
  gap:0;
  margin:0;
  padding:0;
  list-style:none;
  border-top:1px solid var(--line);
}
.page-products .ledger li{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:clamp(16px,2.6vw,32px);
  padding:clamp(20px,2.8vw,30px) 0;
  border-bottom:1px solid var(--line);
  transition:padding-left .28s var(--ease);
}
@media (min-width:900px){
  .page-products .ledger li:hover{
    padding-left:12px;
  }
}
.page-products .ledger__no{
  font-size:13px;
  letter-spacing:.2em;
  color:var(--purple-lift);
  padding-top:3px;
}
.page-products .ledger h3{
  margin:0 0 8px;
  font-family:var(--font-display);
  font-size:clamp(18px,2vw,21px);
  letter-spacing:.05em;
  color:var(--text);
}
.page-products .ledger p{
  margin:0;
  max-width:72ch;
  font-size:15px;
  line-height:1.78;
  color:var(--dim);
}

/* ---------- 三条场景带 ---------- */
.page-products .lanes{
  display:grid;
  gap:clamp(14px,2vw,20px);
}
.page-products .lane{
  position:relative;
  display:grid;
  gap:14px;
  padding:clamp(22px,3vw,34px) clamp(22px,3vw,40px);
  background:var(--panel);
  border:1px solid var(--line);
}
@media (min-width:880px){
  .page-products .lane{
    grid-template-columns:180px minmax(0,1fr) 260px;
    align-items:center;
    gap:clamp(20px,3vw,44px);
  }
}
.page-products .lane::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  height:2px;
  width:34%;
  background:linear-gradient(90deg, var(--purple), var(--cyan));
}
.page-products .lane:nth-child(2)::after{
  width:56%;
}
.page-products .lane:nth-child(3)::after{
  width:78%;
}
.page-products .lane__tag{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(18px,2.2vw,22px);
  letter-spacing:.08em;
  color:var(--text);
}
.page-products .lane__tag::before{
  content:"";
  display:block;
  width:28px;
  height:3px;
  margin-bottom:12px;
  background:var(--cyan);
}
.page-products .lane__body{
  margin:0;
  font-size:15px;
  line-height:1.8;
  color:var(--dim);
}
.page-products .lane__combo{
  margin:0;
  font-size:11.5px;
  letter-spacing:.06em;
  line-height:1.7;
  color:var(--purple-lift);
}
@media (min-width:880px){
  .page-products .lane__combo{
    text-align:right;
  }
}

/* ---------- 安装步骤 ---------- */
.page-products .steps{
  display:grid;
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
}
@media (min-width:780px){
  .page-products .steps{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}
.page-products .step summary{
  display:flex;
  align-items:center;
  gap:14px;
  padding:18px 20px;
  background:var(--panel-2);
  border:1px solid var(--line);
  cursor:pointer;
  list-style:none;
  font-family:var(--font-display);
  font-size:17px;
  letter-spacing:.05em;
  color:var(--text);
  transition:border-color .22s var(--ease), background .22s var(--ease);
}
.page-products .step summary::-webkit-details-marker{
  display:none;
}
.page-products .step summary::after{
  content:"+";
  margin-left:auto;
  font-family:var(--font-mono);
  font-size:18px;
  line-height:1;
  color:var(--cyan);
}
.page-products .step[open] summary::after{
  content:"–";
}
.page-products .step summary:hover{
  border-color:var(--purple-lift);
}
.page-products .step__no{
  font-size:11px;
  letter-spacing:.2em;
  color:var(--purple-lift);
}
.page-products .step p{
  margin:0;
  padding:14px 20px 18px;
  background:var(--panel);
  border:1px solid var(--line);
  border-top:0;
  font-size:14.5px;
  line-height:1.78;
  color:var(--dim);
}

/* ---------- 支持收口 ---------- */
.page-products .support{
  display:grid;
  gap:20px;
  margin-top:clamp(28px,4vw,48px);
  padding-top:clamp(24px,3.2vw,38px);
  border-top:1px solid var(--line);
}
@media (min-width:780px){
  .page-products .support{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:clamp(28px,4vw,64px);
  }
}
.page-products .support h3{
  margin:0 0 10px;
  font-family:var(--font-display);
  font-size:clamp(18px,2vw,21px);
  letter-spacing:.05em;
  color:var(--text);
}
.page-products .support p{
  margin:0;
  max-width:70ch;
  font-size:15px;
  line-height:1.78;
  color:var(--dim);
}
.page-products .support__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

/* ---------- 通用收尾 ---------- */
.page-products .btn{
  text-decoration:none;
}
.page-products a:focus-visible,
.page-products summary:focus-visible,
.page-products button:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:2px;
}
.page-products .note-side{
  margin-top:18px;
}

@media (prefers-reduced-motion:reduce){
  .page-products *,
  .page-products *::before,
  .page-products *::after{
    animation-duration:.001ms !important;
    transition-duration:.001ms !important;
  }
}
