/* Per-name content page. Base vars/chips/header come from the site's styles.css + nav.css. */
.np-wrap{max-width:760px;margin:0 auto;padding:24px 20px 60px}
.np-wrap *{box-sizing:border-box}
.np-crumb{font-size:.8rem;color:var(--dim);margin:0 0 14px}
.np-crumb a{color:var(--muted);text-decoration:none}
.np-crumb a:hover{color:var(--ink)}
.np-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.np-h1{font-size:2.3rem;font-weight:800;margin:0;letter-spacing:.2px}
.np-say{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:1rem;margin-top:4px}
.np-speak{background:var(--panel2);border:1px solid var(--line);color:var(--muted);border-radius:var(--r-pill);width:34px;height:34px;font-size:.95rem;cursor:pointer;line-height:1;padding:0}
.np-speak:hover{color:var(--ink);border-color:currentColor}
.np-meta{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}
.np-trend{font-size:.85rem;color:var(--accent2);font-weight:600}
.np-fav{display:inline-flex;align-items:center;gap:7px;background:var(--panel);border:1px solid var(--line);color:var(--pink);border-radius:var(--r-control);padding:9px 14px;font-size:.9rem;font-weight:600;cursor:pointer;white-space:nowrap}
.np-fav:hover{border-color:#4a2a35}
.np-fav.on{border-color:var(--pink);background:#1a0f16}
.np-fav.on svg{fill:currentColor;stroke:none}
.np-lead{color:var(--muted);font-size:1.05rem;margin:18px 0 26px}
.np-lead b{color:var(--ink)}
.np-h2{font-size:1.15rem;font-weight:700;margin:30px 0 10px}
.np-chart{position:relative;width:100%}
.nh-svg{width:100%;height:260px;display:block;overflow:visible}
.nh-area{stroke:none}
.nh-line{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round}
.nh-peak{fill:currentColor;stroke:var(--bg);stroke-width:2}
.nh-grid{stroke:var(--line);stroke-width:1;stroke-dasharray:2 5;opacity:.55}
.nh-xlab{fill:var(--dim);font-size:11px;text-anchor:middle}
.nh-guide{stroke:currentColor;stroke-width:1;opacity:.5}
.nh-hot{fill:currentColor;stroke:var(--bg);stroke-width:2}
.nh-hit{cursor:crosshair}
.nh-tip{position:absolute;top:4px;pointer-events:none;background:var(--panel2);border:1px solid var(--line);color:var(--ink);border-radius:var(--r-control);padding:5px 9px;font-size:.8rem;white-space:nowrap;box-shadow:0 8px 22px rgba(0,0,0,.5)}
.np-legend{color:var(--dim);font-size:.76rem;margin:4px 2px 22px;text-align:center}
.np-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:0 0 8px}
.np-stat{background:var(--panel2);border:1px solid var(--line);border-radius:var(--r-surface);padding:11px 13px;display:flex;flex-direction:column;gap:2px}
.np-sv{font-size:1.25rem;font-weight:800;color:var(--ink)}
.np-sk{font-size:.73rem;color:var(--muted)}
.np-facts{border:1px solid var(--line);border-radius:var(--r-surface);overflow:hidden;margin:8px 0}
.np-frow{display:flex;gap:14px;padding:11px 14px;border-bottom:1px solid var(--line)}
.np-frow:last-child{border-bottom:0}
.np-fk{width:130px;flex:none;color:var(--muted);font-size:.85rem}
.np-fv{color:var(--ink);font-size:.95rem}
.np-tag{display:inline-block;font-size:.78rem;padding:2px 9px;border-radius:var(--r-pill);background:var(--panel2);border:1px solid var(--line);color:var(--muted);margin:0 6px 6px 0}
table.np-table{width:100%;border-collapse:collapse;font-size:.9rem}
.np-table th{text-align:left;color:var(--dim);font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;padding:8px 10px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg)}
.np-table td{padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.03);font-variant-numeric:tabular-nums}
.np-table td:first-child{color:var(--muted)}
.np-tablewrap{max-height:420px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--r-surface)}
.np-cta{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 8px}
.np-btn{background:var(--accent);color:#20150a;font-weight:700;border:0;border-radius:var(--r-control);padding:12px 20px;font-size:.98rem;cursor:pointer;text-decoration:none;display:inline-block}
.np-btn.sec{background:transparent;border:1px solid var(--line);color:var(--ink)}
.np-btn:hover{filter:brightness(1.05)}
.np-related{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.np-related a{border:1px solid var(--line);border-radius:var(--r-pill);padding:7px 15px;color:var(--muted);text-decoration:none;font-size:.9rem}
.np-related a:hover{border-color:var(--accent);color:var(--ink)}
.np-listsel{position:sticky;top:calc(var(--navh,54px) + 8px);z-index:20;width:fit-content;margin:8px 16px 0 auto}
.np-listbtn{background:var(--panel);border:1px solid var(--line);color:var(--muted);border-radius:var(--r-control);padding:8px 12px;font-size:.85rem;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}
.np-listbtn b{color:var(--ink);font-weight:600}
.np-listbtn:hover{border-color:var(--accent)}
.np-caret{color:var(--dim);font-size:.8rem}
.np-listmenu{position:absolute;right:0;top:calc(100% + 6px);z-index:20;min-width:210px;max-height:260px;overflow-y:auto;background:var(--panel2);border:1px solid var(--line);border-radius:var(--r-surface);padding:6px;box-shadow:0 12px 34px rgba(0,0,0,.55);display:flex;flex-direction:column;gap:2px}
.np-listmenu[hidden]{display:none}
.saveto-btn{display:inline-flex;align-items:center;gap:7px;max-width:340px;background:var(--panel2);border:1.5px solid var(--accent2);color:var(--ink);border-radius:var(--r-container);padding:8px 13px;font-size:.9rem;line-height:1;cursor:pointer}
.saveto-btn:hover{filter:brightness(1.08)}
.saveto-label{color:var(--muted);font-size:.8rem;white-space:nowrap;flex:0 0 auto}
.saveto-heart{color:var(--pink);display:inline-flex}
.saveto-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.saveto-caret{color:var(--accent2);margin-left:2px}
.tr-sub{color:var(--muted);font-size:.85rem;margin:0 0 10px}
.tr-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:7px;margin-bottom:28px}
.tr-row{display:flex;align-items:center;gap:11px;padding:9px 12px;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-surface);background:var(--panel2);transition:border-color .15s}
.tr-row:hover{border-color:var(--accent)}
.tr-spark{width:72px;height:26px;flex:none;overflow:visible}
.tr-spark path{fill:none;stroke:var(--dim);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.tr-row.g-F .tr-spark path{stroke:var(--girl)} .tr-row.g-M .tr-spark path{stroke:var(--boy)} .tr-row.g-U .tr-spark path{stroke:var(--uni)}
.tr-name{font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tr-stat{color:var(--muted);font-size:.78rem;white-space:nowrap;font-variant-numeric:tabular-nums}
body:has(.np-wrap) .nav-burger,body:has(.np-wrap) .nav-actions{display:none}
.np-listmenu [hidden]{display:none}
.np-listmenu .npm-new{color:var(--accent2);font-weight:600}
.np-listmenu .npm-newform{display:flex;flex-direction:column;gap:6px;padding:6px 4px 2px}
.np-listmenu .npm-newform input{width:100%;box-sizing:border-box;background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:var(--r-control);padding:8px 10px;font-size:.9rem;outline:none}
.np-listmenu .npm-newform input:focus{border-color:var(--accent2)}
.np-listmenu .npm-newbtns{display:flex;gap:6px}
.np-listmenu .npm-create{flex:1;justify-content:center;background:var(--accent);color:#20150a;font-weight:700;border:0;border-radius:var(--r-control);padding:7px 12px;cursor:pointer}
.np-listmenu .npm-cancel{flex:1;justify-content:center;background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:var(--r-control);padding:7px 12px;cursor:pointer}
.np-listmenu button{background:transparent;border:0;color:var(--ink);text-align:left;padding:9px 11px;border-radius:var(--r-control);font-size:.9rem;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center}
.np-listmenu button:hover{background:var(--panel)}
.np-listmenu button.on{color:var(--accent2)}
.np-listmenu .npm-check{color:var(--accent2);font-size:.85rem}
.np-foot{text-align:center;color:var(--dim);font-size:.8rem;margin-top:44px;padding-top:18px}
.np-intro{color:var(--muted);font-size:1.02rem;margin:14px 0 22px}
.np-azgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:10px;margin:6px 0 30px}
.np-tile{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 6px;background:var(--panel2);border:1px solid var(--line);border-radius:var(--r-surface);text-decoration:none;color:var(--ink);transition:border-color .15s}
.np-tile:hover{border-color:var(--accent)}
.np-tl{font-size:1.3rem;font-weight:800;letter-spacing:.02em}
.np-tc{font-size:.7rem;color:var(--muted);font-variant-numeric:tabular-nums}
.np-namecols{columns:170px 5;column-gap:20px;margin-top:8px}
.np-nl{display:flex;align-items:center;gap:8px;padding:6px 2px;text-decoration:none;color:var(--ink);break-inside:avoid;border-bottom:1px solid rgba(255,255,255,.04);font-size:.95rem}
.np-nl:hover{color:var(--accent2)}
.np-dot{width:7px;height:7px;border-radius:50%;flex:none;background:var(--dim)}
.np-nl.g-F .np-dot{background:var(--girl)} .np-nl.g-M .np-dot{background:var(--boy)} .np-nl.g-U .np-dot{background:var(--uni)}
html.light .np-nl{border-bottom-color:rgba(0,0,0,.05)}
@media(max-width:520px){.np-listmenu{right:auto;left:0}}
@media(max-width:520px){.np-h1{font-size:1.8rem}.nh-svg{height:220px}.np-stats{grid-template-columns:repeat(2,1fr)}.np-fk{width:96px}}
