/*
Theme Name: 晏大师行业资讯 (YDS News)
Theme URI: https://www.yandashi.cn/
Author: 老朱 / 小红魔
Description: 与主站视觉完全一致的行业资讯主题。2026-10-21 由静态站迁移到 WordPress 时建立。
Version: 1.0.2
Text Domain: yds-news
*/

:root {
      --c-brand:#D7202E;
      --c-brand-dark:#B81824;
      --c-brand-deep:#8A0F18;
      --c-brand-soft:#E8752B;
      --c-brand-light:#F5D9DC;
      --c-cream:#F5F0E8;
      --c-cream-dark:#E8E0D2;
      --c-bg:#FAF7F2;
      --c-gold:#D4A574;
      --c-gold-light:#E5C29A;
      --c-green:#2D5F3F;
      --c-green-light:#4A8B6A;
      --c-ink:#1A1A1A;
      --c-dark:var(--c-ink);
      --c-ink-2:#4A4A4A;
      --c-ink-3:#8A8A8A;
      --c-line:#E5E0D5;
      --c-text:var(--c-ink);
      --c-text-2:var(--c-ink-2);
      --c-text-inv:#FAF7F2;
      --c-border:rgba(44,37,32,.08);
      --c-border-strong:rgba(44,37,32,.18);

      --f-sans:"Noto Sans SC",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      --f-serif:"Noto Serif SC",serif;
      --f-en:"Montserrat",sans-serif;

      --fs-display:clamp(64px,9vw,132px);
      --fs-h1:clamp(40px,5vw,72px);
      --fs-h2:clamp(28px,3vw,42px);
      --fs-h3:clamp(20px,1.6vw,26px);
      --fs-body:16px;
      --fs-small:14px;

      --s-section:clamp(80px,10vw,140px);
      --s-block:clamp(24px,3vw,48px);
      --s-gap:clamp(16px,2vw,32px);

      --r-sm:8px;
      --r-md:14px;
      --r-lg:22px;
      --r-xl:32px;
      --r-pill:999px;

      --shadow-sm:0 2px 8px rgba(26,26,26,.04),0 1px 3px rgba(26,26,26,.06);
      --shadow-md:0 8px 28px rgba(26,26,26,.08),0 2px 6px rgba(26,26,26,.06);
      --shadow-lg:0 20px 60px rgba(26,26,26,.14),0 6px 18px rgba(26,26,26,.08);

      --ease-out:cubic-bezier(0.16,1,0.3,1);
    }
    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{
      font-family:var(--f-sans);
      color:var(--c-text);
      background:var(--c-bg);
      line-height:1.6;
      -webkit-font-smoothing:antialiased;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
    ::selection{background:var(--c-brand);color:#fff}
    .container{max-width:1280px;margin:0 auto;padding:0 32px}

    
    .nav{position:fixed;top:0;left:0;right:0;z-index:100;background:transparent;color:#fff;transition:background .3s var(--ease-out),box-shadow .3s}
    .nav.is-scrolled{background:rgba(250,247,242,.96);color:var(--c-text);box-shadow:0 1px 0 var(--c-border),0 6px 24px rgba(26,26,26,.06)}
    .nav__inner{max-width:1280px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;height:76px}
    .nav__brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}
    .nav__logo{width:42px;height:42px;border-radius:12px;background:var(--c-brand);color:#fff;display:grid;place-items:center;font-family:var(--f-serif);font-weight:900;font-size:24px;letter-spacing:-.02em;box-shadow:0 4px 14px rgba(215,32,46,.32)}
    .nav__brand-text{display:flex;flex-direction:column;line-height:1.05}
    .nav__brand-cn{font-family:var(--f-serif);font-weight:900;font-size:20px;letter-spacing:.06em;color:inherit}
    .nav.is-scrolled .nav__brand-cn{color:var(--c-text)}
    .nav__brand-en{font-family:var(--f-en);font-size:11px;font-weight:500;letter-spacing:.18em;color:rgba(255,255,255,.6);text-transform:uppercase;margin-top:2px;transition:color .3s var(--ease-out)}
    .nav.is-scrolled .nav__brand-en{color:var(--c-text-2)}
    .nav__menu{display:flex;align-items:center;gap:36px}
    .nav__menu a{font-size:17px;font-weight:600;color:rgba(255,255,255,.92);position:relative;padding:8px 0;letter-spacing:.04em;transition:color .25s var(--ease-out);text-decoration:none}
    .nav.is-scrolled .nav__menu a{color:var(--c-text)}
    .nav__menu a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--c-brand-soft);transform:scaleX(0);transform-origin:left center;transition:transform .35s var(--ease-out),background .3s}
    .nav.is-scrolled .nav__menu a::after{background:var(--c-brand)}
    .nav__menu a:hover{color:var(--c-brand)}
    .nav__menu a:hover::after{transform:scaleX(1)}
    .nav__menu a.is-active{color:var(--c-brand)}
    .nav__menu a.is-active::after{transform:scaleX(1);background:var(--c-brand)}
    .nav__cta{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;background:var(--c-brand);color:#fff;border-radius:var(--r-pill);font-weight:700;font-size:14px;transition:transform .25s var(--ease-out),box-shadow .25s var(--ease-out),background .25s;box-shadow:0 6px 18px rgba(215,32,46,.28);text-decoration:none}
    .nav__cta:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(215,32,46,.38);background:var(--c-brand-deep)}
    .nav__cta svg{width:14px;height:14px}
    .nav__badge{display:inline-block;margin-left:6px;padding:2px 6px;background:var(--c-brand);color:#fff;font-size:9px;font-weight:700;letter-spacing:.1em;border-radius:4px;vertical-align:middle;line-height:1.4}
    .nav__menu a:hover .nav__badge{background:var(--c-brand-soft)}
    .nav__burger{display:none}

    
    .bs-eyebrow{
      display:inline-flex;align-items:center;gap:14px;
      padding:8px 18px 8px 8px;
      background:rgba(255,255,255,.08);
      border:1px solid rgba(255,255,255,.18);
      backdrop-filter:blur(8px);
      border-radius:var(--r-pill);
      font-size:13px;font-weight:500;letter-spacing:.12em;
      color:#fff;margin-bottom:36px;
    }
    .app-hero{
      position:relative;min-height:80vh;
      display:flex;align-items:center;
      overflow:hidden;padding:120px 0 80px;
    }
    .app-hero-bg{position:absolute;inset:0;z-index:0}
    .app-hero-bg img{width:100%;height:100%;object-fit:cover}
    .app-hero-bg::after{
      content:"";position:absolute;inset:0;
      background:linear-gradient(135deg,rgba(26,26,26,.6) 0%,rgba(26,26,26,.42) 60%,rgba(215,32,46,.18) 100%);
    }
    .app-hero-inner{
      position:relative;z-index:2;max-width:1280px;margin:0 auto;padding:0 32px;
      color:var(--c-text-inv);
    }
    .app-hero-inner h1{
      font-family:var(--f-sans);font-weight:900;
      font-size:clamp(46px,5.6vw,80px);line-height:1.05;
      letter-spacing:-.03em;margin-bottom:32px;color:#fff;
    }
    .app-hero-inner h1 em{
      font-family:var(--f-serif);font-style:normal;
      color:#FFD7B5;font-weight:700;
    }
    .app-hero-sub{
      max-width:780px;font-size:clamp(15px,1.4vw,18px);
      line-height:1.7;color:rgba(250,247,242,.85);margin-bottom:0;
    }
    .app-hero-sub strong{color:#fff;font-weight:700}
    @media (max-width:768px){
      .app-hero{min-height:auto;padding:110px 0 56px}
    }

    
    .news-list{padding-block:var(--s-section);background:var(--c-bg)}
    .news-list-head{
      display:flex;align-items:flex-end;justify-content:space-between;
      margin-bottom:48px;gap:24px;flex-wrap:wrap;
    }
    .news-list-head h2{
      font-family:var(--f-serif);font-weight:900;
      font-size:var(--fs-h1);line-height:1.1;letter-spacing:-.02em;
      color:var(--c-dark);
    }
    .news-list-head h2 em{font-family:var(--f-sans);font-style:normal;color:var(--c-brand)}
    .news-list-head-sub{
      font-family:var(--f-en);font-size:13px;font-weight:600;
      letter-spacing:.18em;color:var(--c-text-2);padding-bottom:12px;
    }

    .news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
    @media (max-width:980px){.news-grid{grid-template-columns:repeat(2,1fr)}}
    @media (max-width:640px){.news-grid{grid-template-columns:1fr}}

    .news-card{
      position:relative;display:flex;flex-direction:column;
      padding:36px 32px 28px;background:#fff;border-radius:var(--r-lg);
      box-shadow:var(--shadow-sm);border:1px solid var(--c-border);
      transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out),border-color .35s var(--ease-out);
      overflow:hidden;
    }
    .news-card::before{
      content:'';position:absolute;top:0;left:0;right:0;height:3px;
      background:linear-gradient(90deg,var(--c-brand) 0%,#FFD7B5 100%);
      transform:scaleX(0);transform-origin:left;
      transition:transform .35s var(--ease-out);
    }
    .news-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:transparent}
    .news-card:hover::before{transform:scaleX(1)}

    .news-card-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
    .news-card-keyword{
      display:inline-block;padding:5px 12px;
      background:rgba(215,32,46,.08);color:var(--c-brand);
      font-size:12px;font-weight:600;border-radius:var(--r-sm);letter-spacing:.04em;
    }
    .news-card-keyword--soft{
      background:rgba(232,117,43,.10);color:#FFD7B5;
    }

    .news-card-title{
      font-family:var(--f-sans);font-weight:700;
      font-size:var(--fs-h3);line-height:1.35;
      color:var(--c-dark);letter-spacing:-.01em;
      margin-bottom:16px;transition:color .25s var(--ease-out);
    }
    .news-card:hover .news-card-title{color:var(--c-brand)}

    .news-card-desc{
      font-size:14px;line-height:1.7;color:var(--c-text-2);
      flex:1;margin-bottom:28px;
    }

    .news-card-meta{
      display:flex;align-items:center;justify-content:space-between;
      padding-top:20px;border-top:1px solid var(--c-border);
      font-family:var(--f-en);font-size:12px;font-weight:500;
      color:var(--c-text-2);letter-spacing:.04em;
    }
    .news-c…left{display:flex;align-items:center;gap:12px}
    .news-card-meta-divider{width:1px;height:10px;background:var(--c-border-strong)}
    .news-card-cta{
      display:inline-flex;align-items:center;gap:6px;
      color:var(--c-brand);font-weight:600;font-size:13px;
      transition:gap .25s var(--ease-out);
    }
    .news-card:hover .news-card-cta{gap:10px}
    .news-card-cta svg{width:14px;height:14px}

    
    .footer{background:var(--c-dark);color:rgba(250,247,242,.65);padding:72px 0 36px;font-size:14px}
    .footer__top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.08)}
    .footer__brand{display:flex;flex-direction:column;gap:14px;max-width:340px}
    .footer__brand-row{display:flex;align-items:center;gap:12px}
    .footer__brand-mark{width:42px;height:42px;border-radius:12px;background:var(--c-brand);color:#fff;display:grid;place-items:center;font-family:var(--f-serif);font-weight:900;font-size:22px}
    .footer__brand-text{display:flex;flex-direction:column;line-height:1.05}
    .footer__brand-cn{font-family:var(--f-serif);font-weight:900;color:#fff;font-size:20px;letter-spacing:.06em}
    .footer__brand-en{font-family:var(--f-en);font-size:11px;letter-spacing:.18em;color:rgba(250,247,242,.55);text-transform:uppercase;margin-top:2px}
    .footer__about{line-height:1.75;color:rgba(250,247,242,.6)}
    .footer__col h4{font-size:13px;font-weight:700;color:#fff;letter-spacing:.12em;margin-bottom:18px;text-transform:uppercase}
    .footer__col li{margin-bottom:10px;line-height:1.6}
    .footer__col a{transition:color .25s;color:rgba(250,247,242,.65);text-decoration:none}
    .footer__col a:hover{color:var(--c-brand-soft)}
    .footer__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-top:32px;font-size:12.5px;color:rgba(250,247,242,.45)}
    .footer__bottom a{color:inherit;text-decoration:none;transition:color .25s}
    .footer__bottom a:hover{color:var(--c-brand-soft)}
    .footer__icp{font-family:var(--f-en);letter-spacing:.06em}

    
    .cta__ch-val{font-size:22px;font-weight:900;letter-spacing:-.01em;color:#fff;margin-bottom:4px}
    .cta__ch-val--mono{font-family:var(--f-en);font-size:20px;font-weight:700}

    @media (max-width:980px){
      .footer__top{grid-template-columns:1.4fr 1fr 1fr;gap:36px}
      .footer__col:last-child{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}
    }
    @media (max-width:720px){
      .footer__top{grid-template-columns:1fr 1fr;gap:32px}
      .footer__col:last-child{grid-column:auto;display:block}
    }
    @media (max-width:480px){
      .footer__top{grid-template-columns:1fr}
      .footer__bottom{flex-direction:column;align-items:flex-start}
    }

/* ===== 文章正文（取自原静态文章页） ===== */
.article-meta {
      padding:32px 0 0;
      border-bottom:1px solid var(--c-line);
      background:var(--c-bg);
    }
.article-meta-inner {
      display:flex;align-items:center;flex-wrap:wrap;gap:24px;
      font-family:var(--f-en);font-size:13px;font-weight:500;
      color:var(--c-text-2);letter-spacing:.04em;
    }
.article-meta-item {display:flex;align-items:center;gap:8px}
.article-meta-item strong {font-weight:700;color:var(--c-dark)}
.article-meta-divider {width:1px;height:14px;background:var(--c-line)}
.article-body {
      padding:64px 0 80px;
      background:var(--c-bg);
    }
.article-container {
      max-width:780px;margin:0 auto;padding:0 32px;
    }
.article-header {
      margin-bottom:48px;padding-bottom:32px;
      border-bottom:1px solid var(--c-line);
    }
.article-eyebrow {
      display:inline-block;margin-bottom:16px;
      padding:5px 14px;
      background:var(--c-brand-light);color:var(--c-brand-deep);
      font-size:12px;font-weight:700;letter-spacing:.12em;
      border-radius:var(--r-pill);
      text-transform:uppercase;
    }
.article-title {
      font-family:var(--f-serif);font-weight:900;
      font-size:clamp(28px,3.2vw,40px);line-height:1.25;
      color:var(--c-dark);letter-spacing:-.015em;
      margin-bottom:20px;
    }
.article-title em {font-family:var(--f-sans);font-style:normal;color:var(--c-brand)}
.article-lead {
      font-size:18px;line-height:1.75;
      color:var(--c-text);font-weight:500;
      padding:20px 24px;
      border-left:4px solid var(--c-brand);
      background:var(--c-brand-light);
      border-radius:0 var(--r-md) var(--r-md) 0;
    }
.article-lead strong {color:var(--c-brand-deep);font-weight:700}
.article-h2 {
      font-family:var(--f-serif);font-weight:900;
      font-size:var(--fs-h2);line-height:1.25;
      color:var(--c-dark);letter-spacing:-.01em;
      margin:48px 0 20px;
      position:relative;padding-left:18px;
    }
.article-h2::before {
      content:"";position:absolute;left:0;top:8px;bottom:8px;
      width:4px;background:var(--c-brand);
      border-radius:2px;
    }
.article-h2 em {
      font-family:var(--f-sans);font-style:normal;color:var(--c-brand);
    }
.article-h3 {
      font-family:var(--f-sans);font-weight:700;
      font-size:var(--fs-h3);line-height:1.35;
      color:var(--c-dark);letter-spacing:-.01em;
      margin:32px 0 14px;
    }
.article-h3 em {font-family:var(--f-serif);font-style:normal;color:#FFD7B5}
.article-p {
      font-size:16px;line-height:1.85;
      color:var(--c-text);margin-bottom:18px;
    }
.article-p strong {color:var(--c-dark);font-weight:700}
.article-ul,.article-ol {
      margin:16px 0 24px;padding-left:24px;
    }
.article-ul li,.article-ol li {
      font-size:16px;line-height:1.85;
      color:var(--c-text);margin-bottom:8px;
    }
.article-ul li::marker {color:var(--c-brand)}
.article-ol li::marker {color:var(--c-brand);font-weight:700}
.article-cta {
      padding:80px 0;background:var(--c-bg);
    }
.article-cta-inner {
      max-width:880px;margin:0 auto;padding:48px 40px;
      background:linear-gradient(135deg,var(--c-dark) 0%,var(--c-dark-2, #252525) 100%);
      border-radius:var(--r-xl);
      text-align:center;color:#fff;
      position:relative;overflow:hidden;
    }
.article-cta-inner::before {
      content:"";position:absolute;
      top:-50%;right:-10%;width:60%;height:200%;
      background:radial-gradient(circle,rgba(215,32,46,.18) 0%,transparent 60%);
      pointer-events:none;
    }
.article-cta-inner h3 {
      font-family:var(--f-serif);font-weight:900;
      font-size:var(--fs-h2);line-height:1.25;
      letter-spacing:-.01em;margin-bottom:16px;
      position:relative;
    }
.article-cta-inner h3 em {font-family:var(--f-sans);font-style:normal;color:#FFD7B5}
.article-cta-inner p {
      font-size:15px;line-height:1.7;color:rgba(255,255,255,.85);
      margin-bottom:32px;max-width:600px;margin-left:auto;margin-right:auto;
      position:relative;
    }
.article-cta-actions {
      display:flex;gap:14px;justify-content:center;flex-wrap:wrap;
      position:relative;
    }
.article-cta-btn {
      display:inline-flex;align-items:center;gap:10px;
      padding:16px 28px;border-radius:var(--r-pill);
      font-weight:700;font-size:15px;letter-spacing:.04em;
      transition:transform .25s var(--ease-out),box-shadow .25s var(--ease-out);
    }
.article-cta-btn--primary {
      background:var(--c-brand);color:#fff;
      box-shadow:0 10px 30px rgba(215,32,46,.4);
    }
.article-cta-btn--primary:hover {transform:translateY(-3px);box-shadow:0 14px 40px rgba(215,32,46,.55);background:var(--c-brand-dark)}
.article-cta-btn--secondary {
      background:transparent;color:#fff;
      border:1.5px solid rgba(255,255,255,.3);
    }
.article-cta-btn--secondary:hover {border-color:#fff;transform:translateY(-3px)}
.article-cta-btn svg {width:16px;height:16px}
.article-h2 {padding-left:14px}

/* ===================================================================
   WordPress 登录后顶部管理条（admin bar）避让
   2026-10-21 补：WP 对登录用户注入 html{margin-top:32px} 与 #wpadminbar，
   本主题 .nav 为 position:fixed;top:0，不避让会在页面顶部漏出
   body 背景（米白 #FAF7F2），视觉上像"顶部一条白带"。
   =================================================================== */
.admin-bar .nav{top:32px}
@media screen and (max-width:782px){
  .admin-bar .nav{top:46px}
}
@media screen and (max-width:600px){
  .admin-bar .nav{top:0}
}

/* ===================================================================
   列表页归档入口 + 归档页样式（2026-10-27 小红魔）
   =================================================================== */
.news-more{
  display:flex;align-items:center;justify-content:flex-end;gap:22px;
  margin-top:var(--s-gap);padding-top:8px;
}
/* .news-more-btn 已移除（2026-10-27 老朱拍板去掉「加载更多」按钮，
   改由 /news/all/ 归档页承载「全部文章」入口，两者不再重复） */
.news-more-all{
  font-size:14px;color:var(--c-ink-3);text-decoration:none;
  border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease;
}
.news-more-all:hover{color:var(--c-brand);border-bottom-color:var(--c-brand)}
@media (max-width:640px){
  .news-more{flex-direction:column;align-items:stretch;gap:14px}
  .news-more-all{text-align:center}
}

/* 归档页 */
.archive-count{
  color:var(--c-ink-3);font-size:14px;margin:0 0 24px;
}
.archive-back{
  color:var(--c-brand);text-decoration:none;font-weight:600;
  border-bottom:1px solid var(--c-brand);padding-bottom:2px;
}
.archive-back:hover{color:var(--c-brand-dark)}
