/* ========== platform.html 专属样式（已从内联提取） ========== */

.product-hero {
    position:relative; padding:80px 0 60px;
    background:linear-gradient(135deg,#C8102E 0%,#8B0020 100%);
    color:#fff; text-align:center; overflow:hidden;
}
.product-hero h1 { font-size:2.4em; margin-bottom:16px; }
.product-hero p { font-size:1.15em; opacity:.9; max-width:700px; margin:0 auto; }

.section-p { padding:72px 0; }
.section-p.section-alt { background:#f8f9fa; }

.feature-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:28px; margin-top:40px; }
.feature-card {
    background:#fff; border-radius:14px; padding:32px 28px;
    box-shadow:0 2px 16px rgba(0,0,0,.06);
    border-left:4px solid #C8102E;
    transition:transform .25s,box-shadow .25s;
}
.feature-card:hover { transform:translateY(-4px); box-shadow:0 8px 24px rgba(200,16,46,.12); }
.feature-icon { font-size:2.6em; margin-bottom:14px; display:block; }
.feature-card h3 { margin:0 0 10px; color:#222; font-size:1.15em; }
.feature-card p { margin:0; color:#666; line-height:1.7; font-size:.95em; }

/* Timeline */
.dev-timeline { max-width:800px; margin:40px auto 0; position:relative; padding-left:32px; }
.dev-timeline::before { content:""; position:absolute; left:12px; top:0; bottom:0; width:2px; background:#ddd; }
.dt-item { position:relative; margin-bottom:36px; padding-left:28px; }
.dt-item::before {
    content:""; position:absolute; left:-24px; top:6px;
    width:14px; height:14px; border-radius:50%;
    background:#C8102E; border:3px solid #fff; box-shadow:0 0 0 2px #C8102E;
}
.dt-date { font-size:.85em; color:#999; margin-bottom:6px; }
.dt-item h4 { margin:0 0 8px; color:#333; }
.dt-item p { margin:0; color:#666; line-height:1.7; font-size:.95em; }

/* Stats bar */
.stats-bar {
    display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
    gap:24px; background:#fff; padding:40px 32px; border-radius:14px;
    box-shadow:0 4px 24px rgba(0,0,0,.08); margin-top:40px; text-align:center;
}
.stats-bar .num { font-size:2.2em; font-weight:700; color:#C8102E; }
.stats-bar .label { font-size:.9em; color:#666; margin-top:4px; }

/* Quote */
.founder-quote {
    max-width:700px; margin:40px auto 0; background:#fff; padding:32px;
    border-radius:14px; box-shadow:0 2px 16px rgba(0,0,0,.06);
    border-left:4px solid #C8102E;
}
.founder-quote blockquote { margin:0; font-size:1.05em; color:#555; line-height:1.8; font-style:italic; }
.founder-quote cite { display:block; margin-top:12px; color:#999; font-size:.9em; font-style:normal; }

/* CTA */
.cta-inner {
    text-align:center; padding:60px 0;
    background:linear-gradient(135deg,#C8102E,#ff6b6b);
    color:#fff; border-radius:14px; margin-top:40px;
}
.cta-inner h2 { margin-bottom:12px; }
.cta-inner p { opacity:.9; margin-bottom:24px; }

/* Narrow content wrapper */
.content-narrow { max-width:800px; margin:0 auto; }
.content-medium { max-width:900px; margin:0 auto; }

@media(max-width:768px){
  .product-hero h1{font-size:1.6em}
  .stats-bar{grid-template-columns:repeat(2,1fr)}
}

.text-center { text-align:center; }
.version-price { font-size:1.4em; font-weight:700; color:#C8102E; margin:12px 0; }

.version-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:24px; margin-top:36px; }
.diff-grid { display:grid; gap:24px; margin-top:36px; }
.version-features { text-align:left; padding-left:16px; line-height:2; color:#666; font-size:.9em; list-style:none; }
.version-features li::before { content:"✓ "; color:#C8102E; font-weight:bold; }
[data-border] { border-left-color: attr(data-border) !important; }
