diff --git a/public/chat.js b/public/chat.js
index 9d558ce..af11c8b 100644
--- a/public/chat.js
+++ b/public/chat.js
@@ -51,6 +51,8 @@
a:()=>`"No money" is usually one of three things — sort it first. (1) Most often it means "this sounds expensive/complicated": entry is ${pol()} POL${usd()||" — a small one-time amount"} — payable with a regular debit card right on the join page. (2) Sometimes it's a priority thing: send the "Pocket Change" video from Promo Tools and let it do the talking. (3) If they're genuinely broke: tell them honestly "don't join yet" — never rent money, never money they can't afford to lose. Ask "when's payday?" and follow up then — their invite link doesn't expire and the team keeps building publicly while they wait. One hard rule: never pay someone's entry for them.`},
{k:['fast start','checklist','printable','print','48 hour','48-hour','getting started sheet'],
a:()=>`Grab the 48-Hour Fast Start sheet — a printable one-page checklist for your first two days. Open it from YOUR dashboard and it comes pre-filled with your invite link and a scannable QR code, then hit the print button (it prints clean black-on-white, in whatever language you've picked with the 🌐 button).`},
+ {k:['flyer','flyers','poster','posters','bulletin board','coffee shop','put up','print flyer','offline','belly to belly','belly-to-belly','tear off','tear-off','qr code flyer','gym','laundromat'],
+ a:()=>`Yes — there's a Printable Flyers maker (also linked on your dashboard and the Promo Tools page under "🪧 Printable flyers"). Enter your ID once and you get four colorful full-page flyer designs, each with YOUR personal QR code, your invite link, and tear-off tabs people can grab and take with them. Print in color for impact or black-and-white to save ink — the QR scans either way. Great for coffee shops, gyms, community and church bulletin boards, laundromats — old-school belly-to-belly still works.`},
{k:['translate','translation','language','español','espanol','spanish','french','portuguese','not in english','other language'],
a:()=>`Tap the 🌐 Translate button in the bottom-left corner of any page — pick your language once and every page stays translated while you browse. Your phone's browser also usually offers its own "Translate page" option. And you can type to me here in ANY language — I'll answer in yours.`},
{k:['how many people','team size','organization size','org size','how big is my team','total team','people in my team','members below'],
diff --git a/public/flyers.html b/public/flyers.html
new file mode 100644
index 0000000..fcfc5a8
--- /dev/null
+++ b/public/flyers.html
@@ -0,0 +1,59 @@
+
Old-school still works. Print these, put them up — coffee shops, gyms, community boards, laundromats — and let the QR do the talking. Each flyer carries your invite link and QR, plus tear-off tabs people can take with them. Enter your ID and every flyer personalizes to you.
+
Tip: print in color for impact, or black-and-white to save ink — the QR scans either way.
+
+
+
+
+
+
diff --git a/public/flyers.js b/public/flyers.js
new file mode 100644
index 0000000..3fbe0e1
--- /dev/null
+++ b/public/flyers.js
@@ -0,0 +1,78 @@
+// Printable RM Circle flyers, personalized to the member. Each flyer's QR + the
+// tear-off tabs carry /join/ (angle-matched per flyer). Reuses qrlib.js.
+(function () {
+ 'use strict';
+ var FLYERS = [
+ { angle: 'pocket', theme: 't-gold', eye: 'PAYS PERSON-TO-PERSON · ON POLYGON',
+ h: 'You Already Found the Money.',
+ pitch: 'The pocket change that slips through your fingers every week could be starting something instead. Scan for the 90-second look — no sign-up, no pressure, just the math.' },
+ { angle: 'two', theme: 't-teal', eye: 'A CRYPTO TEAM BUILD · POLYGON',
+ h: 'You Know Two People. That’s All This Takes.',
+ pitch: 'No big network. Nothing to sell. Get two, help them get theirs, and payments roll up to you on-chain as your team grows. Scan to see exactly how it works.' },
+ { angle: 'phone', theme: 't-blue', eye: 'ON-CHAIN · NO MIDDLEMAN',
+ h: 'Your Phone Could Start Paying You.',
+ pitch: 'The device in your hand is the only tool this needs. A public smart contract on Polygon pays people directly — no company holding the money. Scan and see for yourself.' },
+ { angle: 'graveyard', theme: 't-navy', eye: 'AUTONOMOUS · IMMUTABLE · POLYGON',
+ h: 'Tired of Side Hustles That Die?',
+ pitch: 'This one can’t be shut off. It runs on a public, immutable smart contract — no company, no owner who can pull the plug and take your momentum with them. Scan to look inside.' }
+ ];
+ var TABS = 8;
+
+ function getId() {
+ var q = new URLSearchParams(location.search).get('id');
+ if (q && /^\d{1,15}$/.test(q)) return q;
+ var inp = document.getElementById('flIdInput');
+ if (inp && /^\d{1,15}$/.test(inp.value)) return inp.value;
+ try { var s = localStorage.getItem('ctb.myId') || localStorage.getItem('rmc.toolsId'); if (s && /^\d{1,15}$/.test(s)) return s; } catch (e) {}
+ return '';
+ }
+ function qrSvg(url) {
+ try { var q = qrcode(0, 'M'); q.addData(url); q.make(); return q.createSvgTag({ cellSize: 4, margin: 2, scalable: true }); } catch (e) { return ''; }
+ }
+ function el(tag, cls, html) { var d = document.createElement(tag); if (cls) d.className = cls; if (html != null) d.innerHTML = html; return d; }
+
+ function build(id) {
+ var host = document.getElementById('flyers');
+ host.innerHTML = '';
+ var haveId = /^\d{1,15}$/.test(id);
+ var idLabel = haveId ? id : '____';
+ FLYERS.forEach(function (f) {
+ var url = 'https://rmcircle.team/join/' + (haveId ? id : '') + (f.angle ? '?v=' + f.angle : '');
+ var shortUrl = 'rmcircle.team/join/' + idLabel;
+ var card = el('div', 'fl ' + f.theme);
+ var pr = el('button', 'fl-print btn btn-teal btn-sm', '🖨 Print this flyer');
+ card.appendChild(pr);
+ card.appendChild(el('div', 'fl-hd', '
RM
' + f.eye + '
THE RM CIRCLE
'));
+ var body = el('div', 'fl-body',
+ '
' + f.h + '
' + f.pitch + '
' +
+ '
' + (haveId ? qrSvg(url) : '') + '
' +
+ '
Scan with your phone camera 📷' + shortUrl + 'Then take the 2-minute tour.
' +
+ '
Independent team resource. Participation takes real effort and involves cryptocurrency risk. No income is guaranteed. Learn more at rmcircle.team.
');
+ card.appendChild(body);
+ var tabs = el('div', 'fl-tabs');
+ for (var i = 0; i < TABS; i++) tabs.appendChild(el('div', 'fl-tab', '✂ ' + shortUrl));
+ card.appendChild(tabs);
+ pr.addEventListener('click', function () {
+ document.body.classList.add('print-one'); card.classList.add('printing');
+ window.print();
+ setTimeout(function () { document.body.classList.remove('print-one'); card.classList.remove('printing'); }, 400);
+ });
+ host.appendChild(card);
+ });
+ if (!haveId) {
+ var note = el('p', 'micro', 'Enter your member ID above to fill in your QR codes and links. (Blank flyers still print if you want to write the link by hand.)');
+ note.style.cssText = 'color:var(--gold);text-align:center;margin:-14px 0 20px';
+ host.insertBefore(note, host.firstChild);
+ }
+ }
+
+ var input = document.getElementById('flIdInput');
+ var initial = getId();
+ if (input && initial) input.value = initial;
+ build(initial);
+ if (input) input.addEventListener('input', function () {
+ var v = input.value.replace(/\D/g, '').slice(0, 15); input.value = v;
+ if (/^\d{1,15}$/.test(v)) { try { localStorage.setItem('rmc.toolsId', v); } catch (e) {} }
+ build(v);
+ });
+})();
diff --git a/public/my.html b/public/my.html
index 3395f88..52b07b7 100644
--- a/public/my.html
+++ b/public/my.html
@@ -22,7 +22,7 @@
Coach your team
The fastest way to grow your own income is helping the people below you take their next step. Here's who in your team could use a nudge today — updated live from the blockchain.
Messages 🔔 0
Wallet-verified messaging along your matrix lines — your upline and your team can reach you here, and you can reach them. No email needed; your wallet is your identity. Messages are member-to-member; the team admin can review them for abuse.
Loading…
Email me my alerts
Get an email the moment this position is paid, and when it needs an upgrade to catch incoming pay — so you never miss one. Opt in with your email; unsubscribe anytime.
Ready-made content to share with your invite link — no writing needed.
Just joined under this position?
Welcome to the team! Enter the new member ID the RM Circle dApp gave you — we'll verify it on the blockchain and let the team know you're in.
Payments received
Every payment your position has received, straight from the smart contract.
Your lineage
diff --git a/public/my.js b/public/my.js
index fae715d..0ad4918 100644
--- a/public/my.js
+++ b/public/my.js
@@ -116,6 +116,7 @@
document.querySelectorAll('a[href="/tools"]').forEach(function(a){a.href='/tools?id='+d.id;});
document.querySelectorAll('a[href="/fast-start"]').forEach(function(a){a.href='/fast-start?id='+d.id;});
document.querySelectorAll('a[href="/weekly-rhythm"]').forEach(function(a){a.href='/weekly-rhythm?id='+d.id;});
+ document.querySelectorAll('a[href="/flyers"]').forEach(function(a){a.href='/flyers?id='+d.id;});
const qb=document.getElementById('dQualified');
if(qb)qb.outerHTML=d.directCount>=2
?'★ Qualified'
diff --git a/public/tools.html b/public/tools.html
index 3e65843..00cf1bd 100644
--- a/public/tools.html
+++ b/public/tools.html
@@ -15,6 +15,7 @@
📣 Social posts✉️ Email swipes🖼️ Banners
+ 🪧 Printable flyers🏢 Official media💬 Objections
@@ -380,6 +381,10 @@ Watch the short training, look at the live payment feed, then ask me anything.
Graphic · NEW
The napkin — the whole Method in one image
Get your 2, help your 2 get theirs, teach them to do the same — sketched over coffee. Post it with your invite link; it starts more conversations than any banner.
+
🪧 Printable flyers
+
Old-school still works. Print these, put them up — coffee shops, gyms, community boards, church bulletin boards, laundromats — and let the QR do the talking. Four colorful designs, each with tear-off tabs and your personal QR + invite link baked in.
+
Belly-to-belly · NEW
Personalized flyers you can print & post
Enter your ID once and every flyer fills in with your QR code and link. Print in color for impact or black-and-white to save ink — the QR scans either way. Each page has tear-off tabs so people can grab your link and take it with them.
Provided by the RM Circle creators — ready-made social videos and graphics. Copy a link (or right-click to save), post it, and put your invite link in the caption or description so clicks land in your team.