.page-products{
  --ps-dark-line:rgba(245,242,234,.16);
  --ps-dark-line-soft:rgba(245,242,234,.09);
}

.page-products img{max-width:100%;height:auto;}

/* 首屏仪表板 */
.page-products .ps-hero{
  position:relative;
  margin-top:calc(var(--header-h) * -1);
  padding:calc(var(--header-h) + 40px) 0 clamp(44px,7vw,84px);
  background:
    radial-gradient(90% 70% at 88% 0%, rgba(41,224,194,.18), transparent 60%),
    radial-gradient(70% 60% at 0% 100%, rgba(255,107,53,.10), transparent 65%),
    var(--ink-900);
  color:var(--on-dark-strong);
  overflow:hidden;
}
.page-products .ps-hero::before{
  content:"";
  position:absolute;
  inset:-20% -10% -20% -10%;
  background:repeating-linear-gradient(90deg, rgba(245,242,234,.05) 0 1px, transparent 1px 88px);
  transform:skewY(-5deg);
  pointer-events:none;
}
.page-products .ps-hero .wrap{position:relative;z-index:1;}

.page-products .ps-crumb{margin-bottom:clamp(20px,3vw,32px);}
.page-products .ps-crumb .crumb-link{color:rgba(245,242,234,.62);}
.page-products .ps-crumb .crumb-link:hover{color:var(--cyan);}
.page-products .ps-crumb .crumb-current{color:var(--cyan);}

.page-products .ps-hero-head{display:grid;gap:18px;}
.page-products .ps-hero-copy .display{
  margin:14px 0 0;
  font-family:var(--font-display);
  font-size:clamp(34px,7.6vw,74px);
  line-height:1.02;
  letter-spacing:-.02em;
  color:var(--on-dark-strong);
}
.page-products .ps-hero-copy .lead{
  margin:18px 0 0;
  max-width:58ch;
  font-size:clamp(15px,1.6vw,17px);
  line-height:1.8;
  color:var(--on-dark);
}
.page-products .ps-side-note{color:var(--orange);font-size:12px;}

.page-products .ps-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  margin:clamp(28px,4.5vw,44px) 0 clamp(24px,4vw,40px);
  background:var(--ps-dark-line);
  border-top:1px solid var(--ps-dark-line);
  border-bottom:1px solid var(--ps-dark-line);
}
.page-products .ps-strip .data-cell{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:16px 12px 18px;
  background:var(--ink-900);
}
.page-products .ps-strip .data-value{
  font-family:var(--font-mono);
  font-weight:700;
  font-size:clamp(18px,4.4vw,36px);
  line-height:1;
  color:var(--cyan);
}
.page-products .ps-strip .data-cell:nth-child(2) .data-value{color:var(--on-dark-strong);}
.page-products .ps-strip .data-cell:nth-child(3) .data-value{color:var(--orange);}
.page-products .ps-strip .data-label{
  font-family:var(--font-mono);
  font-size:11.5px;
  line-height:1.5;
  letter-spacing:.08em;
  color:var(--on-dark);
}

.page-products .ps-tabs{display:grid;gap:18px;}
.page-products .ps-tabs .tablist{
  display:flex;
  flex-direction:column;
  gap:1px;
  background:var(--ps-dark-line);
  border:1px solid var(--ps-dark-line);
}
.page-products .path-tab{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:baseline;
  gap:4px 12px;
  width:100%;
  min-height:64px;
  padding:14px 16px;
  border:0;
  border-left:2px solid transparent;
  background:var(--ink-800);
  color:var(--on-dark-strong);
  font-family:inherit;
  text-align:left;
  cursor:pointer;
  transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.page-products .path-tab:hover{background:var(--ink-700);}
.page-products .path-tab[aria-selected="true"]{
  background:var(--ink-700);
  border-left-color:var(--cyan);
}
.page-products .path-num{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.16em;
  color:var(--muted);
}
.page-products .path-tab[aria-selected="true"] .path-num{color:var(--cyan);}
.page-products .path-name{
  font-family:var(--font-display);
  font-size:18px;
  font-weight:700;
  line-height:1.2;
}
.page-products .path-desc{
  grid-column:2;
  font-size:13px;
  line-height:1.5;
  color:var(--on-dark);
}

.page-products .dash-panels{min-width:0;}
.page-products .ps-tabs .tab-panel{
  position:relative;
  padding:clamp(20px,3.6vw,34px);
  background:var(--ink-800);
  border:1px solid var(--ps-dark-line);
  border-top:2px solid var(--cyan);
}
.page-products .ps-tabs .tab-panel::after{
  content:"";
  position:absolute;
  right:-1px;
  bottom:-1px;
  width:30px;
  height:30px;
  background:linear-gradient(135deg, transparent 50%, rgba(41,224,194,.26) 50%);
  pointer-events:none;
}
.page-products .ps-panel-kicker{
  margin:0;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.2em;
  color:var(--orange);
}
.page-products .ps-tabs .tab-panel h2{
  margin:10px 0 12px;
  font-family:var(--font-display);
  font-size:clamp(21px,3.2vw,30px);
  line-height:1.16;
  color:var(--on-dark-strong);
}
.page-products .ps-tabs .tab-panel p{
  margin:0;
  max-width:62ch;
  font-size:15.5px;
  line-height:1.8;
  color:var(--on-dark);
}
.page-products .ps-panel-list{
  list-style:none;
  margin:18px 0 22px;
  padding:0;
  display:grid;
  gap:10px;
}
.page-products .ps-panel-list li{
  position:relative;
  padding-left:18px;
  font-family:var(--font-mono);
  font-size:14px;
  color:var(--on-dark-strong);
}
.page-products .ps-panel-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:6px;
  height:6px;
  background:var(--cyan);
}

/* 章节通用 */
.page-products .ps-sec{
  padding:clamp(52px,7vw,104px) 0;
  background:var(--paper);
}
.page-products .ps-sec--alt{background:var(--paper-white);}
.page-products .ps-sec--dark{background:var(--ink-900);color:var(--on-dark-strong);}
.page-products .ps-sec-grid{display:grid;gap:22px;}
.page-products .ps-rail{display:flex;align-items:center;gap:14px;}
.page-products .ps-main{min-width:0;}
.page-products .section-num{
  font-family:var(--font-mono);
  font-size:clamp(30px,5vw,52px);
  font-weight:700;
  line-height:.9;
  color:var(--line);
}
.page-products .section-title{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(25px,3.8vw,40px);
  line-height:1.14;
  letter-spacing:-.01em;
  color:var(--ink);
}
.page-products .ps-sec .lead{
  margin:14px 0 0;
  max-width:62ch;
  font-size:16.5px;
  line-height:1.8;
  color:var(--muted);
}
.page-products .ps-sec--dark .section-title{color:var(--on-dark-strong);}
.page-products .ps-sec--dark .lead{color:var(--on-dark);}
.page-products .ps-sec--dark .section-num{color:rgba(245,242,234,.18);}
.page-products .ps-sec--dark .annotation{color:rgba(245,242,234,.55);}

.page-products .ps-figure{margin:clamp(26px,4vw,40px) 0 0;}
.page-products .ps-figure img{display:block;width:100%;height:auto;object-fit:cover;}
.page-products .figure-caption{
  margin-top:10px;
  font-family:var(--font-mono);
  font-size:11.5px;
  line-height:1.6;
  letter-spacing:.04em;
  color:var(--muted);
}
.page-products .ps-sec--dark .figure-caption{color:rgba(245,242,234,.55);}

.page-products .ps-note{
  margin:22px 0 0;
  padding-left:14px;
  border-left:2px solid var(--cyan);
  font-size:14.5px;
  line-height:1.8;
  color:var(--muted);
}
.page-products .ps-sec--dark .ps-note{color:var(--on-dark);}
.page-products .ps-inline-link{
  display:inline-block;
  margin-top:14px;
  padding-bottom:3px;
  font-family:var(--font-mono);
  font-size:13px;
  letter-spacing:.06em;
  color:var(--teal);
  text-decoration:none;
  border-bottom:1px solid currentColor;
}
.page-products .ps-inline-link:hover{color:var(--ink);}
.page-products .ps-sec--dark .ps-inline-link{color:var(--cyan);}
.page-products .ps-sec--dark .ps-inline-link:hover{color:var(--on-dark-strong);}

/* 01 面板模块 */
.page-products .ps-modules{
  display:grid;
  gap:12px;
  margin-top:clamp(26px,4vw,38px);
}
.page-products .ps-module{
  position:relative;
  padding:20px 20px 24px;
  background:var(--paper-white);
  border:1px solid var(--line);
}
.page-products .ps-module::after{
  content:"";
  position:absolute;
  left:20px;
  bottom:0;
  width:40px;
  height:2px;
  background:var(--teal);
}
.page-products .ps-module--orange::after{background:var(--orange);}
.page-products .ps-module-tag{
  margin:0 0 8px;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.16em;
  color:var(--teal);
}
.page-products .ps-module--orange .ps-module-tag{color:var(--orange);}
.page-products .ps-module h3{
  margin:0 0 8px;
  font-family:var(--font-display);
  font-size:19px;
  line-height:1.3;
  color:var(--ink);
}
.page-products .ps-module p{
  margin:0;
  font-size:14.8px;
  line-height:1.75;
  color:var(--muted);
}

/* 02 V4 */
.page-products .ps-v4{display:grid;gap:clamp(24px,4vw,40px);}
.page-products .ps-cap{
  list-style:none;
  margin:clamp(22px,3vw,30px) 0 0;
  padding:0;
  display:grid;
  gap:1px;
  background:var(--line);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.page-products .ps-cap li{
  display:grid;
  gap:6px;
  padding:16px 2px;
  background:var(--paper-white);
}
.page-products .ps-cap strong{
  font-family:var(--font-display);
  font-size:17px;
  color:var(--ink);
}
.page-products .ps-cap span{
  font-size:14.8px;
  line-height:1.75;
  color:var(--muted);
}

/* 03 主客场 */
.page-products .ps-split-grid{
  display:grid;
  gap:clamp(24px,4vw,40px);
  margin-top:clamp(26px,4vw,36px);
}
.page-products .ps-bars{display:grid;gap:20px;}
.page-products .ps-legend{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 4px;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.12em;
  color:var(--on-dark);
}
.page-products .ps-dot{display:inline-block;width:8px;height:8px;}
.page-products .ps-dot--home{background:var(--cyan);}
.page-products .ps-dot--away{background:var(--orange);margin-left:10px;}
.page-products .ps-bar-row{display:grid;gap:8px;}
.page-products .ps-bar-head{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:12px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.1em;
  color:var(--on-dark);
}
.page-products .ps-bar-head span:last-child{color:var(--orange);}
.page-products .ps-bar-track{display:grid;gap:6px;}
.page-products .ps-bar{display:block;height:9px;}
.page-products .ps-bar--home{background:var(--cyan);}
.page-products .ps-bar--away{background:var(--orange);}
.page-products .ps-bar--h1{width:88%;}
.page-products .ps-bar--a1{width:63%;}
.page-products .ps-bar--h2{width:76%;}
.page-products .ps-bar--a2{width:49%;}
.page-products .ps-bar--h3{width:54%;}
.page-products .ps-bar--a3{width:82%;}

.page-products .ps-tips{
  display:grid;
  gap:1px;
  margin-top:clamp(28px,4vw,44px);
  background:var(--ps-dark-line);
  border-top:1px solid var(--ps-dark-line);
  border-bottom:1px solid var(--ps-dark-line);
}
.page-products .ps-tip{padding:18px 16px;background:var(--ink-900);}
.page-products .ps-tip-num{
  display:block;
  margin-bottom:8px;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.18em;
  color:var(--cyan);
}
.page-products .ps-tip p{
  margin:0;
  font-size:14.5px;
  line-height:1.75;
  color:var(--on-dark);
}

/* 04 更新时间 */
.page-products .ps-update-grid{display:grid;gap:clamp(24px,4vw,40px);}
.page-products .ps-timeline{
  list-style:none;
  margin:clamp(26px,4vw,36px) 0 0;
  padding:0;
  display:grid;
}
.page-products .ps-tick{
  position:relative;
  padding:0 0 24px 22px;
  border-left:1px solid var(--line);
}
.page-products .ps-tick:last-child{padding-bottom:0;}
.page-products .ps-tick::before{
  content:"";
  position:absolute;
  left:-4.5px;
  top:6px;
  width:8px;
  height:8px;
  background:var(--paper);
  border:2px solid var(--orange);
}
.page-products .ps-tick-time{
  display:block;
  font-family:var(--font-mono);
  font-size:clamp(20px,3vw,26px);
  font-weight:700;
  line-height:1;
  color:var(--ink);
}
.page-products .ps-tick-name{
  display:inline-block;
  margin:8px 0 6px;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.18em;
  color:var(--teal);
}
.page-products .ps-tick p{
  margin:0;
  max-width:44ch;
  font-size:14.6px;
  line-height:1.75;
  color:var(--muted);
}

/* 05 家庭订阅 */
.page-products .ps-family-grid{
  display:grid;
  gap:clamp(24px,4vw,40px);
  margin-top:clamp(26px,4vw,36px);
}
.page-products .ps-sync{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:1px;
  background:var(--line);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.page-products .ps-sync-row{
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr);
  align-items:center;
  gap:12px;
  padding:16px 4px;
  background:var(--paper-white);
}
.page-products .ps-sync-dev{
  font-family:var(--font-display);
  font-size:16px;
  font-weight:700;
  color:var(--ink);
}
.page-products .ps-sync-row p{
  grid-column:1 / -1;
  margin:0;
  font-size:14.2px;
  line-height:1.7;
  color:var(--muted);
}

/* 06 四步 */
.page-products .ps-steps{
  list-style:none;
  margin:clamp(26px,4vw,38px) 0 0;
  padding:0;
  display:grid;
  gap:14px;
}
.page-products .ps-step{
  position:relative;
  padding:18px 16px 20px;
  background:var(--paper-white);
  border-top:2px solid var(--ink-700);
}
.page-products .ps-step-num{
  display:block;
  margin-bottom:10px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.18em;
  color:var(--orange);
}
.page-products .ps-step h3{
  margin:0 0 8px;
  font-family:var(--font-display);
  font-size:18px;
  color:var(--ink);
}
.page-products .ps-step p{
  margin:0;
  font-size:14.2px;
  line-height:1.7;
  color:var(--muted);
}

/* 07 身份选择 */
.page-products .ps-paths{
  display:grid;
  gap:14px;
  margin-top:clamp(26px,4vw,36px);
}
.page-products .ps-path-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:22px 20px 24px;
  background:var(--paper);
  border:1px solid var(--line);
  border-top:3px solid var(--teal);
}
.page-products .ps-path-card--b{border-top-color:var(--cyan);}
.page-products .ps-path-card--c{border-top-color:var(--orange);}
.page-products .ps-path-who{
  margin:0 0 10px;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.18em;
  color:var(--muted);
}
.page-products .ps-path-card h3{
  margin:0 0 10px;
  font-family:var(--font-display);
  font-size:19px;
  line-height:1.3;
  color:var(--ink);
}
.page-products .ps-path-card p{
  margin:0 0 auto;
  font-size:14.6px;
  line-height:1.75;
  color:var(--muted);
}
.page-products .ps-path-card .ps-inline-link{margin-top:16px;}

/* 收尾 */
.page-products .ps-cta{
  position:relative;
  padding:clamp(48px,7vw,88px) 0;
  background:
    radial-gradient(80% 90% at 100% 0%, rgba(41,224,194,.16), transparent 62%),
    var(--ink-900);
  color:var(--on-dark-strong);
  overflow:hidden;
}
.page-products .ps-cta::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  background:linear-gradient(90deg, var(--cyan), var(--orange));
}
.page-products .ps-cta-inner{display:grid;gap:16px;justify-items:start;position:relative;}
.page-products .ps-cta-title{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(26px,4vw,42px);
  line-height:1.14;
  color:var(--on-dark-strong);
}
.page-products .ps-cta-text{
  margin:0;
  max-width:54ch;
  font-size:16px;
  line-height:1.8;
  color:var(--on-dark);
}

/* 断点 */
@media (min-width:760px){
  .page-products .ps-modules{grid-template-columns:repeat(6,minmax(0,1fr));}
  .page-products .ps-module--a{grid-column:span 4;}
  .page-products .ps-module--b{grid-column:span 2;}
  .page-products .ps-module--c{grid-column:span 2;}
  .page-products .ps-module--d{grid-column:span 4;}
  .page-products .ps-tips{grid-template-columns:repeat(3,minmax(0,1fr));}
  .page-products .ps-steps{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (min-width:820px){
  .page-products .ps-steps{grid-template-columns:repeat(4,minmax(0,1fr));}
  .page-products .ps-step:nth-child(2),
  .page-products .ps-step:nth-child(4){margin-top:24px;}
}

@media (min-width:860px){
  .page-products .ps-paths{grid-template-columns:repeat(12,minmax(0,1fr));}
  .page-products .ps-path-card--a{grid-column:span 5;}
  .page-products .ps-path-card--b{grid-column:span 4;}
  .page-products .ps-path-card--c{grid-column:span 3;}
}

@media (min-width:900px){
  .page-products .ps-hero-head{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:36px;
  }
  .page-products .ps-v4{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;}
  .page-products .ps-split-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;}
  .page-products .ps-update-grid{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:start;}
  .page-products .ps-family-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;}
}

@media (min-width:960px){
  .page-products .ps-sec-grid{
    grid-template-columns:64px minmax(0,1fr);
    gap:clamp(24px,4vw,56px);
    align-items:start;
  }
  .page-products .ps-rail{flex-direction:column;align-items:flex-start;gap:18px;}
}

@media (min-width:980px){
  .page-products .ps-tabs{
    grid-template-columns:minmax(0,300px) minmax(0,1fr);
    gap:clamp(20px,3vw,40px);
    align-items:start;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-products .path-tab,
  .page-products .ps-step{transition:none;}
  .page-products .ps-step:nth-child(2),
  .page-products .ps-step:nth-child(4){margin-top:0;}
}
