// Question banks for Cyber Arcade. Original parody brand names used.

const PHISH_BANK = [
  // PHISH
  { type: 'phish', kind: 'Text', body: 'Congratulations! You won a free PixelPhone 15. Click: bit.ly/win-now', why: 'Random prizes from unknown numbers = bait.' },
  { type: 'phish', kind: 'Email', body: 'Your RoBlocks account will be deleted in 24 hrs. Verify: roblocks-verify.net', why: 'Real RoBlocks lives on roblocks.com — never .net lookalikes.' },
  { type: 'phish', kind: 'DM', body: 'hey it\'s me your cousin! lost my phone, send me $20 on PayPay 🙏', why: 'Family money emergencies via DM are a classic scam.' },
  { type: 'phish', kind: 'Text', body: 'URGENT: Parcel held at customs. Pay $3.50: aus-post-delivery.co', why: 'Fake delivery fees with .co domains — not the real postal service.' },
  { type: 'phish', kind: 'Email', body: 'PixelFlix payment failed. Update card: pixelflix-billing-update.com', why: 'Streaming services don\'t ask for cards via random links.' },
  { type: 'phish', kind: 'DM', body: 'you looked cute in your profile pic, what school do you go to? 😊', why: 'Strangers asking which school you go to = huge red flag.' },
  { type: 'phish', kind: 'Email', body: '$500 RiverShop gift card waiting: riv3rshop-rewards.shop', why: 'Numbers swapped for letters in the domain. Always fake.' },
  { type: 'phish', kind: 'Text', body: 'Mum here, lost my phone. Send the wifi password', why: 'Mum already knows the wifi. Verify by calling.' },
  { type: 'phish', kind: 'DM', body: 'psst wanna free V-Coins? give me your BattleRoyale login', why: 'Account credentials for free in-game money — never real.' },
  { type: 'phish', kind: 'Email', body: 'Microsift account hacked. Confirm at microsift-secure.info', why: 'Misspelled brand + .info domain = textbook phish.' },
  { type: 'phish', kind: 'Text', body: 'TaxOffice: You\'re owed $847 refund. Claim: taxoffice-refund.au.co', why: 'Tax offices don\'t text refund links.' },
  { type: 'phish', kind: 'DM', body: 'I\'m a modelling agent. Send a photo in your school uniform 😊', why: 'No real agent asks kids for uniform photos. Block and tell an adult.' },
  { type: 'phish', kind: 'Email', body: 'Photogram copyright violation. Verify in 24hrs or account deleted', why: 'Urgency + 24hr countdown is the scammer\'s favourite trick.' },
  { type: 'phish', kind: 'Text', body: 'Hi sweetie it\'s grandma\'s new number, can you send my address?', why: 'Real grandma already knows your address.' },
  { type: 'phish', kind: 'Pop-up', body: 'WARNING! 5 viruses detected. Call NOW: 1800-FAKE-FIX', why: 'Browser pop-ups can\'t scan for viruses. Close and ignore.' },
  // LEGIT
  { type: 'legit', kind: 'Text from Mum', body: 'Pick up bread on your way home pls', why: 'Normal mum text. No links, no urgency.' },
  { type: 'legit', kind: 'Notification', body: 'Your Soundwave Wrapped is ready', why: 'Standard yearly app feature, lives inside the app.' },
  { type: 'legit', kind: 'Email', body: 'Pear ID signed in on new laptop. Secure at pearid.pear.com if not you', why: 'Genuine login alert from the company\'s real domain.' },
  { type: 'legit', kind: 'Notification', body: 'Your friend HazzaB invited you to a BattleRoyale party', why: 'Normal in-game invite from a friend you know.' },
  { type: 'legit', kind: 'Email', body: 'School report available in parent portal', why: 'School portals are expected and don\'t ask for passwords.' },
  { type: 'legit', kind: 'Text', body: 'Hey it\'s Sam from maths class, can you send the homework page?', why: 'Real classmate, real ask, no links.' },
  { type: 'legit', kind: 'Notification', body: 'TubeStream: New video from a channel you subscribed to', why: 'Standard app notification.' },
  { type: 'legit', kind: 'Email', body: 'Order #4471 shipped. Track at parcelco.com.au', why: 'Real tracking, real domain you ordered from.' },
  { type: 'legit', kind: 'Text from Dad', body: 'Running late, dinner at 7', why: 'No links, no urgency, no money. Just dad.' },
  { type: 'legit', kind: 'Notification', body: 'Lingobird: Don\'t lose your streak! 🔥', why: 'In-app reminder. No clicking out required.' },
  { type: 'legit', kind: 'Email', body: 'Gym membership renews next month', why: 'Normal scheduled-billing reminder.' },
  { type: 'legit', kind: 'Text', body: 'Library reminder: Book due Friday', why: 'Library reminders never ask for payment or login.' },
  { type: 'legit', kind: 'Notification', body: 'RunTrack: Your friend Tom just finished a run', why: 'Normal friend-activity notification.' },
  { type: 'legit', kind: 'Email', body: 'Your weekly photo memories are ready', why: 'Standard app digest from a service you use.' },
  { type: 'legit', kind: 'Text from Coach', body: 'Training cancelled tomorrow', why: 'Coach you know, no links, no money.' }
];

const RED_FLAG_BANK = [
  { type: 'flag', body: "what's your address? wanna send you a present 🎁" },
  { type: 'flag', body: "don't tell your parents about us, it's our secret" },
  { type: 'flag', body: "you're so mature for 12, way smarter than other kids" },
  { type: 'flag', body: "send me a photo without your shirt and I'll send you coins" },
  { type: 'flag', body: "let's move to a different app, my parents check this one" },
  { type: 'flag', body: "what school do you go to? I might know someone there" },
  { type: 'flag', body: "you home alone today? 👀" },
  { type: 'flag', body: "I'm 13 too! what's your phone number? text me" },
  { type: 'flag', body: "if you really trusted me you'd send a pic" },
  { type: 'flag', body: "I'll buy you a console if you keep this private" },
  { type: 'flag', body: "are your parents around right now?" },
  { type: 'flag', body: "send me your password and I'll boost your account for free" },
  { type: 'flag', body: "let's video chat, just turn the camera on for a sec" },
  { type: 'flag', body: "i'll be your gf/bf if you send a pic 😘" },
  { type: 'flag', body: "what's your real name and what year are you in?" },
  { type: 'safe', body: "gg that was a sick game" },
  { type: 'safe', body: "wanna play another round?" },
  { type: 'safe', body: "lol you camped me so bad" },
  { type: 'safe', body: "add me on the team for tomorrow's match" },
  { type: 'safe', body: "anyone got tips for the boss fight?" },
  { type: 'safe', body: "I'm logging off, school tomorrow" },
  { type: 'safe', body: "lag is crazy tonight" },
  { type: 'safe', body: "what skin is that? looks fire" },
  { type: 'safe', body: "anyone wanna squad up?" },
  { type: 'safe', body: "good luck in the tournament!" },
  { type: 'safe', body: "did you see the new update?" },
  { type: 'safe', body: "rematch?" },
  { type: 'safe', body: "thx for the assist" },
  { type: 'safe', body: "this map is so confusing lol" },
  { type: 'safe', body: "gtg dinner, bbl" }
];

const PRIVACY_BANK = [
  { type: 'dont', caption: 'First day at Westfield High!', tags: ['school logo visible', 'uniform on'], why: 'School name + uniform = anyone can find you.' },
  { type: 'dont', caption: 'Look what I got for my bday 💳', tags: ['debit card visible'], why: 'Card numbers visible = drained account.' },
  { type: 'dont', caption: 'Home alone all weekend, parents in Bali!', tags: ['announces empty house'], why: 'Tells strangers no adults are home.' },
  { type: 'dont', caption: 'Just turned 12 today!! 🎂 — Lily Anderson', tags: ['full name', 'exact age'], why: 'Full name + age helps profile-builders.' },
  { type: 'dont', caption: 'morning walk to school 🚶\u200d♀️', tags: ['street sign readable', 'routine'], why: 'Same time, same route, readable sign = trackable.' },
  { type: 'dont', caption: 'New locker setup ✨', tags: ['locker combo on note'], why: 'Combo on a sticky note in frame. Anyone can see it.' },
  { type: 'dont', caption: 'pj sunday 💤', tags: ['address frame on wall'], why: 'House number visible behind you.' },
  { type: 'dont', caption: 'school ID glow up', tags: ['school ID card'], why: 'Card shows full name, school, and student number.' },
  { type: 'dont', caption: 'DM for my Snap → @Lily.Anderson.2013', tags: ['username = real name + birth year'], why: 'Username gives away identity + age.' },
  { type: 'dont', caption: 'netball training every Tuesday at 5 ⚡', tags: ['fixed schedule'], why: 'Predictable schedule + location.' },
  { type: 'dont', caption: 'driveway selfie 🚗', tags: ['house number visible'], why: 'House number + car plate visible.' },
  { type: 'dont', caption: 'phone tour 📱', tags: ['contacts list visible'], why: 'Friends\' numbers visible to the whole internet.' },
  { type: 'dont', caption: 'bus pass loaded ✅', tags: ['name + school on pass'], why: 'Bus pass shows full name and school.' },
  { type: 'dont', caption: 'street art near my place', tags: ['readable street sign'], why: 'Tags your suburb to the post.' },
  { type: 'dont', caption: 'check my new uniform 💕', tags: ['school crest large'], why: 'Crest identifies your exact school.' },
  { type: 'safe', caption: 'concert vibes 🎶', tags: ['public venue, no ID info'], why: 'No identifying info, public space.' },
  { type: 'safe', caption: 'ramen night 🍜', tags: ['plain meal photo'], why: 'No school, no address, no full name.' },
  { type: 'safe', caption: 'art block ✏️', tags: ['drawing only'], why: 'Just artwork, no personal info.' },
  { type: 'safe', caption: 'meet biscuit 🐶', tags: ['pet, neutral background'], why: 'Pet photo, no identifying details.' },
  { type: 'safe', caption: 'GOOOOAL 🥅', tags: ['face only, no school logo'], why: 'No school crest, no uniform, no location tag.' },
  { type: 'safe', caption: 'today\'s sky', tags: ['sunset photo'], why: 'Generic landscape, zero personal info.' },
  { type: 'safe', caption: 'mood', tags: ['meme'], why: 'It\'s a meme, no info shared.' },
  { type: 'safe', caption: 'big rock big day', tags: ['famous landmark, plain clothes'], why: 'Public landmark, nothing identifying.' },
  { type: 'safe', caption: 'squad 💚', tags: ['plain clothes, generic park'], why: 'No uniforms, no signs, no captions tagging school.' },
  { type: 'safe', caption: 'finally beat the boss 🎮', tags: ['game screenshot only'], why: 'Just a game screenshot, no real-life info.' }
];

const LINK_BANK = [
  { type: 'dodgy', display: 'paypay.com', real: 'paypay-secure.co/login', why: 'Look-alike domain — real site never uses .co for login.' },
  { type: 'dodgy', display: 'rivershop.com', real: 'r1vershop-rewards.shop', why: 'Number 1 instead of i — and .shop instead of .com.' },
  { type: 'dodgy', display: 'pixelflix.com', real: 'pixelflix-billing-update.com', why: 'Extra hyphens and "update" tacked on — fake.' },
  { type: 'dodgy', display: 'roblocks.com', real: 'roblocks-verify.net', why: 'Real site is .com, never .net "verify" pages.' },
  { type: 'dodgy', display: 'microsift.com', real: 'micr0sift-secure.info', why: 'Zero for o, plus .info — never legit.' },
  { type: 'dodgy', display: 'photogram help', real: 'photogram-help.support', why: 'Made-up "support" subdomain. Real help lives on the main site.' },
  { type: 'dodgy', display: 'pear id locked', real: 'pear-id-locked.com', why: 'Real Pear uses pearid.pear.com, never standalone .com lockouts.' },
  { type: 'dodgy', display: 'tubestream.com sign-in', real: 'tubestream.com.signin-verify.co', why: 'Subdomain trick — the actual domain is signin-verify.co.' },
  { type: 'dodgy', display: 'free V-coins', real: 'battleroyale-vcoins-free.shop', why: 'Free in-game currency = always a scam.' },
  { type: 'dodgy', display: 'photogram followers', real: 'photogram-followers.win', why: '.win domain selling followers — fake.' },
  { type: 'dodgy', display: 'soundwave premium', real: 'soundwave-premium.gift', why: 'Wrong domain ending. Real Soundwave is .com.' },
  { type: 'dodgy', display: 'snapcam recovery', real: 'snapcam-recovery.help', why: 'Made-up recovery domain.' },
  { type: 'dodgy', display: 'free chat boost', real: 'discchat-nitro-free.gg', why: 'Anything offering "free premium" is fake.' },
  { type: 'dodgy', display: 'google security', real: 'g00gle-account-warning.com', why: 'Zeros instead of o\'s. Classic phish.' },
  { type: 'dodgy', display: 'buyback refund', real: 'buyback-refund-claim.co.uk', why: 'Wrong region, fake refund flow.' },
  { type: 'safe', display: 'paypay.com', real: 'paypay.com', why: 'Real domain, no funny business.' },
  { type: 'safe', display: 'rivershop.com.au', real: 'rivershop.com.au', why: 'Real Australian site.' },
  { type: 'safe', display: 'pixelflix.com', real: 'pixelflix.com', why: 'Real streaming domain.' },
  { type: 'safe', display: 'roblocks.com', real: 'roblocks.com', why: 'Real game site.' },
  { type: 'safe', display: 'microsift.com', real: 'microsift.com', why: 'Real software company domain.' },
  { type: 'safe', display: 'photogram.com', real: 'photogram.com', why: 'Real social app domain.' },
  { type: 'safe', display: 'pearid.pear.com', real: 'pearid.pear.com', why: 'Real Pear ID login.' },
  { type: 'safe', display: 'tubestream.com', real: 'tubestream.com', why: 'Real video site.' },
  { type: 'safe', display: 'battleroyale.com', real: 'battleroyale.com', why: 'Real game domain.' },
  { type: 'safe', display: 'snapcam.com', real: 'snapcam.com', why: 'Real chat app domain.' }
];

const WHY_IT_MATTERS = [
  { id: 1, title: 'PHISH OR LEGIT', text: '90% of cyber attacks start with a fake message. Spot one in 3 seconds and you\'ve already won.' },
  { id: 2, title: 'PASSWORD SMASH', text: 'A weak password takes 2 seconds to crack. A strong one takes 200 years. Big difference.' },
  { id: 3, title: 'RED FLAG RUSH', text: 'Predators in games and chats use the same tricks every time. Once you spot the pattern, they can\'t fool you.' },
  { id: 4, title: 'PRIVACY DEFENDER', text: 'Every post is a clue. Strangers stitch them together. Less info posted = less risk.' },
  { id: 5, title: 'LINK INSPECTOR', text: 'Real links and fake links look almost identical. The difference is one letter, and that one letter steals your account.' },
  { id: 6, title: 'TWO-FACTOR HERO', text: 'Even if hackers steal your password, two-factor authentication blocks 99% of attacks. It\'s the second lock on your door.' }
];

window.PHISH_BANK = PHISH_BANK;
window.RED_FLAG_BANK = RED_FLAG_BANK;
window.PRIVACY_BANK = PRIVACY_BANK;
window.LINK_BANK = LINK_BANK;
window.WHY_IT_MATTERS = WHY_IT_MATTERS;
