  :root{
    --paper:#EDE7DA;
    --paper-2:#E5DDCB;
    --ink:#171513;
    --ink-2:#3A332B;
    --muted:#7A6F5F;
    --rule:#1715131A;
    --hot:#E2421C;          /* 实验室警示橙 */
    --acid:#C8E04A;         /* 数据高亮 */
    --deep:#0B2A3B;         /* 引擎监测深蓝 */
    --serif-en:'Fraunces', serif;
    --serif-cn:'Noto Serif SC', serif;
    --sans-cn:'Noto Sans SC', sans-serif;
    --mono:'JetBrains Mono', monospace;
  }

  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--paper);
    color:var(--ink);
    font-family:var(--sans-cn);
    font-weight:400;
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }

  /* 纸张纹理 */
  body::before{
    content:"";
    position:fixed;inset:0;
    background-image:
      radial-gradient(circle at 20% 30%, rgba(0,0,0,0.025) 1px, transparent 1px),
      radial-gradient(circle at 80% 70%, rgba(0,0,0,0.02) 1px, transparent 1px);
    background-size:3px 3px, 5px 5px;
    pointer-events:none;
    z-index:1;
    mix-blend-mode:multiply;
  }

  /* 由 layouts/main.php 注入统一菜单（fixed 黑色渐变），本页内容预留顶部空间 */
  main{ padding-top:80px; }

  /* ============ 主体容器 ============ */
  main{position:relative;z-index:2;}
  .container{max-width:1380px;margin:0 auto;padding:0 32px;}

  /* ============ HERO ============ */
  .hero{
    padding:70px 0 50px;
    border-bottom:1px solid var(--rule);
    position:relative;
  }
  .hero-meta{
    display:flex;align-items:center;gap:20px;
    font-family:var(--mono);font-size:11px;
    color:var(--muted);
    letter-spacing:0.18em;text-transform:uppercase;
    margin-bottom:36px;
  }
  .hero-meta .pulse{
    width:8px;height:8px;border-radius:50%;
    background:var(--hot);
    box-shadow:0 0 0 0 rgba(226,66,28,0.7);
    animation:pulse 2s infinite;
  }
  @keyframes pulse{
    0%{box-shadow:0 0 0 0 rgba(226,66,28,0.6);}
    70%{box-shadow:0 0 0 10px rgba(226,66,28,0);}
    100%{box-shadow:0 0 0 0 rgba(226,66,28,0);}
  }
  .hero-meta span:not(.pulse){
    border-left:1px solid var(--rule);padding-left:20px;
  }
  .hero-meta span:first-of-type{border:none;padding:0;}

  .hero-title{
    font-family:var(--serif-cn);
    font-weight:900;
    font-size:clamp(56px, 9vw, 132px);
    line-height:0.94;
    letter-spacing:-0.04em;
    margin-bottom:36px;
    position:relative;
  }
  .hero-title .en{
    font-family:var(--serif-en);
    font-style:italic;font-weight:400;
    font-size:0.42em;
    color:var(--hot);
    display:block;
    margin-bottom:16px;
    letter-spacing:-0.02em;
  }
  .hero-grid{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:48px;
    border-top:1px solid var(--rule);
    padding-top:32px;
  }
  .hero-col h4{
    font-family:var(--mono);font-size:10px;font-weight:700;
    color:var(--hot);letter-spacing:0.2em;
    text-transform:uppercase;margin-bottom:14px;
  }
  .hero-col p{
    font-family:var(--serif-cn);font-size:16px;
    line-height:1.7;color:var(--ink-2);
  }
  .hero-col .stat{
    font-family:var(--serif-en);font-weight:900;
    font-size:64px;line-height:1;
    letter-spacing:-0.04em;
    color:var(--ink);
    margin-bottom:8px;
  }
  .hero-col .stat-label{
    font-family:var(--sans-cn);font-size:13px;
    color:var(--muted);
  }

  /* ============ 研究员档案 ============ */
  .researcher{
    padding:90px 0;
    background:var(--paper-2);
    border-bottom:1px solid var(--rule);
    position:relative;
  }
  .researcher::before{
    content:"FILE / 001";
    position:absolute;top:24px;right:32px;
    font-family:var(--mono);font-size:10px;
    color:var(--muted);letter-spacing:0.2em;
  }
  .section-label{
    font-family:var(--mono);font-size:11px;font-weight:700;
    color:var(--hot);letter-spacing:0.25em;
    text-transform:uppercase;
    display:flex;align-items:center;gap:14px;
    margin-bottom:36px;
  }
  .section-label::before{
    content:"";width:32px;height:1px;background:var(--hot);
  }
  .section-h{
    font-family:var(--serif-cn);font-weight:900;
    font-size:clamp(40px,5vw,64px);line-height:1.05;
    letter-spacing:-0.02em;
    margin-bottom:60px;
    max-width:900px;
  }
  .section-h .en{
    font-family:var(--serif-en);font-style:italic;font-weight:400;
    color:var(--muted);font-size:0.55em;display:block;
    margin-top:8px;letter-spacing:-0.01em;
  }

  .profile-card{
    display:grid;
    grid-template-columns:380px 1fr;
    gap:64px;
    align-items:start;
  }
  .profile-photo{
    position:relative;
    background:var(--ink);
    aspect-ratio:3/4;
    overflow:hidden;
    border-radius:2px;
  }
  .profile-photo .avatar{
    width:100%;height:100%;
    background:
      linear-gradient(135deg, rgba(226,66,28,0.15) 0%, transparent 50%),
      linear-gradient(180deg, #2A2520 0%, #14110E 100%);
    display:flex;align-items:center;justify-content:center;
    position:relative;
  }
  .profile-photo .avatar::after{
    content:"R.D";
    font-family:var(--serif-en);font-weight:300;
    font-size:120px;color:var(--paper);
    letter-spacing:-0.05em;
    opacity:0.95;
  }
  .profile-photo .avatar img{
    position:absolute;inset:0;
    width:100%;height:100%;
    object-fit:cover;object-position:center top;
    display:block;z-index:1;
  }
  .profile-photo .avatar:has(img)::after{
    display:none;
  }
  .profile-photo .stamp{
    position:absolute;top:16px;left:16px;
    border:1px solid var(--paper);color:var(--paper);
    font-family:var(--mono);font-size:9px;
    padding:5px 9px;letter-spacing:0.2em;
    border-radius:2px;
  }
  .profile-photo .stamp.hot{
    border-color:var(--hot);color:var(--hot);
    top:auto;bottom:16px;left:16px;
  }
  .profile-photo .corner{
    position:absolute;width:18px;height:18px;
    border:1px solid var(--paper);
  }
  .profile-photo .corner.tr{top:8px;right:8px;border-left:none;border-bottom:none;}
  .profile-photo .corner.br{bottom:8px;right:8px;border-left:none;border-top:none;}

  .profile-info .name-zh{
    font-family:var(--serif-cn);font-weight:900;
    font-size:72px;line-height:1;
    letter-spacing:-0.03em;margin-bottom:8px;
  }
  .profile-info .name-en{
    font-family:var(--serif-en);font-style:italic;font-weight:400;
    font-size:32px;color:var(--hot);
    margin-bottom:24px;letter-spacing:-0.02em;
  }
  .profile-info .title-line{
    font-family:var(--mono);font-size:12px;
    color:var(--muted);letter-spacing:0.1em;
    padding-bottom:24px;margin-bottom:24px;
    border-bottom:1px solid var(--rule);
  }
  .profile-info .title-line strong{
    color:var(--ink);font-weight:700;
  }
  .profile-bio{
    font-family:var(--serif-cn);font-size:18px;
    line-height:1.75;color:var(--ink-2);
    margin-bottom:28px;
  }
  .profile-bio strong{
    background:var(--acid);
    padding:1px 5px;font-weight:500;
  }
  
  .profile-tags{
    display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px;
  }
  .tag{
    font-family:var(--mono);font-size:11px;font-weight:500;
    border:1px solid var(--ink);color:var(--ink);
    padding:6px 12px;border-radius:2px;
    letter-spacing:0.05em;
  }
  .tag.filled{background:var(--ink);color:var(--paper);}

  /* 外部档案链接（LinkedIn 等） */
  .profile-links{
    display:flex;flex-wrap:wrap;gap:10px;
    margin-bottom:32px;
  }
  .profile-link{
    display:inline-flex;align-items:center;gap:10px;
    padding:9px 16px;
    border:1px solid var(--ink);
    font-family:var(--mono);font-size:11px;font-weight:600;
    color:var(--ink);
    letter-spacing:0.12em;text-transform:uppercase;
    text-decoration:none;
    border-radius:2px;
    transition:all .2s ease;
  }
  .profile-link i{ font-size:14px; }
  .profile-link:hover{
    background:#0A66C2;
    border-color:#0A66C2;
    color:#fff;
  }

  .profile-quote{
    border-left:3px solid var(--hot);
    padding:14px 0 14px 24px;
    font-family:var(--serif-cn);font-size:18px;
    font-style:italic;line-height:1.6;
    color:var(--ink);
    margin-bottom:8px;
  }
  .profile-quote-attr{
    font-family:var(--mono);font-size:11px;
    color:var(--muted);letter-spacing:0.15em;
    padding-left:24px;
  }

  /* ============ 三次算法变革时间轴 ============ */
  .timeline{
    padding:120px 0;
    border-bottom:1px solid var(--rule);
    position:relative;
  }
  .timeline::before{
    content:"FILE / 002";
    position:absolute;top:24px;right:32px;
    font-family:var(--mono);font-size:10px;
    color:var(--muted);letter-spacing:0.2em;
  }
  .eras{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:0;
    border-top:2px solid var(--ink);
    border-bottom:2px solid var(--ink);
    position:relative;
  }
  .era{
    padding:40px 32px 48px;
    border-right:1px solid var(--rule);
    position:relative;
    transition:background .3s;
  }
  .era:last-child{border-right:none;}
  .era:hover{background:var(--paper-2);}
  .era-num{
    font-family:var(--serif-en);font-style:italic;font-weight:400;
    font-size:14px;color:var(--hot);
    margin-bottom:12px;letter-spacing:0.05em;
  }
  .era-year{
    font-family:var(--mono);font-size:11px;font-weight:700;
    color:var(--muted);letter-spacing:0.18em;
    margin-bottom:20px;
  }
  .era-name{
    font-family:var(--serif-cn);font-weight:900;
    font-size:42px;line-height:1;letter-spacing:-0.02em;
    margin-bottom:8px;
  }
  .era-name-en{
    font-family:var(--serif-en);font-weight:400;font-style:italic;
    font-size:22px;color:var(--ink-2);
    margin-bottom:24px;
  }
  .era-desc{
    font-family:var(--serif-cn);font-size:15px;
    line-height:1.7;color:var(--ink-2);
    margin-bottom:24px;
  }
  .era-points{
    font-family:var(--mono);font-size:11px;
    color:var(--muted);line-height:1.9;
    letter-spacing:0.05em;
  }
  .era-points span{
    display:block;padding-left:16px;position:relative;
  }
  .era-points span::before{
    content:"→";position:absolute;left:0;
    color:var(--hot);
  }
  .era.current{background:var(--ink);color:var(--paper);}
  .era.current:hover{background:#0F0D0B;}
  .era.current .era-num{color:var(--acid);}
  .era.current .era-year{color:#888;}
  .era.current .era-name-en{color:#999;}
  .era.current .era-desc{color:#CCC;}
  .era.current .era-points{color:#999;}
  .era.current .era-points span::before{color:var(--acid);}
  .era.current::after{
    content:"NOW";
    position:absolute;top:16px;right:16px;
    background:var(--hot);color:var(--paper);
    font-family:var(--mono);font-size:10px;font-weight:700;
    padding:4px 8px;letter-spacing:0.15em;
  }

  /* ============ 文章列表 ============ */
  .articles{
    padding:120px 0;
    border-bottom:1px solid var(--rule);
    position:relative;
  }
  .articles::before{
    content:"FILE / 003";
    position:absolute;top:24px;right:32px;
    font-family:var(--mono);font-size:10px;
    color:var(--muted);letter-spacing:0.2em;
  }

  .articles-header{
    display:flex;justify-content:space-between;align-items:flex-end;
    margin-bottom:60px;
    border-bottom:1px solid var(--rule);
    padding-bottom:32px;
  }
  .filter{
    display:flex;gap:24px;
    font-family:var(--mono);font-size:11px;
    letter-spacing:0.15em;text-transform:uppercase;
  }
  .filter a{
    color:var(--muted);text-decoration:none;
    padding:6px 0;cursor:pointer;
    border-bottom:1px solid transparent;
    transition:all .2s;
  }
  .filter a:hover{color:var(--ink);}
  .filter a.active{
    color:var(--ink);font-weight:700;
    border-bottom-color:var(--hot);
  }

  /* 头条文章 */
  .featured-article{
    display:grid;
    grid-template-columns:1.2fr 1fr;
    gap:60px;
    align-items:center;
    margin-bottom:80px;
    padding-bottom:80px;
    border-bottom:1px solid var(--rule);
  }
  .featured-cover{
    aspect-ratio:16/9;
    background:var(--ink);
    border-radius:2px;
    position:relative;overflow:hidden;
    background-image:
      linear-gradient(135deg, var(--deep) 0%, #1a3a4f 50%, #0a1f2a 100%);
  }
  .featured-cover::before{
    content:"";position:absolute;inset:0;
    background-image:
      linear-gradient(0deg, transparent 49%, rgba(200,224,74,0.15) 50%, transparent 51%),
      linear-gradient(90deg, transparent 49%, rgba(200,224,74,0.1) 50%, transparent 51%);
    background-size:32px 32px;
  }
  .featured-cover .cover-text{
    position:absolute;bottom:32px;left:32px;
    color:var(--paper);
  }
  .featured-cover .cover-text .big{
    font-family:var(--serif-en);font-weight:900;
    font-size:88px;line-height:0.9;
    letter-spacing:-0.04em;color:var(--acid);
  }
  .featured-cover .cover-text .small{
    font-family:var(--mono);font-size:11px;
    letter-spacing:0.2em;margin-top:8px;
    color:var(--paper);opacity:0.8;
  }
  .featured-cover .corner{
    position:absolute;width:24px;height:24px;
    border:1px solid var(--acid);opacity:0.6;
  }
  .featured-cover .corner.tl{top:16px;left:16px;border-right:none;border-bottom:none;}
  .featured-cover .corner.tr{top:16px;right:16px;border-left:none;border-bottom:none;}
  .featured-cover .cover-img{
    position:absolute;inset:0;
    width:100%;height:100%;
    object-fit:cover;
    opacity:0.55;
    z-index:0;
  }
  .featured-cover::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(180deg, rgba(10,31,42,0.2) 0%, rgba(10,31,42,0.85) 85%);
    z-index:1;
  }
  .featured-cover .cover-text,
  .featured-cover .corner{ z-index:2; }

  .featured-meta{
    font-family:var(--mono);font-size:11px;
    color:var(--hot);letter-spacing:0.2em;
    margin-bottom:20px;
  }
  .featured-title{
    font-family:var(--serif-cn);font-weight:900;
    font-size:48px;line-height:1.1;
    letter-spacing:-0.02em;margin-bottom:24px;
  }
  .featured-title a{color:inherit;text-decoration:none;transition:color .25s;}
  .featured-title a:hover{color:var(--hot);}
  .featured-excerpt{
    font-family:var(--serif-cn);font-size:17px;
    line-height:1.7;color:var(--ink-2);
    margin-bottom:28px;
  }
  .featured-info{
    display:flex;align-items:center;gap:16px;
    font-family:var(--sans-cn);font-size:13px;
    color:var(--muted);
    margin-bottom:24px;
  }
  .featured-info .author{
    color:var(--ink);font-weight:500;
  }
  .featured-info .sep{
    width:4px;height:4px;border-radius:50%;
    background:var(--muted);
  }
  .read-link{
    display:inline-flex;align-items:center;gap:10px;
    font-family:var(--sans-cn);font-size:14px;font-weight:500;
    color:var(--ink);text-decoration:none;
    border-bottom:2px solid var(--hot);
    padding-bottom:6px;
  }
  .read-link span:last-child{transition:transform .3s;}
  .read-link:hover span:last-child{transform:translateX(6px);}

  /* 文章网格 */
  .articles-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:0;
    border-top:1px solid var(--rule);
  }
  .article{
    padding:40px 32px 36px;
    border-right:1px solid var(--rule);
    border-bottom:1px solid var(--rule);
    transition:background .25s;
    cursor:pointer;
  }
  .article:nth-child(3n){border-right:none;}
  .article:hover{background:var(--paper-2);}
  .article-num{
    font-family:var(--mono);font-size:11px;font-weight:700;
    color:var(--muted);letter-spacing:0.2em;
    margin-bottom:24px;
    display:flex;justify-content:space-between;
  }
  .article-num .cat{color:var(--hot);}
  .article-title{
    font-family:var(--serif-cn);font-weight:700;
    font-size:24px;line-height:1.3;
    letter-spacing:-0.01em;
    margin-bottom:16px;
    min-height:90px;
  }
  .article-title a{color:inherit;text-decoration:none;transition:color .25s;}
  .article-title a:hover{color:var(--hot);}
  .article-excerpt{
    font-family:var(--sans-cn);font-size:14px;
    line-height:1.65;color:var(--muted);
    margin-bottom:28px;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .article-foot{
    display:flex;justify-content:space-between;align-items:center;
    padding-top:18px;border-top:1px solid var(--rule);
    font-family:var(--mono);font-size:11px;
    color:var(--muted);letter-spacing:0.05em;
  }
  .article-foot .read-time::before{
    content:"⏱ ";opacity:0.5;
  }

  /* 文章 Tab 面板 */
  .articles-panel{display:none;}
  .articles-panel.active{display:block;}
  .articles-empty{
    padding:80px 32px;text-align:center;
    font-family:var(--serif-cn);font-size:15px;
    color:var(--muted);
    border:1px dashed var(--rule);
  }
  .filter a .num{
    margin-left:6px;color:var(--muted);
    font-weight:400;opacity:0.75;
  }
  .filter a.active .num{color:var(--hot);opacity:1;}

  /* ============ 6 大 AI 引擎追踪 ============ */
  .engines{
    padding:120px 0;
    background:var(--ink);color:var(--paper);
    position:relative;
  }
  .engines::before{
    content:"FILE / 004";
    position:absolute;top:24px;right:32px;
    font-family:var(--mono);font-size:10px;
    color:#888;letter-spacing:0.2em;
  }
  .engines .section-label{color:var(--hot);}
  .engines .section-label::before{background:var(--hot);}
  .engines .section-h{color:var(--paper);}
  .engines .section-h .en{color:#888;}

  .engines-intro{
    font-family:var(--serif-cn);font-size:18px;
    color:#BBB;line-height:1.7;
    max-width:760px;margin-bottom:60px;
  }

  .engine-grid{
    display:grid;
    grid-template-columns:repeat(6, 1fr);
    gap:1px;
    background:#2A2520;
    border:1px solid #2A2520;
  }
  .engine{
    padding:32px 20px;
    background:var(--ink);
    position:relative;
    transition:background .3s;
  }
  .engine:hover{background:#1F1B17;}
  .engine-name{
    font-family:var(--serif-en);font-weight:700;
    font-size:24px;
    color:var(--paper);
    margin-bottom:6px;letter-spacing:-0.02em;
  }
  .engine-co{
    font-family:var(--mono);font-size:10px;
    color:#777;letter-spacing:0.15em;
    text-transform:uppercase;
    margin-bottom:32px;
  }
  .engine-stat{
    font-family:var(--serif-en);font-weight:900;
    font-size:42px;line-height:1;
    color:var(--acid);letter-spacing:-0.03em;
  }
  .engine-stat-label{
    font-family:var(--sans-cn);font-size:11px;
    color:#888;margin-top:6px;
  }
  .engine-bar{
    height:3px;background:#2A2520;
    margin-top:20px;border-radius:2px;
    overflow:hidden;position:relative;
  }
  .engine-bar i{
    position:absolute;left:0;top:0;height:100%;
    background:var(--hot);
    border-radius:2px;
  }
  .engine-status{
    position:absolute;top:24px;right:20px;
    width:7px;height:7px;border-radius:50%;
    background:var(--acid);
    box-shadow:0 0 8px var(--acid);
    animation:pulse-green 2s infinite;
  }
  @keyframes pulse-green{
    0%,100%{opacity:1;}50%{opacity:0.4;}
  }

  .engines-note{
    margin-top:32px;
    font-family:var(--mono);font-size:11px;
    color:#777;letter-spacing:0.05em;
    display:flex;justify-content:space-between;
    padding-top:24px;border-top:1px solid #2A2520;
  }

  /* ============ CTA 订阅 ============ */
  .subscribe{
    padding:120px 0;
    border-bottom:1px solid var(--rule);
    text-align:center;
    background:var(--paper-2);
  }
  .subscribe h2{
    font-family:var(--serif-cn);font-weight:900;
    font-size:clamp(40px,6vw,76px);line-height:1.05;
    letter-spacing:-0.03em;
    max-width:900px;margin:0 auto 24px;
  }
  .subscribe h2 em{
    font-family:var(--serif-en);font-style:italic;font-weight:400;
    color:var(--hot);
  }
  .subscribe p{
    font-family:var(--serif-cn);font-size:18px;
    color:var(--ink-2);max-width:560px;margin:0 auto 40px;
    line-height:1.7;
  }
  .form{
    display:flex;max-width:560px;margin:0 auto;
    border:1px solid var(--ink);
    background:var(--paper);
  }
  .form input{
    flex:1;padding:18px 24px;
    border:none;background:transparent;
    font-family:var(--sans-cn);font-size:15px;
    color:var(--ink);outline:none;
  }
  .form input::placeholder{color:var(--muted);}
  .form button{
    background:var(--ink);color:var(--paper);
    border:none;padding:0 32px;cursor:pointer;
    font-family:var(--sans-cn);font-size:14px;font-weight:500;
    letter-spacing:0.05em;
  }
  .form button:hover{background:var(--hot);}

  /* ============ 响应式 ============ */
  @media (max-width: 980px){
    .hero-grid{grid-template-columns:1fr;gap:32px;}
    .profile-card{grid-template-columns:1fr;gap:36px;}
    .eras{grid-template-columns:1fr;}
    .era{border-right:none;border-bottom:1px solid var(--rule);}
    .era:last-child{border-bottom:none;}
    .featured-article{grid-template-columns:1fr;gap:32px;}
    .articles-grid{grid-template-columns:1fr;}
    .article{border-right:none;}
    .engine-grid{grid-template-columns:repeat(2, 1fr);}
  }
