*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg-0:#050608;--bg-1:#0a0d14;
  --border:rgba(255,255,255,.06);--border-hi:rgba(255,255,255,.14);
  --text:#e4e7ec;--text-dim:#8a92a3;--text-muted:#4d5563;
  --red:#ff4d6d;--red-hi:#ff7088;--red-soft:rgba(255,77,109,.08);--red-glow:rgba(255,77,109,.35);
  --green:#22e08b;--green-hi:#4bf0a4;--green-soft:rgba(34,224,139,.08);--green-glow:rgba(34,224,139,.35);
  --cyan:#4dd4ff;--cyan-glow:rgba(77,212,255,.35);
  --purple:#8b5cf6;--purple-hi:#a78bfa;--purple-soft:rgba(139,92,246,.08);--purple-glow:rgba(139,92,246,.4);
  --amber:#fbbf24;
  --mono:'JetBrains Mono','SF Mono',Monaco,Consolas,monospace;
}
html,body{height:100%;background:var(--bg-0);color:var(--text);font-family:var(--mono);font-size:13px;line-height:1.5;overflow:hidden;-webkit-font-smoothing:antialiased}
.bg-grid{position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;z-index:0}
.bg-glow{position:fixed;inset:0;background:radial-gradient(circle at 15% 10%,rgba(139,92,246,.10),transparent 40%),radial-gradient(circle at 85% 90%,rgba(77,212,255,.07),transparent 45%),radial-gradient(circle at 50% 50%,rgba(10,13,20,1),rgba(5,6,8,1) 70%);pointer-events:none;z-index:0}
.app{position:relative;z-index:1;display:flex;flex-direction:column;height:100vh}

/* header */
.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 22px;border-bottom:1px solid var(--border);background:rgba(10,13,20,.6);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);flex-shrink:0}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-icon{width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--purple) 0%,var(--cyan) 100%);border-radius:9px;color:#fff;box-shadow:0 0 24px -4px var(--purple-glow)}
.brand-icon svg{width:18px;height:18px}
.brand-text{display:flex;flex-direction:column;gap:1px;min-width:0}
.brand-text h1{font-size:14px;font-weight:700;letter-spacing:1.2px;color:var(--text);line-height:1;white-space:nowrap}
.brand-sub{font-size:9px;color:var(--text-muted);letter-spacing:1.4px;text-transform:uppercase;font-weight:500}

.counter{display:flex;gap:8px;align-items:center}
.count{display:flex;align-items:center;gap:10px;padding:8px 14px;background:rgba(255,255,255,.02);border:1px solid var(--border);border-radius:8px;min-width:104px}
.count-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.count.time{border-color:rgba(77,212,255,.15)}
.count.time .count-dot{background:var(--cyan);box-shadow:0 0 8px var(--cyan-glow)}
.count.time .num{color:var(--cyan)}
.count.dead{border-color:rgba(255,77,109,.15)}
.count.dead .count-dot{background:var(--red);box-shadow:0 0 8px var(--red-glow)}
.count.dead .num{color:var(--red-hi)}
.count.avs{border-color:rgba(34,224,139,.15)}
.count.avs .count-dot{background:var(--green);box-shadow:0 0 8px var(--green-glow)}
.count.avs .num{color:var(--green-hi)}
.count.progress .count-dot{background:var(--purple);box-shadow:0 0 8px var(--purple-glow)}
.count-body{display:flex;flex-direction:column;gap:0;line-height:1.1}
.count .label{font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.2px;font-weight:500}
.count .num{font-size:15px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}

.user-bar{display:flex;align-items:center;gap:8px;flex-shrink:0}
.btn-nav{padding:7px 12px;background:rgba(255,255,255,.02);border:1px solid var(--border);border-radius:6px;color:var(--text-dim);font-family:var(--mono);font-size:11px;letter-spacing:.5px;text-decoration:none;transition:all .15s;white-space:nowrap}
.btn-nav:hover{border-color:var(--purple);color:var(--purple-hi);background:var(--purple-soft)}
.user-chip{display:flex;align-items:center;gap:8px;padding:7px 12px;background:rgba(255,255,255,.02);border:1px solid var(--border);border-radius:20px;font-size:11px;color:var(--text-dim);letter-spacing:.5px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-dot{width:5px;height:5px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green-glow);flex-shrink:0}
.btn-logout{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.02);border:1px solid var(--border);border-radius:8px;color:var(--text-dim);cursor:pointer;transition:all .15s}
.btn-logout:hover{border-color:var(--red);color:var(--red-hi);background:var(--red-soft)}
.btn-logout svg{width:15px;height:15px}

/* top row */
.top-row{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);flex:1;min-height:0}
.col{background:rgba(10,13,20,.4);display:flex;flex-direction:column;padding:18px;gap:12px;min-height:0}
.col-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-shrink:0}
.col-title{font-size:11px;font-weight:600;letter-spacing:1.5px;color:var(--text);text-transform:uppercase}
.col-meta{font-size:10px;color:var(--text-muted);letter-spacing:.3px}
textarea{background:rgba(5,6,8,.6);border:1px solid var(--border);color:var(--text);padding:14px;border-radius:8px;font-family:var(--mono);font-size:12px;resize:none;outline:none;transition:all .15s;flex:1;min-height:0;line-height:1.7;letter-spacing:.2px}
textarea:focus{border-color:var(--purple);background:rgba(5,6,8,.8);box-shadow:0 0 0 1px var(--purple-soft),0 0 24px -4px var(--purple-glow)}
textarea::placeholder{color:var(--text-muted);opacity:.4}

.bottom-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;flex-wrap:wrap}
.amount-wrap{display:flex;align-items:center;gap:6px;padding:0 12px;height:38px;background:rgba(5,6,8,.6);border:1px solid var(--border);border-radius:8px;transition:all .15s;min-width:0}
.amount-wrap:focus-within{border-color:var(--purple);box-shadow:0 0 0 1px var(--purple-soft),0 0 24px -4px var(--purple-glow)}
.amount-sym{font-size:13px;color:var(--text-muted);font-weight:500;flex-shrink:0}
#amount{background:transparent!important;border:none!important;color:var(--text);font-family:var(--mono);font-size:14px;font-weight:600;width:70px;outline:none;font-variant-numeric:tabular-nums;letter-spacing:.5px}
#amount.invalid{color:var(--red-hi)}
.amount-hint{font-size:9px;color:var(--text-muted);letter-spacing:1px;flex-shrink:0}

/* threads */
.amount-wrap.threads-wrap{padding:0 4px 0 12px;min-width:130px}
.threads-label{font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:var(--text-muted);font-weight:600;flex-shrink:0}
.threads-divider{width:1px;height:16px;background:var(--border);margin:0 10px;flex-shrink:0}
input#threads,
input#threads[type="number"]{
  -webkit-appearance:none!important;
  -moz-appearance:textfield!important;
  appearance:none!important;
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  color:var(--text);
  font-family:var(--mono);
  font-size:14px;
  font-weight:600;
  width:52px;
  padding:0 8px 0 0;
  text-align:right;
  font-variant-numeric:tabular-nums;
  letter-spacing:.5px;
}
input#threads.invalid{color:var(--red-hi)}
input#threads::-webkit-outer-spin-button,
input#threads::-webkit-inner-spin-button{-webkit-appearance:none!important;margin:0;display:none}
input#threads::placeholder{color:var(--text-muted)}
input#threads:focus{outline:none}

.controls{display:flex;gap:8px}
.btn{display:flex;align-items:center;gap:8px;padding:0 16px;height:38px;border:1px solid var(--border);background:rgba(255,255,255,.02);color:var(--text);border-radius:8px;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.5px;cursor:pointer;transition:all .15s;white-space:nowrap}
.btn svg{width:12px;height:12px}
.btn:hover:not(:disabled){transform:translateY(-1px)}
.btn:active:not(:disabled){transform:translateY(0)}
.btn:disabled{opacity:.35;cursor:not-allowed}
.btn-start{color:var(--green-hi);border-color:rgba(34,224,139,.25);background:rgba(34,224,139,.06)}
.btn-start:hover:not(:disabled){background:rgba(34,224,139,.12);border-color:var(--green);box-shadow:0 0 20px -4px var(--green-glow)}
.btn-stop{color:var(--red-hi);border-color:rgba(255,77,109,.25);background:rgba(255,77,109,.06)}
.btn-stop:hover:not(:disabled){background:rgba(255,77,109,.12);border-color:var(--red);box-shadow:0 0 20px -4px var(--red-glow)}
.btn-check{color:var(--purple-hi);border-color:rgba(139,92,246,.25);background:rgba(139,92,246,.06)}
.btn-check:hover:not(:disabled){background:rgba(139,92,246,.12);border-color:var(--purple);box-shadow:0 0 20px -4px var(--purple-glow)}

.status,.proxy-status{display:flex;align-items:center;gap:10px;padding:0 14px;height:36px;background:rgba(5,6,8,.4);border:1px solid var(--border);border-radius:8px;font-size:11px;color:var(--text-dim);flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.status-dot{width:6px;height:6px;border-radius:50%;background:var(--text-muted);flex-shrink:0;transition:all .3s}
.status-text{overflow:hidden;text-overflow:ellipsis;letter-spacing:.3px}
.proxy-status{flex:1}
.status.active{color:var(--green-hi);border-color:rgba(34,224,139,.2)}
.status.active .status-dot{background:var(--green);box-shadow:0 0 8px var(--green-glow);animation:pulse-dot 1.5s ease-in-out infinite}
.status.error{color:var(--red-hi);border-color:rgba(255,77,109,.2)}
.status.error .status-dot{background:var(--red);box-shadow:0 0 8px var(--red-glow)}
.proxy-status.checking{color:var(--purple-hi);border-color:rgba(139,92,246,.2)}
.proxy-status.checking .status-dot{background:var(--purple);box-shadow:0 0 8px var(--purple-glow);animation:pulse-dot 1.5s ease-in-out infinite}
.proxy-status.ok{color:var(--green-hi);border-color:rgba(34,224,139,.2)}
.proxy-status.ok .status-dot{background:var(--green);box-shadow:0 0 8px var(--green-glow)}
.proxy-status.err{color:var(--red-hi);border-color:rgba(255,77,109,.2)}
.proxy-status.err .status-dot{background:var(--red);box-shadow:0 0 8px var(--red-glow)}
@keyframes pulse-dot{0%,100%{opacity:1}50%{opacity:.4}}

/* results */
.panel-results{display:flex;flex-direction:column;background:rgba(10,13,20,.4);border-top:1px solid var(--border);flex:1;min-height:0}
.tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;padding:0 18px;gap:4px}
.tab{display:flex;align-items:center;gap:10px;padding:14px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:all .15s}
.tab:hover{color:var(--text-dim)}
.tab.active{color:var(--text)}
.tab.active[data-tab="DEAD"]{border-bottom-color:var(--red)}
.tab.active[data-tab="AVS"]{border-bottom-color:var(--green)}
.tab-label{letter-spacing:1.5px}
.badge{padding:3px 9px;border-radius:10px;font-size:10px;font-weight:600;background:rgba(255,255,255,.04);color:var(--text-dim);font-variant-numeric:tabular-nums;letter-spacing:.5px}
.badge.red{background:var(--red-soft);color:var(--red-hi)}
.badge.green{background:var(--green-soft);color:var(--green-hi)}
.results{flex:1;overflow-y:auto;padding:4px 8px 8px}
.result{display:grid;grid-template-columns:72px 1fr;gap:16px;padding:12px 14px;border-radius:6px;margin:4px 0;font-size:12px;transition:background .15s}
.result.dead{border-left:2px solid var(--red);background:linear-gradient(90deg,var(--red-soft),transparent 30%)}
.result.avs{border-left:2px solid var(--green);background:linear-gradient(90deg,var(--green-soft),transparent 30%)}
.result.dead:hover{background:linear-gradient(90deg,rgba(255,77,109,.12),transparent 40%)}
.result.avs:hover{background:linear-gradient(90deg,rgba(34,224,139,.12),transparent 40%)}
.result .tag{font-weight:700;letter-spacing:.5px;font-size:11px;padding-top:1px}
.result.dead .tag{color:var(--red-hi)}
.result.avs .tag{color:var(--green-hi)}
.result .card{color:var(--text-dim);word-break:break-all;margin-bottom:4px;letter-spacing:.3px}
.result .reason{color:var(--text);font-size:11px;opacity:.85;letter-spacing:.2px}
.empty{padding:60px 20px;text-align:center;color:var(--text-muted);font-size:11px;letter-spacing:1.5px;text-transform:uppercase}

/* login */
.login-wrap{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}
.login-box{width:100%;max-width:360px;padding:40px 32px 32px;background:rgba(10,13,20,.75);border:1px solid var(--border);border-radius:14px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 30px 80px -20px rgba(0,0,0,.8),0 0 0 1px rgba(139,92,246,.05),0 0 60px -20px var(--purple-glow);display:flex;flex-direction:column;gap:16px}
.login-icon{width:48px;height:48px;align-self:center;margin-bottom:8px;border-radius:12px}
.login-icon svg{width:24px;height:24px}
.login-box h1{font-size:16px;font-weight:700;letter-spacing:2px;color:var(--text);text-align:center;margin-bottom:2px}
.login-box>p{text-align:center;color:var(--text-muted);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:8px}
.login-field{display:flex;flex-direction:column;gap:6px}
.login-label{font-size:9px;color:var(--text-muted);letter-spacing:1.5px;text-transform:uppercase;font-weight:500}
.login-field input{background:rgba(5,6,8,.7);border:1px solid var(--border);color:var(--text);padding:11px 13px;border-radius:8px;font-family:var(--mono);font-size:13px;outline:none;transition:all .15s;letter-spacing:.3px}
.login-field input:focus{border-color:var(--purple);background:rgba(5,6,8,.9);box-shadow:0 0 0 1px var(--purple-soft),0 0 24px -4px var(--purple-glow)}
#login-btn{margin-top:8px;padding:12px;background:linear-gradient(135deg,var(--purple) 0%,var(--purple-hi) 100%);border:none;color:#fff;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;border-radius:8px;cursor:pointer;transition:all .15s;box-shadow:0 0 24px -6px var(--purple-glow)}
#login-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 32px -8px var(--purple-glow)}
#login-btn:disabled{opacity:.5;cursor:not-allowed}
.login-error{color:var(--red-hi);font-size:11px;text-align:center;min-height:16px;letter-spacing:.3px}

/* admin dashboard */
.admin-wrap{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.stat-card{background:rgba(10,13,20,.5);border:1px solid var(--border);border-radius:12px;padding:18px}
.stat-label{font-size:10px;color:var(--text-muted);letter-spacing:1.2px;text-transform:uppercase;font-weight:500;margin-bottom:8px}
.stat-value{font-size:24px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.5px}
.stat-value.cyan{color:var(--cyan)}
.stat-value.green{color:var(--green-hi)}
.stat-value.purple{color:var(--purple-hi)}

.admin-card{background:rgba(10,13,20,.5);border:1px solid var(--border);border-radius:12px;overflow:hidden}
.admin-card-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border);gap:16px}
.admin-card-title{display:flex;align-items:baseline;gap:10px}
.admin-card-title h2{font-size:12px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--text)}
.admin-meta{font-size:10px;color:var(--text-muted);letter-spacing:.5px}
.admin-search{position:relative;flex:0 0 220px}
.admin-search input{width:100%;height:32px;padding:0 12px;background:rgba(5,6,8,.6);border:1px solid var(--border);border-radius:6px;color:var(--text);font-family:var(--mono);font-size:11px;outline:none;transition:all .15s}
.admin-search input:focus{border-color:var(--purple);box-shadow:0 0 0 1px var(--purple-soft)}

.admin-table-head{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.4fr;gap:16px;padding:10px 18px;border-bottom:1px solid var(--border);font-size:9px;color:var(--text-muted);letter-spacing:1.2px;text-transform:uppercase;font-weight:500}
.admin-table{padding:6px}
.admin-row{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.4fr;gap:16px;align-items:center;padding:12px;border-radius:8px;transition:background .15s}
.admin-row:hover{background:rgba(255,255,255,.02)}
.admin-user{display:flex;align-items:center;gap:10px;min-width:0}
.user-avatar{width:32px;height:32px;flex-shrink:0;border-radius:8px;background:linear-gradient(135deg,rgba(139,92,246,.2),rgba(77,212,255,.2));display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--text);letter-spacing:.5px}
.user-meta{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
.admin-username{font-size:13px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-tag{padding:2px 7px;border-radius:6px;font-size:9px;background:var(--purple-soft);color:var(--purple-hi);letter-spacing:.6px;text-transform:uppercase;font-weight:600}

.admin-time{font-size:13px;font-weight:600;color:var(--cyan);font-variant-numeric:tabular-nums}
.admin-time.low{color:var(--amber)}
.admin-time.empty{color:var(--red-hi)}
.admin-status{display:flex;flex-direction:column;gap:3px}
.status-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:10px;font-size:10px;letter-spacing:.3px;font-weight:500;width:fit-content}
.status-badge.idle{background:rgba(255,255,255,.03);color:var(--text-muted)}
.status-badge.running{background:var(--green-soft);color:var(--green-hi);font-weight:600}
.admin-last{font-size:9px;color:var(--text-muted);letter-spacing:.3px}

.admin-actions{display:flex;gap:4px;align-items:center;justify-content:flex-end}
.admin-seconds{width:64px;height:30px;padding:0 8px;background:rgba(5,6,8,.6);border:1px solid var(--border);border-radius:5px;color:var(--text);font-family:var(--mono);font-size:11px;outline:none;transition:border-color .15s}
.admin-seconds:focus{border-color:var(--purple)}
.btn-action{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:rgba(255,255,255,.02);color:var(--text);border-radius:5px;font-family:var(--mono);font-size:12px;font-weight:700;cursor:pointer;transition:all .15s}
.btn-add{color:var(--green-hi);border-color:rgba(34,224,139,.25)}
.btn-add:hover{background:var(--green-soft);border-color:var(--green)}
.btn-set{color:var(--amber);border-color:rgba(251,191,36,.25)}
.btn-set:hover{background:rgba(251,191,36,.08);border-color:var(--amber)}
.btn-pass{color:var(--purple-hi);border-color:rgba(139,92,246,.25)}
.btn-pass:hover{background:var(--purple-soft);border-color:var(--purple)}
.btn-del{color:var(--red-hi);border-color:rgba(255,77,109,.25)}
.btn-del:hover{background:var(--red-soft);border-color:var(--red)}

.admin-create{padding:14px 18px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.admin-create input{height:34px;padding:0 12px;background:rgba(5,6,8,.6);border:1px solid var(--border);border-radius:6px;color:var(--text);font-family:var(--mono);font-size:12px;outline:none;transition:border-color .15s}
.admin-create input:focus{border-color:var(--purple)}
#new-user,#new-pass{flex:1;min-width:120px}
#new-secs{width:100px}
.btn-create{height:34px;padding:0 18px;background:linear-gradient(135deg,var(--purple),var(--purple-hi));color:#fff;border:none;border-radius:6px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all .15s;box-shadow:0 0 20px -4px var(--purple-glow)}
.btn-create:hover:not(:disabled){transform:translateY(-1px)}
.btn-create:disabled{opacity:.5;cursor:not-allowed}

/* settings page — centered */
.settings-wrap{
  flex:1;
  overflow-y:auto;
  padding:40px 20px;
  display:grid;
  grid-template-columns:minmax(0,480px);
  justify-content:center;
  align-content:start;
  gap:20px;
}
.settings-card{
  background:rgba(10,13,20,.5);
  border:1px solid var(--border);
  border-radius:12px;
  overflow:hidden;
  width:100%;
}
.settings-header{display:flex;justify-content:space-between;align-items:baseline;padding:16px 20px;border-bottom:1px solid var(--border);gap:16px}
.settings-header h2{font-size:13px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--text)}
.settings-meta{font-size:10px;color:var(--text-muted);letter-spacing:.5px}
.settings-body{padding:20px;display:flex;flex-direction:column;gap:16px}
.field{display:flex;flex-direction:column;gap:6px}
.field-label{font-size:10px;color:var(--text-muted);letter-spacing:1.2px;text-transform:uppercase;font-weight:600}
.field input{background:rgba(5,6,8,.6);border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:6px;font-family:var(--mono);font-size:12px;outline:none;transition:all .15s}
.field input:focus{border-color:var(--purple);box-shadow:0 0 0 1px var(--purple-soft)}
.field-hint{font-size:10px;color:var(--text-muted);letter-spacing:.3px}
.radio-group{display:flex;flex-wrap:wrap;gap:8px}
.radio{display:flex;align-items:center;gap:8px;padding:10px 14px;background:rgba(5,6,8,.5);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .15s;font-size:12px;color:var(--text-dim)}
.radio input{display:none}
.radio span{letter-spacing:.3px}
.radio:has(input:checked){border-color:var(--purple);background:var(--purple-soft);color:var(--purple-hi);box-shadow:0 0 0 1px var(--purple-soft)}
.settings-actions{display:flex;gap:8px;margin-top:8px}
.settings-status{font-size:11px;letter-spacing:.3px;color:var(--text-muted);min-height:16px}
.settings-status.ok{color:var(--green-hi)}
.settings-status.err{color:var(--red-hi)}
.settings-status.checking{color:var(--purple-hi)}

/* scrollbars */
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,.06);border-radius:4px;border:2px solid transparent;background-clip:padding-box}
::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.12);background-clip:padding-box}

/* mobile */
@media (max-width:900px){
  .top-row{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .admin-table-head,.admin-row{grid-template-columns:1.4fr 1fr 1fr}
  .admin-actions{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap;padding-top:6px;border-top:1px solid var(--border);margin-top:6px}
  .admin-table-head>:nth-child(4){display:none}
}
@media (max-width:768px){
  html,body{overflow:auto;height:auto}
  .app{height:auto;min-height:100dvh;padding:10px;gap:10px}
  .header{flex-wrap:wrap;padding:12px 14px;gap:10px;border-radius:10px}
  .brand{flex:1 1 auto;min-width:0}
  .brand-icon{width:30px;height:30px}
  .brand-text h1{font-size:12px}
  .brand-sub{display:none}
  .user-bar{flex:0 0 auto;gap:6px}
  .btn-nav{padding:6px 10px;font-size:10px}
  .user-chip{padding:6px 10px;font-size:10px;max-width:100px}
  .btn-logout{width:36px;height:36px}
  .counter{order:3;flex:1 0 100%;justify-content:space-between;gap:6px}
  .count{flex:1;min-width:0;padding:6px 10px;gap:8px}
  .count .label{font-size:8px;letter-spacing:.8px}
  .count .num{font-size:14px}

  .top-row{grid-template-columns:1fr;gap:10px;background:transparent}
  .col{
    padding:14px;
    gap:10px;
    background:rgba(10,13,20,.4);
    border:1px solid var(--border);
    border-radius:10px;
    min-height:0;
  }
  textarea{min-height:180px;padding:12px;font-size:12px}
  .col-header{flex-wrap:wrap;gap:6px}
  .col-title{font-size:10px}
  .col-meta{font-size:9px}

  .bottom-row{
    flex-direction:column;
    align-items:stretch;
    gap:8px;
  }
  .amount-wrap,
  .amount-wrap.threads-wrap{
    width:100%;
    min-width:0;
    justify-content:space-between;
  }
  #amount{width:auto;flex:1;text-align:right}
  input#threads{width:60px}
  .controls{width:100%}
  .btn{flex:1;justify-content:center;padding:0 10px;font-size:11px}
  .status,.proxy-status{height:auto;padding:10px 12px;white-space:normal;line-height:1.4}

  .panel-results{border-radius:10px;overflow:hidden;border:1px solid var(--border);border-top:1px solid var(--border)}
  .tabs{padding:0 8px;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .tab{padding:12px 10px;font-size:10px;letter-spacing:1px;flex-shrink:0}
  .tab-label{letter-spacing:1px}
  .badge{padding:2px 7px;font-size:9px}
  .results{padding:2px 4px 6px}
  .result{
    grid-template-columns:52px 1fr;
    gap:10px;
    padding:10px;
    font-size:11px;
  }
  .result .tag{font-size:10px}
  .result .reason{font-size:10px}
  .empty{padding:40px 16px;font-size:10px}

  .login-wrap{min-height:100dvh;padding:16px}
  .login-box{padding:32px 22px 24px;max-width:100%}
  .login-box h1{font-size:14px;letter-spacing:1.5px}

  .admin-wrap{padding:12px;gap:12px}
  .stats-grid{grid-template-columns:1fr 1fr;gap:10px}
  .stat-card{padding:14px}
  .stat-label{font-size:9px}
  .stat-value{font-size:20px}
  .admin-card{border-radius:10px}
  .admin-card-header{flex-direction:column;align-items:stretch;gap:10px;padding:12px 14px}
  .admin-search{flex:1 1 auto;width:100%}
  .admin-search input{height:36px;font-size:12px}
  .admin-table-head{display:none}
  .admin-table{padding:4px}
  .admin-row{
    grid-template-columns:1fr auto;
    grid-template-areas:
      "user time"
      "status status"
      "actions actions";
    gap:8px 10px;
    padding:12px;
    border-radius:8px;
    border:1px solid var(--border);
    margin-bottom:6px;
  }
  .admin-row:hover{background:rgba(255,255,255,.02)}
  .admin-user{grid-area:user;min-width:0}
  .admin-time{grid-area:time;text-align:right;font-size:12px}
  .admin-status{grid-area:status;flex-direction:row;align-items:center;gap:8px;flex-wrap:wrap}
  .admin-actions{
    grid-area:actions;
    justify-content:flex-start;
    flex-wrap:wrap;
    padding-top:8px;
    border-top:1px solid var(--border);
    margin-top:2px;
  }
  .admin-seconds{width:70px;height:32px;font-size:12px}
  .btn-action{width:34px;height:34px;font-size:13px}
  .admin-create{flex-direction:column;align-items:stretch;padding:12px 14px;gap:8px}
  #new-user,#new-pass,#new-secs{width:100%;flex:1 1 auto}
  .btn-create{height:38px;width:100%}

  .settings-wrap{padding:16px 12px;grid-template-columns:minmax(0,1fr);gap:14px}
  .settings-card{border-radius:10px}
  .settings-header{flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px}
  .settings-header h2{font-size:12px}
  .settings-body{padding:16px;gap:14px}
  .field input{padding:11px 12px;font-size:13px}
  .radio-group{flex-direction:column;gap:8px}
  .radio{width:100%;justify-content:flex-start}
  .settings-actions{flex-direction:column}
  .settings-actions .btn{width:100%;justify-content:center}
  .settings-status{font-size:11px}
}

@media (max-width:420px){
  .stats-grid{grid-template-columns:1fr}
  .tab{padding:10px 8px;font-size:9px}
  .badge{font-size:8px;padding:2px 6px}
  .count .num{font-size:13px}
  .result{grid-template-columns:1fr;gap:4px}
  .result .tag{padding-top:0}
}