.topic-head{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);margin-bottom:18px;padding:18px}.topic-head-main{align-items:center;gap:12px;display:flex}.topic-head-tile{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent,#60a5fa) 14%, var(--surface-card));width:48px;height:48px;color:var(--accent,#60a5fa);flex:none;place-items:center;font-size:24px;display:grid}.topic-head-text{min-width:0}.topic-head-kicker{font-size:var(--text-meta);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:0 0 2px;font-weight:700;line-height:1.3}.topic-head-title{font-size:var(--text-h1);color:var(--text-strong);overflow-wrap:anywhere;margin:0;font-weight:800;line-height:1.2}.topic-head-desc{max-width:640px;font-size:var(--text-body-size);color:var(--text-muted);margin:12px 0 0;line-height:1.5}.topic-head-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.topic-stats{flex-wrap:wrap;align-items:center;min-height:44px;margin-left:-12px;display:flex}.topic-stat{border-radius:var(--radius-pill);min-height:44px;font-size:var(--text-sm);color:var(--text-muted);cursor:default;transition:background var(--motion-fast,.15s) var(--ease-out,ease-out);border:1px solid #0000;align-items:center;gap:4px;padding:0 12px;text-decoration:none;display:inline-flex}a.topic-stat{cursor:pointer}.topic-stat strong{color:var(--text-strong);font-weight:800}.topic-stat:hover{background:var(--surface-inset)}.topic-stat:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.topic-follow-btn{appearance:none;background:var(--brand);color:var(--text-onbrand);font:inherit;font-size:var(--text-body-size);text-align:center;border-radius:var(--radius-pill);cursor:pointer;min-height:44px;transition:background var(--motion-fast,.15s) var(--ease-out,ease-out), transform var(--motion-fast,.15s) var(--ease-out,ease-out);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:700;display:inline-flex}.topic-follow-btn i{font-size:16px}.topic-follow-btn:hover:not(:disabled){background:var(--brand-hover)}.topic-follow-btn:active:not(:disabled){transform:scale(.97)}.topic-follow-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.topic-follow-btn[aria-busy=true]{opacity:.7}.topic-follow-btn.is-following{background:var(--surface-inset);color:var(--text-strong);border-color:var(--border)}.topic-follow-btn.is-following:hover:not(:disabled){background:var(--surface-hover)}@media (max-width:480px){.topic-follow-btn{width:100%;min-height:48px}}.topic-list{scroll-margin-top:calc(var(--header-height,64px) + 12px)}.topic-pager{justify-content:space-between;gap:8px;margin-top:18px;display:flex}.topic-pager-btn,.topic-foot-link{border-radius:var(--radius-pill);min-height:44px;font-size:var(--text-body-size);color:var(--text-strong);transition:background var(--motion-fast,.15s) var(--ease-out,ease-out);align-items:center;gap:8px;padding:0 16px;font-weight:700;text-decoration:none;display:inline-flex}.topic-pager-btn{background:var(--surface-card);border:1px solid var(--border)}.topic-pager-btn i,.topic-foot-link i{font-size:16px}.topic-pager-btn:hover,.topic-foot-link:hover{background:var(--surface-inset)}.topic-pager-btn:focus-visible,.topic-foot-link:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.topic-foot{text-align:center;margin:18px 0 0}.topics-sub{max-width:640px;font-size:var(--text-body-size);color:var(--text-muted);margin:-8px 0 18px;line-height:1.5}.topics-followed{margin-bottom:24px}.topics-section-title{font-size:var(--text-h3);color:var(--text-strong);margin:0 0 4px;font-weight:700;line-height:1.3}.topics-section-sub{font-size:var(--text-sm);color:var(--text-muted);overflow-wrap:anywhere;margin:0 0 12px;line-height:1.4}.topics-followed+.topics-section-title{margin-bottom:12px}.topics-grid{grid-template-columns:1fr;gap:12px;margin:0;padding:0;list-style:none;display:grid}@media (min-width:640px){.topics-grid{grid-template-columns:1fr 1fr}}.topics-card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg);min-height:72px;box-shadow:var(--shadow-sm);color:inherit;transition:background var(--motion-fast,.15s) var(--ease-out,ease-out), transform var(--motion-fast,.15s) var(--ease-out,ease-out);align-items:center;gap:12px;padding:14px 16px;text-decoration:none;display:flex}.topics-card:hover{background:var(--surface-hover);transform:translateY(-1px)}.topics-card:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.topics-card-tile{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent,#60a5fa) 14%, var(--surface-card));width:40px;height:40px;color:var(--accent,#60a5fa);flex:none;place-items:center;font-size:20px;display:grid}.topics-card-body{flex:1;min-width:0}.topics-card-name{font-size:var(--text-h3);color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-weight:700;line-height:1.3;display:block;overflow:hidden}.topics-card-meta{font-size:var(--text-sm);color:var(--text-muted);margin-top:2px;line-height:1.4;display:block}.topics-card-badge{font-size:var(--text-meta);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);flex:none;font-weight:700}.topics-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items:center;gap:8px;margin:0 0 16px;display:flex;overflow-x:auto}.topics-row::-webkit-scrollbar{display:none}.topics-row-label{font-size:var(--text-meta);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);flex:none;font-weight:700}.topics-chip,.topics-row-all{border-radius:var(--radius-pill);min-height:44px;font-size:var(--text-sm);white-space:nowrap;transition:background var(--motion-fast,.15s) var(--ease-out,ease-out);flex:none;align-items:center;gap:6px;padding:0 14px;font-weight:700;text-decoration:none;display:inline-flex}.topics-chip{background:var(--surface-card);border:1px solid var(--border);color:var(--text-strong)}.topics-chip i{color:var(--accent,var(--text-muted));font-size:14px}.topics-row-all{color:var(--text-muted);border:1px solid #0000}.topics-row-all i{font-size:14px}.topics-chip:hover,.topics-row-all:hover{background:var(--surface-inset)}.topics-chip:focus-visible,.topics-row-all:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
