:root{--bg:#f8fafc;--card:#fff;--text:#1e293b;--sub:#64748b;--border:#e2e8f0;--accent:#7c3aed;--m0:#94a3b8;--m1:#059669;--m2:#0284c7;--m3:#7c3aed;--m4:#dc2626;--main:#f59e0b;--branch:#6b7280}
:root.dark{--bg:#0f172a;--card:#1e293b;--text:#e2e8f0;--sub:#94a3b8;--border:#334155}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;padding:16px;max-width:1100px;margin:0 auto}
a{color:inherit;text-decoration:none}
.header{text-align:center;padding:24px 0 8px}
.header h1{font-size:1.8rem;color:var(--accent);margin-bottom:4px}
.header .ver{font-size:.8rem;color:var(--sub)}
.stats{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:12px 0}
.stat{padding:5px 12px;border-radius:20px;background:var(--card);border:1px solid var(--border);font-size:.82rem}
.search-box{display:flex;justify-content:center;margin:10px 0 4px}
.search-box input{padding:8px 16px;border-radius:20px;border:1px solid var(--border);font-size:.85rem;width:380px;max-width:90%;background:var(--card);color:var(--text)}
.analysis{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin:16px 0}
.analysis .panel{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px}
.analysis h3{font-size:.95rem;margin-bottom:8px;display:flex;align-items:center;gap:6px}
.analysis .big{font-size:1.7rem;font-weight:800;color:var(--accent)}
.bar-row{display:flex;align-items:center;gap:8px;font-size:.76rem;margin:5px 0}
.bar-label{width:96px;flex-shrink:0;color:var(--sub)}
.bar-track{flex:1;height:10px;background:#f1f5f9;border-radius:6px;overflow:hidden}
:root.dark .bar-track{background:#334155}
.bar-fill{height:100%;border-radius:6px;transition:width .3s}
.bar-val{width:34px;text-align:right;font-weight:700}
.wp-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.wp-tag{font-size:.7rem;padding:2px 8px;border-radius:10px;background:#fef3c7;color:#92400e;border:1px solid #fcd34d}
:root.dark .wp-tag{background:#3f2d0a;color:#fcd34d;border-color:#7c5a12}
.spine-title{font-size:1.1rem;font-weight:700;margin:22px 0 10px;padding-left:8px;border-left:3px solid var(--accent)}
.spine{position:relative;margin:8px 0 8px 8px;padding-left:22px}
.spine:before{content:'';position:absolute;left:6px;top:6px;bottom:6px;width:2px;background:var(--border)}
.spine-item{position:relative;display:block;margin:8px 0;padding:10px 14px;background:var(--card);border:1px solid var(--border);border-radius:10px;transition:.15s}
.spine-item:hover{border-color:var(--accent);box-shadow:0 4px 14px rgba(0,0,0,.08);transform:translateX(2px)}
.spine-item:before{content:'';position:absolute;left:-19px;top:16px;width:10px;height:10px;border-radius:50%;background:var(--main);border:2px solid #fff;box-shadow:0 0 0 2px var(--border)}
.spine-item .si-id{font-size:.68rem;font-weight:700;color:var(--sub);font-family:monospace}
.spine-item .si-name{font-size:.95rem;font-weight:700;margin-top:2px}
.spine-item .si-mat{font-size:.65rem;font-weight:700;padding:1px 7px;border-radius:8px;color:#fff;margin-left:6px}
.dir-section{margin:22px 0}
.dir-head{font-size:1.05rem;font-weight:700;margin-bottom:10px;padding-left:8px;border-left:3px solid var(--border);display:flex;align-items:center;gap:8px}
.dir-head .dh-count{font-size:.75rem;color:var(--sub);font-weight:500}
.dir-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}
.pcard{display:block;background:var(--card);border:1px solid var(--border);border-left:4px solid var(--branch);border-radius:10px;padding:12px 14px;transition:.15s}
.pcard.main{border-left-color:var(--main)}
.pcard:hover{box-shadow:0 4px 14px rgba(0,0,0,.08);transform:translateY(-1px)}
.pcard .pc-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.pcard .pc-id{font-size:.68rem;font-weight:700;color:var(--sub);font-family:monospace}
.pcard .pc-mat{font-size:.62rem;font-weight:700;padding:1px 7px;border-radius:8px;color:#fff}
.pcard .pc-name{font-size:.95rem;font-weight:700}
.pcard .pc-type{font-size:.66rem;font-weight:700;padding:1px 7px;border-radius:8px;margin-left:6px}
.pc-type.main{background:#fef3c7;color:#92400e}
.pc-type.branch{background:#f3f4f6;color:#6b7280}
:root.dark .pc-type.branch{background:#334155;color:#cbd5e1}
.pcard .pc-note{font-size:.72rem;color:var(--sub);margin-top:4px}
.pcard .pc-meta{font-size:.7rem;color:var(--sub);margin-top:4px}
.dark-btn{position:fixed;top:12px;right:16px;z-index:20;background:var(--card);border:1px solid var(--border);border-radius:50%;width:32px;height:32px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:.15s}
.dark-btn:hover{background:var(--accent);color:#fff}
.detail{max-width:820px;margin:0 auto}
.detail .back{display:inline-block;margin:10px 0;font-size:.8rem;color:var(--accent)}
.detail .d-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.detail .d-title{font-size:1.5rem;font-weight:800}
.detail .d-id{font-size:.8rem;color:var(--sub);font-family:monospace}
.detail .d-badge{font-size:.68rem;font-weight:700;padding:2px 9px;border-radius:8px;color:#fff}
.detail .d-type{font-size:.7rem;font-weight:700;padding:2px 9px;border-radius:8px}
.detail .d-type.main{background:#fef3c7;color:#92400e}
.detail .d-type.branch{background:#f3f4f6;color:#6b7280}
:root.dark .d-type.branch{background:#334155;color:#cbd5e1}
.detail .d-sub{font-size:.8rem;color:var(--accent);margin:4px 0 12px}
.detail .d-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}
@media(max-width:640px){.detail .d-grid{grid-template-columns:1fr}}
.detail .d-box{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px 14px}
.detail .d-box h4{font-size:.85rem;margin-bottom:6px;color:var(--accent)}
.detail .d-box p{font-size:.8rem;margin-bottom:4px}
.detail .wp{font-size:.74rem;padding:2px 8px;border-radius:8px;background:#fef3c7;color:#92400e;border:1px solid #fcd34d;margin:2px 3px 0 0;display:inline-block}
:root.dark .wp{background:#3f2d0a;color:#fcd34d;border-color:#7c5a12}
.detail .nav{display:flex;justify-content:space-between;margin:18px 0;gap:8px}
.detail .nav a{flex:1;text-align:center;padding:8px;border:1px solid var(--border);border-radius:10px;font-size:.8rem;background:var(--card);transition:.15s}
.detail .nav a:hover{border-color:var(--accent)}
.empty{text-align:center;padding:30px;color:var(--sub)}
/* 深度扩展 */
.detail .d-sep{border:none;border-top:2px dashed var(--border);margin:20px 0 12px}
.detail .d-section-title{font-size:1rem;font-weight:700;color:var(--accent);margin:0 0 12px}
.detail .d-list{padding-left:18px;font-size:.78rem;line-height:1.7}
.detail .d-list li{margin-bottom:3px}
.detail .qa-list{display:flex;flex-direction:column;gap:8px}
.detail .qa-item{font-size:.78rem;padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;line-height:1.65}
.detail .qa-item:before{content:'💬 ';margin-right:2px}
