.name-pillars { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid #e1e7e6; }
.name-pillars > div { display:grid; text-align:center; gap:7px; padding:14px 5px; border-right:1px solid #e1e7e6; }
.name-pillars strong { color:#138f86; font-size:25px; }
.name-pillars small,.name-pillars span { font-size:12px; }
.name-element { display:flex; gap:15px; align-items:center; margin:12px 0; }
.name-element progress { flex:1; height:12px; accent-color:#10b9ad; }
.name-element > span { width:70px; text-align:right; }
.name-list-heading { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:22px; }
.name-candidates { display:grid; gap:12px; }
.name-card { border:1px solid #dfe8e7; border-radius:8px; background:#fff; }
.name-card summary { display:flex; align-items:center; gap:20px; padding:16px; cursor:pointer; }
.name-card summary > span { font-size:12px; color:#60777a; }
.name-characters { display:flex; gap:14px; flex:1; }
.name-characters span { display:grid; text-align:center; gap:5px; }
.name-characters strong { font-size:26px; }
.name-characters small { font-size:12px; color:#43978c; }
.name-rating { font-size:27px; color:#d19b49; text-align:center; }
.name-rating small { display:block; font-size:11px; color:#708080; }
.name-detail { border-top:1px solid #edf0ef; padding:0 18px 16px; font-size:14px; line-height:1.7; }
.name-grids { display:flex; flex-wrap:wrap; gap:12px; }
.name-detail blockquote { margin:10px 0; padding:8px 15px; border-left:3px solid #10b9ad; background:#f5faf9; }
.name-detail footer { color:#708080; font-size:12px; }
