/* 相生 · 明星日主库（index + detail）以及结果页「同是X的明星」一行。依赖 friends-tokens.css。 */
.cl-body{margin:0;background:var(--xs-paper);color:var(--xs-ink);font:400 var(--xs-fs-base)/var(--xs-lh-base) var(--xs-sans);-webkit-text-size-adjust:100%}
.cl-body a{color:inherit}
.cl-body h1,.cl-body h2,.cl-body p{text-wrap:pretty}
.cl-body h1,.cl-body h2{text-wrap:balance}
.cl-header{display:flex;align-items:center;justify-content:space-between;gap:12px;height:60px;padding:0 16px;max-width:760px;margin:0 auto}
.cl-brand{font:700 24px/1 var(--xs-serif);color:var(--xs-ink);text-decoration:none;min-height:var(--xs-tap);display:flex;align-items:center}
.cl-top-link{min-height:var(--xs-tap);display:flex;align-items:center;padding:0 14px;border:1px solid var(--xs-line-strong);border-radius:var(--xs-r-pill);font-size:var(--xs-fs-sm);text-decoration:none;color:var(--xs-ink-2)}
.cl-wrap{max-width:760px;margin:0 auto;padding:8px 16px 40px}
.cl-wrap h1{margin:8px 0 6px;font:700 var(--xs-fs-2xl)/1.25 var(--xs-serif)}
.cl-lead{margin:0 0 18px;color:var(--xs-ink-2)}
.cl-primary{display:flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:var(--xs-r-lg);background:var(--xs-primary);color:var(--xs-primary-ink)!important;font-weight:600;text-decoration:none;text-align:center}
.cl-primary:focus-visible,.cl-chip:focus-visible,.cl-search input:focus-visible,.cl-row a:focus-visible{outline:2px solid var(--xs-focus);outline-offset:2px}
/* index tools */
.cl-tools{position:sticky;top:0;z-index:2;margin:0 -16px 8px;padding:10px 16px;background:rgba(247,244,236,.96);border-bottom:1px solid var(--xs-line)}
.cl-search{display:block}
.cl-search input{box-sizing:border-box;width:100%;min-height:var(--xs-tap);padding:0 14px;border:1px solid var(--xs-line-strong);border-radius:var(--xs-r-md);background:var(--xs-surface);font:inherit;color:var(--xs-ink)}
.cl-chips{display:flex;gap:8px;overflow-x:auto;margin-top:8px;padding-bottom:2px;scrollbar-width:none}
.cl-chips::-webkit-scrollbar{display:none}
.cl-chip{flex:0 0 auto;min-height:var(--xs-tap);padding:0 14px;border:1px solid var(--xs-line-strong);border-radius:var(--xs-r-pill);background:var(--xs-surface);font:inherit;font-size:var(--xs-fs-sm);color:var(--xs-ink-2);cursor:pointer;display:inline-flex;align-items:center;text-decoration:none}
.cl-chip[aria-pressed="true"]{background:var(--xs-primary);border-color:var(--xs-primary);color:var(--xs-primary-ink)}
.cl-stems{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:14px 0 6px}
.cl-stems a{display:flex;align-items:center;justify-content:center;min-height:var(--xs-tap);border-radius:var(--xs-r-md);background:var(--xs-el-soft);color:var(--xs-el);font:600 var(--xs-fs-md)/1 var(--xs-serif);text-decoration:none}
.cl-group{margin-top:22px;scroll-margin-top:120px}
.cl-group h2{display:flex;align-items:baseline;gap:10px;margin:0 0 4px;font:700 var(--xs-fs-xl)/1.3 var(--xs-serif);color:var(--xs-el)}
.cl-group h2 small{font:400 var(--xs-fs-sm)/1 var(--xs-sans);color:var(--xs-muted)}
.cl-trait{margin:0 0 10px;color:var(--xs-ink-2);font-size:var(--xs-fs-sm)}
.cl-list{list-style:none;margin:0;padding:0;border:1px solid var(--xs-line);border-radius:var(--xs-r-lg);background:var(--xs-surface);overflow:hidden}
.cl-row+.cl-row{border-top:1px solid var(--xs-line)}
.cl-row a{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 14px;text-decoration:none;border-left:3px solid var(--xs-el)}
.cl-row b{font:600 var(--xs-fs-md)/1.3 var(--xs-serif);min-width:0}
.cl-row .cl-cat{font-size:var(--xs-fs-xs);color:var(--xs-muted);white-space:nowrap}
.cl-row .cl-types{margin-left:auto;font-size:var(--xs-fs-sm);color:var(--xs-ink-2);white-space:nowrap}
.cl-empty{margin:24px 0;padding:18px;border-radius:var(--xs-r-lg);background:var(--xs-surface-2);color:var(--xs-ink-2);text-align:center}
.cl-bottom-cta{margin:30px 0 0;padding:18px;border-radius:var(--xs-r-xl);background:var(--xs-primary-soft)}
.cl-bottom-cta p{margin:0 0 12px;color:var(--xs-ink-2)}
/* detail */
.cl-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:var(--xs-fs-sm);color:var(--xs-muted)}
.cl-crumb a{min-height:var(--xs-tap);display:inline-flex;align-items:center;color:var(--xs-ink-2)}
.cl-hero{display:flex;align-items:center;gap:18px;margin:6px 0 14px;padding:20px;border:1px solid var(--xs-line);border-radius:var(--xs-r-xl);background:var(--xs-el-soft)}
.cl-glyph{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;font:700 88px/1 var(--xs-serif);color:var(--xs-el)}
.cl-glyph small{margin-top:6px;font:500 var(--xs-fs-md)/1 var(--xs-serif);letter-spacing:.3em}
.cl-hero h1{margin:0 0 6px;font-size:var(--xs-fs-xl)}
.cl-answer{margin:0;color:var(--xs-ink-2)}
.cl-answer strong{color:var(--xs-el)}
.cl-facts{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:0 0 10px;padding:16px;border:1px solid var(--xs-line);border-radius:var(--xs-r-lg);background:var(--xs-surface)}
.cl-facts dt{color:var(--xs-muted);font-size:var(--xs-fs-sm)}
.cl-facts dd{margin:0}
.cl-note{margin:0 0 18px;font-size:var(--xs-fs-sm);color:var(--xs-muted)}
.cl-same h2{margin:0 0 8px;font:700 var(--xs-fs-lg)/1.35 var(--xs-serif)}
.cl-same ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 22px;padding:0}
.cl-same a{display:inline-flex;align-items:center;min-height:var(--xs-tap);padding:0 14px;border-radius:var(--xs-r-pill);background:var(--xs-el-soft);color:var(--xs-el);text-decoration:none;font-weight:500}
.cl-cta-note{margin:8px 0 0;font-size:var(--xs-fs-sm);color:var(--xs-muted);text-align:center}
.cl-sources{margin-top:22px;font-size:var(--xs-fs-sm);color:var(--xs-ink-2)}
.cl-sources summary{min-height:var(--xs-tap);display:flex;align-items:center;cursor:pointer}
.cl-sources li{margin:0;overflow-wrap:anywhere}
.cl-sources li a{display:inline-flex;align-items:center;min-height:var(--xs-tap)}
.cl-footer{max-width:760px;margin:0 auto;padding:18px 16px 40px;border-top:1px solid var(--xs-line);font-size:var(--xs-fs-sm);color:var(--xs-muted)}
.cl-footer p{margin:0 0 8px}
.cl-footer nav{display:flex;flex-wrap:wrap;gap:0 16px}
.cl-footer nav a{min-height:var(--xs-tap);display:inline-flex;align-items:center;color:var(--xs-ink-2)}
@media(max-width:400px){.cl-row a{flex-wrap:wrap;row-gap:0}.cl-row .cl-types{margin-left:0;flex-basis:100%}.cl-glyph{font-size:72px}}
/* 结果页一行：和你同是X的明星 */
.celeb-line{margin:14px 0 0;padding:4px 16px;border-radius:var(--xs-r-lg);background:var(--xs-surface);border:1px solid var(--xs-line);font-size:var(--xs-fs-sm);line-height:1.7;color:var(--xs-ink-2);text-wrap:pretty}
.celeb-line a{display:inline-flex;align-items:center;min-height:var(--xs-tap);color:var(--xs-ink);font-weight:600}
.celeb-line .celeb-more{margin-left:6px;font-weight:400;color:var(--xs-primary)}
.reading-card .celeb-line{position:relative;z-index:1;margin:16px 0 4px}

/* review-fix r1: breadcrumb current item; CTA now sits right after the 日主 summary */
.cl-crumb-current{color:var(--xs-ink);font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60vw}
.cl-trait+.cl-primary{margin-top:14px}
.cl-cta-note+.cl-facts{margin-top:20px}
.cl-facts .cl-dt-hint{display:block;font-size:var(--xs-fs-xs);line-height:1.4;color:var(--xs-muted);font-weight:400}
