/* Daily Pulse 复刻版 — 杂志风样式（结构同原站：细顶栏/花体刊名/大衬线标题/缩略图+红色署名/细黑分割线） */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;0,900;1,700&family=Pinyon+Script&family=Cinzel:wght@700&family=Noto+Serif+SC:wght@600;700;900&display=swap');
:root{--paper:#FBFBFB;--ink:#1B1917;--red:#A41230;--muted:#6E6C68;--line:#E3E0DA;--rule:#1B1917;--card:#FFF;
--serif:'Playfair Display','Noto Serif SC',Georgia,serif;--script:'Pinyon Script',cursive;--sans:Arial,'PingFang SC','Microsoft YaHei',sans-serif}
[data-theme="dark"]{--paper:#141210;--ink:#F1ECE2;--red:#E05774;--muted:#A39D92;--line:#2C2823;--rule:#F1ECE2;--card:#1C1916}
*{box-sizing:border-box} body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.7}
a{color:inherit;text-decoration:none} img{display:block;max-width:100%}
.wrap{max-width:1720px;margin:0 auto;padding:0 40px} body.page-narrow .wrap{max-width:1180px;padding:0 22px}
.topwrap{max-width:1720px;margin:0 auto;padding:0 40px}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 0 12px;gap:12px;border-bottom:3px double var(--rule)}
.navlinks{display:flex;gap:22px;flex-wrap:wrap}.navlinks a{font-family:var(--serif);font-size:15px;font-weight:700;letter-spacing:.08em}
.navlinks a:hover{color:var(--red)}
.wordmark .wm-script{font-family:var(--script);font-size:38px;line-height:1}
.wordmark .wm-mag{display:block;font-family:'Cinzel',serif;font-size:9px;letter-spacing:.3em;text-align:center}
.theme-btn{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:20px;padding:6px 14px;cursor:pointer}
.sec-head{margin:34px 0 10px}.sec-title{font-family:var(--serif);font-size:30px;margin:0}.sec-sub{color:var(--muted);font-size:14px}
.sec-more{font-size:14px;color:var(--red)} .sec-title-row{display:flex;justify-content:space-between;align-items:baseline}
hr.rule{border:0;border-top:2px solid var(--rule);margin:22px 0}
.rows{display:flex;flex-direction:column}
.row{display:grid;grid-template-columns:220px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}
.thumb{position:relative;display:block}.thumb img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/10}
.badge{position:absolute;left:0;bottom:0;background:var(--red);color:#fff;font-size:11px;letter-spacing:.1em;padding:3px 8px}
.row h3{font-family:var(--serif);font-size:21px;margin:2px 0 6px;line-height:1.35}.row h3 a:hover{color:var(--red)}
.excerpt{color:var(--muted);font-size:15px;margin:0 0 8px}
.byline{font-size:13px}.byline .who{color:var(--red);font-weight:700}.byline .sep{margin:0 6px;color:var(--muted)}.byline .when{color:var(--muted)}
.cover{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;padding:26px 0 6px}.cover h2{font-family:var(--serif);font-size:40px;line-height:1.2;margin:8px 0}
.kicker{color:var(--red);letter-spacing:.14em;font-size:13px;font-weight:700}
.cover-flag{position:absolute;top:10px;left:10px;background:var(--ink);color:var(--paper);padding:4px 10px;font-size:12px}
.catgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:22px}
.catcard h4{font-family:var(--serif);font-size:20px;margin:10px 0 2px}.catcard .meta{color:var(--muted);font-size:13px}
.duel{display:grid;grid-template-columns:1fr 1fr;gap:36px}.duel-title{font-family:var(--serif);border-bottom:2px solid var(--rule);padding-bottom:8px}
.hero{display:grid;grid-template-columns:1fr 1.2fr;gap:28px;padding:28px 0 4px}.hero h1{font-family:var(--serif);font-size:44px;margin:6px 0}.hero .en{color:var(--red);letter-spacing:.2em;font-size:13px;font-weight:700}.hero .desc{color:var(--muted)}
.article .art-kicker{color:var(--red);letter-spacing:.14em;font-weight:700;font-size:13px}
.article .art-title{font-family:var(--serif);font-size:38px;line-height:1.25}
.art-byline{color:var(--muted);font-size:14px;border-bottom:1px solid var(--line);padding-bottom:14px}
.art-body p{font-size:18px}.art-hero img{width:100%}
.art-source{border:1px solid var(--line);padding:16px;margin:26px 0}.src-link{color:var(--red)}
footer{border-top:3px double var(--rule);margin-top:48px;padding:22px 0 40px;color:var(--muted);font-size:14px;text-align:center}
.fchips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.fchip{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:20px;padding:6px 14px;cursor:pointer}.fchip.on{background:var(--red);color:#fff;border-color:var(--red)}
.fsearch{width:100%;max-width:420px;padding:9px 12px;border:1px solid var(--line);background:var(--card);color:var(--ink)}
.hist-date{font-family:var(--serif);font-size:24px;margin:30px 0 4px}.hist-date small,.ed-cat small{color:var(--muted);font-size:13px;margin-left:10px}
.ed-cat{font-family:var(--serif);font-size:19px;margin:20px 0 0}
@media(max-width:800px){.row,.cover,.hero,.duel{grid-template-columns:1fr}.wrap{padding:0 18px}}

/* ===== 移动端 A 版 · 杂志编辑风（2026-10-23 用户选定） ===== */
.tabbar{display:none}
@media (max-width:1020px){
  .duel{grid-template-columns:1fr}
  .hero{grid-template-columns:1fr}
  .hero .sidecol{border-left:none;padding-left:0}
}
@media (max-width:860px){
  html,body{overflow-x:clip}
  .wrap{padding:0 20px 44px}
  /* 报头：花体刊名居中 + 双线栏目行（报纸式） */
  .topwrap{padding:0 20px}
  .topbar{flex-wrap:wrap;justify-content:center;padding:12px 0 0;position:relative;border-bottom:none}
  .wordmark{order:1;flex:1 0 100%;text-align:center}
  .wordmark .wm-script{font-size:37px}
  .wordmark .wm-mag{display:block;font-size:10px;letter-spacing:.55em;color:var(--muted);margin-top:2px}
  .theme-btn{order:2;position:absolute;right:0;top:16px;font-size:11px;letter-spacing:.14em;padding:5px 9px;border:1px solid var(--line);background:transparent;color:var(--muted)}
  .navlinks{order:3;flex:1 0 100%;display:flex;justify-content:flex-start;gap:20px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;white-space:nowrap;border-top:1px solid var(--rule);border-bottom:3px double var(--rule);padding:9px 2px;margin-top:12px}
  .navlinks::-webkit-scrollbar{display:none}
  .navlinks a{flex:0 0 auto;font-size:13.5px;letter-spacing:.12em;color:var(--ink)}
  /* 封面故事：图作封面，衬线大标题 */
  .cover{display:flex;flex-direction:column;gap:0;padding:20px 0 4px}
  .cover .thumb{border:1px solid var(--rule)}
  .cover .thumb img{width:100%;aspect-ratio:16/10;object-fit:cover}
  .cover .kicker{color:var(--red);font-size:11px;letter-spacing:.42em;font-weight:700;margin:18px 0 8px}
  .cover h2{font-family:var(--serif);font-size:29px;line-height:1.32;font-weight:900;margin:0 0 10px}
  .cover .excerpt{font-family:var(--serif);font-size:15.5px;line-height:1.75;color:var(--ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .cover .byline{font-size:11px;letter-spacing:.18em;color:var(--muted);margin-top:12px}
  hr.rule{border:none;border-top:3px double var(--rule);margin:18px 0 0}
  /* 区块标题：衬线 + 红色小标 */
  .sec-head{margin:30px 0 2px;border-bottom:2px solid var(--rule);padding-bottom:7px;align-items:baseline}
  .sec-head h2{font-family:var(--serif);font-size:22px;font-weight:900}
  .sec-head .more{font-size:11px;letter-spacing:.18em;color:var(--red)}
  /* 文章列表：编号 + 衬线标题 + 小图右置 */
  .row{display:grid;grid-template-columns:1fr 84px;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);align-items:start}
  .row .thumb{order:2}
  .row .thumb img{width:84px;height:64px;object-fit:cover;border:1px solid var(--line)}
  .row>div{order:1;min-width:0}
  .row h3{font-family:var(--serif);font-size:18px;line-height:1.45;font-weight:700;margin:3px 0 6px}
  .row p{font-size:13px;line-height:1.6;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .row .who{font-size:11px;letter-spacing:.1em;margin-top:6px}
  .badge{font-size:9.5px;padding:2px 6px}
  #feedRows{counter-reset:rownum}
  #feedRows .row{grid-template-columns:32px 1fr 84px;counter-increment:rownum}
  #feedRows .row::before{content:counter(rownum,decimal-leading-zero);order:0;font-family:var(--serif);font-size:21px;font-weight:300;color:#b3a888;line-height:1.2}
  #feedRows .row .thumb{order:3}
  #feedRows .row>div{order:2}
  /* 栏目索引：纯文字索引行 */
  .catgrid{grid-template-columns:1fr;gap:0}
  .catcard{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
  .catcard .thumb{display:none}
  .catcard h4{font-family:var(--serif);font-size:18.5px;font-weight:700;margin:0}
  .catcard .meta{font-size:10.5px;letter-spacing:.2em;color:var(--muted);white-space:nowrap}
  /* 栏目页头 */
  .hero{padding:18px 0 4px;gap:14px}
  .hero .thumb{border:1px solid var(--rule)}
  .hero .thumb img{width:100%;aspect-ratio:16/9;object-fit:cover}
  .hero h1{font-family:var(--serif);font-size:29px;line-height:1.3;font-weight:900}
  .hero .lede{font-family:var(--serif);font-size:15px;line-height:1.75}
  .verse{padding:20px 2px}
  .verse blockquote{font-family:var(--serif);font-size:18.5px;line-height:1.65}
  .issue-card{grid-template-columns:1fr;gap:3px;padding:14px 0}
  /* 文章页 */
  .article{padding-top:16px}
  .article h1{font-family:var(--serif);font-size:27px;line-height:1.35;font-weight:900}
  .article .a-dek{font-family:var(--serif);font-size:15.5px;line-height:1.75}
  .article .a-hero{border:1px solid var(--rule)}
  .article .a-body{font-family:var(--serif);font-size:16.5px;line-height:1.95}
  .article .a-body img{height:auto}
  .article .byline{flex-wrap:wrap;gap:6px 12px}
  .tools{position:static}
  .toolrow{grid-template-columns:1fr}
  .author-row{grid-template-columns:48px 1fr;gap:12px;padding:14px 0}
  footer{font-size:11px;letter-spacing:.16em;line-height:2;text-align:center;padding-bottom:84px}
  /* 底部导航：文字式（杂志风） */
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--paper);border-top:1px solid var(--rule);padding-bottom:env(safe-area-inset-bottom)}
  .tabbar a,.tabbar button{flex:1;background:none;border:none;font:inherit;cursor:pointer;text-align:center;padding:13px 0 14px;font-size:12px;letter-spacing:.3em;color:var(--ink);text-decoration:none}
  .tabbar .tb-ico{display:none}
}
@media (max-width:400px){
  .cover h2{font-size:26px}
  .article h1{font-size:25px}
  #feedRows .row{grid-template-columns:28px 1fr 76px;gap:11px}
  .row .thumb img{width:76px;height:58px}
}
