/* ===========================================================
   Layout D — 日报编辑部 | 暖纸 · 砖红 · 墨色衬线
   =========================================================== */
:root{
  --brand:#b3402a; --brand-2:#8f2f1d; --accent:#c99a3c;
  --bg:#faf6ee; --bg-2:#f3ecdd; --card:#fffdf7; --card-2:#f1e9d8;
  --line:#e2d7bf; --ink:#2b2118; --text:#33281d; --muted:#7d6f5b; --radius:4px;
  --f-head:"IBM Plex Serif","Georgia",serif;
  --f-body:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;
}
body{background:var(--bg);color:var(--text);font-family:var(--f-body);font-size:15.5px;line-height:1.75}
h1,h2,h3,h4{font-family:var(--f-head);font-weight:700;letter-spacing:-.01em}

/* header */
.gx-header{background:var(--card);border-bottom:2px solid var(--ink)}
.gx-header .wrap{height:62px}
.brand{font-family:var(--f-head);font-weight:700;color:var(--ink)}
.brand-mark{border-radius:2px;background:var(--brand);color:#fff;font-weight:700}
.nav{font-size:.86rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.nav a{color:var(--ink)}.nav a::after{background:var(--brand);height:2px}
.search input[type=search]{background:var(--bg);border:1px solid var(--line);border-radius:2px;color:var(--text)}

.dt > *{width:min(1180px,94vw);margin-inline:auto}

/* 报头 */
.dt-mast{text-align:center;padding:30px 0 18px;border-bottom:3px double var(--ink)}
.dt-mast__top{display:flex;justify-content:space-between;font-size:.72rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:18px}
.dt-mast h1{margin:0;font-size:clamp(1.9rem,4.6vw,3rem);line-height:1.12;color:var(--ink)}
.dt-mast__t{margin:8px 0 0;color:var(--muted);font-size:.95rem;font-style:italic}

/* 区块标题 */
.dt-sec{font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brand);margin:0 0 12px;font-weight:700}
.dt-sec--rule{display:flex;align-items:center;gap:14px;margin:34px 0 16px}
.dt-sec--rule::after{content:"";flex:1;height:1px;background:var(--line)}

/* 头版特写 */
.dt-lead{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:26px;padding:24px 0 8px}
.dt-lead__feat{display:flex;flex-direction:column;border:1px solid var(--line);background:var(--card);border-radius:var(--radius);overflow:hidden}
.dt-lead__img{width:100%;aspect-ratio:16/8.4;object-fit:cover;display:block}
.dt-lead__body{padding:18px 20px 20px}
.dt-kicker{display:inline-block;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brand);font-weight:700;margin-bottom:6px}
.dt-lead__body h2{margin:0 0 8px;font-size:clamp(1.3rem,2.6vw,1.85rem);line-height:1.25}
.dt-lead__body h2 a{color:var(--ink)}
.dt-lead__body h2 a:hover{color:var(--brand)}
.dt-lead__body p{margin:0 0 12px;color:#4c4032;font-size:.94rem}
.dt-lead__go{font-family:var(--f-head);font-weight:700;color:var(--brand);font-size:.9rem}

.dt-lead__list{display:flex;flex-direction:column;gap:2px}
.dt-brief{display:grid;grid-template-columns:92px 1fr;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.dt-brief:last-child{border-bottom:0}
.dt-brief__img{width:92px;height:64px;object-fit:cover;border-radius:var(--radius);background:var(--card-2)}
.dt-brief span{min-width:0;display:flex;flex-direction:column;gap:3px}
.dt-brief b{font-family:var(--f-head);font-size:.95rem;line-height:1.3;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dt-brief i{font-style:normal;font-size:.72rem;color:var(--muted)}
.dt-brief:hover b{color:var(--brand)}

/* 分类索引（报纸目录风） */
.dt-index__cols{columns:2;column-gap:44px}
.dt-idx{display:flex;align-items:baseline;gap:8px;padding:6px 0;break-inside:avoid}
.dt-idx b{font-family:var(--f-head);font-size:.98rem;color:var(--ink);font-weight:600}
.dt-idx:hover b{color:var(--brand)}
.dt-idx__dots{flex:1;border-bottom:1px dotted #c4b697;transform:translateY(-4px)}
.dt-idx i{font-style:normal;font-size:.78rem;color:var(--muted);font-variant-numeric:tabular-nums}

/* Top20 表格 */
.dt-table table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.dt-table th{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:left;
  padding:10px 12px;border-bottom:2px solid var(--ink);background:var(--bg-2)}
.dt-table td{padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.dt-table tr:last-child td{border-bottom:0}
.dt-table tr:hover td{background:#fbf7ec}
.dt-n{font-family:var(--f-head);font-weight:700;color:var(--brand);font-size:.85rem;width:44px}
.dt-timg{width:64px;height:44px;object-fit:cover;border-radius:3px;background:var(--card-2);display:block}
.dt-table td a b{font-family:var(--f-head);font-size:.94rem;color:var(--ink)}
.dt-table td a:hover b{color:var(--brand)}
.dt-cat{font-size:.8rem;color:var(--muted)}
.dt-r{font-size:.82rem;color:var(--brand);white-space:nowrap}
.dt-p{position:relative;min-width:150px}
.dt-bar{position:absolute;left:0;top:0;bottom:0;width:var(--w);background:linear-gradient(90deg,rgba(179,64,42,.16),rgba(179,64,42,.04))}
.dt-p i{position:relative;font-style:normal;font-size:.8rem;color:#4c4032;font-variant-numeric:tabular-nums}

/* 合集横滑 */
.dt-coll__slide{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin}
.dt-colcard{flex:0 0 250px;scroll-snap-align:start;border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;background:var(--card);display:block;transition:transform .2s,box-shadow .2s}
.dt-colcard:hover{transform:translateY(-3px);box-shadow:0 8px 18px rgba(43,33,24,.14)}
.dt-colcard__img{width:100%;aspect-ratio:4/2.6;object-fit:cover;display:block;background:var(--card-2)}
.dt-colcard__b{display:block;padding:11px 14px 13px}
.dt-colcard__b b{display:block;font-family:var(--f-head);font-size:.94rem;color:var(--ink);line-height:1.3}
.dt-colcard__b i{font-style:normal;font-size:.72rem;color:var(--muted)}

/* 编辑推荐 */
.dt-edit__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.dt-ed{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.dt-ed__img{width:100%;aspect-ratio:4/2.7;object-fit:cover;display:block;background:var(--card-2)}
.dt-ed .dt-kicker{margin:12px 16px 0}
.dt-ed h3{margin:2px 16px 6px;font-size:1.02rem;line-height:1.3}
.dt-ed h3 a{color:var(--ink)}
.dt-ed h3 a:hover{color:var(--brand)}
.dt-ed p{margin:0 16px 16px;color:#5a4c3a;font-size:.85rem;flex:1}

/* 词云 */
.dt-cloud__c{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;line-height:2}
.dt-cloud__c a{color:#5a4c3a;font-family:var(--f-head)}
.dt-cloud__c a:hover{color:var(--brand)}
.dt-cloud__c a:nth-child(3n){color:var(--brand)}
.dt-cloud__c a:nth-child(4n){color:#8a6d1f}

/* 文章 */
.dt-notes__g{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.dt-note{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.dt-note__img{width:100%;aspect-ratio:4/2.4;object-fit:cover;display:block;background:var(--card-2)}
.dt-note h3{margin:12px 16px 6px;font-size:1rem;line-height:1.35}
.dt-note h3 a{color:var(--ink)}
.dt-note h3 a:hover{color:var(--brand)}
.dt-note p{margin:0 16px;color:#5a4c3a;font-size:.84rem}
.dt-note time{display:block;margin:10px 16px 14px;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* FAQ */
.dt-faq{margin:10px 0 46px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}
.dt-faq details{border-bottom:1px solid var(--line);padding:9px 2px}
.dt-faq details:last-of-type{border-bottom:0}
.dt-faq summary{cursor:pointer;font-family:var(--f-head);font-weight:700;font-size:.95rem;color:var(--ink);list-style:none}
.dt-faq summary:hover{color:var(--brand)}
.dt-faq details p{margin:8px 0 4px;font-size:.88rem;color:#4c4032}
.dt-faq details p a{color:var(--brand)}
.dt-faq__para{margin:14px 0 0;font-size:.86rem;color:var(--muted);line-height:1.85}
.dt-faq__para a{color:var(--brand)}

/* 响应式 */
@media (max-width:1080px){
  .dt-edit__grid{grid-template-columns:repeat(2,1fr)}
  .dt-lead{grid-template-columns:1fr}
  .dt-index__cols{columns:1}
}
@media (max-width:720px){
  .dt-notes__g{grid-template-columns:1fr}
  .dt-edit__grid{grid-template-columns:1fr}
  .dt-p{min-width:90px}
}
