/* 学道好物：栏目页 + 内容页推荐位（.hw-slot）。变量一律 --c-*（CssTokenTest） */
.hw-page h1{margin:.4em 0 .3em}
.hw-lead{color:var(--c-ink-3);line-height:1.8;margin:0 0 12px}
.hw-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.hw-tabs a{padding:4px 12px;border:1px solid var(--c-line);border-radius:999px;color:var(--c-ink);text-decoration:none;font-size:var(--t-sm)}
.hw-tabs a.on{border-color:var(--c-primary);color:var(--c-primary)}
.hw-tabs span{color:var(--c-ink-3)}
.hw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}
.hw-card{display:flex;flex-direction:column;gap:6px;padding:12px;border:1px solid var(--c-line);border-radius:10px;background:var(--c-paper-card);color:var(--c-ink);text-decoration:none}
.hw-card:hover{border-color:var(--c-primary)}
.hw-card img{width:100%;height:auto;border-radius:6px}
.hw-ph{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border-radius:6px;background:var(--c-paper);color:var(--c-primary);font-size:48px;font-family:"KaiTi","STKaiti",serif;opacity:.85}
.hw-slot .hw-ph{font-size:36px}
.hw-t{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.hw-ad{font-size:var(--t-xs);color:var(--c-ink-3)}
.hw-t{font-weight:600;line-height:1.5}
.hw-b{font-size:var(--t-sm);color:var(--c-ink-3);line-height:1.6}
.hw-p{color:var(--c-primary);font-weight:600}
.hw-empty{padding:40px 0;text-align:center}
.hw-slot[hidden]{display:none}
.hw-slot{margin:18px 0;padding:12px;border:1px dashed var(--c-line);border-radius:10px}
.hw-slot-h{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 10px;font-size:var(--t-sm);color:var(--c-ink-3)}
.hw-slot .hw-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
@media (max-width:640px){.hw-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hw-slot .hw-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hw-card{padding:10px}.hw-ph{font-size:36px}}
/* 商品详情页 */
.hw-detail{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:24px;margin:8px 0 20px}
.hw-gallery img{width:100%;height:auto;border-radius:10px;border:1px solid var(--c-line);background:#fff}
.hw-thumbs{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.hw-thumbs img{width:64px;height:64px;object-fit:contain}
.hw-ph-lg{font-size:120px;border:1px solid var(--c-line)}
.hw-info h1{margin:.2em 0 .3em;font-size:var(--t-h2)}
.hw-fullname{color:var(--c-ink-3);font-size:var(--t-sm);line-height:1.7;margin:0 0 10px}
.hw-blurb{line-height:1.8;margin:0 0 10px}
.hw-price{margin:0 0 10px}
.hw-price b{color:var(--c-primary);font-size:var(--t-h2);margin-right:8px}
.hw-price span,.hw-shop,.hw-note{color:var(--c-ink-3);font-size:var(--t-sm)}
.hw-shop{margin:0 0 12px}
.hw-buy{display:inline-block;padding:10px 28px;font-size:var(--t-md)}
.hw-note{margin:10px 0 0}
.hw-sec{margin:22px 0}
.hw-sec h2{font-size:var(--t-md);margin:0 0 10px}
.hw-specs{border-collapse:collapse;width:100%;max-width:720px;font-size:var(--t-sm)}
.hw-specs th,.hw-specs td{border:1px solid var(--c-line);padding:6px 10px;text-align:left;vertical-align:top}
.hw-specs th{width:30%;background:var(--c-paper);font-weight:500;color:var(--c-ink-3)}
.hw-desc p{line-height:1.9;margin:0 0 .8em}
.hw-books{margin:0;padding-left:1.2em;line-height:1.9}
.hw-books span{display:block;color:var(--c-ink-3);font-size:var(--t-sm)}
@media (max-width:640px){.hw-detail{grid-template-columns:minmax(0,1fr);gap:14px}.hw-ph-lg{font-size:72px;max-width:200px;margin:0 auto}.hw-buy{display:block;text-align:center}}
/* 活动横幅（双11 会场等）+ 「去京东搜」关键词推广 */
.hw-act{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 12px;padding:12px 14px;border-radius:10px;background:var(--c-paper-card);border:1px solid var(--c-primary);color:var(--c-ink);text-decoration:none}
.hw-act strong{font-size:var(--t-md);color:var(--c-primary)}
.hw-act-s{font-size:var(--t-sm);color:var(--c-ink-3)}
.hw-act-go{margin-left:auto;font-size:var(--t-sm);color:var(--c-primary)}
.hw-kw{margin:10px 0 0;font-size:var(--t-sm)}
.hw-kw .hw-ad{margin-right:6px}
.hw-page > .hw-slot, .hw-detail ~ .hw-slot{border:0;padding:0}
@media (max-width:640px){.hw-act-go{margin-left:0}}
