| | <!DOCTYPE html> |
| | <html lang="en"> |
| | <head> |
| | <meta charset="UTF-8"> |
| | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | <title>GYNX TRADE | Global Wholesale & Retail Marketplace</title> |
| | |
| | |
| | <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> |
| | |
| | |
| | <link href="https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap" rel="stylesheet"> |
| |
|
| | <style> |
| | |
| | :root { |
| | --primary: #0f172a; |
| | --primary-light: #1e293b; |
| | --accent: #f59e0b; |
| | --accent-hover: #d97706; |
| | --bg-body: #f8fafc; |
| | --bg-card: #ffffff; |
| | --text-main: #334155; |
| | --text-light: #64748b; |
| | --success: #10b981; |
| | --danger: #ef4444; |
| | --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05); |
| | --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); |
| | --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); |
| | --radius: 12px; |
| | --nav-height: 70px; |
| | } |
| | |
| | * { |
| | margin: 0; |
| | padding: 0; |
| | box-sizing: border-box; |
| | font-family: 'Outfit', sans-serif; |
| | } |
| | |
| | body { |
| | background-color: var(--bg-body); |
| | color: var(--text-main); |
| | overflow-x: hidden; |
| | padding-top: var(--nav-height); |
| | } |
| | |
| | a { text-decoration: none; color: inherit; } |
| | ul { list-style: none; } |
| | button { cursor: pointer; border: none; outline: none; transition: all 0.3s ease; } |
| | |
| | |
| | header { |
| | position: fixed; |
| | top: 0; |
| | left: 0; |
| | width: 100%; |
| | height: var(--nav-height); |
| | background: rgba(255, 255, 255, 0.95); |
| | backdrop-filter: blur(10px); |
| | border-bottom: 1px solid #e2e8f0; |
| | z-index: 1000; |
| | display: flex; |
| | align-items: center; |
| | justify-content: space-between; |
| | padding: 0 5%; |
| | box-shadow: var(--shadow-sm); |
| | } |
| | |
| | .logo { |
| | font-size: 1.8rem; |
| | font-weight: 800; |
| | color: var(--primary); |
| | display: flex; |
| | align-items: center; |
| | gap: 10px; |
| | } |
| | |
| | .logo span { color: var(--accent); } |
| | |
| | .nav-links { |
| | display: flex; |
| | gap: 30px; |
| | } |
| | |
| | .nav-links a { |
| | font-weight: 500; |
| | color: var(--text-main); |
| | position: relative; |
| | } |
| | |
| | .nav-links a:hover, .nav-links a.active { |
| | color: var(--accent); |
| | } |
| | |
| | .nav-links a::after { |
| | content: ''; |
| | position: absolute; |
| | width: 0; |
| | height: 2px; |
| | bottom: -5px; |
| | left: 0; |
| | background-color: var(--accent); |
| | transition: width 0.3s; |
| | } |
| | |
| | .nav-links a:hover::after { width: 100%; } |
| | |
| | .user-actions { |
| | display: flex; |
| | align-items: center; |
| | gap: 15px; |
| | } |
| | |
| | .btn-primary { |
| | background-color: var(--accent); |
| | color: white; |
| | padding: 10px 24px; |
| | border-radius: 50px; |
| | font-weight: 600; |
| | display: flex; |
| | align-items: center; |
| | gap: 8px; |
| | } |
| | |
| | .btn-primary:hover { |
| | background-color: var(--accent-hover); |
| | transform: translateY(-2px); |
| | box-shadow: 0 4px 12px rgba(245, 158, 11, 0.4); |
| | } |
| | |
| | .btn-outline { |
| | border: 2px solid var(--primary); |
| | color: var(--primary); |
| | padding: 8px 20px; |
| | border-radius: 50px; |
| | font-weight: 600; |
| | background: transparent; |
| | } |
| | |
| | .btn-outline:hover { |
| | background: var(--primary); |
| | color: white; |
| | } |
| | |
| | .cart-icon { |
| | position: relative; |
| | font-size: 1.2rem; |
| | color: var(--primary); |
| | } |
| | |
| | .cart-badge { |
| | position: absolute; |
| | top: -8px; |
| | right: -8px; |
| | background: var(--danger); |
| | color: white; |
| | font-size: 0.7rem; |
| | width: 18px; |
| | height: 18px; |
| | border-radius: 50%; |
| | display: flex; |
| | align-items: center; |
| | justify-content: center; |
| | font-weight: bold; |
| | } |
| | |
| | |
| | .hero { |
| | position: relative; |
| | height: 500px; |
| | background: linear-gradient(135deg, var(--primary) 0%, #0f172a 100%); |
| | color: white; |
| | display: flex; |
| | align-items: center; |
| | padding: 0 5%; |
| | overflow: hidden; |
| | } |
| | |
| | .hero::before { |
| | content: ''; |
| | position: absolute; |
| | top: 0; left: 0; width: 100%; height: 100%; |
| | background: url('https://picsum.photos/seed/trade/1920/1080') center/cover no-repeat; |
| | opacity: 0.2; |
| | mix-blend-mode: overlay; |
| | } |
| | |
| | .hero-content { |
| | position: relative; |
| | z-index: 1; |
| | max-width: 600px; |
| | } |
| | |
| | .hero h1 { |
| | font-size: 3.5rem; |
| | line-height: 1.1; |
| | margin-bottom: 20px; |
| | font-weight: 800; |
| | } |
| | |
| | .hero p { |
| | font-size: 1.1rem; |
| | color: #cbd5e1; |
| | margin-bottom: 30px; |
| | line-height: 1.6; |
| | } |
| | |
| | .hero-stats { |
| | display: flex; |
| | gap: 40px; |
| | margin-top: 40px; |
| | border-top: 1px solid rgba(255,255,255,0.2); |
| | padding-top: 20px; |
| | } |
| | |
| | .stat h3 { font-size: 1.5rem; color: var(--accent); } |
| | .stat span { font-size: 0.9rem; color: #94a3b8; } |
| | |
| | |
| | .section-container { |
| | padding: 60px 5%; |
| | max-width: 1400px; |
| | margin: 0 auto; |
| | } |
| | |
| | .section-header { |
| | display: flex; |
| | justify-content: space-between; |
| | align-items: center; |
| | margin-bottom: 40px; |
| | flex-wrap: wrap; |
| | gap: 20px; |
| | } |
| | |
| | .section-title h2 { |
| | font-size: 2rem; |
| | color: var(--primary); |
| | margin-bottom: 10px; |
| | } |
| | |
| | .filters { |
| | display: flex; |
| | gap: 10px; |
| | background: white; |
| | padding: 5px; |
| | border-radius: 50px; |
| | box-shadow: var(--shadow-sm); |
| | } |
| | |
| | .filter-btn { |
| | padding: 8px 20px; |
| | border-radius: 40px; |
| | font-size: 0.9rem; |
| | font-weight: 500; |
| | color: var(--text-light); |
| | background: transparent; |
| | } |
| | |
| | .filter-btn.active { |
| | background: var(--primary); |
| | color: white; |
| | box-shadow: var(--shadow-sm); |
| | } |
| | |
| | |
| | .product-grid { |
| | display: grid; |
| | grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); |
| | gap: 30px; |
| | } |
| | |
| | .product-card { |
| | background: var(--bg-card); |
| | border-radius: var(--radius); |
| | overflow: hidden; |
| | box-shadow: var(--shadow-md); |
| | transition: all 0.3s ease; |
| | position: relative; |
| | display: flex; |
| | flex-direction: column; |
| | } |
| | |
| | .product-card:hover { |
| | transform: translateY(-10px); |
| | box-shadow: var(--shadow-lg); |
| | } |
| | |
| | .badge-ad { |
| | position: absolute; |
| | top: 15px; |
| | left: 15px; |
| | background: var(--accent); |
| | color: white; |
| | padding: 4px 10px; |
| | border-radius: 4px; |
| | font-size: 0.75rem; |
| | font-weight: 700; |
| | z-index: 10; |
| | box-shadow: 0 2px 4px rgba(0,0,0,0.2); |
| | } |
| | |
| | .badge-wholesale { |
| | position: absolute; |
| | top: 15px; |
| | right: 15px; |
| | background: var(--primary); |
| | color: white; |
| | padding: 4px 10px; |
| | border-radius: 4px; |
| | font-size: 0.75rem; |
| | font-weight: 700; |
| | z-index: 10; |
| | } |
| | |
| | .product-img { |
| | width: 100%; |
| | height: 200px; |
| | object-fit: cover; |
| | background: #e2e8f0; |
| | } |
| | |
| | .product-info { |
| | padding: 20px; |
| | flex-grow: 1; |
| | display: flex; |
| | flex-direction: column; |
| | } |
| | |
| | .product-category { |
| | font-size: 0.8rem; |
| | color: var(--text-light); |
| | text-transform: uppercase; |
| | letter-spacing: 1px; |
| | margin-bottom: 5px; |
| | } |
| | |
| | .product-title { |
| | font-size: 1.1rem; |
| | font-weight: 700; |
| | color: var(--primary); |
| | margin-bottom: 10px; |
| | line-height: 1.4; |
| | } |
| | |
| | .product-meta { |
| | display: flex; |
| | justify-content: space-between; |
| | align-items: center; |
| | margin-bottom: 15px; |
| | font-size: 0.9rem; |
| | color: var(--text-light); |
| | } |
| | |
| | .seller-info { |
| | display: flex; |
| | align-items: center; |
| | gap: 8px; |
| | } |
| | |
| | .seller-avatar { |
| | width: 24px; |
| | height: 24px; |
| | border-radius: 50%; |
| | } |
| | |
| | .price-row { |
| | margin-top: auto; |
| | display: flex; |
| | justify-content: space-between; |
| | align-items: center; |
| | padding-top: 15px; |
| | border-top: 1px solid #f1f5f9; |
| | } |
| | |
| | .price { |
| | font-size: 1.25rem; |
| | font-weight: 700; |
| | color: var(--primary); |
| | } |
| | |
| | .btn-buy { |
| | background: var(--primary); |
| | color: white; |
| | padding: 8px 16px; |
| | border-radius: 8px; |
| | font-size: 0.9rem; |
| | font-weight: 500; |
| | } |
| | |
| | .btn-buy:hover { |
| | background: var(--primary-light); |
| | } |
| | |
| | |
| | .bank-section { |
| | background: white; |
| | padding: 60px 5%; |
| | margin-top: 40px; |
| | border-top: 1px solid #e2e8f0; |
| | } |
| | |
| | .bank-grid { |
| | display: grid; |
| | grid-template-columns: 1fr 1fr; |
| | gap: 50px; |
| | max-width: 1200px; |
| | margin: 0 auto; |
| | align-items: center; |
| | } |
| | |
| | .bank-visual { |
| | background: linear-gradient(45deg, #f8fafc, #e2e8f0); |
| | border-radius: 20px; |
| | padding: 40px; |
| | text-align: center; |
| | position: relative; |
| | } |
| | |
| | .bank-card { |
| | background: linear-gradient(135deg, var(--primary) 0%, #1e293b 100%); |
| | color: white; |
| | width: 100%; |
| | max-width: 350px; |
| | margin: 30px auto; |
| | padding: 25px; |
| | border-radius: 15px; |
| | box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1); |
| | position: relative; |
| | overflow: hidden; |
| | } |
| | |
| | .bank-card::before { |
| | content: ''; |
| | position: absolute; |
| | top: -50%; |
| | left: -50%; |
| | width: 200%; |
| | height: 200%; |
| | background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 60%); |
| | animation: rotate 10s linear infinite; |
| | } |
| | |
| | @keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } |
| | |
| | .card-chip { |
| | width: 50px; |
| | height: 35px; |
| | background: linear-gradient(135deg, #fbbf24, #d97706); |
| | border-radius: 6px; |
| | margin-bottom: 20px; |
| | position: relative; |
| | z-index: 2; |
| | } |
| | |
| | .card-number { |
| | font-size: 1.2rem; |
| | letter-spacing: 3px; |
| | margin-bottom: 20px; |
| | position: relative; |
| | z-index: 2; |
| | font-family: monospace; |
| | } |
| | |
| | .card-details { |
| | display: flex; |
| | justify-content: space-between; |
| | font-size: 0.85rem; |
| | position: relative; |
| | z-index: 2; |
| | } |
| | |
| | .bank-features li { |
| | margin-bottom: 15px; |
| | display: flex; |
| | align-items: center; |
| | gap: 10px; |
| | font-size: 1.1rem; |
| | color: var(--text-main); |
| | } |
| | |
| | .bank-features i { color: var(--success); } |
| | |
| | |
| | footer { |
| | background: var(--primary); |
| | color: white; |
| | padding: 60px 5% 20px; |
| | } |
| | |
| | .footer-content { |
| | display: grid; |
| | grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); |
| | gap: 40px; |
| | max-width: 1200px; |
| | margin: 0 auto 40px; |
| | } |
| | |
| | .footer-col h4 { |
| | font-size: 1.2rem; |
| | margin-bottom: 20px; |
| | color: var(--accent); |
| | } |
| | |
| | .footer-col ul li { margin-bottom: 10px; } |
| | .footer-col ul li a { color: #94a3b8; transition: color 0.3s; } |
| | .footer-col ul li a:hover { color: white; } |
| | |
| | .copyright { |
| | text-align: center; |
| | padding-top: 20px; |
| | border-top: 1px solid rgba(255,255,255,0.1); |
| | color: #64748b; |
| | font-size: 0.9rem; |
| | } |
| | |
| | .built-with { |
| | color: var(--accent); |
| | font-weight: bold; |
| | } |
| | |
| | |
| | .modal-overlay { |
| | position: fixed; |
| | top: 0; left: 0; width: 100%; height: 100%; |
| | background: rgba(15, 23, 42, 0.8); |
| | backdrop-filter: blur(5px); |
| | z-index: 2000; |
| | display: flex; |
| | align-items: center; |
| | justify-content: center; |
| | opacity: 0; |
| | visibility: hidden; |
| | transition: all 0.3s ease; |
| | } |
| | |
| | .modal-overlay.active { |
| | opacity: 1; |
| | visibility: visible; |
| | } |
| | |
| | .modal { |
| | background: white; |
| | width: 90%; |
| | max-width: 500px; |
| | border-radius: 16px; |
| | padding: 30px; |
| | transform: translateY(20px); |
| | transition: transform 0.3s ease; |
| | position: relative; |
| | } |
| | |
| | .modal-overlay.active .modal { transform: translateY(0); } |
| | |
| | .modal-header { |
| | display: flex; |
| | justify-content: space-between; |
| | align-items: center; |
| | margin-bottom: 25px; |
| | } |
| | |
| | .close-modal { |
| | background: transparent; |
| | font-size: 1.5rem; |
| | color: var(--text-light); |
| | } |
| | |
| | .form-group { margin-bottom: 20px; } |
| | .form-group label { display: block; margin-bottom: 8px; font-weight: 500; font-size: 0.9rem; } |
| | .form-group input, .form-group select { |
| | width: 100%; |
| | padding: 12px; |
| | border: 1px solid #cbd5e1; |
| | border-radius: 8px; |
| | font-size: 1rem; |
| | transition: border-color 0.3s; |
| | } |
| | |
| | .form-group input:focus { border-color: var(--accent); outline: none; } |
| | |
| | .bank-logos { |
| | display: flex; |
| | gap: 10px; |
| | margin-top: 10px; |
| | } |
| | |
| | .bank-logo { |
| | flex: 1; |
| | height: 40px; |
| | background: #f1f5f9; |
| | border-radius: 6px; |
| | display: flex; |
| | align-items: center; |
| | justify-content: center; |
| | font-size: 0.8rem; |
| | font-weight: bold; |
| | color: var(--text-light); |
| | cursor: pointer; |
| | transition: background 0.2s; |
| | } |
| | |
| | .bank-logo:hover { background: #e2e8f0; } |
| | |
| | |
| | .toast-container { |
| | position: fixed; |
| | bottom: 20px; |
| | right: 20px; |
| | z-index: 3000; |
| | display: flex; |
| | flex-direction: column; |
| | gap: 10px; |
| | } |
| | |
| | .toast { |
| | background: white; |
| | padding: 15px 20px; |
| | border-radius: 8px; |
| | box-shadow: var(--shadow-lg); |
| | border-left: 5px solid var(--primary); |
| | display: flex; |
| | align-items: center; |
| | gap: 12px; |
| | min-width: 300px; |
| | animation: slideIn 0.3s ease; |
| | } |
| | |
| | .toast.success { border-left-color: var(--success); } |
| | .toast.error { border-left-color: var(--danger); } |
| | |
| | @keyframes slideIn { |
| | from { transform: translateX(100%); opacity: 0; } |
| | to { transform: translateX(0); opacity: 1; } |
| | } |
| | |
| | |
| | @media (max-width: 768px) { |
| | .hero h1 { font-size: 2.5rem; } |
| | .nav-links { display: none; } |
| | .bank-grid { grid-template-columns: 1fr; } |
| | .hero { height: auto; padding: 100px 5% 60px; } |
| | .hero-stats { flex-wrap: wrap; } |
| | } |
| | </style> |
| | </head> |
| | <body> |
| |
|
| | |
| | <header> |
| | <div class="logo"> |
| | <i class="fa-solid fa-earth-americas"></i> |
| | GYNX<span>TRADE</span> |
| | </div> |
| | <nav class="nav-links"> |
| | <a href="#" class="active">Home</a> |
| | <a href="#marketplace">Marketplace</a> |
| | <a href="#wholesale">Wholesale</a> |
| | <a href="#bank">Banking</a> |
| | </nav> |
| | <div class="user-actions"> |
| | <button class="cart-icon" onclick="showToast('Cart is currently empty', 'info')"> |
| | <i class="fa-solid fa-cart-shopping"></i> |
| | <span class="cart-badge" id="cart-count">0</span> |
| | </button> |
| | <button class="btn-outline" onclick="openModal('login')">Login</button> |
| | <button class="btn-primary" onclick="openModal('register')">Sell Now</button> |
| | </div> |
| | </header> |
| |
|
| | |
| | <section class="hero"> |
| | <div class="hero-content"> |
| | <h1>Connect Globally.<br>Trade Fairly.</h1> |
| | <p>The world's largest B2B & B2C marketplace integrated with a secure global banking system. From wholesaler to retailer, experience transparent trade.</p> |
| | <div style="display: flex; gap: 15px;"> |
| | <button class="btn-primary" onclick="scrollToMarket()">Explore Products</button> |
| | <button class="btn-outline" style="border-color: white; color: white;" onclick="openModal('register')">Start Selling</button> |
| | </div> |
| | <div class="hero-stats"> |
| | <div class="stat"> |
| | <h3>50k+</h3> |
| | <span>Global Sellers</span> |
| | </div> |
| | <div class="stat"> |
| | <h3>120+</h3> |
| | <span>Countries</span> |
| | </div> |
| | <div class="stat"> |
| | <h3>24/7</h3> |
| | <span>Banking Support</span> |
| | </div> |
| | </div> |
| | </div> |
| | </section> |
| |
|
| | |
| | <section id="marketplace" class="section-container"> |
| | <div class="section-header"> |
| | <div class="section-title"> |
| | <h2>Featured Products</h2> |
| | <p>Top-rated items advertised by verified sellers worldwide</p> |
| | </div> |
| | <div class="filters"> |
| | <button class="filter-btn active" onclick="filterProducts('all')">All</button> |
| | <button class="filter-btn" onclick="filterProducts('retail')">Retail</button> |
| | <button class="filter-btn" onclick="filterProducts('wholesale')">Wholesale</button> |
| | </div> |
| | </div> |
| |
|
| | <div class="product-grid" id="product-grid"> |
| | |
| | </div> |
| | </section> |
| |
|
| | |
| | <section id="bank" class="bank-section"> |
| | <div class="bank-grid"> |
| | <div class="bank-visual"> |
| | <h3 style="margin-bottom: 20px; color: var(--primary);">Integrated Banking System</h3> |
| | <p style="color: var(--text-light); margin-bottom: 30px;">Secure global transactions with instant verification and fair trade guarantees.</p> |
| | |
| | <div class="bank-card"> |
| | <div class="card-chip"></div> |
| | <div class="card-number">**** **** **** 4289</div> |
| | <div class="card-details"> |
| | <span>CARD HOLDER</span> |
| | <span>VALID THRU 12/28</span> |
| | </div> |
| | </div> |
| |
|
| | <div class="bank-logos"> |
| | <div class="bank-logo"><i class="fa-brands fa-cc-visa"></i> VISA</div> |
| | <div class="bank-logo"><i class="fa-brands fa-cc-mastercard"></i> MC</div> |
| | <div class="bank-logo"><i class="fa-solid fa-building-columns"></i> SWIFT</div> |
| | </div> |
| | </div> |
| | <div class="bank-content"> |
| | <h2 style="font-size: 2.2rem; color: var(--primary); margin-bottom: 20px;">Fair Transaction Guarantee</h2> |
| | <p style="margin-bottom: 30px; line-height: 1.6; color: var(--text-main);"> |
| | GYNX Trade integrates directly with global banking systems to ensure every transaction is secure. |
| | Our smart escrow system holds funds until you confirm receipt of goods, guaranteeing fair trade for everyone. |
| | </p> |
| | <ul class="bank-features"> |
| | <li><i class="fa-solid fa-shield-halved"></i> Bank-level SSL Encryption</li> |
| | <li><i class="fa-solid fa-clock"></i> Instant International Transfers</li> |
| | <li><i class="fa-solid fa-scale-balanced"></i> Smart Escrow Protection</li> |
| | <li><i class="fa-solid fa-file-contract"></i> Digital Contract Signing</li> |
| | </ul> |
| | </div> |
| | </div> |
| | </section> |
| |
|
| | |
| | <footer> |
| | <div class="footer-content"> |
| | <div class="footer-col"> |
| | <div class="logo" style="color: white; margin-bottom: 20px;"> |
| | <i class="fa-solid fa-earth-americas"></i> GYNX<span>TRADE</span> |
| | </div> |
| | <p style="color: #94a3b8; font-size: 0.9rem;"> |
| | The ultimate platform for global trade. Connecting wholesalers, retailers, and consumers with fair, secure banking solutions. |
| | </p> |
| | </div> |
| | <div class="footer-col"> |
| | <h4>Marketplace</h4> |
| | <ul> |
| | <li><a href="#">Electronics</a></li> |
| | <li><a href="#">Fashion</a></li> |
| | <li><a href="#">Home & Living</a></li> |
| | <li><a href="#">Industrial</a></li> |
| | </ul> |
| | </div> |
| | <div class="footer-col"> |
| | <h4>For Sellers</h4> |
| | <ul> |
| | <li><a href="#">Start Selling</a></li> |
| | <li><a href="#">Advertise Here</a></li> |
| | <li><a href="#">Pricing</a></li> |
| | <li><a href="#">Seller Dashboard</a></li> |
| | </ul> |
| | </div> |
| | <div class="footer-col"> |
| | <h4>Support</h4> |
| | <ul> |
| | <li><a href="#">Help Center</a></li> |
| | <li><a href="#">Banking Support</a></li> |
| | <li><a href="#">Terms of Service</a></li> |
| | <li><a href="#">Privacy Policy</a></li> |
| | </ul> |
| | </div> |
| | </div> |
| | <div class="copyright"> |
| | © 2023 GYNX TRADE Inc. All rights reserved. |
| | <br> |
| | Built with <a href="https://huggingface.co/spaces/akhaliq/anycoder" target="_blank" class="built-with">anycoder</a> |
| | </div> |
| | </footer> |
| |
|
| | |
| | <div class="modal-overlay" id="payment-modal"> |
| | <div class="modal"> |
| | <div class="modal-header"> |
| | <h3>Secure Global Payment</h3> |
| | <button class="close-modal" onclick="closeModal('payment-modal')">×</button> |
| | </div> |
| | <div class="form-group"> |
| | <label>Transaction Amount</label> |
| | <input type="text" id="pay-amount" value="$0.00" readonly style="background: #f1f5f9;"> |
| | </div> |
| | <div class="form-group"> |
| | <label>Select Bank / Method</label> |
| | <select id="bank-method"> |
| | <option value="swift">SWIFT Transfer (Global)</option> |
| | <option value="visa">Visa Card</option> |
| | <option value="master">MasterCard</option> |
| | </select> |
| | </div> |
| | <div class="form-group"> |
| | <label>Account Details (Simulation)</label> |
| | <input type="text" value="**** 4289" readonly style="background: #f1f5f9;"> |
| | </div> |
| | <button class="btn-primary" style="width: 100%; justify-content: center;" onclick="processPayment()"> |
| | <i class="fa-solid fa-lock"></i> Process Secure Transaction |
| | </button> |
| | <p style="text-align: center; font-size: 0.8rem; color: var(--text-light); margin-top: 15px;"> |
| | <i class="fa-solid fa-circle-check" style="color: var(--success);"></i> Bank Level Security |
| | </p> |
| | </div> |
| | </div> |
| |
|
| | |
| | <div class="toast-container" id="toast-container"></div> |
| |
|
| | <script> |
| | |
| | const products = [ |
| | { id: 1, title: "Premium Organic Coffee Beans", category: "Food & Beverage", price: 45.00, type: "retail", seller: "Global Roasters", image: "https://picsum.photos/seed/coffee/400/300", ad: true }, |
| | { id: 2, title: "Industrial CNC Machine", category: "Industrial", price: 12500.00, type: "wholesale", seller: "TechMachinery Ltd", image: "https://picsum.photos/seed/machine/400/300", ad: true }, |
| | { id: 3, title: "Handmade Silk Sarees", category: "Fashion", price: 120.00, type: "retail", seller: "India Crafts", image: "https://picsum.photos/seed/saree/400/300", ad: false }, |
| | { id: 4, title: "Bulk Cotton Fabric Roll", category: "Textile", price: 500.00, type: "wholesale", seller: "TextileWorld", image: "https://picsum.photos/seed/fabric/400/300", ad: true }, |
| | { id: 5, title: "Wireless Noise Cancelling Headphones", category: "Electronics", price: 299.00, type: "retail", seller: "AudioPro", image: "https://picsum.photos/seed/headphone/400/300", ad: false }, |
| | { id: 6, title: "Sustainable Bamboo Furniture", category: "Home", price: 850.00, type: "wholesale", seller: "EcoLiving", image: "https://picsum.photos/seed/furniture/400/300", ad: true }, |
| | { id: 7, title: "Organic Tea Sets", category: "Food & Beverage", price: 35.00, type: "retail", seller: "Zen Garden", image: "https://picsum.photos/seed/tea/400/300", ad: false }, |
| | { id: 8, title: "Automotive Parts Kit", category: "Industrial", price: 450.00, type: "wholesale", seller: "AutoParts Inc", image: "https://picsum.photos/seed/car/400/300", ad: false }, |
| | ]; |
| | |
| | let cartCount = 0; |
| | |
| | |
| | function renderProducts(filter = 'all') { |
| | const grid = document.getElementById('product-grid'); |
| | grid.innerHTML = ''; |
| | |
| | const filtered = filter === 'all' |
| | ? products |
| | : products.filter(p => p.type === filter); |
| | |
| | filtered.forEach(p => { |
| | const card = document.createElement('div'); |
| | card.className = 'product-card'; |
| | card.innerHTML = ` |
| | ${p.ad ? '<span class="badge-ad">FEATURED</span>' : ''} |
| | <span class="badge-wholesale">${p.type.toUpperCase()}</span> |
| | <img src="${p.image}" alt="${p.title}" class="product-img"> |
| | <div class="product-info"> |
| | <div class="product-category">${p.category}</div> |
| | <h3 class="product-title">${p.title}</h3> |
| | <div class="product-meta"> |
| | <div class="seller-info"> |
| | <img src="https://ui-avatars.com/api/?name=${p.seller}&background=random" class="seller-avatar" alt="${p.seller}"> |
| | <span>${p.seller}</span> |
| | </div> |
| | <span><i class="fa-solid fa-star" style="color: var(--accent);"></i> 4.8</span> |
| | </div> |
| | <div class="price-row"> |
| | <div class="price">$${p.price.toFixed(2)}</div> |
| | <button class="btn-buy" onclick="initiateBuy('${p.title}', ${p.price})"> |
| | <i class="fa-solid fa-cart-plus"></i> Buy |
| | </button> |
| | </div> |
| | </div> |
| | `; |
| | grid.appendChild(card); |
| | }); |
| | } |
| | |
| | |
| | function filterProducts(type) { |
| | |
| | document.querySelectorAll('.filter-btn').forEach(btn => btn.classList.remove('active')); |
| | event.target.classList.add('active'); |
| | renderProducts(type); |
| | } |
| | |
| | |
| | function initiateBuy(title, price) { |
| | document.getElementById('pay-amount').value = `$${price.toFixed(2)} (${title})`; |
| | openModal('payment-modal'); |
| | } |
| | |
| | function processPayment() { |
| | const btn = document.querySelector('#payment-modal .btn-primary'); |
| | const originalText = btn.innerHTML; |
| | |
| | |
| | btn.innerHTML = '<i class="fa-solid fa-circle-notch fa-spin"></i> Processing...'; |
| | btn.disabled = true; |
| | |
| | setTimeout(() => { |
| | closeModal('payment-modal'); |
| | btn.innerHTML = originalText; |
| | btn.disabled = false; |
| | |
| | |
| | cartCount++; |
| | document.getElementById('cart-count').innerText = cartCount; |
| | |
| | showToast('Transaction Successful! Item added to cart.', 'success'); |
| | }, 2000); |
| | } |
| | |
| | |
| | function openModal(type) { |
| | const modalId = type === 'payment-modal' ? 'payment-modal' : 'payment-modal'; |
| | document.getElementById(modalId).classList.add('active'); |
| | } |
| | |
| | function closeModal(id) { |
| | document.getElementById(id).classList.remove('active'); |
| | } |
| | |
| | |
| | document.querySelectorAll('.modal-overlay').forEach(overlay => { |
| | overlay.addEventListener('click', (e) => { |
| | if (e.target === overlay) { |
| | overlay.classList.remove('active'); |
| | } |
| | }); |
| | }); |
| | |
| | |
| | function showToast(message, type = 'info') { |
| | const container = document.getElementById('toast-container'); |
| | const toast = document.createElement('div'); |
| | toast.className = `toast ${type}`; |
| | |
| | let icon = 'fa-info-circle'; |
| | if (type === 'success') icon = 'fa-check-circle'; |
| | if (type === 'error') icon = 'fa-exclamation-circle'; |
| | |
| | toast.innerHTML = `<i class="fa-solid ${icon}"></i> <span>${message}</span>`; |
| | |
| | container.appendChild(toast); |
| | |
| | |
| | setTimeout(() => { |
| | toast.style.opacity = '0'; |
| | setTimeout(() => toast.remove(), 300); |
| | }, 3000); |
| | } |
| | |
| | |
| | function scrollToMarket() { |
| | document.getElementById('marketplace').scrollIntoView({ behavior: 'smooth' }); |
| | } |
| | |
| | |
| | document.addEventListener('DOMContentLoaded', () => { |
| | renderProducts(); |
| | }); |
| | |
| | </script> |
| | </body> |
| | </html> |