:root{color-scheme:dark;--bg:#070e1b;--panel:#101a2b;--panel2:#0d1625;--border:#263347;--dim:#8191a8;--soft:#a2b2c8;--white:#f3f7ff;--cyan:#54e3ce;--mint:#39dbc2;--blue:#5f89f9;--red:#ff7d88;--amber:#f5c67c}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI','Microsoft YaHei',sans-serif;color:var(--white);font-size:14px;line-height:1.5}
button,select,textarea,input{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
.layout{position:relative;max-width:1260px;margin:auto;padding:0 40px 45px}
.ambient{pointer-events:none;position:fixed;z-index:-1;filter:blur(75px);border-radius:50%}
.a1{background:#163e61a5;width:550px;height:400px;top:-200px;right:7%}
.a2{background:#0f415443;width:410px;height:300px;top:410px;left:-220px}
.topbar{height:88px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff13}
.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:770;letter-spacing:-.7px}
.brand-em{color:var(--cyan)}
.brand-mark{height:29px;width:29px;border-radius:9px;background:linear-gradient(135deg,#75fbe3,#58aef9);display:grid;place-items:center;box-shadow:0 0 0 6px #43dbc61a}
.inner-square{width:15px;height:15px;border:3px solid #102538;border-radius:5px;transform:rotate(45deg)}
.version{font-size:10px;color:#9cb5c6;letter-spacing:1px;border:1px solid #3c4c60;border-radius:4px;padding:3px 6px;margin-left:6px;font-weight:600}
.top-right{display:flex;align-items:center;gap:12px;color:#b3c4d5;font-size:12px}
.status-light{height:7px;width:7px;border-radius:50%;background:#51e4b6;box-shadow:0 0 0 4px #47dfad1d}
.top-link{margin-left:18px;padding:8px 0;font-weight:600;color:#e4f2ff}
.top-link:hover{color:var(--cyan)}
.hero{padding-top:44px}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;color:#65e8d1;letter-spacing:2.4px;font-weight:700}
.eyebrow-line{width:22px;height:2px;background:var(--cyan)}
.hero h1{font-size:34px;margin:14px 0 10px;letter-spacing:-.6px}
.headline-gradient{background:linear-gradient(120deg,#7af3df,#62a8f9);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{max-width:760px;color:var(--soft)}
.mini-panel{margin-top:16px;background:var(--panel2);border:1px solid var(--border);border-radius:14px;padding:14px 16px}
.mini-panel-head{display:flex;align-items:center;gap:8px;font-weight:700;margin-bottom:6px}
.mini-panel-head .shield{color:var(--cyan)}
.mini-panel p{margin:0;color:var(--dim);font-size:13px}
.panel{margin-top:28px;background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:22px}
.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;flex-wrap:wrap}
.section-title{display:flex;gap:12px;align-items:flex-start}
.title-icon{font-size:20px;color:var(--cyan)}
.section-title h2{margin:0;font-size:18px}
.section-title p{margin:2px 0 0;color:var(--dim);font-size:12.5px}
.panel-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.mini-btn{background:var(--panel2);border:1px solid var(--border);color:var(--white);border-radius:9px;padding:8px 12px;font-weight:600;font-size:12.5px}
.mini-btn:hover{border-color:var(--cyan);color:var(--cyan)}
.mini-btn.subtle{color:var(--dim)}
.primary-btn{background:linear-gradient(135deg,#39dbc2,#5f89f9);border:none;color:#04121f;font-weight:760;border-radius:11px;padding:11px 18px;font-size:13.5px}
.primary-btn:disabled{opacity:.5;cursor:not-allowed}
.notice{background:var(--panel2);border:1px solid var(--border);border-radius:10px;padding:10px 12px;color:var(--soft);font-size:12.5px;margin-bottom:14px}
.notice.warn{border-color:var(--amber);color:var(--amber)}
.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:12px}
.book-table{width:100%;border-collapse:collapse;font-size:13px}
.book-table th,.book-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #ffffff0f;white-space:nowrap}
.book-table th{color:var(--dim);font-weight:600;font-size:11.5px;letter-spacing:.4px;text-transform:uppercase;background:var(--panel2)}
.book-table td.addr{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--soft);max-width:240px;overflow:hidden;text-overflow:ellipsis}
.book-table tr:last-child td{border-bottom:none}
.book-table tbody tr:hover{background:#ffffff07}
.col-check{width:36px}
.chip{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;border:1px solid var(--border)}
.chip.tron{color:#ff9a76}.chip.ethereum{color:#9db4ff}.chip.bnb{color:#f5c67c}.chip.bitcoin{color:#ff9a76}.chip.solana{color:#8fe3d2}.chip.default{color:var(--dim)}
.tag{padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700}
.tag.ok{background:#1c3b30;color:#7af3c6}.tag.partial{background:#3a3417;color:var(--amber)}.tag.error{background:#3a2026;color:#ff8a94}.tag.zero{background:#1c2a3b;color:#8fb6ff}
.row-act button{background:none;border:none;color:var(--dim);font-size:12px;margin-right:8px}
.row-act button:hover{color:var(--cyan)}
.empty-state{padding:36px 16px;text-align:center;color:var(--dim)}
.empty-state h3{margin:0 0 6px;color:var(--soft)}
.book-foot{display:flex;justify-content:space-between;margin-top:10px;font-size:12px;color:var(--dim)}
.book-foot .dim{color:var(--dim)}
.progress-wrap{display:flex;align-items:center;gap:12px;margin:6px 0 14px}
.progress-inner{height:8px;flex:1;background:var(--panel2);border-radius:999px;overflow:hidden;position:relative}
.progress-inner::after{content:"";position:absolute;inset:0;width:var(--p,0%);background:linear-gradient(90deg,#39dbc2,#5f89f9);transition:width .3s}
#batch-progress-text{font-size:12px;color:var(--dim);min-width:80px}
.balance-cell{font-size:12px;line-height:1.6}
.balance-cell .ba{color:var(--white)}
.balance-cell .bz{color:#8fb6ff;font-size:11px}
.balance-cell .bf{color:var(--amber);font-size:11px}
.agg{margin-top:16px;background:var(--panel2);border:1px solid var(--border);border-radius:12px;padding:16px}
.agg h3{margin:0 0 12px;font-size:14px}
.agg-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.agg-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:10px 12px;min-width:130px}
.agg-card .ak{font-size:11px;color:var(--dim)}
.agg-card .av{font-size:16px;font-weight:700;margin-top:2px}
.agg-card .ac{font-size:10px;color:var(--dim)}
.modal{position:fixed;inset:0;background:#04080fcc;display:grid;place-items:center;z-index:50;padding:20px}
.modal[hidden]{display:none}
.modal-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:22px;width:min(440px,100%);display:flex;flex-direction:column;gap:12px}
.modal-card h3{margin:0 0 4px}
.modal-card label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:var(--soft)}
.modal-card input,.modal-card select,.modal-card textarea{background:var(--panel2);border:1px solid var(--border);color:var(--white);border-radius:9px;padding:9px 11px}
.modal-card textarea{resize:vertical;min-height:60px}
.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}
.modal-err{color:var(--red);font-size:12px;margin:0}
.group-list{display:flex;flex-direction:column;gap:8px;max-height:240px;overflow:auto}
.group-list .gi{display:flex;justify-content:space-between;align-items:center;background:var(--panel2);border:1px solid var(--border);border-radius:9px;padding:8px 10px}
.group-list .gi button{background:none;border:none;color:var(--red);font-size:12px}
.group-add{display:flex;gap:8px;margin-top:10px}
.group-add input{flex:1;background:var(--panel2);border:1px solid var(--border);color:var(--white);border-radius:9px;padding:9px 11px}
@media(max-width:760px){
  .layout{padding:0 16px 30px}
  .topbar{height:70px}
  .hero h1{font-size:26px}
  .panel{padding:16px}
  .panel-heading{flex-direction:column}
  .book-table th,.book-table td{padding:8px 9px;font-size:12px}
  .book-table td.addr{max-width:150px}
}
