:root{
  --bg:#0b1020;
  --panel:#0f172a;
  --muted:#94a3b8;
  --border:#1e293b;
  --brand:#4f46e5;
  --brand2:#22d3ee;
  --text:#e2e8f0;
  --danger:#ef4444;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  color:var(--text);
  background: radial-gradient(1200px 600px at 20% -10%, rgba(34,211,238,.15), transparent 60%),
             radial-gradient(1000px 500px at 120% 10%, rgba(79,70,229,.12), transparent 60%),
             var(--bg);
}
a{color:#93c5fd;text-decoration:none}
.container{max-width:1000px;margin:24px auto;padding:0 16px}
.card{
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid var(--border);
  border-radius:16px;
  padding:24px;
  box-shadow:0 20px 40px rgba(0,0,0,.25);
  backdrop-filter: blur(6px);
}
.card.lock{max-width:760px}

h1,h2,h3{margin:0 0 12px}
label{display:block;margin:10px 0 6px}
input[type=text],input[type=password],input[type=number],input[type=url],select{
  width:100%;padding:12px;border-radius:10px;border:1px solid var(--border);
  background:#0a1324;color:var(--text);outline:none
}
input:focus,select:focus{border-color:#475569;box-shadow:0 0 0 4px rgba(79,70,229,.15)}
.btn{
  display:inline-block;padding:10px 16px;border-radius:10px;background:linear-gradient(90deg,var(--brand),var(--brand2));
  color:#fff;border:0;font-weight:600;cursor:pointer;transition:.2s transform ease;
  box-shadow:0 8px 20px rgba(79,70,229,.35)
}
.btn:hover{transform:translateY(-1px)}
.btn.danger{background:#ef4444}
.btn:disabled{opacity:.6;cursor:not-allowed}
.muted{color:var(--muted)}.small{font-size:.9rem}.tiny{font-size:.8rem}

.alert{padding:12px;border-radius:10px;margin:12px 0;border:1px solid var(--border);background:#0b1225}
.alert.success{border-color:#14532d;color:#a7f3d0;background:rgba(16,185,129,.1)}
.alert.error{border-color:#7f1d1d;color:#fecaca;background:rgba(239,68,68,.08)}

.table{display:grid;gap:10px;margin-top:14px}
.thead,.trow{display:grid;grid-template-columns:60px 130px 150px 80px 90px 90px 1fr 240px;gap:10px;align-items:center}
.grid-links .thead,.grid-links .trow{grid-template-columns:60px 140px 140px 80px 90px 90px 1fr 240px}
.grid-public .thead,.grid-public .trow{grid-template-columns:120px 180px 80px 90px 1fr}

.thead{font-weight:700;color:#cbd5e1}
.trow{background:#0b1224;padding:10px;border-radius:12px;border:1px solid var(--border)}

.actions-row{display:flex;gap:8px;align-items:center}
.chk{margin-top:10px}

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.card-in{background:#0b1224;border:1px solid var(--border);border-radius:12px;padding:16px}

.steps{display:grid;gap:12px;margin-top:12px}
.step{display:flex;gap:12px;align-items:flex-start;background:#0b1224;border:1px dashed #334155;border-radius:12px;padding:14px}
.step-num{min-width:34px;height:34px;border-radius:10px;background:#111827;display:flex;align-items:center;justify-content:center;font-weight:700}

.unlock{margin-top:16px}
progress{width:100%;height:12px}
