/* 免费模板下载中心（/templates/）：总页是营销页版式（2026-10-14 夜金改版 R1，组件读 assets/ui.css），说明页在学习路线 docs.css 之上加下载区、截图和卡片。
   颜色只用令牌（ui.css 与 docs.css 的变量），跟主题色与深浅色走；Excel 截图放在浅色衬底卡（.ui-paper.ui-light）上 */
.tp-art h2{scroll-margin-top:72px}
.tp-dl{margin:22px 0 8px;padding:20px 20px 8px;border:1px solid var(--line);border-radius:var(--r,14px);background:var(--card)}
.tp-dl h2{margin-top:0!important}
.tp-btns{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:6px 0 14px}
.tp-btns .ui-btn{text-decoration:none!important}
.tp-btns .ui-btn--fill{color:var(--on-fill)!important}
.tp-btns .ui-btn--dark{color:var(--text)!important}
.tp-btns-s{margin:10px 0 0}
.tp-files tbody th{white-space:normal!important;min-width:14em}.tp-files small{display:block;font-size:12.5px;font-weight:400;color:var(--mute);word-break:normal}
.tp-files td{white-space:nowrap}
.tp-note{font-size:13.5px;color:var(--mute);margin:6px 0 12px}
.tp-list{padding-left:1.2em}.tp-list li{margin:6px 0}
.tp-shots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0}
.tp-shot{margin:0}
.tp-shot a{display:block;padding:8px;border-radius:var(--r-md,12px);text-decoration:none!important}
.tp-shot img{display:block;width:100%;height:150px;object-fit:cover;object-position:top left;border-radius:var(--r-xs,8px)}
.tp-shot figcaption{padding:8px 2px 0;font-size:13px;line-height:1.5;color:var(--sub)}
.tp-v{font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.tp-terms{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 0;font-size:14px}
.tp-terms span{color:var(--mute);margin-right:4px}
.tp-terms a{display:inline-block;padding:2px 10px;border:1px solid var(--line2);border-radius:999px;text-decoration:none!important;color:var(--sub)!important;background:transparent}
.tp-terms a:hover{border-color:var(--accent-line,var(--accent));color:var(--accent)!important}
.tp-log{padding-left:1.2em;font-size:15px}.tp-log time{font-variant-numeric:tabular-nums}
/* 总页 */
.tp-hub{margin:0}
.tp-hero-in{padding-top:92px;padding-bottom:60px}
.tp-hero .ui-hero{margin-top:22px}
.tp-hero .ui-lede{max-width:760px;margin:22px auto 0}
.tp-sub{max-width:720px;margin:14px auto 0;color:var(--sub);font-size:14.5px;line-height:1.85}
.tp-hero .ui-acts{justify-content:center;margin-top:30px}
.tp-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 0;margin:22px 0 0;color:var(--mute);font-size:13px}
.tp-meta span+span::before{content:"·";margin:0 8px}
.tp-chips{justify-content:flex-end}
.tp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tp-card{padding:0;overflow:hidden}
.tp-card[hidden]{display:none}
.tp-card-img{display:block;padding:10px 10px 0;background:var(--card);border-bottom:1px solid var(--line)}
.tp-card-img img{display:block;width:100%;height:150px;object-fit:cover;object-position:top left;border-radius:var(--r-xs) var(--r-xs) 0 0}
.tp-card-b{display:flex;flex-direction:column;flex:1;padding:16px 20px 20px}
.tp-card-b h3{margin:4px 0 6px;font:var(--fw-display) 18px/1.4 var(--font-display)}
.tp-card-b h3 a{color:var(--text);text-decoration:none}.tp-card-b h3 a:hover{color:var(--accent)}
.tp-card-b p{margin:0 0 8px;color:var(--sub);font-size:14px;line-height:1.7}
.tp-card-b p a{color:var(--accent)}
.tp-card-m{color:var(--mute)!important;font-size:12.5px!important;font-variant-numeric:tabular-nums}
.tp-card-s{font-size:13px!important}.tp-card-s b{margin-right:6px;color:var(--text);font-weight:600}
.tp-card .tp-btns{margin-top:auto;padding-top:8px}
.tp-more{margin-left:4px}
.tp-same{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tp-same li{display:flex;gap:12px;align-items:flex-start}
.tp-same li>.ui-ic{flex:none;margin-top:4px;width:18px;height:18px}
.tp-same p{margin:0!important;color:var(--sub);font-size:14.5px!important}
.tp-same b{color:var(--text)}
.tp-faq .ui-qa p a{color:var(--accent)}
.tp-disc{margin:8px 0 0;padding-bottom:var(--sec);color:var(--mute);font-size:12.5px;line-height:1.85}
@media(max-width:1100px){.tp-shots{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.tp-hero-in{padding-top:52px;padding-bottom:40px}.tp-hero .ui-acts{flex-direction:column;align-items:stretch}.tp-hero .ui-acts .ui-btn{width:100%}
  .tp-chips{justify-content:flex-start}.tp-cards,.tp-same{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.tp-files thead{display:none}.tp-files caption{display:block;width:auto}.tp-files table,.tp-files tbody,.tp-files tr,.tp-files th,.tp-files td{display:block}.tp-files tbody th{min-width:0;padding-bottom:2px;border-bottom:0}.tp-files td{display:inline-block;white-space:normal;padding-top:2px;border-bottom:0}.tp-files tr{border-bottom:1px solid var(--line)}.tp-files tr:last-child{border-bottom:0}.tp-files td small{display:inline;margin-left:6px}
  .tp-shots{grid-template-columns:minmax(0,1fr)}.tp-shot img{height:180px}
  .tp-dl{padding:14px 12px 4px}.tp-btns .ui-btn{flex:1 1 auto}.tp-v{white-space:normal}}
@media print{.tp-btns,.tp-chips{display:none}}
