:root{--bg: #f5f6f8;--surface: #ffffff;--text: #1c2330;--muted: #6b7280;--border: #e5e8ee;--accent: #2563eb;--accent-soft: #eff4ff;--ok: #16a34a;--warn: #d97706;--high: #dc2626;--mid: #d97706}@media(prefers-color-scheme:dark){:root{--bg: #101318;--surface: #171c24;--text: #e7eaf0;--muted: #9aa3b2;--border: #262d38;--accent: #5b8dff;--accent-soft: #1b2434}}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:Segoe UI,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--text);font-size:14px}.app{max-width:980px;margin:0 auto;padding:20px 16px 60px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:12px}.logo{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--accent);color:#fff;font-size:20px}h1{font-size:20px;margin:0;letter-spacing:.3px}.sub{margin:2px 0 0;color:var(--muted);font-size:12px}.topbar-right{display:flex;align-items:center;gap:10px}.pill{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--border)}.pill-ok{color:var(--ok);border-color:var(--ok)}.pill-warn{color:var(--warn);border-color:var(--warn)}.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);padding:6px 14px;border-radius:8px;cursor:pointer;font-size:13px}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn:disabled{opacity:.5;cursor:default}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:18px 0 12px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:10px 14px;cursor:pointer;transition:border-color .15s}.stat:hover{border-color:var(--accent)}.stat-active{border-color:var(--accent);background:var(--accent-soft)}.stat-label{color:var(--muted);font-size:12px}.stat-value{font-size:22px;font-weight:600;margin-top:2px;font-variant-numeric:tabular-nums}.controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:10px 14px;margin-bottom:14px}.search{flex:1 1 180px;min-width:140px;border:1px solid var(--border);border-radius:8px;padding:7px 10px;background:var(--bg);color:var(--text);font-size:13px}.range{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.range input{accent-color:var(--accent)}.sel{border:1px solid var(--border);border-radius:8px;padding:6px 8px;background:var(--bg);color:var(--text);font-size:13px}.chk{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:12px}.chk input{accent-color:var(--accent)}.error{background:#fee2e2;color:#991b1b;border-radius:10px;padding:10px 14px;margin-bottom:12px;font-size:13px}.list{display:flex;flex-direction:column;gap:8px}.row{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 14px}.row-claimed{opacity:.55}.score{flex:0 0 46px;text-align:center;font-weight:700;font-size:15px;border-radius:10px;padding:6px 0;font-variant-numeric:tabular-nums}.s-high{background:#fee2e2;color:#b91c1c}.s-mid{background:#fef3c7;color:#92400e}.s-low{background:var(--border);color:var(--muted)}.body{flex:1;min-width:0}.title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cat{font-size:11px;padding:2px 9px;border-radius:999px;white-space:nowrap;background:var(--border);color:var(--muted)}.cat-ai_credit{background:#dbeafe;color:#1e40af}.cat-vps{background:#dcfce7;color:#166534}.cat-game{background:#fee2e2;color:#991b1b}.cat-software{background:#fef3c7;color:#92400e}.title{color:var(--text);text-decoration:none;font-weight:500}.title:hover{color:var(--accent)}.risk{color:var(--high);font-size:11px}.summary{margin:6px 0 4px;color:var(--muted);font-size:12.5px;line-height:1.5}.meta{display:flex;gap:6px;color:var(--muted);font-size:12px}.actions{display:flex;flex-direction:column;gap:6px}.act{border:1px solid var(--border);background:transparent;color:var(--muted);border-radius:8px;padding:5px 10px;font-size:12px;cursor:pointer;white-space:nowrap}.act:hover{border-color:var(--accent);color:var(--accent)}.act-fav{color:var(--warn);border-color:var(--warn)}.act-claimed{color:var(--ok);border-color:var(--ok)}.empty{text-align:center;color:var(--muted);padding:40px 0}.foot{margin-top:22px;color:var(--muted);font-size:12px}.foot summary{cursor:pointer}.foot ul{list-style:none;padding-left:4px}.foot li{padding:2px 0}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.dot-ok{background:var(--ok)}.dot-error{background:var(--high)}.dot-stale{background:var(--warn)}.muted{color:var(--muted)}.tabs{display:flex;gap:8px;margin:14px 0 6px}.tabbtn{border:1px solid var(--border);background:var(--surface);color:var(--muted);padding:7px 16px;border-radius:999px;cursor:pointer;font-size:13px}.tabbtn.active{background:var(--accent);border-color:var(--accent);color:#fff}.sources{display:flex;flex-direction:column;gap:14px;margin-top:8px}.cardbox{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 16px}.cardbox h3{margin:0 0 10px;font-size:15px}.formrow{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.formrow label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted)}.formrow .grow{flex:1 1 220px}.formrow input,.formrow select{border:1px solid var(--border);border-radius:8px;padding:6px 9px;background:var(--bg);color:var(--text);font-size:13px}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-danger{color:var(--high);border-color:var(--high)}.stable{width:100%;border-collapse:collapse;font-size:13px}.stable th{text-align:left;color:var(--muted);font-weight:500;padding:6px 8px;border-bottom:1px solid var(--border);font-size:12px;white-space:nowrap}.stable td{padding:8px;border-bottom:1px solid var(--border);vertical-align:top}.row-off{opacity:.5}.target{color:var(--muted);font-size:11px;word-break:break-all;max-width:320px}.target.err{color:var(--high)}.badge{font-size:11px;background:var(--border);padding:2px 8px;border-radius:999px;white-space:nowrap}.switch{border:1px solid var(--border);background:transparent;border-radius:999px;padding:3px 10px;cursor:pointer;font-size:12px;color:var(--muted);white-space:nowrap}.switch.on{color:var(--ok);border-color:var(--ok)}.acts,.editgrid{display:flex;flex-direction:column;gap:4px}.editgrid input{border:1px solid var(--border);border-radius:6px;padding:4px 6px;background:var(--bg);color:var(--text);font-size:12px}.msg{background:var(--accent-soft);border:1px solid var(--accent);color:var(--text);border-radius:10px;padding:8px 12px;margin-bottom:10px;font-size:13px}.hint{color:var(--muted);font-size:12px;margin:8px 0 0}.tabular{font-variant-numeric:tabular-nums}.cat-relay{background:#ede9fe;color:#5b21b6}.dirbar{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 2px}.dirbtn{border:1px solid var(--border);background:var(--surface);color:var(--muted);padding:5px 13px;border-radius:999px;cursor:pointer;font-size:12px}.dirbtn.active{background:var(--accent);border-color:var(--accent);color:#fff}.cat-proxy{background:#cffafe;color:#0e7490}.eng{color:var(--accent);font-size:12px}.zh-title{color:var(--accent);font-size:13px;margin:4px 0 2px}.cat-carpool{background:#fce7f3;color:#9d174d}.cat-card{background:#ffedd5;color:#c2410c}.cat-sms{background:#ccfbf1;color:#115e59}.redline{background:#fee2e2;color:#991b1b;border-radius:8px;padding:6px 10px;font-size:12px;margin-bottom:8px}.warnbadges{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0}.warnbadge{font-size:11px;padding:2px 8px;border-radius:999px;background:#fee2e2;color:#b91c1c}.row-sel{outline:1px solid var(--accent)}.row-sel td{cursor:default}
