PageSourceSearch

https://traffictot.com/assets/index.20260815092527.js

js traffictot.com collected 2026-09-29 07:33:45 UTC 258,439 bytes, 423 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TrafficDashboard.20260815092527.js","assets/rolldown-runtime.20260815092527.js","assets/vendor-router.20260815092527.js","assets/vendor-charts.20260815092527.js","assets/vendor-icons.20260815092527.js","assets/vendor-react.20260815092527.js","assets/vendor-misc.20260815092527.js","assets/SkeletonLoader.20260815092527.js","assets/api.20260815092527.js","assets/CreateCampaign.20260815092527.js","assets/Breadcrumb.20260815092527.js","assets/CampaignList.20260815092527.js","assets/exportExcel.20260815092527.js","assets/TrafficTracking.20260815092527.js","assets/Deposit.20260815092527.js","assets/TransactionHistory.20260815092527.js","assets/UserProfileAndAccountSettings.20260815092527.js","assets/ScriptGenerator.20260815092527.js","assets/UserPricing.20260815092527.js","assets/UserReferral.20260815092527.js","assets/BuyerSupport.20260815092527.js","assets/BuyerApi.20260815092527.js","assets/AgencyDashboard.20260815092527.js","assets/MemberDashboard.20260815092527.js","assets/AllLinks.20260815092527.js","assets/HiddenLinks.20260815092527.js","assets/DailyEarnings.20260815092527.js","assets/Withdraw.20260815092527.js","assets/WorkerTransactions.20260815092527.js","assets/WorkerPricing.20260815092527.js","assets/WorkerProfile.20260815092527.js","assets/WorkerSupport.20260815092527.js","assets/WorkerApi.20260815092527.js","assets/WorkerShortLinks.20260815092527.js","assets/AdminLayout.20260815092527.js","assets/AdminDashboard.20260815092527.js","assets/AdminUsers.20260815092527.js","assets/AdminCampaigns.20260815092527.js","assets/AdminTransactions.20260815092527.js","assets/AdminTickets.20260815092527.js","assets/AdminPricing.20260815092527.js","assets/AdminSettings.20260815092527.js","assets/AdminSecurity.20260815092527.js","assets/AdminReferrals.20260815092527.js","assets/AdminWorkerTasks.20260815092527.js","assets/AdminWorkerWithdrawals.20260815092527.js","assets/AdminPricingGroups.20260815092527.js","assets/AdminConfig.20260815092527.js","assets/AdminWithdrawalAddresses.20260815092527.js","assets/AdminSourceApproval.20260815092527.js","assets/AdminWorkerLinks.20260815092527.js","assets/AdminBlog.20260815092527.js","assets/AgencyAdminLayout.20260815092527.js","assets/AgencyAdminDashboard.20260815092527.js","assets/AgencyAdminBuyers.20260815092527.js","assets/AgencyAdminCampaigns.20260815092527.js","assets/AgencyAdminTransactions.20260815092527.js","assets/AgencyAdminTickets.20260815092527.js","assets/AgencyAdminPricing.20260815092527.js","assets/AgencyAdminConfig.20260815092527.js","assets/AgencyAdminSettings.20260815092527.js"])))=>i.map(i=>d[i]);
2import{r as e}from"./rolldown-runtime.20260815092527.js";import{g as t}from"./vendor-charts.20260815092527.js";import"./vendor-misc.20260815092527.js";import{n,t as r}from"./vendor-react.20260815092527.js";import{a as i,c as a,d as o,f as s,i as c,l,n as u,o as d,r as f,s as p,t as m,u as h}from"./vendor-router.20260815092527.js";import{$ as g,$t as _,B as v,Bt as y,C as b,Cn as x,Ct as S,D as ee,E as te,Et as C,F as w,Fn as ne,Ft as re,G as ie,Gt as ae,In as T,Jt as oe,Kt as se,L as ce,N as E,Nn as D,Nt as le,O,On as ue,P as de,Pn as fe,Pt as pe,Qt as me,R as k,Rn as he,S as A,T as j,Ut as ge,V as M,W as _e,a as N,an as ve,at as ye,bn as P,bt as be,c as F,cn as xe,dt as Se,en as Ce,ft as we,g as I,gn as L,gt as R,h as Te,ht as z,in as Ee,jn as De,jt as Oe,k as ke,mn as Ae,mt as B,n as V,o as je,on as Me,pt as Ne,qt as Pe,r as Fe,rn as Ie,s as Le,sn as Re,st as ze,t as Be,un as H,vn as U,vt as W,wt as Ve,xn as He,xt as Ue,yn as We,yt as Ge,zt as Ke}from"./vendor-icons.20260815092527.js";import{a as qe,i as Je,r as Ye,t as G}from"./api.20260815092527.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Xe=n(),K=e(t(),1),q=r(),Ze=[{label:`Trang chủ`,to:`/`},{label:`Dịch vụ`,to:`/dich-vu`},{label:`Bảng giá`,to:`/bang-gia`},{label:`FAQ`,to:`/faq`},{label:`Blog`,to:`/blog`},{label:`Liên hệ`,to:`/lien-he`}];function Qe(){let[e,t]=(0,K.useState)(!1),n=qe(),r=Je(),i=r?r.role===`admin`?`/admin`:r.role===`worker`||r.service_type===`shortlink`?`/worker/dashboard`:`/buyer/dashboard`:`/buyer/dashboard`;return(0,q.jsxs)(`nav`,{className:`sticky top-0 z-50 bg-gray-50 border-b border-gray-200/80 shadow-sm`,children:[(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4 flex items-center justify-between`,children:[(0,q.jsx)(u,{to:`/`,className:`flex items-center gap-1.5 shrink-0`,children:(0,q.jsx)(`img`,{src:`/traffic68_com.gif`,alt:`traffic68.com`,className:`h-10 sm:h-12 w-auto object-contain`,style:{maxWidth:`180px`}})}),(0,q.jsx)(`div`,{className:`hidden lg:flex items-center gap-8`,children:Ze.map(({label:e,to:t})=>(0,q.jsx)(f,{to:t,end:t===`/`,className:({isActive:e})=>`text-[13.5px] font-medium relative nav-link transition-colors duration-200 ${e?`text-blue-700`:`text-slate-600 hover:text-blue-700`}`,children:e},t))}),(0,q.jsx)(`div`,{className:`hidden lg:flex items-center gap-1`,children:n?(0,q.jsxs)(u,{to:i,className:`flex items-center gap-2 bg-orange-500 hover:bg-orange-600 text-white text-sm font-bold px-5 py-2 rounded-md shadow transition-colors`,children:[(0,q.jsx)(C,{className:`w-4 h-4`}),`Dashboard`]}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(u,{to:`/dang-nhap`,className:`text-[13px] font-semibold text-slate-500 hover:text-blue-700 transition-colors px-2`,children:`Đăng nhập`}),(0,q.jsx)(`span`,{className:`text-gray-300 text-sm`,children:`/`}),(0,q.jsx)(u,{to:`/dang-ky`,className:`text-[13px] font-semibold text-slate-500 hover:text-blue-700 transition-colors px-2`,children:`Đăng ký`}),(0,q.jsx)(u,{to:`/dang-ky`,id:`nav-cta-btn`,className:`orange-btn text-white text-sm font-bold px-6 py-2 rounded-md shadow ml-3`,children:`NHẬN TƯ VẤN NGAY`})]})}),(0,q.jsx)(`button`,{onClick:()=>t(!e),className:`lg:hidden p-2 rounded-xl text-slate-600 hover:bg-gray-100 transition-colors`,children:e?(0,q.
2jsx)(V,{className:`w-5 h-5`}):(0,q.jsx)(we,{className:`w-5 h-5`})})]}),e&&(0,q.jsxs)(`div`,{className:`lg:hidden bg-white border-t border-gray-100 px-4 pb-5 pt-3 space-y-1`,children:[Ze.map(({label:e,to:n})=>(0,q.jsxs)(f,{to:n,end:n===`/`,onClick:()=>t(!1),className:({isActive:e})=>`flex items-center justify-between py-2.5 px-2 text-sm font-medium rounded-lg transition-colors ${e?`text-blue-700 bg-blue-50`:`text-slate-600 hover:text-blue-700 hover:bg-gray-50`}`,children:[e,(0,q.jsx)(U,{className:`w-4 h-4 text-gray-400`})]},n)),(0,q.jsx)(`div`,{className:`pt-3 space-y-2 border-t border-gray-100 mt-2`,children:n?(0,q.jsxs)(u,{to:i,onClick:()=>t(!1),className:`flex items-center justify-center gap-2 w-full orange-btn text-white text-sm font-bold px-5 py-3 rounded-xl text-center shadow-md`,children:[(0,q.jsx)(C,{className:`w-4 h-4`}),`Dashboard`]}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`div`,{className:`flex gap-3`,children:[(0,q.jsx)(u,{to:`/dang-nhap`,onClick:()=>t(!1),className:`flex-1 text-center text-sm font-medium text-slate-600 border border-gray-200 py-2.5 rounded-xl hover:border-orange-400 transition-colors`,children:`Đăng nhập`}),(0,q.jsx)(u,{to:`/dang-ky`,onClick:()=>t(!1),className:`flex-1 text-center text-sm font-medium text-slate-600 border border-gray-200 py-2.5 rounded-xl hover:border-orange-400 transition-colors`,children:`Đăng ký`})]}),(0,q.jsx)(u,{to:`/dang-ky`,onClick:()=>t(!1),className:`block orange-btn text-white text-sm font-bold px-5 py-3 rounded-xl text-center shadow-md`,children:`NHẬN TƯ VẤN NGAY`})]})})]})]})}var $e=[{icon:H,label:`100% Traffic User Thật`,color:`text-emerald-400`},{icon:B,label:`Cam Kết Hoàn Tiền`,color:`text-yellow-400`},{icon:W,label:`An Toàn SEO`,color:`text-sky-400`},{icon:b,label:`Tăng CRO`,color:`text-orange-400`}],et=[{label:`Organic Search`,val:62,color:`#10b981`},{label:`Direct`,val:24,color:`#3b82f6`},{label:`Social Media`,val:14,color:`#f97316`}];function tt(){return(0,q.jsx)(`section`,{id:`trang-chu`,className:`hero-bg min-h-screen pt-[66px] flex items-center`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 w-full py-16 lg:py-20 relative z-10`,children:[(0,q.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-2 gap-12 xl:gap-16 items-center`,children:[(0,q.jsxs)(`div`,{className:`fade-in-up order-2 lg:order-1`,children:[(0,q.jsxs)(`h1`,{className:`text-3xl sm:text-4xl lg:text-[2.65rem] xl:text-5xl font-black text-white leading-tight mb-6 uppercase`,children:[`Nâng Tầm Website Với`,(0,q.jsx)(`br`,{}),(0,q.jsx)(`span`,{className:`text-[#f97316]`,children:`Traffic User`}),` Chất Lượng`,(0,q.jsx)(`br`,{}),(0,q.jsx)(`span`,{className:`text-sky-300`,children:`— Tăng Trưởng Bền Vững`})]}),(0,q.jsx)(`p`,{className:`text-base sm:text-lg text-white/70 mb-9 leading-relaxed max-w-lg`,children:`Giải pháp Traffic User thực từ người dùng thật tại Việt Nam, cam kết hiệu quả SEO và chuyển đổi, an toàn 100%.`}),(0,q.jsxs)(`div`,{className:`flex flex-wrap gap-4 mb-10`,children:[(0,q.jsxs)(`a`,{href:`#`,id:`hero-cta-btn`,className:`orange-btn text-white text-base font-black px-9 py-4 rounded-2xl shadow-xl flex items-center gap-2.5`,children:[(0,q.jsx)(_e,{className:`w-5 h-5`}),`NHẬN TƯ VẤN NGAY`]}),(0,q.jsxs)(`a`,{href:`#`,className:`bg-white/10 hover:bg-white/20 border border-white/25 text-white text-base font-semibold px-7 py-4 rounded-2xl transition-all flex items-center gap-2`,children:[(0,q.jsx)(I,{className:`w-5 h-5 text-orange-400`}),`Xem Demo miễn phí`]})]}),(0,q.jsx)(`div`,{className:`grid grid-cols-3 gap-3`,children:[{val:`10K+`,label:`Khách hàng tin dùng`},{val:`+500%`,label:`Tăng traffic trung bình`},{val:`99%`,label:`Tỷ lệ thành công`}].map(e=>(0,q.jsxs)(`div`,{className:`bg-white/8 border border-white/15 rounded-xl p-3.5 backdrop-blur-sm text-center`,children:[(0,q.jsx)(`p`,{className:`text-xl sm:text-2xl font-black text-[#f97316]`,children:e.val}),(0,q.jsx)(`p`,{className:`text-[11px] text-white/55 mt-0.5 leading-snug`,children:e.label})]},e.label))})]}),(0,q.jsxs)(`div`,{className:`relative order-1 lg:order-2 flex justify-center`,children:[(0,q.jsxs)(`div`,{className:`float-anim relative`,children:[(0,q.jsx)(`img`,{src:`/hero-illustration.png`,alt:`Chuyên gia traffic68.com với biểu đồ tăng trưởng`,className:`w-full max-w-md xl:max-w-lg rounded-3xl object-cover shadow-2xl`,style:{filter:`drop-shadow(0 30px 60px rgba(249,115,22,0.2))`},width:`512`,height:`512`,loading:`eager`,fetchpriority:`high`}),(0,q.jsxs)(`div`,{className:`absolute -bottom-6 -left-6 sm:-left-10 bg-[#0f1e4a] border border-white/15 rounded-2xl p-4 shadow-2xl backdrop-blur-xl w-52 sm:w-60`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2 mb-3`,children:[(0,q.jsx)(Ke,{className:`w-4 h-4 text-sky-400`}),(0,q.jsx)(`span`,{className:`text-xs font-bold text-white tracking-wider up
2percase`,children:`Traffic Sources`}),(0,q.jsx)(`span`,{className:`ml-auto text-[10px] font-medium text-emerald-400 bg-emerald-400/15 px-1.5 py-0.5 rounded-full`,children:`LIVE`})]}),et.map(({label:e,val:t,color:n})=>(0,q.jsxs)(`div`,{className:`mb-2`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between mb-1`,children:[(0,q.jsx)(`span`,{className:`text-[11px] text-white/65`,children:e}),(0,q.jsxs)(`span`,{className:`text-[11px] font-bold text-white`,children:[t,`%`]})]}),(0,q.jsx)(`div`,{className:`h-1.5 bg-white/10 rounded-full overflow-hidden`,children:(0,q.jsx)(`div`,{className:`h-full rounded-full`,style:{width:`${t}%`,background:n}})})]},e)),(0,q.jsx)(`p`,{className:`mt-2.5 text-[10px] text-white/40`,children:`Cập nhật: vừa xong`})]}),(0,q.jsxs)(`div`,{className:`absolute -top-4 -right-4 sm:-right-8 bg-emerald-500 text-white text-xs font-black px-4 py-2 rounded-xl shadow-lg flex items-center gap-1.5`,children:[(0,q.jsx)(P,{className:`w-4 h-4`}),`+147% Traffic`]})]}),(0,q.jsx)(`div`,{className:`absolute right-0 top-1/2 -translate-y-1/2 hidden xl:flex flex-col gap-2.5 translate-x-4`,children:$e.map(({icon:e,label:t,color:n})=>(0,q.jsxs)(`div`,{className:`bg-white/10 border border-white/20 backdrop-blur-md rounded-xl px-3 py-2.5 flex items-center gap-2.5 shadow-lg w-52`,children:[(0,q.jsx)(e,{className:`w-5 h-5 shrink-0 ${n}`}),(0,q.jsx)(`span`,{className:`text-xs font-semibold text-white leading-snug`,children:t})]},t))}),(0,q.jsx)(`div`,{className:`absolute inset-0 rounded-3xl bg-orange-500/5 blur-3xl -z-10`})]})]}),(0,q.jsx)(`div`,{className:`mt-14 grid grid-cols-2 sm:grid-cols-4 gap-3 xl:hidden`,children:$e.map(({icon:e,label:t,color:n})=>(0,q.jsxs)(`div`,{className:`bg-white/8 border border-white/15 backdrop-blur-sm rounded-xl px-3 py-3.5 flex flex-col items-center gap-2 text-center`,children:[(0,q.jsx)(e,{className:`w-6 h-6 ${n}`}),(0,q.jsx)(`span`,{className:`text-xs font-semibold text-white/85 leading-snug`,children:t})]},t))})]})})}var nt=[{icon:Le,title:`TRAFFIC USER THẬT`,desc:`100% lượt truy cập từ người dùng thật, thiết bị thật — hành vi tá»± nhiên, không bot, không giả mạo.`,accent:`#3b82f6`,bgFrom:`#eff6ff`,bgTo:`#dbeafe`},{icon:E,title:`AN TOÀN SEO TUYỆT ĐỐI`,desc:`Tuân thá»§ 100% chính sách Google Webmaster. Website tuyệt đối không bị phạt hay ảnh hưởng thứ hạng.`,accent:`#10b981`,bgFrom:`#ecfdf5`,bgTo:`#d1fae5`},{icon:ie,title:`CAM KẾT HOÀN TIỀN`,desc:`Ký hợp đồng cam kết chỉ số rõ ràng. Hoàn tiền 100% nếu không đạt mục tiêu đã thỏa thuận.`,accent:`#f97316`,bgFrom:`#fff7ed`,bgTo:`#ffedd5`},{icon:ne,title:`TĂNG CHUYỂN ĐỔI (CRO)`,desc:`Traffic chất lượng cao cải thiện tá»· lệ chuyển đổi trá»±c tiếp — tăng doanh thu thá»±c, không chỉ số ảo.`,accent:`#8b5cf6`,bgFrom:`#f5f3ff`,bgTo:`#ede9fe`}];function rt(){return(0,q.jsx)(`section`,{className:`py-20 bg-white`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-14`,children:[(0,q.jsx)(`span`,{className:`inline-block bg-gray-100 text-[#0f1e4a] text-xs font-bold px-4 py-1.5 rounded-full mb-3 tracking-widest uppercase`,children:`Cam kết cá»§a chúng tôi`}),(0,q.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-black text-[#0f1e4a]`,children:`TẠI SAO CHỌN TRAFFIC68.COM?`}),(0,q.jsx)(`div`,{className:`w-14 h-1 bg-[#f97316] mx-auto mt-4 rounded-full`})]}),(0,q.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6`,children:nt.map(({icon:e,title:t,desc:n,accent:r,bgFrom:i,bgTo:a})=>(0,q.jsxs)(`div`,{className:`card-hover rounded-2xl p-7 border border-gray-100 shadow-sm flex flex-col items-center text-center`,style:{background:`linear-gradient(145deg, ${i}, ${a})`},children:[(0,q.jsx)(`div`,{className:`w-16 h-16 rounded-2xl flex items-center justify-center mb-5 shadow-md`,style:{background:r+`22`,border:`2px solid ${r}33`},children:(0,q.jsx)(e,{className:`w-8 h-8`,style:{color:r},strokeWidth:2})}),(0,q.jsx)(`h3`,{className:`font-black text-[#0f1e4a] text-sm mb-3 tracking-wide`,children:t}),(0,q.jsx)(`p`,{className:`text-sm text-gray-500 leading-relaxed`,children:n}),(0,q.jsx)(`div`,{className:`mt-5 w-8 h-0.5 rounded-full`,style:{background:r}})]},t))})]})})}var it=[{icon:E,color:`text-blue-500`,bg:`bg-blue-50`,label:`An toàn & Bảo mật`,desc:`Top 1-3 Google trong 60-90 ngày`},{icon:I,color:`text-green-500`,bg:`bg-green-50`,label:`Tăng SEO bền vá
2»¯ng`,desc:`Time on Page, đọc & tương tác`},{icon:re,color:`text-orange-500`,bg:`bg-orange-50`,label:`Hỗ trợ chuyên nghiệp`,desc:`Traffic bền vững, không nhận tạo`}],at=[`Taboola`,`Teads`,`Criteo`,`Outbrain`,`AdRoll`,`The Trade Desk`];function ot(){return(0,q.jsx)(`section`,{className:`py-16 bg-gray-50 border-y border-gray-100`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-3 gap-5 max-w-4xl mx-auto mb-14`,children:it.map(({icon:e,color:t,bg:n,label:r,desc:i})=>(0,q.jsxs)(`div`,{className:`bg-white border border-gray-100 rounded-2xl p-5 flex items-center gap-4 shadow-sm hover:shadow-md transition-all`,children:[(0,q.jsx)(`div`,{className:`w-11 h-11 ${n} rounded-xl flex items-center justify-center shrink-0`,children:(0,q.jsx)(e,{size:20,className:t})}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`text-sm font-bold text-[#1e3a5f]`,children:r}),(0,q.jsx)(`p`,{className:`text-xs text-gray-400 mt-0.5`,children:i})]})]},r))}),(0,q.jsxs)(`div`,{className:`text-center`,children:[(0,q.jsx)(`p`,{className:`text-[10px] font-bold text-gray-400 uppercase tracking-[0.25em] mb-6`,children:`Được tin tưởng & chứng nhận bởi`}),(0,q.jsx)(`div`,{className:`flex items-center justify-center gap-8 sm:gap-12 flex-wrap opacity-30`,children:at.map(e=>(0,q.jsx)(`span`,{className:`text-lg sm:text-xl font-black text-gray-600 tracking-wider`,children:e},e))})]})]})})}var st=[{icon:Le,title:`Traffic User Thật 100%`,desc:`Người dùng thá»±c tế, không bot, không giả mạo — đảm bảo an toàn tuyệt đối cho website.`},{icon:E,title:`An Toàn Tuyệt Đối`,desc:`Tuân thá»§ chính sách Google, không vi phạm thuật toán, website không bị phạt.`},{icon:I,title:`Tăng Thứ Hạng SEO`,desc:`Cải thiện thứ hạng từ khóa trên Google, gia tăng vị trí top 1-3 nhanh chóng.`},{icon:P,title:`Phân Tích Chuyên Sâu`,desc:`Dashboard báo cáo real-time, theo dõi mọi chỉ số traffic chi tiết theo ngày.`},{icon:Be,title:`Triển Khai Nhanh`,desc:`Bắt đầu nhận traffic trong vòng 24 giờ sau khi kích hoạt gói dịch vụ.`},{icon:Ke,title:`Đa Quốc Gia`,desc:`Traffic từ hÆ¡n 50 quốc gia, nhắm mục tiêu địa lý chính xác theo yêu cầu.`},{icon:W,title:`Bảo Mật Dữ Liệu`,desc:`Thông tin website được mã hóa SSL, tuyệt đối bảo mật và không chia sẻ bên thứ ba.`}
2,{icon:fe,title:`Cam Kết Kết Quả`,desc:`Cam kết bằng hợp đồng, hoàn tiền 100% nếu không đạt chỉ số đã thỏa thuận.`}];function ct(){return(0,q.jsx)(`section`,{id:`dich-vu`,className:`py-20 bg-gray-50`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-14`,children:[(0,q.jsx)(`span`,{className:`inline-block bg-blue-100 text-[#1e3a8a] text-xs font-bold px-4 py-1.5 rounded-full mb-3 tracking-widest uppercase`,children:`Tại sao chọn chúng tôi`}),(0,q.jsx)(`h2`,{className:`text-4xl font-black text-[#1e3a8a]`,children:`LỢI ÍCH CHÍNH`}),(0,q.jsx)(`div`,{className:`w-16 h-1 bg-[#f97316] mx-auto mt-4 rounded-full`})]}),(0,q.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6`,children:st.map(({icon:e,title:t,desc:n})=>(0,q.jsxs)(`div`,{className:`card-hover bg-white rounded-2xl p-6 shadow-md border border-gray-100 flex flex-col items-center text-center`,children:[(0,q.jsx)(`div`,{className:`w-14 h-14 gradient-btn rounded-2xl flex items-center justify-center mb-4 shadow-md`,children:(0,q.jsx)(e,{className:`w-7 h-7 text-white`})}),(0,q.jsx)(`h3`,{className:`font-bold text-[#1e3a8a] text-base mb-2`,children:t}),(0,q.jsx)(`p`,{className:`text-sm text-gray-500 leading-relaxed`,children:n})]},t))})]})})}var lt=[{icon:M,color:`#3b82f6`,bg:`#eff6ff`,title:`PHÂN TÍCH WEBSITE`,desc:`Phân tích từ khóa, đối thá»§ và chân dung khách hàng lý tưởng.`},{icon:Le,color:`#f97316`,bg:`#fff7ed`,title:`KÍCH HOẠT HỆ THỐNG USER THẬT`,desc:`Phân bổ traffic từ mạng lưới hàng ngàn user thật, đã được xác minh.`},{icon:ye,color:`#10b981`,bg:`#ecfdf5`,title:`TRUY CẬP Tá»° NHIÊN & TƯƠNG TÁC`,desc:`User truy cập từ tìm kiếm Google, link xã hội, và thá»±c hiện hành vi thật trên trang.`},{icon:P,color:`#8b5cf6`,bg:`#f5f3ff`,title:`BÁO CÁO CHI TIẾT & TỐI ƯU`,desc:`Báo cáo thời gian thá»±c, chi tiết nguồn traffic, hành vi user, và điều chỉnh chiến lược.`}];function ut(){return(0,q.jsx)(`section`,{className:`py-20 bg-white`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-14`,children:[(0,q.jsxs)(`h2`,{className:`text-3xl sm:text-4xl font-black`,children:[(0,q.jsx)(`span`,{className:`text-[#1e3a8a]`,children:`LÀM THẾ NÀO `}),(0,q.jsx)(`span`,{className:`text-[#f97316]`,children:`traffic68.com `}),(0,q.jsx)(`span`,{className:`text-[#1e3a8a]`,children:`MANG LẠI HIỆU QUẢ THá»°C?`})]}),(0,q.jsx)(`div`,{className:`w-16 h-1 bg-[#f97316] mx-auto mt-4 rounded-full`})]}),(0,q.jsx)(`div`,{className:`flex flex-col md:flex-row items-stretch justify-center gap-0`,children:lt.map(({icon:e,color:t,bg:n,title:r,desc:i},a)=>(0,q.jsxs)(`div`,{className:`flex flex-col md:flex-row items-center flex-1 min-w-0`,children:[(0,q.jsxs)(`div`,{className:`card-hover flex flex-col items-center text-center px-5 py-7 rounded-2xl border border-gray-100 bg-white shadow-sm flex-1 mx-1 my-3 md:my-0 w-full`,children:[(0,q.jsx)(`div`,{className:`w-20 h-20 rounded-2xl flex items-center justify-center mb-5 shadow-sm`,style:{background:n,border:`2px solid ${t}22`},children:(0,q.jsx)(e,{className:`w-10 h-10`,style:{color:t},strokeWidth:1.6})}),(0,q.jsx)(`div`,{className:`w-7 h-7 rounded-full flex items-center justify-center text-white text-xs font-black mb-3 shadow`,style:{background:t},children:a+1}),(0,q.jsx)(`h3`,{className:`font-black text-[#1e3a8a] text-sm uppercase tracking-wide leading-snug mb-2`,children:r}),(0,q.jsx)(`p`,{className:`text-sm text-gray-500 leading-relaxed`,children:i})]}),a<lt.length-1&&(0,q.jsx)(L,{className:`hidden md:block w-7 h-7 text-[#f97316] shrink-0 mx-0.5`})]},r))})]})})}var dt=[{growth:`+150%`,label:`Tăng Organic Traffic`,industry:`Thương mại điện tá»­`,desc:`Website bán lẻ tăng từ 2.000 lên 5.000 lượt/ngày sau 3 tháng, doanh thu tăng 120%.`,bars:[20,35,45,60,75,90,100]},{growth:`+500%`,label:`Tăng Lượt Xem`,industry:`Blog Tin Tức`,desc:`Từ 500 người đọc/ngày lên 3.000 sau 60 ngày, 12 từ khóa vào top 3 Google.`,bars:[10,20,30,50,70,85,100]},{growth:`+280%`,label:`Tăng Chuyển Đổi`,industry:`Dịch vụ B2B`,desc:`Lead chất lượng cao tăng 280%, chi phí mỗi lead giảm 45% so với quảng cáo PPC.`,bars:[30,45,55,65,78,88,100]}];function ft(){return(0,q.jsx)(`section`,{className:`py-20 bg-gray-50`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-14`,children:[(0,q.jsx)(`span`,{className:`inline-block bg-green-100 text-green-700 text-xs font-bold px-4 py-1.5 rounded-full mb-3 tracking-widest uppercase`,children:`Thá»±c tế`}),(0,q.jsx)(`h2`,{className:`text-4xl font-black text-[#1e3a8a]`,children:`KẾT QUẢ CHIẾN DỊCH THá»°C TẾ`}),(0,q.jsx)(`div`,{className:`w-16 h-1 bg-[#f97316] mx-auto mt-4 rounded-full`})]}),(0,q.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-8`,children:dt.map(({growth:e,label:t,industry:n,desc:r,bars:i})=>(0,q.jsxs)(`div`,{className:`card-hover bg-white rounded-2xl p-6 shadow-md border border-gray-100 overflow-hidden`,children:[(0,q.jsxs)(`div`,{className:`flex items-start justify-between mb-4`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`text-5xl font-black text-green-500`,children:e}),(0,q.jsx)(`p`,{className:`text-sm font-bold text-[#1e3a8a] mt-1`,children:t}),(0,q.jsx)(`span`,{className:`text-xs text-orange-500 font-semibold bg-orange-50 px-2 py-0.5 rounded-full`,children:n})]}),(0,q.jsx)(`div`,{className:`w-10 h-10 bg-green-100 rounded-xl flex items-center justify-center`,children:(0,q.jsx)(I,{className:`w-5 h-5 text-green-600`})})]}),(0,q.jsx)(`div`,{className:`flex items-end gap-1 h-20 mb-4 bg-gray-50 rounded-xl p-2`,children:i.map((e,t)=>(0,q.jsx)(`div`,{className:`flex-1 rounded-sm`,style:{height:`${e}%`,background:t===i.length-1?`linear-gradient(to top, #10b981, #34d399)`:`linear-gradient(to top, #d1fae5, #a7f3d0)`}},t))}),(0,q.jsx)(`p`,{className:`text-sm text-gray-500 leading-relaxed`,children:r}),(0,q.jsxs)(`div`,{className:`mt-4 flex items-center gap-2`,children:[(0,q.jsx)(`div`,{className:`w-2 h-2 bg-green-500 rounded-full`}),(0,q.jsx)(`span`,{className:`text-xs text-gray-400`,children:`Kết quả đã xác minh`})]})]},e))})]})})}var pt=[{quote:`"Tăng trưởng traffic 300% chỉ sau 1 tháng. Rất hài lòng!"`,name:`Chị Lan`,role:`CEO ABC E-Commerce`,initials:`CL`,color:`from-pink-400 to-rose-500`},{quote:`"An toàn SEO tuyệt đối, website lên top bền vá
2»¯ng."`,name:`Anh Đức`,role:`Founder XYZ Tech`,initials:`AĐ`,color:`from-blue-500 to-blue-700`},{quote:`"Hệ thống user thật, tá»· lệ chuyển đổi tăng đáng kể."`,name:`Anh Minh`,role:`Marketing Manager`,initials:`AM`,color:`from-orange-400 to-orange-600`}];function mt(){return(0,q.jsx)(`div`,{className:`flex gap-0.5 mb-3`,children:[...[,,,,,]].map((e,t)=>(0,q.jsx)(ee,{className:`w-4 h-4 text-yellow-400 fill-current`},t))})}function ht(){return(0,q.jsx)(`section`,{className:`py-20 bg-gray-50`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-14`,children:[(0,q.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-black text-[#1e3a8a]`,children:`KHÁCH HÀNG NÓI GÌ VỀ CHÚNG TÔI?`}),(0,q.jsx)(`div`,{className:`w-16 h-1 bg-[#f97316] mx-auto mt-4 rounded-full`})]}),(0,q.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-6`,children:pt.map(({quote:e,name:t,role:n,initials:r,color:i})=>(0,q.jsxs)(`div`,{className:`card-hover bg-white rounded-2xl shadow-md p-6 flex flex-col border border-gray-100`,children:[(0,q.jsx)(mt,{}),(0,q.jsx)(`p`,{className:`text-gray-600 text-sm leading-relaxed italic flex-1 mb-6`,children:e}),(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsx)(`div`,{className:`w-12 h-12 rounded-full bg-gradient-to-br ${i} flex items-center justify-center text-white font-black text-sm shrink-0 shadow-md`,children:r}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`font-bold text-[#1e3a8a] text-sm`,children:t}),(0,q.jsx)(`p`,{className:`text-xs text-gray-400`,children:n})]})]})]},t))})]})})}var gt=[{q:`Traffic từ traffic68.com có phải người thật không?`,a:`100% user thật, truy cập từ thiết bị thật (desktop, mobile), hành vi tá»± nhiên, thời gian xem trang phù hợp. Không có bất kỳ bot hay phần mềm giả mạo nào.`},{q:`Website tôi có bị Google phạt không?`,a:`Không. Chúng tôi tuân thá»§ chính sách Google Webmaster. Traffic hoạt động như người dùng bình thường, không vi phạm bất kỳ thuật toán nào cá»
2§a Google.`},{q:`Tôi cần chuẩn bị gì trước khi đăng ký?`,a:`Chỉ cần URL website và mục tiêu traffic (từ khóa, địa lý, ngành hàng). Chuyên gia sẽ tư vấn gói phù hợp và thiết lập chiến dịch cho bạn.`},{q:`Bao lâu thì thấy kết quả?`,a:`Traffic bắt đầu chạy trong 24h sau khi kích hoạt. Kết quả SEO thường thấy rõ sau 2-4 tuần. Thứ hạng Google cải thiện trong 1-3 tháng.`},{q:`traffic68.com có cam kết kết quả không?`,a:`Có. Chúng tôi ký hợp đồng cam kết chỉ số traffic, hoàn tiền 100% nếu không đạt mục tiêu đã thỏa thuận trong thời gian quy định.`},{q:`Tôi có thể theo dõi traffic thá»±c tế không?`,a:`Có. Bạn có thể xác minh qua Google Analytics, Google Search Console và dashboard riêng cá»§a traffic68.com với dữ liệu real-time 24/7.`}];function _t({q:e,a:t}){let[n,r]=(0,K.useState)(!1);return(0,q.jsxs)(`div`,{className:`bg-white rounded-xl shadow-sm border border-gray-100 overflow-hidden`,children:[(0,q.jsxs)(`button`,{onClick:()=>r(!n),className:`w-full flex items-center justify-between gap-4 px-5 py-4 text-left hover:bg-gray-50 transition-colors`,id:`faq-${e.substring(0,20).replace(/\s+/g,`-`)}`,children:[(0,q.jsx)(`span`,{className:`font-semibold text-[#1e3a8a] text-sm leading-snug`,children:e}),(0,q.jsx)(U,{className:`w-5 h-5 text-[#f97316] shrink-0 transition-transform duration-300 ${n?`rotate-180`:``}`})]}),(0,q.jsx)(`div`,{className:`faq-answer ${n?`open`:``}`,children:(0,q.jsx)(`p`,{className:`px-5 pb-4 text-sm text-gray-500 leading-relaxed`,children:t})})]})}function vt(){return(0,q.jsx)(`section`,{id:`faq`,className:`py-20 bg-gray-50`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-14`,children:[(0,q.jsx)(`span`,{className:`inline-block bg-blue-100 text-[#1e3a8a] text-xs font-bold px-4 py-1.5 rounded-full mb-3 tracking-widest uppercase`,children:`FAQ`}),(0,q.jsx)(`h2`,{className:`text-4xl font-black text-[#1e3a8a]`,children:`CÂU HỎI THƯỜNG GẶP`}),(0,q.jsx)(`div`,{className:`w-16 h-1 bg-[#f97316] mx-auto mt-4 rounded-full`})]}),(0,q.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4 max-w-5xl mx-auto`,children:gt.map(e=>(0,q.jsx)(_t,{...e},e.q))})]})})}function yt(){return(0,q.jsx)(`section`,{className:`py-20 cloud-bg relative overflow-hidden`,children:(0,q.jsxs)(`div`,{className:`max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 text-center relative z-10`,children:[(0,q.jsxs)(`h2`,{className:`text-4xl sm:text-5xl font-black text-[#1e3a8a] mb-6 leading-tight`,children:[`SẴN SÀNG TĂNG TRƯỞNG`,(0,q.jsx)(`br`,{}),(0,q.jsx)(`span`,{className:`text-[#f97316]`,children:`WEBSITE CỦA BẠN?`})]}),(0,q.jsx)(`p`,{className:`text-lg text-gray-600 mb-10 max-w-2xl mx-auto`,children:`Nhận tư vấn miễn phí từ chuyên gia trong vòng 5 phút. Không cam kết, không ràng buộc.`}),(0,q.jsxs)(`a`,{href:`#`,className:`gradient-btn text-white text-lg font-black px-10 py-5 rounded-2xl shadow-xl inline-flex items-center gap-3`,id:`bottom-cta-btn`,children:[`NHẬN TƯ VẤN MIỄN PHÍ NGAY`,(0,q.jsx)(T,{className:`w-6 h-6`})]}),(0,q.jsx)(`p`,{className:`mt-4 text-sm text-gray-400`,children:`✓ Miễn phí · ✓ Không spam · ✓ Phản hồi trong 30 phút`})]})})}var bt=[{label:`Traffic SEO`,href:`/dich-vu`},{label:`Bảng giá`,href:`/bang-gia`},{label:`Tư vấn Traffic`,href:`/lien-he`}],xt=[{label:`Blog`,href:`/blog`},{label:`Hướng dẫn`,href:`/blog`},{label:`FAQ`,href:`/faq`}],St=[{label:`Điều khoản`,href:`/faq`},{label:`Bảo mật`,href:`/lien-he`}],Ct=[{icon:z,text:`Địa chỉ cụ thể tại Hà Nội`},{icon:R,text:`[email protected]`},{icon:g,text:`0989 759 050`},{icon:g,text:`06533 06 339`},{icon:g,text:`0692 6 563 558`}];function wt(){return(0,q.jsx)(`svg`,{viewBox:`0 0 48 48`,className:`w-5 h-5 fill-current`,children:(0,q.jsx)(`path`,{d:`M24 4C12.95 4 4 12.95 4 24s8.95 20 20 20 20-8.95 20-20S35.05 4 24 4zm-1.3 28.6c-4.6-.4-8.4-3.1-10-6.9l2.7-1.1c1.1 2.7 3.9 4.7 7 5l.3 3zm2.6.1V29.5c4.2-.4 7.4-3.9 7.4-8.1 0-4.5-3.6-8.1-8.1-8.1S16.5 16.9 16.5 21.4c0 1.5.4 2.9 1.1 4.1l-2.6 1c-.9-1.5-1.4-3.3-1.4-5.1 0-5.8 4.7-10.5 10.5-10.5S34.6 15.6 34.6 21.4c0 5.5-4.2 10-9.6 10.5l-.7.8z`})})}function J(){return(0,q.jsxs)(`footer`,{id:`lien-he`,className:`bg-[#1e3a8a]`,children:[(0,q.jsx)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-14`,children:(0,q.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 md:grid-cols-5 ga
2p-10`,children:[(0,q.jsxs)(`div`,{className:`md:col-span-1`,children:[(0,q.jsx)(`a`,{href:`/`,className:`flex items-center gap-2 mb-4`,children:(0,q.jsx)(`img`,{src:`/traffic68_com.gif`,alt:`traffic68.com`,className:`h-10 sm:h-12 w-auto object-contain`,style:{maxWidth:`160px`}})}),(0,q.jsx)(`p`,{className:`text-gray-300 text-xs leading-relaxed`,children:`Giải pháp traffic user thật hàng đầu Việt Nam. An toàn, hiệu quả, cam kết kết quả.`})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`h4`,{className:`text-[#f97316] font-bold text-sm uppercase tracking-wider mb-4`,children:`Dịch Vụ`}),(0,q.jsx)(`ul`,{className:`space-y-2.5`,children:bt.map(e=>(0,q.jsx)(`li`,{children:(0,q.jsx)(`a`,{href:e.href,className:`text-gray-300 hover:text-white text-sm transition-colors`,children:e.label})},e.label))})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`h4`,{className:`text-[#f97316] font-bold text-sm uppercase tracking-wider mb-4`,children:`Tài Nguyên`}),(0,q.jsx)(`ul`,{className:`space-y-2.5`,children:xt.map(e=>(0,q.jsx)(`li`,{children:(0,q.jsx)(`a`,{href:e.href,className:`text-gray-300 hover:text-white text-sm transition-colors`,children:e.label})},e.label))})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`h4`,{className:`text-[#f97316] font-bold text-sm uppercase tracking-wider mb-4`,children:`Liên Hệ`}),(0,q.jsx)(`ul`,{className:`space-y-2.5`,children:Ct.map(e=>{let t=e.icon;return(0,q.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,q.jsx)(t,{className:`w-3.5 h-3.5 text-[#f97316] shrink-0 mt-0.5`}),(0,q.jsx)(`span`,{className:`text-gray-300 text-xs leading-snug`,children:e.text})]},e.text)})})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`h4`,{className:`text-[#f97316] font-bold text-sm uppercase tracking-wider mb-4`,children:`Pháp Lý`}),(0,q.jsx)(`ul`,{className:`space-y-2.5 mb-6`,children:St.map(e=>(0,q.jsx)(`li`,{children:(0,q.jsx)(`a`,{href:e.href,className:`text-gray-300 hover:text-white text-sm transition-colors`,children:e.label})},e.label))}),(0,q.jsx)(`div`,{className:`flex gap-2.5`,children:[{icon:ae,href:`#`,label:`Facebook`},{icon:wt,href:`#`,label:`Zalo`},{icon:S,href:`#`,label:`LinkedIn`}].map(e=>{let t=e.icon;return(0,q.jsx)(`a`,{href:e.href,"aria-label":e.label,className:`w-9 h-9 rounded-full bg-white/15 hover:bg-[#f97316] text-white flex items-center justify-center transition-colors`,children:(0,q.jsx)(t,{})},e.label)})})]})]})}),(0,q.jsx)(`div`,{className:`border-t border-white/15`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-5 flex flex-col sm:flex-row items-center justify-between gap-4`,children:[(0,q.jsx)(`p`,{className:`text-gray-400 text-xs`,children:`© 2024 traffic68.com. Tất cả quyền được bảo lưu.`}),(0,q.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-1.5 bg-white/10 rounded-lg px-3 py-1.5`,children:[(0,q.jsx)(`div`,{className:`w-5 h-5 rounded bg-[#00b67a] flex items-center justify-center`,children:(0,q.jsx)(ee,{className:`w-3 h-3 text-white fill-current`})}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`text-white text-[10px] font-black leading-none`,children:`Trustpilot`}),(0,q.jsx)(`p`,{className:`text-[#00b67a] text-[9px]`,children:`Verified`})]})]}),(0,q.jsxs)(`div`,{className:`flex items-center gap-1.5 bg-white/10 rounded-lg px-3 py-1.5`,children:[(0,q.jsx)(`span`,{className:`text-base font-black`,style:{color:`#4285F4`},children:`G`}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`text-white text-[10px] font-black leading-none`,children:`Google`}),(0,q.jsx)(`p`,{className:`text-blue-300 text-[9px]`,children:`Partner`})]})]})]})]})}),(0,q.jsx)(`div`,{id:`API_SEO_TRAFFIC68`}),(0,q.jsx)(`script`,{src:`https://traffic68.com/api_seo_traffic68.js`,"data-token":`T68-88BADEB43522`,async:!0})]})}var Tt=`https://traffic68.com`,Et=`Traffic68`,Dt={title:`Blog SEO & Traffic Website`,description:`Kiến thức thá»±c chiến về SEO, traffic user thật, CRO và tăng trưởng website bền vững cho doanh nghiệp Việt Nam.`,keywords:`blog seo, traffic website, traffic user thật, tăng traffic, SEO bền vá
2»¯ng, CRO`};function Y(e=``){return e?/^https?:\/\//i.test(e)?e:`${Tt}${e.startsWith(`/`)?e:`/${e}`}`:Tt}function Ot(e=``){return String(e).replace(/```[\s\S]*?```/g,` `).replace(/`([^`]+)`/g,`$1`).replace(/!\[[^\]]*\]\([^)]*\)/g,` `).replace(/\[([^\]]+)\]\([^)]*\)/g,`$1`).replace(/[#>*_~|-]/g,` `).replace(/\s+/g,` `).trim()}function kt(e=``){return String(e).split(`
3`).map(e=>e.trim()).find(e=>e&&!e.startsWith(`#`)&&!e.startsWith(`|`)&&!e.startsWith(`- `))||``}function At(e=``,t=160){let n=Ot(e);return n.length<=t?n:`${n.slice(0,t-1).trim()}…`}function jt(e){if(!e)return``;let t=new Date(e);return Number.isNaN(t.getTime())?String(e):t.toLocaleDateString(`vi-VN`,{day:`2-digit`,month:`long`,year:`numeric`})}function Mt(e){if(!e)return;let t=new Date(e);return Number.isNaN(t.getTime())?void 0:t.toISOString()}function Nt(e=``,t=``){if(t)return t;let n=Ot(e).split(/\s+/).filter(Boolean).length;return`${Math.max(1,Math.ceil(n/220))} phút đọc`}function Pt(e={}){let t=e.published_at||e.publishedAt||e.date||e.created_at||e.createdAt,n=e.updated_at||e.updatedAt||t,r=e.excerpt||At(kt(e.content),150),i=e.seo_description||e.description||r||Dt.description,a=e.cover||e.image||`/blog_featured_seo.png`;return{...e,id:e.id||e.slug,slug:e.slug||``,title:e.seo_title||e.title||`Bài viết Traffic68`,displayTitle:e.title||e.seo_title||`Bài viết Traffic68`,description:At(i,165),excerpt:At(r,170),content:e.content||``,tag:e.category||e.tag||`Traffic`,category:e.category||e.tag||`Traffic`,tagColor:e.tagColor||e.tag_color||`bg-orange-100 text-orange-700`,author:e.author||`Traffic68 Team`,publishedAt:t,updatedAt:n,publishedIso:Mt(t),updatedIso:Mt(n),dateLabel:e.date||jt(t),readTime:Nt(e.content,e.readTime||e.read_time),cover:a,coverUrl:Y(a),status:e.status||`published`,keywords:e.keywords||`${e.tag||`traffic`}, SEO, Traffic68`,url:Y(`/blog/${e.slug||``}`),views:e.views||0}}function Ft(e=[]){return e.map(Pt).filter(e=>e.slug&&e.title)}function It(e=[]){return Ft(e).filter(e=>e.status===`published`||!e.status)}function Lt(e=[],t,n=3){return t?It(e).filter(e=>e.slug!==t.slug).sort((e,n)=>e.tag===t.tag&&n.tag!==t.tag?-1:e.tag!==t.tag&&n.tag===t.tag?1:0).slice(0,n):[]}function Rt(e=[]){return{"@context":`https://schema.org`,"@type":`CollectionPage`,name:Dt.title,description:Dt.description,url:Y(`/blog`),mainEntity:{"@type":`ItemList`,itemListElement:e.slice(0,12).map((e,t)=>({"@type":`ListItem`,position:t+1,url:e.url,name:e.title}))}}}function zt(e){return e?[{"@context":`https://schema.org`,"@type":`BlogPosting`,headline:e.title,description:e.description,image:e.coverUrl,datePublished:e.publishedIso,dateModified:e.updatedIso||e.publishedIso,author:{"@type":`Person`,name:e.author},publisher:{"@type":`Organization`,name:Et,logo:{"@type":`ImageObject`,url:Y(`/traffic68_com.gif`)}},mainEntityOfPage:{"@type":`WebPage`,"@id":e.url}},{"@context":`https://schema.org`,"@type":`BreadcrumbList`,itemListElement:[{"@type":`ListItem`,position:1,name:`Trang chủ`,item:Tt},{"@type":`ListItem`,position:2,name:`Blog`,item:Y(`/blog`)},{"@type":`ListItem`,position:3,name:e.title,item:e.url}]}]:null}var Bt=`Traffic68.com`,Vt=`Traffic68 - Traffic User Thật 100% | Tăng Traffic Website Uy Tín`,Ht=`Traffic68 cung cấp giải pháp tăng traffic website từ user thật, hỗ trợ SEO bền vững, an toàn và minh bạch cho doanh nghiệp Việt Nam.`,Ut=Y(`/traffic68_com.gif`);function X(e,t){let n=document.head.querySelector(e);n||(n=document.createElement(`meta`),t.name&&n.setAttribute(`name`,t.name),t.property&&n.setAttribute(`property`,t.property),document.head.appendChild(n)),Object.entries(t).forEach(([e,t])=>{t==null||t===``||n.setAttribute(e,String(t))})}function Wt(e){let t=document.head.querySelector(`link[rel="canonical"]`);t||(t=document.createElement(`link`),t.setAttribute(`rel`,`canonical`),document.head.appendChild(t)),t.setAttribute(`href`,e)}function Gt(e){let t=`page-jsonld`,n=document.getElementById(t);if(!e){n&&n.remove();return}let r=n||document.createElement(`script`);r.id=t,r.type=`application/ld+json`,r.textContent=JSON.stringify(e),n||document.head.appendChild(r)}function Z(e,t=!1){(0,K.useEffect)(()=>
3{let n=typeof e==`object`?e:{title:e,noSuffix:t},r=n.title||Bt,i=n.noSuffix||t?r:`${r} — ${Bt}`,a=n.description||Ht,o=Y(n.canonicalPath||window.location.pathname||`/`),s=n.image?Y(n.image):Ut,c=n.type||`website`,l=n.noindex?`noindex, nofollow`:n.robots||`index, follow`;return document.title=i,X(`meta[name="description"]`,{name:`description`,content:a}),X(`meta[name="robots"]`,{name:`robots`,content:l}),n.keywords&&X(`meta[name="keywords"]`,{name:`keywords`,content:n.keywords}),Wt(o),X(`meta[property="og:title"]`,{property:`og:title`,content:i}),X(`meta[property="og:description"]`,{property:`og:description`,content:a}),X(`meta[property="og:image"]`,{property:`og:image`,content:s}),X(`meta[property="og:url"]`,{property:`og:url`,content:o}),X(`meta[property="og:type"]`,{property:`og:type`,content:c}),X(`meta[property="og:locale"]`,{property:`og:locale`,content:`vi_VN`}),X(`meta[name="twitter:card"]`,{name:`twitter:card`,content:`summary_large_image`}),X(`meta[name="twitter:title"]`,{name:`twitter:title`,content:i}),X(`meta[name="twitter:description"]`,{name:`twitter:description`,content:a}),X(`meta[name="twitter:image"]`,{name:`twitter:image`,content:s}),n.publishedTime&&X(`meta[property="article:published_time"]`,{property:`article:published_time`,content:n.publishedTime}),n.modifiedTime&&X(`meta[property="article:modified_time"]`,{property:`article:modified_time`,content:n.modifiedTime}),Gt(n.jsonLd),()=>{document.title=Vt,Gt(null)}},[e,t])}var Kt=(0,K.createContext)(null),qt=0,Jt={success:H,error:ve,warning:Te,info:Oe},Yt={success:{bg:`bg-emerald-50 border-emerald-200`,icon:`text-emerald-500`,text:`text-emerald-800`},error:{bg:`bg-red-50 border-red-200`,icon:`text-red-500`,text:`text-red-800`},warning:{bg:`bg-amber-50 border-amber-200`,icon:`text-amber-500`,text:`text-amber-800`},info:{bg:`bg-blue-50 border-blue-200`,icon:`text-blue-500`,text:`text-blue-800`}};function Xt({toast:e,onRemove:t}){let n=Yt[e.type]||Yt.info,r=Jt[e.type]||Oe;return(0,q.jsxs)(`div`,{className:`flex items-start gap-3 px-4 py-3 rounded-xl border shadow-lg backdrop-blur-sm
4        ${n.bg} animate-slide-in-right min-w-[300px] max-w-[420px]`,style:{animation:`slideInRight 0.3s ease-out, fadeOut 0.3s ease-in forwards`,animationDelay:`0s, ${(e.duration||3e3)-300}ms`},children:[(0,q.jsx)(r,{className:`w-5 h-5 mt-0.5 shrink-0 ${n.icon}`}),(0,q.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[e.title&&(0,q.jsx)(`p`,{className:`text-sm font-bold ${n.text}`,children:e.title}),(0,q.jsx)(`p`,{className:`text-sm ${n.text} ${e.title?`opacity-80`:`font-medium`}`,children:e.message})]}),(0,q.jsx)(`button`,{onClick:()=>t(e.id),className:`shrink-0 text-gray-400 hover:text-gray-600 transition`,children:(0,q.jsx)(V,{className:`w-4 h-4`})})]})}function Zt({message:e,onConfirm:t,onCancel:n}){return(0,q.jsxs)(`div`,{className:`fixed inset-0 z-[10000] flex items-center justify-center p-4`,onClick:n,children:[(0,q.jsx)(`div`,{className:`absolute inset-0 bg-black/40 backdrop-blur-sm`}),(0,q.jsxs)(`div`,{className:`relative bg-white rounded-2xl shadow-2xl w-full max-w-sm p-6`,onClick:e=>e.stopPropagation(),children:[(0,q.jsxs)(`div`,{className:`flex items-start gap-3 mb-5`,children:[(0,q.jsx)(`div`,{className:`w-10 h-10 rounded-xl bg-amber-50 flex items-center justify-center flex-shrink-0`,children:(0,q.jsx)(Te,{size:20,className:`text-amber-500`})}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`h3`,{className:`font-bold text-slate-800 text-sm`,children:`Xác nhận`}),(0,q.jsx)(`p`,{className:`text-sm text-slate-600 mt-1`,children:e})]})]}),(0,q.jsxs)(`div`,{className:`flex gap-3 justify-end`,children:[(0,q.jsx)(`button`,{onClick:n,className:`px-4 py-2 text-sm font-semibold text-slate-600 hover:bg-slate-100 rounded-xl transition`,children:`Hủy`}),(0,q.jsx)(`button`,{onClick:t,className:`px-5 py-2 text-sm font-bold text-white bg-indigo-600 hover:bg-indigo-700 rounded-xl transition`,children:`Xác nhận`})]})]})]})}function Qt({children:e}){let[t,n]=(0,K.useState)([]),[r,i]=(0,K.useState)(null),a=(0,K.useRef)({}),o=(0,K.useCallback)(e=>{clearTimeout(a.current[e]),delete a.current[e],n(t=>t.filter(t=>t.id!==e))},[]),s=(0,K.useCallback)(({type:e=`info`,title:t,message:r,duration:i=3500})=>{let s=++qt,c={id:s,type:e,title:t,message:r,duration:i};return n(e=>[...e,c]),a.current[s]=setTimeout(()=>
4o(s),i),s},[o]),c=(0,K.useCallback)(e=>new Promise(t=>{i({message:e,onConfirm:()=>{i(null),t(!0)},onCancel:()=>{i(null),t(!1)}})}),[]),l=(0,K.useCallback)({success:(e,t)=>s({type:`success`,message:e,title:t}),error:(e,t)=>s({type:`error`,message:e,title:t}),warning:(e,t)=>s({type:`warning`,message:e,title:t}),info:(e,t)=>s({type:`info`,message:e,title:t}),confirm:c},[s,c]);return(0,q.jsxs)(Kt.Provider,{value:l,children:[e,r&&(0,q.jsx)(Zt,{...r}),(0,q.jsx)(`div`,{className:`fixed top-4 right-4 z-[9999] flex flex-col gap-2 pointer-events-none`,children:t.map(e=>(0,q.jsx)(`div`,{className:`pointer-events-auto`,children:(0,q.jsx)(Xt,{toast:e,onRemove:o})},e.id))})]})}function $t(){let e=(0,K.useContext)(Kt);if(!e)throw Error(`useToast must be used within ToastProvider`);return e}var en=`5acaec7e-83b0-464e-ba10-690889fc66ba`;function tn(){let e=(0,K.useRef)(null),t=(0,K.useRef)(null),[n,r]=(0,K.useState)(null),i=(0,K.useCallback)(()=>{if(!(!e.current||t.current!==null)){if(!window.hcaptcha){let e=setTimeout(i,300);return()=>clearTimeout(e)}try{t.current=window.hcaptcha.render(e.current,{sitekey:en,callback:e=>r(e),"expired-callback":()=>r(null),"error-callback":()=>r(null),theme:`light`,size:`normal`})}catch{}}},[]),a=(0,K.useCallback)(()=>{if(r(null),t.current!==null&&window.hcaptcha)try{window.hcaptcha.reset(t.current)}catch{}},[]);return(0,K.useEffect)(()=>{let e=setTimeout(i,500);return()=>clearTimeout(e)},[i]),{captchaRef:e,token:n,resetCaptcha:a,renderCaptcha:i,SITE_KEY:en}}function nn(){Z(`Đăng nhập`);let e=l(),t=$t(),[n]=o(),r=n.get(`banned`)===`1`,[i,a]=(0,K.useState)(!1),[s,c]=(0,K.useState)({login:``,password:``}),[d,f]=(0,K.useState)(!1),[p,m]=(0,K.useState)(!1),[h,g]=(0,K.useState)(``),{captchaRef:_,token:v,resetCaptcha:y}=tn();(0,K.useEffect)(()=>{if(localStorage.getItem(`token`))try{let t=JSON.parse(localStorage.getItem(`user`)||`{}`);t.role===`admin`?e(`/admin`):e(t.service_type===`shortlink`?`/worker/dashboard`:`/buyer/dashboard`)}catch{e(`/buyer/dashboard`)}},[]);let b=e=>c({...s,[e.target.name]:e.target.value});return(0,q.jsxs)(`div`,{className:`min-h-[calc(100vh-66px)] bg-gray-50 flex`,children:[(0,q.jsxs)(`div`,{className:`hidden lg:flex lg:w-1/2 items-center justify-center p-12 relative`,style:{backgroundImage:`url(/login_hero_bg.png)`,backgroundSize:`cover`,backgroundPosition:`center`},children:[(0,q.jsx)(`div`,{className:`absolute inset-0 bg-[#0f172a]/60 rounded-none`}),(0,q.jsxs)(`div`,{className:`relative z-10 text-center max-w-md`,children:[(0,q.jsxs)(`h2`,{className:`text-3xl font-black text-white mb-4 uppercase leading-tight`,children:[`Quản Lý Traffic`,(0,q.jsx)(`br`,{}),(0,q.jsx)(`span`,{className:`text-[#f97316]`,children:`Thông Minh`})]}),(0,q.jsx)(`p`,{className:`text-white/70 text-base mb-10 leading-relaxed`,children:`Theo dõi và tối ưu hóa toàn bộ chiến dịch traffic của bạn trong một dashboard duy nhất.`}),(0,q.jsx)(`ul`,{className:`space-y-3 text-left`,children:[`Dashboard quản lý traffic real-time`,`Báo cáo chi tiết 24/7`,`Quản lý đa chiến dịch cùng lúc`,`Hỗ trợ chuyên gia ưu tiên`].map(e=>(0,q.jsxs)(`li`,{className:`flex items-center gap-3 text-sm text-white/80`,children:[(0,q.jsx)(H,{className:`w-4 h-4 text-emerald-400 shrink-0`}),e]},e))}),(0,q.jsx)(`div`,{className:`mt-12 grid grid-cols-3 gap-3`,children:[{v:`10K+`,l:`Khách hàng`},{v:`99%`,l:`Thành công`},{v:`24/7`,l:`Hỗ trợ`}].map(({v:e,l:t})=>(0,q.jsxs)(`div`,{className:`bg-white/8 border border-white/15 rounded-xl p-3 text-center`,children:[(0,q.jsx)(`p`,{className:`text-xl font-black text-[#f97316]`,children:e}),(0,q.jsx)(`p`,{className:`text-[11px] text-white/55`,children:t})]},t))})]})]}),(0,q.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-6 sm:p-12`,children:(0,q.jsxs)(`div`,{className:`w-full max-w-md`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-8`,children:[(0,q.jsx)(u,{to:`/`,className:`inline-block mb-6`,children:(0,q.jsx)(`img`,{src:`/traffic68_com.gif`,alt:`traffic68.com`,className:`h-14 w-auto mx-auto`})}),(0,q.jsx)(`h1`,{className:`text-2xl font-black text-[#1e3a8a] mb-1`,children:`Chào mừng trở lại!`}),(0,q.jsx)(`p`,{className:`text-gray-500 text-sm`,children:`Đăng nhập để quản lý chiến dịch traffic của bạn`})]}),(0,q.jsxs)(`div`,{className:`bg-white rounded-2xl shadow-md border border-gray-100 p-8`,children:[r&&(0,q.jsxs)(`div`,{className:`mb-4 flex items-center gap-3 p-3 bg-red-50 border border-red-200 rounded-xl text-red-700`,children:[(0,q.jsx)(de,{size:18,className:`shrink-0`}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`font-bold text-sm`,children:`Tài khoản bị tạm ngưng`}),(0,q.jsx)(`p`,{className:`text-xs text-red-500 mt-0.5`,children:`Tài khoản của bạn đã bị admin tạm ngưng. Liên hệ hỗ trợ để biết thêm.`})]})]}),h&&(0,q.jsx)(`div`,{className:`mb-4 p-3 bg-red-50 border border-red-200 rounded-xl text-red-600 text-sm font-medium text-center`,children:h}),(0,q.jsxs)(`form`,{onSubmit:async n=>{if(n.preventDefault(),!v){g(`Vui lòng xác nhận captcha trước khi đăng nhập.`);return}m(!0),g(``);try{let n=await fetch(`/api/auth/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({email:s.login,password:s.password,remember:d,captchaToken:v})}),r=await n.json();if(!n.ok){g(r.error||`Đăng nhập thất bại`),y(),m(!1);return}localStorage.setItem(`token`,r.token),localStorage.setItem(`user`,JSON.stringify(r.user)),t.success(`Chào mừng ${r.user.name||`bạn`}!`,`Đăng nhập thành công`),r.user.role===`admin`?e(`/admin`):e(r.user.service_type===`shortlink`?`/worker/dashboard`:`/buyer/dashboard`)}
4catch{g(`Không thể kết nối đến máy chá»§`)}finally{m(!1)}},className:`space-y-5`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Email hoặc Username`}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(F,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:`text`,name:`login`,value:s.login,onChange:b,placeholder:`[email protected] hoặc username`,className:`w-full pl-10 pr-4 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition`})]})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between mb-1.5`,children:[(0,q.jsx)(`label`,{className:`text-xs font-semibold text-gray-600`,children:`Mật khẩu`}),(0,q.jsx)(`button`,{type:`button`,className:`text-xs text-[#f97316] hover:underline font-semibold`,children:`Quên mật khẩu?`})]}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(W,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:i?`text`:`password`,name:`password`,value:s.password,onChange:b,placeholder:`••••••••`,className:`w-full pl-10 pr-11 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition`}),(0,q.jsx)(`button`,{type:`button`,onClick:()=>a(!i),className:`absolute right-3.5 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600`,children:i?(0,q.jsx)(Pe,{className:`w-4 h-4`}):(0,q.jsx)(se,{className:`w-4 h-4`})})]})]}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`input`,{type:`checkbox`,id:`remember`,checked:d,onChange:e=>f(e.target.checked),className:`w-4 h-4 rounded border-gray-300 text-[#1e3a8a] focus:ring-[#1e3a8a] cursor-pointer`}),(0,q.jsx)(`label`,{htmlFor:`remember`,className:`text-sm text-gray-600 cursor-pointer select-none`,children:`Ghi nhớ đăng nhập`})]}),(0,q.jsx)(`div`,{className:`flex justify-center`,children:(0,q.jsx)(`div`,{ref:_})}),(0,q.jsx)(`button`,{type:`submit`,disabled:p,className:`w-full gradient-btn text-white font-black py-3.5 rounded-xl shadow-lg flex items-center justify-center gap-2.5 text-sm disabled:opacity-70 transition-all`,children:p?(0,q.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`span`,{className:`w-4 h-4 border-2 border-white border-t-transparent rounded-full animate-spin`}),` Đang đăng nhập...`]}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`span`,{children:`ĐĂNG NHẬP`}),` `,(0,q.jsx)(T,{className:`w-4 h-4`})]})})]}),(0,q.jsx)(`div`,{className:`mt-6 pt-6 border-t border-gray-100 text-center`,children:(0,q.jsxs)(`p`,{className:`text-sm text-gray-500`,children:[`Chưa có tài khoản?`,` `,(0,q.jsx)(u,{to:`/dang-ky`,className:`text-[#f97316] font-bold hover:underline`,children:`Đăng ký miễn phí`})]})})]}),(0,q.jsxs)(`p`,{className:`text-center text-xs text-gray-400 mt-6`,children:[`Bằng cách đăng nhập, bạn đồng ý với`,` `,(0,q.jsx)(`a`,{href:`#`,className:`text-[#1e3a8a] hover:underline`,children:`Điều khoản dịch vụ`}),` và`,` `,(0,q.jsx)(`a`,{href:`#`,className:`text-[#1e3a8a] hover:underline`,children:`Chính sách bảo mật`})]})]})})]})}var rn=[{quote:`Tăng 500% traffic chỉ sau 2 tháng. Đội ngÅ© hỗ trợ tuyệt vời!`,name:`Anh Tuấn`,role:`CEO – TechStartup.vn`,initials:`AT`,gradient:`from-orange-400 to-orange-600`},{quote:`ROI gấp 3 lần quảng cáo Facebook. Không thể tin được!`,name:`Minh Châu`,role:`Marketing – ShopNow.vn`,initials:`MC`,gradient:`from-blue-400 to-blue-600`},{quote:`Dashboard real-time rất tiện, theo dõi chiến dịch 24/7.`,name:`Hải Nam`,role:`Founder – BlogTech.io`,initials:`HN`,gradient:`from-emerald-400 to-emerald-600`},{quote:`Hỗ trợ nhiệt tình, cam kết hoàn tiền nên rất yên tâm.`,name:`Thu Hà`,role:`Owner – CafeOnline.vn`,initials:`TH`,gradient:`from-purple-400 to-purple-600`}],an=[{value:`traffic`,label:`Mua Traffic`,icon:I,desc:`Tăng lưu lượng truy cập thá»±c đến website`,color:`border-blue-500 bg-blue-50`,iconColor:`text-blue-600`,activeRing:`ring-2 ring-blue-500`},{value:`shortlink`,label:`Rút Gọn Link`,icon:Ve,desc:`Tạo và quản lý liên kết rút gọn chuyên nghiệp`,color:`border-orange-500 bg-orange-50`,iconColor:`text-orange-600`,activeRing:`ring-2 ring-orange-500`}],on=[`Traffic user thật 100%, không bot`,`Bắt đầu nhận traffic trong 24h`,`Dashboard báo cáo real-time`,`Cam kết hoàn tiền 30 ngày`];function sn(){let[e,t]=(0,K.useState)(0),[n,r]=(0,K.useState)(`in`);(0,K.useEffect)(()=>{let e=setInterval(()=>{r(`out`),setTimeout(()=>{t(e=>(e+1)%rn.length),r(`in`)},400)},5e3);return()=>clearInterval(e)},[]);let i=n=>{n!==e&&(r(`out`),setTimeout(()=>{t(n),r(`in`)},300))},a=rn[e];return(0,q.jsxs)(`div`,{className:`mt-12 bg-white/8 border border-white/15 rounded-2xl p-5 overflow-hidden`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between mb-3`,children:[(0,q.jsx)(`p`,{className:`text-white/50 text-xs uppercase tracking-widest`,children:`Khách hàng nói gì?`}),(0,q.jsx)(`div`,{className:`flex gap-1.5`,children:rn.map((t,n)=>(0,q.jsx)(`button`,{onClick:()=>i(n),className:`h-1.5 rounded-full transition-all duration-300 ${n===e?`bg-orange-400 w-
45`:`bg-white/20 hover:bg-white/40 w-1.5`}`},n))})]}),(0,q.jsxs)(`div`,{style:{...{in:{opacity:1,transform:`translateY(0) scale(1)`,filter:`blur(0)`},out:{opacity:0,transform:`translateY(-12px) scale(0.96)`,filter:`blur(3px)`}}[n],transition:`all 0.4s cubic-bezier(0.4, 0, 0.2, 1)`},children:[(0,q.jsxs)(`p`,{className:`text-white/90 text-sm italic leading-relaxed min-h-[40px]`,children:[`"`,a.quote,`"`]}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2.5 mt-4`,children:[(0,q.jsx)(`div`,{className:`w-9 h-9 rounded-full bg-gradient-to-br ${a.gradient} flex items-center justify-center text-white text-[11px] font-black shadow-lg`,children:a.initials}),(0,q.jsxs)(`div`,{className:`text-left`,children:[(0,q.jsx)(`p`,{className:`text-white text-xs font-bold`,children:a.name}),(0,q.jsx)(`p`,{className:`text-white/40 text-[10px]`,children:a.role})]})]})]})]})}function cn(){Z(`Đăng ký`);let e=l(),t=$t(),[n]=o(),r=n.get(`ref`)||``,i=!!r,[a,s]=(0,K.useState)(!1),[c,d]=(0,K.useState)(!1),[f,p]=(0,K.useState)({fullName:``,username:``,email:``,password:``,confirm:``,service:``}),[m,h]=(0,K.useState)(!1),[g,_]=(0,K.useState)(!1),[v,b]=(0,K.useState)(``),[x,S]=(0,K.useState)(``),{captchaRef:ee,token:te,resetCaptcha:C}=tn();(0,K.useEffect)(()=>{let e=n.get(`svc`);e===`shortlink`||e===`traffic`?w(`service`,e):r&&fetch(`/api/auth/referrer/${r}`).then(e=>e.json()).then(e=>{(e.service_type===`shortlink`||e.service_type===`traffic`)&&(w(`service`,e.service_type),S(e.service_type))}).catch(()=>{})},[n,r]);let w=(e,t)=>p(n=>({...n,[e]:t}));return(0,q.jsxs)(`div`,{className:`min-h-[calc(100vh-66px)] bg-gray-50 flex`,children:[(0,q.jsxs)(`div`,{className:`hidden lg:flex lg:w-1/2 items-center justify-center p-12 relative`,style:{backgroundImage:`url(/login_hero_bg.png)`,backgroundSize:`cover`,backgroundPosition:`center`},children:[(0,q.jsx)(`div`,{className:`absolute inset-0 bg-[#0f172a]/60`}),(0,q.jsxs)(`div`,{className:`relative z-10 text-center max-w-md`,children:[(0,q.jsxs)(`h2`,{className:`text-3xl font-black text-white mb-4 uppercase leading-tight`,children:[`Bắt Đầu Tăng Trưởng`,(0,q.jsx)(`br`,{}),(0,q.jsx)(`span`,{className:`text-[#f97316]`,children:`Ngay Hôm Nay`})]}),(0,q.jsx)(`p`,{className:`text-white/70 text-base mb-10 leading-relaxed`,children:`Đăng ký miễn phí và nhận tư vấn chiến lược traffic từ chuyên gia chỉ sau 5 phút.`}),(0,q.jsx)(`ul`,{className:`space-y-3 text-left`,children:on.map(e=>(0,q.jsxs)(`li`,{className:`flex items-center gap-3 text-sm text-white/80`,children:[(0,q.jsx)(H,{className:`w-4 h-4 text-emerald-400 shrink-0`}),e]},e))}),(0,q.jsx)(sn,{})]})]}),(0,q.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-6 sm:p-12`,children:(0,q.jsxs)(`div`,{className:`w-full max-w-md`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-8`,children:[(0,q.jsx)(u,{to:`/`,className:`inline-block mb-6`,children:(0,q.jsx)(`img`,{src:`/traffic68_com.gif`,alt:`traffic68.com`,className:`h-14 w-auto mx-auto`})}),(0,q.jsx)(`h1`,{className:`text-2xl font-black text-[#1e3a8a] mb-1`,children:`Tạo tài khoản miễn phí`}),(0,q.jsx)(`p`,{className:`text-gray-500 text-sm`,children:`Bắt đầu tăng traffic ngay hôm nay`})]}),(0,q.jsxs)(`div`,{className:`bg-white rounded-2xl shadow-md border border-gray-100 p-8`,children:[g?(0,q.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-10 text-center`,children:[(0,q.jsx)(`div`,{className:`w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mb-4`,children:(0,q.jsx)(H,{className:`w-8 h-8 text-green-500`})}),(0,q.jsx)(`h3`,{className:`text-xl font-black text-[#1e3a8a] mb-2`,children:`Đăng ký thành công!`}),(0,q.jsxs)(`p`,{className:`text-gray-500 text-sm mb-5`,children:[`Tài khoản `,(0,q.jsxs)(`span`,{className:`font-bold text-orange-500`,children:[`@`,f.username]}),` đã được tạo.`,(0,q.jsx)(`br`,{}),`Chuyên gia sẽ liên hệ trong vòng 30 phút.`]}),(0,q.jsx)(u,{to:`/dang-nhap`,className:`gradient-btn text-white font-bold px-6 py-3 rounded-xl text-sm shadow-md`,children:`Đăng nhập ngay`})]}):(0,q.jsxs)(`form`,{onSubmit:async n=>{if(n.preventDefault(),b(``),f.password!==f.confirm){b(`Mật khẩu xác nhận không khớp.`);return}if(!f.service){b(`Vui lòng chọn loại dịch vụ bạn muốn sử dụng.`);return}if(!te){b(`Vui lòng xác nhận captcha trước khi đăng ký.`);return}h(!0);try{let n=await fetch(`/api/auth/register`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({email:f.email,password:f.password,name:f.fullName,username:f.username,phone:``,service:f.service,referralCode:r||``,captchaToken:te})}),i=await n.json();if(!n.ok){b(i.error||`Đăng ký thất bại`),C(),h(!1);return}i.token?(localStorage.setItem(`token`,i.token),localStorage.setItem(`user`,JSON.stringify(i.user)),t.success(`Tài khoản đã được tạo thành công!`,`Đăng ký thành công`),e(f.service===`
4shortlink`?`/worker/dashboard`:`/buyer/dashboard`)):(_(!0),t.success(`Tài khoản đã được tạo thành công!`,`Đăng ký thành công`))}catch{b(`Không thể kết nối đến máy chá»§`)}finally{h(!1)}},className:`space-y-4`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Họ và tên *`}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(F,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,name:`fullName`,value:f.fullName,onChange:e=>w(`fullName`,e.target.value),placeholder:`Nguyễn Văn A`,className:`w-full pl-10 pr-4 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition`})]})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Tên đăng nhập (Username) *`}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(F,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,name:`username`,value:f.username,onChange:e=>w(`username`,e.target.value),placeholder:`Username`,pattern:`[a-zA-Z0-9_]{3,20}`,title:`3–20 ký tá»±, chỉ gồm chữ, số và dấu _`,className:`w-full pl-10 pr-4 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition`})]}),(0,q.jsx)(`p`,{className:`text-[10px] text-gray-400 mt-1`,children:`3–20 ký tá»±, chỉ chữ thường, số và dấu _`})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Email *`}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(R,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:`email`,name:`email`,value:f.email,onChange:e=>w(`email`,e.target.value),placeholder:`[email protected]`,className:`w-full pl-10 pr-4 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition`})]})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Mật khẩu *`}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(W,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:a?`text`:`password`,name:`password`,value:f.password,onChange:e=>w(`password`,e.target.value),placeholder:`Tối thiểu 8 ký tá»±`,minLength:8,className:`w-full pl-10 pr-11 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition`}),(0,q.jsx)(`button`,{type:`button`,onClick:()=>s(!a),className:`absolute right-3.5 top-1/2 -translate-y-1/2 text-gray-400`,children:a?(0,q.jsx)(Pe,{className:`w-4 h-4`}):(0,q.jsx)(se,{className:`w-4 h-4`})})]})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Xác nhận mật khẩu *`}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(W,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:c?`text`:`password`,name:`confirm`,value:f.confirm,onChange:e=>w(`confirm`,e.target.value),placeholder:`Nhập lại mật khẩu`,className:`w-full pl-10 pr-11 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition`}),(0,q.jsx)(`button`,{type:`button`,onClick:()=>d(!c),className:`absolute right-3.5 top-1/2 -translate-y-1/2 text-gray-400`,children:c?(0,q.jsx)(Pe,{className:`w-4 h-4`}):(0,q.jsx)(se,{className:`w-4 h-4`})})]})]}),i&&(0,q.jsxs)(`div`,{className:`bg-gradient-to-r from-orange-50 to-amber-50 border border-orange-100 rounded-2xl p-4 mb-5 shadow-sm`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,q.jsx)(`div`,{className:`w-10 h-10 rounded-full bg-white shadow flex items-center justify-center flex-shrink-0`,children:(0,q.jsx)(y,{size:20,className:`text-orange-500`})}),(0,q.jsxs)(`div`,{className:`flex-1`,children:[(0,q.jsx)(`p`,{className:`text-sm font-bold text-slate-800`,children:`Đăng ký qua Liên kết giới thiệu`}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2 mt-0.5`,children:[(0,q.jsx)(`span`,{className:`text-[11px] font-medium text-slate-500 uppercase tracking-wide`,children:`Mã Ref:`}),(0,q.jsx)(`span`,{className:`text-xs font-mono font-bold text-orange-600 bg-white px-2 py-0.5 rounded-md border border-orange-100 shadow-sm`,children:r})]})]})]}),x&&(0,q.jsx)(`div`,{className:`mt-3 pt-3 border-t border-orange-200/60`,children:(0,q.jsx)(`p`,{className:`text-xs text-orange-800/80 font-medium`,children:`✨ Loại tài khoản đã được tá»± động thiết lập theo đường dẫn giới thiệu.`})})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-2`,children:`Bạn muốn sá»­ dụng dịch vụ nào? *`}),(0,q.jsx)(`div`,{className:`grid grid-cols-2 gap-3`,children:an.map(({value:e,label:t,icon:n,desc:r,color:i,iconColor:a,activeRing:o})=>{let s=x&&x!==e;return(0,q.jsxs)(`button`,{type:`button`,disabled:s,onClick:()=>w(`service`,e),className:`flex flex-col items-center gap-2 p-4 rounded-xl border-2 text-center transition-all ${f.service===e?`${i} ${o}`:s?`border-gray-100 bg-gray-50 opacity-40 cursor-not-allowed filter grayscale`:`border-gray-200 bg-white hover:border-gray-300 shadow-sm`}`,children:[(0,q.jsx)(n,{className:`w-6 h-6 ${f.service===e?a:`text-gray-400`}`}),(0,q.jsx)(`span`,{className:`text-sm font-bold ${f.service===e?`text-gray-800`:`text-gray-500`}`,children:t}),(0,q.jsx)(`span`,{className:`text-[10px] text-gray-400 leading-tight`,children:r})]},e)})})]}),v&&(0,q.jsxs)(`p`,{className:`text-red-500 text-xs font-semibold bg-red-50 border border-red-200 rounded-lg px-3 py-2`,children:[`❌ `,v]}),(0,q.jsx)(`div`,{className:`flex justify-center`,children:(0,q.jsx)(`div`,{ref:ee})}),(0,q.jsx)(`button`,{type:`submit`,disabled:m,className:`w-full gradient-btn text-white font-black py-3.5 rounded-xl shadow-lg flex items-center justify-center gap-2 text-sm disabled:opacity-70 mt-2`,children:m?(0,q.
4jsx)(`span`,{className:`w-4 h-4 border-2 border-white border-t-transparent rounded-full animate-spin`}):`TẠO TÀI KHOẢN`})]}),!g&&(0,q.jsx)(`div`,{className:`mt-6 pt-5 border-t border-gray-100 text-center`,children:(0,q.jsxs)(`p`,{className:`text-sm text-gray-500`,children:[`Đã có tài khoản?`,` `,(0,q.jsx)(u,{to:`/dang-nhap`,className:`text-[#f97316] font-bold hover:underline`,children:`Đăng nhập`})]})})]}),(0,q.jsxs)(`p`,{className:`text-center text-xs text-gray-400 mt-5`,children:[`Bằng cách đăng ký, bạn đồng ý với`,` `,(0,q.jsx)(`a`,{href:`#`,className:`text-[#1e3a8a] hover:underline`,children:`Điều khoản`}),` và`,` `,(0,q.jsx)(`a`,{href:`#`,className:`text-[#1e3a8a] hover:underline`,children:`Chính sách bảo mật`})]})]})})]})}var ln=[{bg:`bg-blue-50`,borderColor:`border-blue-100`,icon:(0,q.jsx)(`img`,{src:`/google_icon.png`,alt:`Google`,className:`w-24 h-24 object-contain mx-auto mb-4`}),title:`GOOGLE SEARCH TRAFFIC`,features:[{icon:M,text:`Tìm kiếm từ khóa chính xác`},{icon:P,text:`Tăng SEO CTR tự nhiên`},{icon:He,text:`Cải thiện SERP`},{icon:ge,text:`Báo cáo chi tiết thứ hạng`}]},{bg:`bg-pink-50`,borderColor:`border-pink-100`,icon:(0,q.jsx)(`img`,{src:`/social_icons.png`,alt:`Social`,className:`w-24 h-24 object-contain mx-auto mb-4`}),title:`SOCIAL TRAFFIC`,features:[{icon:Le,text:`Traffic từ Fanpage/Nhóm`},{icon:pe,text:`Tăng tương tác thật trên MXH`},{icon:Ne,text:`Tăng Reach thương hiệu`},{icon:je,text:`Traffic từ bài đăng/video xã hội`}]},{bg:`bg-green-50`,borderColor:`border-green-100`,icon:(0,q.jsx)(`img`,{src:`/direct_icon.png`,alt:`Direct`,className:`w-24 h-24 object-contain mx-auto mb-4`}),title:`DIRECT TRAFFIC`,features:[{icon:Ve,text:`Truy cập URL trực tiếp`},{icon:Ee,text:`Tăng Time on Page`},{icon:I,text:`Giảm Bounce Rate`},{icon:k,text:`Tùy chỉnh nền tảng & thiết bị`}]}],un=[{icon:E,color:`text-blue-500`,bg:`bg-blue-50`,title:`An toàn & Bảo mật`,desc:`Top 1-3 Google trong 60-90 ngày`},{icon:I,color:`text-green-500`,bg:`bg-green-50`,title:`Tăng SEO bền vững`,desc:`Time on Page, đọc & tương tác`},{icon:re,color:`text-orange-500`,bg:`bg-orange-50`,title:`Hỗ trợ chuyên nghiệp`,desc:`Traffic bền vững, không nhận tạo`}],dn=[`Taboola`,`Teads`,`Criteo`,`Outbrain`,`AdRoll`,`The Trade Desk`];function fn(){return Z(`Dịch vụ`),(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:`hero-bg py-20`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center relative z-10`,children:[(0,q.jsxs)(`h1`,{className:`text-4xl sm:text-5xl font-black text-white mb-4 uppercase leading-tight`,children:[`Giải Pháp `,(0,q.jsx)(`span`,{className:`text-[#f97316]`,children:`Traffic User`}),` Toàn Diện`]}),(0,q.jsx)(`p`,{className:`text-white/70 text-lg max-w-2xl mx-auto`,children:`Dẫn dắt traffic chất lượng cao từ nhiều nguồn để tăng thứ hạng SEO và chuyển đổi cho website của bạn.`})]})}),(0,q.jsx)(`section`,{className:`py-16 bg-gray-50`,children:(0,q.jsxs)(`div`,{className:`max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 text-center`,children:[(0,q.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-6 mb-12`,children:ln.map(({bg:e,borderColor:t,icon:n,title:r,features:i})=>(0,q.jsxs)(`div`,{className:`${e} border ${t} rounded-2xl p-6 sm:p-8 flex flex-col items-center text-left
5                            transition-all hover:shadow-lg hover:-translate-y-1`,children:[n,(0,q.jsx)(`h3`,{className:`text-base sm:text-lg font-black text-[#1e3a5f] mb-5 text-center tracking-wide uppercase`,children:r}),(0,q.jsx)(`ul`,{className:`space-y-3 w-full flex-1`,children:i.map(({icon:e,text:t})=>(0,q.jsxs)(`li`,{className:`flex items-start gap-2.5 text-sm text-gray-700`,children:[(0,q.jsx)(H,{className:`w-4 h-4 text-green-500 shrink-0 mt-0.5`}),(0,q.jsx)(e,{size:14,className:`text-gray-400 shrink-0 mt-0.5`}),t]},t))}),(0,q.jsxs)(u,{to:`/bang-gia`,className:`mt-6 inline-flex items-center gap-2 bg-[#f97316] hover:bg-[#ea580c] text-white
6                             font-bold text-sm px-6 py-2.5 rounded-lg shadow-md shadow-orange-200
7                             transition-all hover:-translate-y-0.5 active:scale-95`,children:[`XEM CHI TIẾT `,(0,q.jsx)(T,{size:14})]})]},r))}),(0,q.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-3 gap-5 max-w-4xl mx-auto`,children:un.map(({icon:e,color:t,bg:n,title:r,de
7sc:i})=>(0,q.jsxs)(`div`,{className:`bg-white border border-gray-100 rounded-2xl p-5 flex items-center gap-4
8                           shadow-sm hover:shadow-md transition-all`,children:[(0,q.jsx)(`div`,{className:`w-11 h-11 ${n} rounded-xl flex items-center justify-center shrink-0`,children:(0,q.jsx)(e,{size:20,className:t})}),(0,q.jsxs)(`div`,{className:`text-left`,children:[(0,q.jsx)(`p`,{className:`text-sm font-bold text-[#1e3a5f]`,children:r}),(0,q.jsx)(`p`,{className:`text-xs text-gray-400 mt-0.5`,children:i})]})]},r))})]})}),(0,q.jsx)(`section`,{className:`py-10 bg-gray-50 border-y border-gray-100`,children:(0,q.jsxs)(`div`,{className:`max-w-5xl mx-auto px-4 text-center`,children:[(0,q.jsx)(`p`,{className:`text-[10px] font-bold text-gray-400 uppercase tracking-[0.25em] mb-6`,children:`Được tin tưởng & chứng nhận bởi`}),(0,q.jsx)(`div`,{className:`flex items-center justify-center gap-8 sm:gap-12 flex-wrap opacity-30`,children:dn.map(e=>(0,q.jsx)(`span`,{className:`text-lg sm:text-xl font-black text-gray-600 tracking-wider`,children:e},e))})]})}),(0,q.jsx)(yt,{}),(0,q.jsx)(J,{})]})}var pn=`Asia/Ho_Chi_Minh`;function Q(e){return Math.round(Number(e)||0).toLocaleString(`vi-VN`)}function mn(e){if(!e)return`—`;let t=new Date(e);return isNaN(t)?`—`:t.toLocaleDateString(`vi-VN`,{timeZone:pn,day:`2-digit`,month:`2-digit`,year:`numeric`})}function hn(e){if(!e)return`—`;let t=new Date(e);return isNaN(t)?`—`:t.toLocaleDateString(`vi-VN`,{timeZone:pn,day:`2-digit`,month:`2-digit`})}function gn(e){if(!e)return`—`;let t=new Date(e);return isNaN(t)?`—`:t.toLocaleString(`vi-VN`,{timeZone:pn,day:`2-digit`,month:`2-digit`,year:`numeric`,hour:`2-digit`,minute:`2-digit`,hour12:!1})}var _n={google_search:{bg:`bg-blue-50`,border:`border-blue-100`,icon:`/google_icon.png`,title:`GOOGLE SEARCH TRAFFIC`},social:{bg:`bg-pink-50`,border:`border-pink-100`,icon:`/social_icons.png`,title:`SOCIAL TRAFFIC`},direct:{bg:`bg-green-50`,border:`border-green-100`,icon:`/direct_icon.png`,title:`DIRECT TRAFFIC`}},vn=[{q:`Tôi có thể nâng cấp gói bất cứ lúc nào không?`,a:`Có, bạn có thể nâng hoặc hạ gói bất cứ lúc nào. Phần dư sẽ được tính theo tỷ lệ ngày.`},{q:`Có hợp đồng ràng buộc dài hạn không?`,a:`Không. Tất cả gói đều thanh toán theo tháng, hủy bất cứ lúc nào không mất phí.`},{q:`Chính sách hoàn tiền như thế nào?`,a:`Cam kết hoàn tiền 100% trong 30 ngày nếu traffic không đạt chỉ số đã thỏa thuận.`},{q:`Traffic có ảnh hưởng đến Google Analytics không?`,a:`Có. Traffic sẽ hiển thị trong Google Analytics như người dùng thực tế vì đây là user thật.`}];function yn(){Z(`Bảng giá`);let[e,t]=(0,K.useState)([]),[n,r]=(0,K.useState)({discount_code:`SALE_ALL_40`,discount_percent:`40`,discount_label:``,discount_enabled:`true`}),[i,a]=(0,K.useState)(!0);(0,K.useEffect)(()=>{fetch(`/api/pricing`).then(e=>e.json()).then(e=>{e.config&&r(t=>({...t,...e.config}));let n={};(e.tiers||[]).forEach(e=>{n[e.traffic_type]||(n[e.traffic_type]=[]),n[e.traffic_type].push(e)}),t([`google_search`,`social`,`direct`].filter(e=>n[e]).map(e=>({..._n[e]||{bg:`bg-gray-50`,border:`border-gray-100`,icon:``,title:e},tiers:n[e].map(e=>({dur:e.duration,v1:e.v1_price,d1:e.v1_discount,v2:e.v2_price,d2:e.v2_discount}))})))}).catch(console.error).finally(()=>a(!1))},[]);let o=n.discount_enabled===`true`,s=n.discount_percent||`40`;return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:`hero-bg py-20`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center relative z-10`,children:[(0,q.jsxs)(`h1`,{className:`text-4xl sm:text-5xl font-black text-white mb-4 uppercase leading-tight`,children:[`Bảng Giá `,(0,q.jsx)(`span`,{className:`text-[#f97316]`,children:`Dịch Vụ`})]}),(0,q.jsx)(`p`,{className:`text-white/70 text-lg max-w-2xl mx-auto`,children:`Bảng giá chi tiết theo loại traffic và thời lượng.`})]})}),(0,q.jsx)(`section`,{className:`py-16 bg-gray-50`,children:(0,q.jsxs)(`div`,{className:`max-w-[1600px] mx-auto px-4 sm:px-6 lg:px-8`,children:[o&&(0,q.jsx)(`div`,{className:`text-center mb-10`,children:(0,q.jsxs)(`div`,{className:`inline-flex items-center gap-3 bg-gradient-to-r from-red-500 to-orange-500 text-white
9                              rounded-2xl px-6 py-3 shadow-lg shadow-red-200/40`,children:[(0,q.jsx)(j,{size:18}),(0,q.jsxs)(`div`,{className:`text-left`,children:[(0,q.jsx)(`p`,{className:`text-sm font-black`,children:n.discount_label||`Giảm giá ${s}%`}),(0,q.jsxs)(`p`,{className:`text-xs opacity-80`,children:[`Trong lúc tạo chiến dịch má
9»›i add mã giảm giá `,(0,q.jsx)(`strong`,{className:`bg-white/20 px-1.5 py-0.5 rounded`,children:n.discount_code}),`.`]})]}),(0,q.jsxs)(`span`,{className:`text-2xl font-black`,children:[`Giảm `,s,`%`]})]})}),i?(0,q.jsx)(`div`,{className:`flex justify-center py-16`,children:(0,q.jsx)(`div`,{className:`w-8 h-8 border-4 border-orange-500 border-t-transparent rounded-full animate-spin`})}):(0,q.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-6`,children:e.map(({bg:e,border:t,icon:n,title:r,tiers:i})=>(0,q.jsxs)(`div`,{className:`${e} border ${t} rounded-2xl p-6 flex flex-col transition-all hover:shadow-lg hover:-translate-y-1`,children:[(0,q.jsx)(`img`,{src:n,alt:r,className:`w-20 h-20 object-contain mx-auto mb-3`}),(0,q.jsx)(`h3`,{className:`text-center text-base font-black text-[#1e3a5f] uppercase tracking-wide mb-5`,children:r}),(0,q.jsx)(`div`,{className:`space-y-4 flex-1`,children:i.map(({dur:e,v1:t,d1:n,v2:r,d2:i})=>(0,q.jsxs)(`div`,{className:`bg-white/60 rounded-xl p-3 border border-gray-100/80`,children:[(0,q.jsxs)(`p`,{className:`text-sm text-gray-700 mb-1.5`,children:[`- `,(0,q.jsxs)(`strong`,{children:[`Gói `,e,`:`]}),` `,(0,q.jsxs)(`span`,{className:`text-gray-500`,children:[`[Thời gian: `,(0,q.jsx)(`strong`,{children:e}),`]`]})]}),(0,q.jsxs)(`div`,{className:`flex items-start gap-1.5 mb-1`,children:[(0,q.jsx)(H,{size:14,className:`text-green-500 shrink-0 mt-0.5`}),(0,q.jsxs)(`span`,{className:`text-sm`,children:[`Version 1 (2 bước)`,` `,(0,q.jsx)(`span`,{className:`text-[10px] font-bold text-white bg-orange-500 px-1.5 py-0.5 rounded`,children:`Best`}),`:`,` `,o?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`span`,{className:`line-through text-gray-400`,children:[Q(t),` VNĐ`]}),` `,(0,q.jsxs)(`strong`,{children:[Q(n),` VNĐ`]}),` `,(0,q.jsxs)(`span`,{className:`text-red-500 font-bold text-xs`,children:[`(-`,s,`%)`]})]}):(0,q.jsxs)(`strong`,{children:[Q(t),` VNĐ`]})]})]}),(0,q.jsxs)(`p`,{className:`text-sm text-gray-600 ml-5`,children:[`Version 2 (1 bước):`,` `,o?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`span`,{className:`line-through text-gray-400`,children:[Q(r),` VNĐ`]}),` `,(0,q.jsxs)(`strong`,{children:[Q(i),` VNĐ`]}),` `,(0,q.jsxs)(`span`,{className:`text-red-500 font-bold text-xs`,children:[`(-`,s,`%)`]})]}):(0,q.jsxs)(`strong`,{children:[Q(r),` VNĐ`]})]})]},e))}),(0,q.jsxs)(u,{to:`/dang-ky`,className:`mt-5 flex items-center justify-center gap-2 bg-[#f97316] hover:bg-[#ea580c]
10                               text-white font-bold text-sm px-6 py-3 rounded-xl shadow-md shadow-orange-200
11                               transition-all hover:-translate-y-0.5 active:scale-95`,children:[`MUA GÓI `,(0,q.jsx)(T,{size:16})]})]},r))}),(0,q.jsx)(`p`,{className:`text-center text-sm text-gray-400 mt-8`,children:`✓ Không hợp đồng dài hạn \xA0·\xA0 ✓ Há»§y bất cứ lúc nào \xA0·\xA0 ✓ Hoàn tiền 100%`})]})}),(0,q.jsx)(`section`,{className:`py-16 bg-white`,children:(0,q.jsxs)(`div`,{className:`max-w-5xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-12`,children:[(0,q.jsx)(`h2`,{className:`text-3xl font-black text-[#1e3a8a]`,children:`CÂU HỎI VỀ GIÁ`}),(0,q.jsx)(`div`,{className:`w-16 h-1 bg-[#f97316] mx-auto mt-4 rounded-full`})]}),(0,q.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-5`,children:vn.map(({q:e,a:t})=>(0,q.jsxs)(`div`,{className:`bg-gray-50 rounded-2xl p-6 border border-gray-100`,children:[(0,q.jsx)(`h4`,{className:`font-bold text-[#1e3a8a] text-sm mb-2`,children:e}),(0,q.jsx)(`p`,{className:`text-sm text-gray-500 leading-relaxed`,children:t})]},e))})]})}),(0,q.jsx)(yt,{}),(0,q.jsx)(J,{})]})}var bn=[`Tất cả`,`Traffic & SEO`,`Thanh toán`,`Kỹ thuật`,`Chính sách`],xn=[{category:`Traffic & SEO`,q:`Traffic từ traffic68.com có phải người thật không?`,a:`100% user thật, truy cập từ thiết bị thật (desktop, mobile), hành vi tá»± nhiên, thời gian xem trang phù hợp. Không có bất kỳ bot hay phần mềm giả mạo nào.`},{category:`Traffic & SEO`,q:`Website tôi có bị Google phạt không?`,a:`Không. Chúng tôi tuân thá»§ chính sách Google Webmaster. Traffic hoạt động như người dùng bình thường, không vi phạm bất kỳ thuật toán nào cá»
11§a Google.`},{category:`Traffic & SEO`,q:`Bao lâu thì thấy kết quả SEO rõ rệt?`,a:`Traffic bắt đầu chạy trong 24h sau khi kích hoạt. Kết quả SEO thường thấy rõ sau 2–4 tuần. Thứ hạng Google cải thiện trong 1–3 tháng.`},{category:`Traffic & SEO`,q:`Tôi có thể nhắm mục tiêu địa lý cụ thể không?`,a:`Có. Chúng tôi hỗ trợ nhắm mục tiêu theo quốc gia, tỉnh/thành phố, thậm chí theo bán kính địa lý từ gói Pro trở lên.`},{category:`Traffic & SEO`,q:`Traffic có ảnh hưởng đến Google Analytics không?`,a:`Có. Vì đây là user thật nên sẽ hiển thị trong Google Analytics như người dùng thá»±c tế. Bạn có thể xác minh trong GA và Google Search Console.`},{category:`Thanh toán`,q:`Các phương thức thanh toán được chấp nhận?`,a:`Chúng tôi chấp nhận: Chuyển khoản ngân hàng, thẻ Visa/Mastercard, USDT/USDC, Momo, ZaloPay và PayPal.`},{category:`Thanh toán`,q:`Chính sách hoàn tiền như thế nào?`,a:`Cam kết hoàn tiền 100% trong 30 ngày nếu traffic không đạt chỉ số đã thỏa thuận trong hợp đồng. Không hỏi thêm câu hỏi nào.`},{category:`Thanh toán`,q:`Tôi có phải ký hợp đồng dài hạn không?`,a:`Không. Tất cả gói đều thanh toán theo tháng, không ràng buộc. Bạn có thể há»§y hoặc nâng cấp bất cứ lúc nào.`},{category:`Kỹ thuật`,q:`Tôi cần chuẩn bị gì trước khi đăng ký?`,a:`Chỉ cần URL website và mục tiêu traffic (từ khóa, địa lý, ngành hàng). Chuyên gia sẽ tư vấn gói phù hợp và thiết lập chiến dịch cho bạn.`},{category:`Kỹ thuật`,q:`Tôi có thể theo dõi traffic thá»±c tế không?`,a:`Có. Bạn có thể xác minh qua Google Analytics, Google Search Console và dashboard riêng cá»§a traffic68.com với dữ liệu real-time 24/7.`},{category:`Kỹ thuật`,q:`Có hỗ trợ API không?`,a:`Có. Gói Enterprise có hỗ trợ REST API đầy đủ để tích hợp với hệ thống nội bộ cá»§a bạn. Tài liệu API chi tiết sẽ được cung cấp sau khi đăng ký.`},{category:`Chính sách`,q:`traffic68.com có cam kết kết quả không?`,a:`Có. Chúng tôi ký hợp đồng cam kết chỉ số traffic, hoàn tiền 100% nếu không đạt mục tiêu đã thỏa thuận trong thời gian quy định.`},{category:`Chính sách`,q:`Dữ liệu website cá»§a tôi có được bảo mật không?`,a:`Tuyệt đối. Tất cả thông tin được mã hóa SSL 256-bit, không chia sẻ với bên thứ ba theo chính sách bảo mật GDPR.`}];function Sn({q:e,a:t}){let[n,r]=(0,K.useState)(!1);return(0,q.jsxs)(`div`,{className:`bg-white rounded-xl shadow-sm border border-gray-100 overflow-hidden`,children:[(0,q.jsxs)(`button`,{onClick:()=>r(!n),className:`w-full flex items-center justify-between gap-4 px-5 py-4 text-left hover:bg-gray-50 transition-colors`,children:[(0,q.jsx)(`span`,{className:`font-semibold text-[#1e3a8a] text-sm leading-snug`,children:e}),(0,q.jsx)(U,{className:`w-5 h-5 text-[#f97316] shrink-0 transition-transform duration-300 ${n?`rotate-180`:``}`})]}),(0,q.jsx)(`div`,{className:`faq-answer ${n?`open`:``}`,children:(0,q.jsx)(`p`,{className:`px-5 pb-4 text-sm text-gray-500 leading-relaxed`,children:t})})]})}function Cn(){Z(`Câu hỏi thường gặp`);let[e,t]=(0,K.useState)(`Tất cả`),[n,r]=(0,K.useState)(``),i=xn.filter(t=>{let r=e===`Tất cả`||t.category===e,i=t.q.toLowerCase().includes(n.toLowerCase())||t.a.toLowerCase().includes(n.toLowerCase());return r&&i});return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:`hero-bg py-20`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center relative z-10`,children:[(0,q.jsxs)(`h1`,{className:`text-4xl sm:text-5xl font-black text-white mb-4 uppercase`,children:[`Câu Hỏi `,(0,q.jsx)(`span`,{className:`text-[#f97316]`,children:`Thường Gặp`})]}),(0,q.jsx)(`p`,{className:`text-white/70 text-lg max-w-2xl mx-auto mb-8`,children:`Tìm câu trả lời nhanh chóng cho mọi thắc mắc về dịch vụ traffic cá»§a chúng tôi.`}),(0,q.jsxs)(`div`,{className:`relative max-w-md mx-auto`,children:[(0,q.jsx)(M,{className:`absolute left-4 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{type:`text`,placeholder:`Tìm kiếm câu hỏi...`,value:n,onChange:e=>r(e.target.value),className:`w-full pl-11 pr-4 py-3 rounded-xl bg-white text-sm text-gray-700 border-0 shadow-lg focus:outline-none focus:ring-2 focus:ring-orange-400`})]})]})}),(0,q.jsx)(`section`,{className:`py-20 bg-gray-50`,children:(0,q.jsxs)(`div`,{className:`max-w-5xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsx)(`div`,{className:`flex flex-wrap gap-2 justify-center mb-10`,children:bn.map(n=>(0,q.jsx)(`button`,{onClick:()=>t(n),className:`px-4 py-2 rounded-full text-sm font-semibold border transition-all ${e===n?`bg-[#1e3a8a] text-white border-[#1e3a8a] shadow-md`:`bg-white text-gray-600 border-gray-200 hover:border-[#1e3a8a] hover:text-[#1e3a8a]`}`,children:n},n))}),i.length===0?(0,q.jsxs)(`div`,{className:`text-center py-16`,children:[(0,q.jsx)(Re,{className:`w-12 h-12 text-gray-300 mx-auto mb-3`}),(0,q.jsx)(`p`,{className:`text-gray-400 font-medium`,children:`Không tìm thấy câu hỏi phù hợp.`})]}):(0,q.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4`,children:i.map(e=>(0,q.jsx)(Sn,{...e},e.q))}),(0,q.jsxs)(`div`,{className:`mt-14 bg-[#1e3a8a] rounded-2xl p-8 text-center`,children:[(0,q.jsx)(`h3`,{className:`text-xl font-black text-white mb-2`,children:`Không tìm thấy câu trả lời?`}),(0,q.jsx)(`p`,{className:`text-white/70 text-sm mb-5`,children:`Đội ngÅ© hỗ trợ cá»§a chúng tôi luôn sẵn sàng 24/7`}),(0,q.jsx)(`a`,{href:`/lien-he`,className:`inline-flex items-center gap-2 orange-btn text-white font-bold px-6 py-3 rounded-xl shadow-lg text-sm`,children:`Liên hệ hỗ trợ ngay`})]})]})}),(0,q.jsx)(yt,{}),(0,q.jsx)(J,{})]})}var wn=[{id:1,slug:`7-chien-luoc-tang-traffic-organic`,tag:`SEO`,tagColor:`bg-blue-100 text-blue-700`,title:`7 Chiến Lược Tăng Traffic Organic Bền Vững Năm 2025`,excerpt:`Khám phá những phương pháp hiệu quả nhất để tăng lượt truy cập tá»± nhiên từ Google mà không vi phạm chính sách Webmaster.`,author:`Nguyễn Minh`,date:`12 tháng 3, 2025`,readTime:`8 phút đọc`,gradient:`from-blue-500 to-blue-700`,cover:`/blog_1.png`,content:`
12## Giới thiệu
13
14Traffic organic (tá»± nhiên) là nguồn traffic quý giá nhất cho má
14»i website. Khác với traffic trả phí, traffic organic mang lại lượng truy cập bền vững, chi phí thấp và tá»· lệ chuyển đổi cao hÆ¡n.
15
16Trong bài viết này, chúng tôi sẽ chia sẻ **7 chiến lược** đã được kiểm chứng để tăng traffic organic một cách bền vững trong năm 2025.
17
18## 1. Tối ưu hóa On-Page SEO
19
20On-Page SEO là nền tảng của mọi chiến lược tăng traffic organic. Đảm bảo rằng:
21
22- **Title tag** chứa từ khóa chính và dưới 60 ký tự
23- **Meta description** hấp dẫn, chứa từ khóa và dưới 160 ký tự
24- **Heading (H1-H6)** sử dụng từ khóa một cách tự nhiên
25- **Internal linking** hợp lý để phân phối link juice
26- **URL** ngắn gọn, chứa từ khóa chính
27
28## 2. Content Marketing chất lượng cao
29
30Nội dung vẫn là "vua" trong SEO. Để tạo nội dung chất lượng:
31
32- Nghiên cứu từ khóa kỹ lưỡng với công cụ như Ahrefs, SEMrush
33- Viết bài dài, chi tiết (2,000+ từ) cho các chủ đề quan trọng
34- Sử dụng hình ảnh, video, infographic minh họa
35- Cập nhật nội dung cũ thường xuyên
36- Tạo content hub xung quanh các chủ đề chính
37
38## 3. Technical SEO
39
40Các yếu tố kỹ thuật ảnh hưởng trực tiếp đến thứ hạng:
41
42- **Core Web Vitals**: LCP < 2.5s, FID < 100ms, CLS < 0.1
43- **Mobile-first indexing**: Website phải responsive hoàn hảo
44- **Site speed**: Tối ưu hình ảnh, sử dụng CDN, lazy loading
45- **Schema markup**: Giúp Google hiểu nội dung tốt hơn
46- **XML Sitemap & Robots.txt**: Cấu hình đúng cách
47
48## 4. Xây dựng Backlink chất lượng
49
50Backlink vẫn là yếu tố xếp hạng quan trọng nhất:
51
52- Guest posting trên các website uy tín trong ngành
53- Tạo nội dung có giá trị cao để thu hút backlink tự nhiên
54- Digital PR và media outreach
55- Broken link building
56- Tham gia cộng đồng và diễn đàn chuyên ngành
57
58## 5. Tối ưu User Experience (UX)
59
60Google ngày càng chú trọng trải nghiệm người dùng:
61
62- Thiết kế giao diện trực quan, dễ sử dụng
63- Giảm bounce rate bằng nội dung hấp dẫn
64- Tăng time on page với multimedia content
65- Tối ưu navigation và site structure
66- A/B testing liên tục để cải thiện
67
68## 6. Local SEO
69
70Nếu bạn có doanh nghiệp địa phương:
71
72- Tối ưu Google Business Profile
73- Thu thập đánh giá từ khách hàng
74- Tạo nội dung địa phương (local content)
75- Đăng ký trên các website yellow pages Việt Nam
76- Sử dụng schema LocalBusiness
77
78## 7. Theo dõi và phân tích dữ liệu
79
80Không thể cải thiện những gì không đo lường được:
81
82- Sử dụng Google Analytics 4 để theo dõi traffic
83- Google Search Console để phân tích hiệu suất tìm kiếm
84- Theo dõi keyword rankings hàng tuần
85- Phân tích đối thủ cạnh tranh
86- Điều chỉnh chiến lược dựa trên dữ liệu thực tế
87
88## Kết luận
89
90Tăng traffic organic là một quá trình dài hạn, đòi hỏi sự kiên nhẫn và nhất quán. Bằng cách áp dụng 7 chiến lược trên, website của bạn sẽ từng bước cải thiện thứ hạng và thu hút lượng truy cập tự nhiên bền vững.
91
92> **Lưu ý**: Kết hợp với dịch vụ traffic user thật từ Traffic68 sẽ giúp tăng tốc quá trình cải thiện SEO đáng kể.
93    `},{id:2,slug:`so-sanh-traffic-user-that-vs-bot`,tag:`Traffic`,tagColor:`bg-orange-100 text-orange-700`,title:`So Sánh Traffic User Thật vs Bot: Tại Sao Sự Khác Biệt Quan Trọng?`,excerpt:`Phân tích chuyên sâu về sự khác biệt giữa traffic user thật và bot, và ảnh hưởng của chúng đến SEO và Google Analytics.`,author:`Trần Lan`,date:`8 tháng 3, 2025`,readTime:`6 phút đọc`,gradient:`from-orange-400 to-orange-600`,cover:`/blog_2.png`,content:`
94## Traffic User Thật là gì?
95
96Traffic user thật là lượt truy cập đến từ **người dùng thực tế**, sử dụng thiết bị thật (desktop, mobile, tablet) với hành vi tự nhiên như đọc bài, scroll, click link, và tương tác với nội dung.
97
98### Đặc điểm nhận biết traffic user thật:
99- Thời gian trên trang (Time on Page) hợp lý: 1-5 phút
100- Bounce rate tự nhiên: 40-60%
101- Nhiều pageviews per session
102- Hành vi scroll, click tự nhiên
103- Đến từ nhiều nguồn khác nhau (organic, social, direct)
104
105## Traffic Bot là gì?
106
107Traffic bot là lượt truy cập được tạo ra bởi **phần mềm tự động** (bot), không phải người thật. Bot có thể mô phỏng hành vi cơ bản như
107ng thường thiếu sự tự nhiên.
108
109### Dấu hiệu nhận biết traffic bot:
110- Time on Page cực ngắn (dưới 5 giây)
111- Bounce rate cao bất thường (95-100%)
112- Không có tương tác (không scroll, không click)
113- Traffic đột biến bất thường
114- Đến từ IP giống nhau hoặc datacenter
115
116## Ảnh hưởng đến SEO
117
118### Traffic User Thật giúp:
119- ✅ Tăng CTR tự nhiên trên Google SERP
120- ✅ Giảm bounce rate → Tín hiệu tích cực cho Google
121- ✅ Tăng time on page → Cải thiện user engagement
122- ✅ Tạo tín hiệu social proof tự nhiên
123- ✅ An toàn tuyệt đối với Google Algorithm
124
125### Traffic Bot gây:
126- ❌ Google penalty nếu bị phát hiện
127- ❌ Méo dữ liệu Google Analytics
128- ❌ Không tạo chuyển đổi thực tế
129- ❌ Lãng phí ngân sách quảng cáo
130- ❌ Có thể bị de-index website
131
132## Cách Google phát hiện traffic bot
133
134Google sử dụng nhiều phương pháp tinh vi:
135
1361. **Browser fingerprinting**: Kiểm tra thông tin trình duyệt
1372. **Behavior analysis**: Phân tích hành vi click, scroll
1383. **IP analysis**: Phát hiện traffic từ datacenter
1394. **JavaScript execution**: Bot thường không execute JS
1405. **Machine learning**: Mô hình AI phát hiện anomaly
141
142## Tại sao chọn Traffic User Thật?
143
144Đầu tư vào traffic user thật là quyết định thông minh vì:
145
146- **An toàn SEO**: Không vi phạm chính sách Google
147- **ROI cao hơn**: Traffic chất lượng → Chuyển đổi thực tế
148- **Dữ liệu chính xác**: Phân tích đúng hành vi khách hàng
149- **Bền vững**: Không lo bị penalty hay mất traffic đột ngột
150
151## Kết luận
152
153Sự khác biệt giữa traffic user thật và bot không chỉ là về số lượng, mà còn về **chất lượng và an toàn**. Hãy luôn ưu tiên traffic từ người dùng thật để xây dựng website bền vững.
154    `},{id:3,slug:`toi-uu-ty-le-chuyen-doi-cro`,tag:`CRO`,tagColor:`bg-green-100 text-green-700`,title:`Tối Ưu Tỷ Lệ Chuyển Đổi: Từ Traffic Đến Doanh Thu Thực`,excerpt:`Hướng dẫn toàn diện để biến lượt truy cập website thành khách hàng thực sự với các chiến thuật CRO đã được kiểm chứng.`,author:`Lê Đức`,date:`5 tháng 3, 2025`,readTime:`10 phút đọc`,gradient:`from-emerald-500 to-emerald-700`,cover:`/blog_3.png`,content:`
155## CRO là gì?
156
157**CRO (Conversion Rate Optimization)** là quá trình tối ưu hóa website để tăng tỷ lệ người dùng thực hiện hành động mong muốn — mua hàng, đăng ký, liên hệ...
158
159Công thức tính: **Conversion Rate = (Số chuyển đổi / Tổng traffic) × 100%**
160
161## Tại sao CRO quan trọng?
162
163- Tăng doanh thu mà **không cần tăng chi phí traffic**
164- 1% tăng conversion rate có thể = hàng triệu đồng/tháng
165- Hiểu rõ hơn hành vi khách hàng
166- Tối ưu ROI cho mọi kênh marketing
167
168## 5 Chiến thuật CRO hiệu quả nhất
169
170### 1. Tối ưu Landing Page
171
172- **Headline rõ ràng**: Nêu bật giá trị chính trong 3 giây đầu
173- **CTA nổi bật**: Nút hành động màu sắc tương phản, vị trí dễ thấy
174- **Social proof**: Testimonial, rating, số liệu khách hàng
175- **Loại bỏ distraction**: Giảm menu, sidebar không cần thiết
176
177### 2. A/B Testing
178
179- Test từng yếu tố: headline, CTA, hình ảnh, layout
180- Chạy test đủ lâu để có kết quả thống kê (2-4 tuần)
181- Sử dụng công cụ: Google Optimize, VWO, Optimizely
182- Test 1 yếu tố tại 1 thời điểm
183
184### 3. Tối ưu Form
185
186- Giảm số trường form xuống tối thiểu
187- Sử dụng multi-step form cho form dài
188- Auto-fill và validation real-time
189- Thêm progress bar cho form nhiều bước
190
191### 4. Page Speed Optimization
192
193- Mỗi giây delay = giảm 7% conversion
194- Tối ưu hình ảnh (WebP, lazy loading)
195- Minify CSS/JS
196- Sử dụng CDN
197
198### 5. Personalization
199
200- Nội dung động theo segment khách hàng
201- Retargeting popup cho returning visitors
202- Gợi ý sản phẩm dựa trên hành vi
203- Email marketing personalized
204
205## Kết luận
206
207CRO không phải là hoạt động một lần mà là **quá trình liên tục**. Kết hợp traffic chất lượng cao từ Traffic68 với chiến lược CRO sẽ giúp tối đa hóa doanh thu.
208    `},{id:4,slug:`google-algorithm-2025`,tag:`SEO`,tagColor:`bg-blue-100 text-blue-700`,title:`Google Algorithm 2025: Những Thay Đổi Quan Trọng Ảnh Hưởng Đến Traffic`,excerpt:`Cập nhật mới nhất về thuật toán Google và cách điều chỉnh chiến lược traffic để duy trì và cải thiện thứ hạng.`,author:`Phạm Huy`,date:`1 tháng 3, 2025`,readTime:`7 phút đọc`,gradient:`from-blue-600 to-indigo-700`,cover:`/blog_4.png`,content:`
209## Tổng quan cập nhật Google Algorithm 2025
210
211Năm 2025, Google tiếp tục đẩy mạnh các cập nhật thuật toán nhằm cải thiện chất lượng kết quả tìm kiếm. Dưới đây là những thay đổi quan trọng nhất.
212
213## 1. AI-Powered Search (SGE mở rộng)
214
215Google Search Generative Experience (SGE) đã chính thức tích hợp vào Google Search:
216
217- AI overview xuất hiện ở đầu kết quả tìm kiếm
218- Ảnh hưởng đến CTR của các vị trí organic truyền thống
219- Website cần tối ưu cho cả traditional SEO và AI snippets
220- Structured data trở nên quan trọng hơn bao giờ hết
221
222## 2. E-E-A-T nâng cao
223
224Google tiếp tục nhấn mạnh **Experience, Expertise, Authoritativeness, Trustworthiness**:
225
226- Nội dung từ chuyên gia thật được ưu tiên
227- Author bio và credentials quan trọng hơn
228- First-hand experience được đánh giá cao
229- Website cần chứng minh uy tín rõ ràng
230
231## 3. Core Web Vitals cập nhật mới
232
233Các chỉ số mới được bổ sung:
234
235- **INP (Interaction to Next Paint)** thay thế FID
236- Ngưỡng mới khắt khe hơn cho LCP và CLS
237- Mobile performance là ưu tiên số 1
238- Page experience signals mở rộng
239
240## 4. Helpful Content Update
241
242- Nội dung tạo bởi AI bị penalize nếu không có giá trị
243- Nội dung "people-first" được ưu tiên
244- Website có nhiều thin content bị ảnh hưởng
245- Cần demonstrate real expertise
246
247## Cách thích ứng
248
249| Yếu tố | Hành động |
250|---------|-----------|
251| Content | Tạo nội dung chuyên sâu, có giá trị thực |
252| Technical | Tối ưu Core Web Vitals mới |
253| E-E-A-T | Xây dựng author authority |
254| UX | Cải thiện user engagement signals |
255| AI | Tối ưu cho SGE và traditional search |
256
257## Kết luận
258
259Thích ứng với Google Algorithm 2025 đòi hỏi chiến lược toàn diện. Traffic user thật từ Traffic68 giúp cải thiện engagement signals — yếu tố ngày càng quan trọng trong thuật toán mới.
260    `},{id:5,slug:`case-study-tang-300-traffic-ecommerce`,tag:`Case Study`,tagColor:`bg-purple-100 text-purple-700`,title:`Case Study: Tăng 300% Traffic Trong 60 Ngày Cho E-Commerce`,excerpt:`Phân tích chi tiết chiến dịch traffic thực tế giúp một website thương mại điện tử tăng trưởng vượt bậc chỉ trong 2 tháng.`,author:`Nguyễn Minh`,date:`25 tháng 2, 2025`,readTime:`12 phút đọc`,gradient:`from-purple-500 to-purple-700`,cover:`/blog_5.png`,content:`
261## Tổng quan dự án
262
263**Khách hàng**: Shop thời trang online tại Việt Nam
264**Thời gian**: 60 ngày (Tháng 1-2, 2025)
265**Mục tiêu**: Tăng traffic organic và cải thiện thứ hạng từ khóa chính
266
267### Tình trạng ban đầu:
268- Traffic: ~2,000 visits/tháng
269- Keyword rankings: Trang 3-5 Google
270- Bounce rate: 78%
271- Conversion rate: 0.8%
272
273## Chiến lược triển khai
274
275### Giai đoạn 1: Tuần 1-2 — Phân tích & Setup
276
277- Audit SEO toàn diện website
278- Nghiên cứu 50+ từ khóa mục tiêu
279- Phân tích đối thủ cạnh tranh top 3
280- Setup Google Analytics 4 & Search Console
281- Thiết lập chiến dịch traffic user thật từ Traffic68
282
283### Giai đoạn 2: Tuần 3-4 — Tối ưu On-Page
284
285- Tối ưu 30 product pages cho từ khóa chính
286- Viết lại meta title & description
287- Cải thiện internal linking structure
288- Tối ưu hình ảnh (alt text, compression)
289- Traffic68: Bắt đầu chạy Google Search traffic
290
291### Giai đoạn 3: Tuần 5-6 — Content & Traffic
292
293- Xuất bản 8 bài blog chất lượng cao
294- Tạo 2 buying guides chi tiết
295- Tăng cường traffic user thật đến các trang mục tiêu
296- Social media marketing hỗ trợ
297
298### Giai đoạn 4: Tuần 7-8 — Scale & Optimize
299
300- Scale traffic campaign lên 3x
301- A/B testing landing pages
302- Tối ưu conversion funnel
303- Retargeting visitors
304
305## Kết quả đạt được
306
307| Chỉ số | Trước | Sau 60 ngày | Thay đổi |
308|--------|-------|-------------|----------|
309| Traffic/tháng | 2,000 | 8,200 | **+310%** |
310| Keywords top 10 | 3 | 18 | **+500%** |
311| Bounce rate | 78% | 52% | **-33%** |
312| Conversion rate | 0.8% | 2.1% | **+162%** |
313| Doanh thu | 15M VNĐ | 52M VNĐ | **+247%** |
314
315## Bài học rút ra
316
3171. **Traffic chất lượng là nền tảng**: User thật tạo engagement signals tốt
3182. **Kết hợp nhiều chiến lược**: SEO + Content + Traffic68 = synergy
3193. **Kiên nhẫn và nhất quán**: Kết quả rõ từ tuần thứ 3-4
3204. **Data-driven**: Theo dõi và điều chỉnh liên tục
321
322## Kết luận
323
324Case study này chứng minh rằng việc kết hợp SEO truyền thống với dịch vụ traffic user thật có thể tạo ra tăng trưởng vượt bậc trong thời gian ngắn.
325    `},{id:6,slug:`huong-dan-google-analytics-cho-nguoi-moi`,tag:`Hướng dẫn`,tagColor:`bg-pink-100 text-pink-700`,title:`Hướng Dẫn Đọc Google Analytics Cho Người Mới Bắt Đầu`,excerpt:`Cách đọc và phân tích dữ liệu Google Analytics để hiểu nguồn traffic, hành vi người dùng và cải thiện hiệu quả website.`,author:`Trần Lan`,date:`20 tháng 2, 2025`,readTime:`9 phút đọc`,gradient:`from-pink-500 to-rose-600`,cover:`/blog_6.png`,content:`
326## Google Analytics 4 là gì?
327
328**Google Analytics 4 (GA4)** là phiên bản mới nhất của Google Analytics, sử dụng mô hình event-based thay vì session-based như Universal Analytics trước đây.
329
330## Cài đặt GA4
331
332### Bước 1: Tạo tài khoản
3331. Truy cập analytics.google.com
3342. Click "Bắt đầu đo lường"
3353. Nhập tên tài khoản và tên property
336
337### Bước 2: Cài đặt tracking code
338- Copy Measurement ID (G-XXXXXXXXXX)
339- Thêm vào website qua Google Tag Manager hoặc trực tiếp vào head tag
340
341### Bước 3: Xác minh dữ liệu
342- Kiểm tra Realtime Report
343- Đảm bảo data đang được thu thập
344
345## Các báo cáo quan trọng
346
347### 1. Realtime Report
348Theo dõi ai đang trên website **ngay bây giờ**:
349- Số user đang active
350- Trang đang xem
351- Nguồn traffic
352- Vị trí địa lý
353
354### 2. Acquisition Report
355Hiểu **traffic đến từ đâu**:
356- **Organic Search**: Từ Google, Bing
357- **Direct**: Nhập URL trực tiếp
358- **Social**: Từ mạng xã hội
359- **Referral**: Từ website khác
360- **Paid Search**: Từ quảng cáo
361
362### 3. Engagement Report
363Đánh giá **chất lượng** tương tác:
364- Average engagement time
365- Engaged sessions per user
366- Views per session
367- Event count
368
369### 4. Retention Report
370Đo lường **user quay lại**:
371- New vs returning users
372- User retention by cohort
373- Lifetime value
374
375## Các chỉ số quan trọng cần theo dõi
376
377| Chỉ số | Ý nghĩa | Target |
378|--------|---------|--------|
379| Users | Số người truy cập | Tăng dần |
380| Sessions | Số phiên truy cập | Tăng dần |
381| Bounce Rate | Tỷ lệ thoát | < 50% |
382| Avg. Session Duration | Thời gian trung bình | > 2 phút |
383| Pages/Session | Số trang/phiên | > 2 |
384| Conversion Rate | Tỷ lệ chuyển đổi | > 2% |
385
386## Mẹo phân tích dữ liệu
387
3881. **So sánh giai đoạn**: Luôn so sánh với tuần/tháng trước
3892. **Segment data**: Phân tích theo nguồn, thiết bị, vị trí
3903. **Đặt Goals**: Thiết lập conversion tracking
3914. **Custom reports**: Tạo báo cáo riêng cho KPI quan trọng
3925. **Anomaly detection**: Chú ý các biến động bất thường
393
394## Kết luận
395
396Google Analytics là công cụ không thể thiếu cho mọi website. Khi sử dụng dịch vụ traffic từ Traffic68, bạn có thể theo dõi hiệu quả trực tiếp qua GA4 vì đây là traffic user thật 100%.
397    `}],Tn=[`Tất cả`,`SEO`,`Traffic`,`CRO`,`Case Study`,`Hướng dẫn`],En=[{label:`Traffic user thật`,value:`100%`,icon:b},{label:`Playbook SEO`,value:`Thá»±c chiến`,icon:ue},{label:`Tối ưu tăng trưởng`,value:`CRO`,icon:I}];function Dn({post:e,featured:t=!1}){return(0,q.jsxs)(u,{to:`/blog/${e.slug}`,className:`group blog-card bg-white border border-slate-200 overflow-hidden ${t?`grid lg:grid-cols-[1.08fr_0.92fr] rounded-[2rem]`:`rounded-3xl flex flex-col h-full`}`,children:[(0,q.jsxs)(`div`,{className:`relative overflow-hidden bg-slate-900 ${t?`min-h-[320px]`:`h-56`}`,children:[(0,q.jsx)(`img`,{src:e.cover,alt:e.title,className:`w-full h-full object-cover transition duration-700 group-hover:scale-105`,loading:t?`eager`:`lazy`}),(0,q.jsx)(`div`,{className:`absolute inset-0 bg-gradient-to-t from-[#071633]/75 via-transparent to-transparent`}),(0,q.jsxs)(`div`,{className:`absolute left-5 top-5 flex items-center gap-2`,children:[(0,q.jsx)(`span`,{className:`px-3 py-1 rounded-full text-xs font-black ${e.tagColor}`,children:e.tag}),(0,q.jsx)(`span`,{className:`px-3 py-1 rounded-full text-xs font-bold bg-white/90 text-slate-700 backdrop-blur`,children:e.readTime})]})]}),(0,q.jsxs)(`div`,{className:`p-6 sm:p-8 flex flex-col ${t?`justify-center bg-[radial-gradient(circle_at_top_right,rgba(249,115,22,0.10),transparent_34%)]`:`flex-1`}`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-3 text-xs font-bold text-slate-500 mb-4`,children:[(0,q.jsx)(`span`,{children:e.author}),(0,q.jsx)(`span`,{className:`w-1 h-1 rounded-full bg-[#f97316]`}),(0,q.jsx)(`span`,{children:e.dateLabel})]}),(0,q.jsx)(`h2`,{className:`${t?`text-2xl sm:text-4xl`:`text-lg`} font-black text-[#10245c] leading-tight mb-4 group-hover:text-[#f97316] transition-colors`,children:e.title}),(0,q.jsx)(`p`,{className:`text-slate-600 text-sm sm:text-base leading-relaxed mb-6 line-clamp-3`,children:e.excerpt}),(0,q.jsxs)(`span`,{className:`mt-auto inline-flex items-center gap-2 text-[#f97316] font-black text-sm`,children:[t?`Đọc chiến lược`:`Đọc bài viết`,` `,(0,q.jsx)(T,{className:`w-4 h-4 transition group-hover:translate-x-1`})]})]})]})}function On(){let[e,t]=(0,K.useState)(`Tất cả`),[n,r]=(0,K.useState)(``),[i,a]=(0,K.useState)([]),[o,s]=(0,K.useState)(!0);(0,K.useEffect)(()=>{let e=!0;return(async()=>{try{let t=await G.get(`/blog`),n=t.posts&&t.posts.length>0?t.posts:wn;e&&a(It(n))}catch{e&&a(It(wn))}finally{e&&s(!1)}})(),()=>{e=!1}},[]);let c=(0,K.useMemo)(()=>{let t=n.trim().toLowerCase();return i.filter(n=>{let r=e===`Tất cả`||n.tag===e,i=!t||`${n.title} ${n.excerpt} ${n.tag}`.toLowerCase().includes(t);return r&&i})},[i,e,n]),l=c[0],d=l?c.slice(1):[];return Z({title:Dt.title,description:Dt.description,keywords:Dt.keywords,canonicalPath:`/blog`,image:l?.cover,jsonLd:Rt(i)}),(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`section`,{className:`blog-hero relative overflow-hidden bg-[#071633] py-20 sm:py-24`,children:[(0,q.jsx)(`div`,{className:`absolute inset-0 blog-grid opacity-70`}),(0,q.jsx)(`div`,{className:`absolute -top-32 right-0 w-[520px] h-[520px] rounded-full bg-[#f97316]/20 blur-3xl`}),(0,q.jsx)(`div`,{className:`relative max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:(0,q.jsxs)(`div`,{className:`max-w-4xl`,children:[(0,q.jsxs)(`div`,{className:`inline-flex items-center gap-2 px-4 py-2 rounded-full bg-white/10 border border-white/15 text-orange-200 text-sm font-bold mb-6 backdrop-blur`,children:[(0,q.jsx)(O,{className:`w-4 h-4`}),` Trung tâm kiến thức tăng trưởng website`]}),(0,q.jsxs)(`h1`,{className:`text-4xl sm:text-6xl lg:text-7xl font-black text-white leading-[0.98] tracking-tight mb-6`,children:[`Blog SEO & Traffic `,(0,q.jsx)(`span`,{className:`text-[#f97316]`,children:`user thật`})]}),(0,q.jsx)(`p`,{className:`text-lg sm:text-xl text-blue-100/85 leading-relaxed max-w-3xl mb-8`,children:`Playbook thá»±c chiến về tăng traffic website, SEO bền vá
397»¯ng và tối ưu chuyển đổi cho doanh nghiệp cần user thật thay vì số liệu ảo.`}),(0,q.jsx)(`div`,{className:`grid sm:grid-cols-3 gap-3 mb-8 max-w-3xl`,children:En.map(e=>{let t=e.icon;return(0,q.jsxs)(`div`,{className:`rounded-2xl border border-white/15 bg-white/10 px-4 py-4 backdrop-blur`,children:[(0,q.jsx)(t,{className:`w-5 h-5 text-[#f97316] mb-3`}),(0,q.jsx)(`p`,{className:`text-white font-black text-lg leading-none`,children:e.value}),(0,q.jsx)(`p`,{className:`text-blue-100/70 text-xs font-semibold mt-1`,children:e.label})]},e.label)})}),(0,q.jsxs)(`div`,{className:`relative max-w-2xl`,children:[(0,q.jsx)(M,{className:`absolute left-5 top-1/2 -translate-y-1/2 w-5 h-5 text-slate-400`}),(0,q.jsx)(`input`,{type:`text`,placeholder:`Tìm SEO, traffic user thật, CRO, case study...`,value:n,onChange:e=>r(e.target.value),className:`w-full pl-13 pr-5 py-4 rounded-2xl bg-white text-slate-800 border border-white/40 shadow-2xl focus:outline-none focus:ring-4 focus:ring-orange-400/35`})]})]})})]}),(0,q.jsx)(`section`,{className:`py-16 sm:py-20 bg-[#f6f8fc]`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsxs)(`div`,{className:`flex flex-col lg:flex-row lg:items-end lg:justify-between gap-6 mb-10`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`text-[#f97316] font-black uppercase tracking-[0.2em] text-xs mb-3`,children:`Traffic68 Knowledge Hub`}),(0,q.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-black text-[#10245c]`,children:`Bài viết nên đọc trước khi chạy traffic`}),(0,q.jsx)(`p`,{className:`text-slate-500 mt-3`,children:o?`Đang tải bài viết...`:`${c.length} bài viết phù hợp`})]}),(0,q.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:Tn.map(n=>(0,q.jsx)(`button`,{onClick:()=>t(n),className:`px-4 py-2 rounded-full text-sm font-black border transition-all focus:outline-none focus:ring-4 focus:ring-orange-300/40 ${e===n?`bg-[#10245c] text-white border-[#10245c] shadow-lg`:`bg-white text-slate-600 border-slate-200 hover:border-[#f97316] hover:text-[#f97316]`}`,children:n},n))})]}),o?(0,q.jsx)(`div`,{className:`grid md:grid-cols-3 gap-6`,children:[1,2,3].map(e=>(0,q.jsx)(`div`,{className:`h-80 rounded-3xl bg-white border border-slate-200 animate-pulse`},e))}):c.length===0?(0,q.jsxs)(`div`,{className:`text-center py-20 bg-white rounded-[2rem] border border-slate-200`,children:[(0,q.jsx)(ue,{className:`w-14 h-14 text-slate-300 mx-auto mb-4`}),(0,q.jsx)(`h3`,{className:`text-xl font-black text-[#10245c] mb-2`,children:`Không tìm thấy bài viết phù hợp`}),(0,q.jsx)(`p`,{className:`text-slate-500 mb-6`,children:`Thá»­ tag khác hoặc xóa từ khóa tìm kiếm.`}),(0,q.jsx)(`button`,{onClick:()=>{r(``),t(`Tất cả`)},className:`orange-btn text-white font-bold px-5 py-3 rounded-xl`,children:`Xem tất cả`})]}):(0,q.jsxs)(q.Fragment,{children:[l&&(0,q.jsx)(`div`,{className:`mb-8`,children:(0,q.jsx)(Dn,{post:l,featured:!0})}),(0,q.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-7`,children:d.map(e=>(0,q.jsx)(Dn,{post:e},e.slug))})]})]})}),(0,q.jsx)(`section`,{className:`py-16 bg-white border-y border-slate-100`,children:(0,q.jsx)(`div`,{className:`max-w-5xl mx-auto px-4 sm:px-6 lg:px-8`,children:(0,q.jsxs)(`div`,{className:`relative overflow-hidden rounded-[2rem] bg-[#10245c] p-8 sm:p-10 text-white`,children:[(0,q.jsx)(`div`,{className:`absolute inset-y-0 right-0 w-1/2 bg-[radial-gradient(circle_at_center,rgba(249,115,22,0.28),transparent_60%)]`}),(0,q.jsxs)(`div`,{className:`relative grid lg:grid-cols-[1fr_auto] gap-8 items-center`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`div`,{className:`inline-flex items-center gap-2 text-orange-200 font-bold text-sm mb-3`,children:[(0,q.jsx)(He,{className:`w-4 h-4`}),` Audit traffic miễn phí`]}),(0,q.jsx)(`h2`,{className:`text-2xl sm:text-4xl font-black mb-3`,children:`Muốn tăng traffic nhưng chưa biết bắt đầu từ đâu?`}),(0,q.jsx)(`p`,{className:`text-blue-100/80 leading-relaxed`,children:`Gá»­i website, Traffic68 sẽ gợi ý hướng tăng user thật, giữ an toàn SEO và đo được bằng dữ liệu.`})]}),(0,q.jsxs)(u,{to:`/lien-he`,className:`orange-btn inline-flex items-center justify-center gap-2 text-white font-black px-7 py-4 rounded-2xl shadow-xl`,children:[`Nhận tư vấn `,(0,q.jsx)(T,{className:`w-4 h-4`})]})]})]})})}),(0,q.jsx)(J,{})]})}function kn(e=``){return Ot(e).toLowerCase().normalize(`NFD`).replace(/[̀-ͯ]/g,``).replace(/đ/g,`d`).replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``)}function An(e=``){let t=[],n=/(\*\*[^*]+\*\*|`[^`]+`|\*[^*]+\*)/g,r=0,i;for(;(i=n.exec(e))!==null;){i.index>r&&t.push(e.slice(r,i.index));let a=i[0],o=`${i.index}-${a}`;a.startsWith(`**`)?t.push((0,q.jsx)(`strong`,{className:`text-[#10245c] font-black`,children:a.slice(2,-2)},o)):a.startsWith("`")?t.push((0,q.jsx)(`code`,{className:`rounded-md bg-orange-50 px-1.5 py-0.5 text-sm font-mono text-[#c2410c]`,children:a.slice(1,-1)},o)):t.push((0,q.jsx)(`em`,{children:a.slice(1,-1)},o)),r=n.lastIndex}return r<e.length&&t.push(e.slice(r)),t}function jn(e=``){return e.split(`
398`).map(e=>e.trim()).filter(e=>e.startsWith(`## `)||e.startsWith(`### `)).map(e=>{let t=e.startsWith(`### `)?3:2,n=e.slice(t+1).trim();return{id:kn(n),title:n,depth:t}})}function Mn(e,t){let n=[],r=t;for(;r<e.length;){let t=e[r].trim();if(!t.startsWith(`|`)||!t.endsWith(`|`))break;/^\|?\s*:?-{3,}:?\s*(\|\s*:?-{3,}:?\s*)+\|?$/.test(t)||n.push(t.split(`|`).slice(1,-1).map(e=>e.trim())),r++}return{rows:n,nextIndex:r}}function Nn(e=``){let t=e.split(`
399`),n=[],r=0;for(;r<t.length;){let e=t[r].trim();if(!e){r++;continue}if(/^!\[([^\]]*)\]\(([^)]+)\)$/.test(e)){let t=e.match(/^!\[([^\]]*)\]\(([^)]+)\)$/);n.push((0,q.jsxs)(`figure`,{className:`my-8 overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm`,children:[(0,q.jsx)(`img`,{src:t[2],alt:t[1]||`Ảnh bài viết`,className:`w-full object-cover`}),t[1]?(0,q.jsx)(`figcaption`,{className:`px-4 py-3 text-center text-xs text-slate-500`,children:t[1]}):null]},`img-${r}`)),r++;continue}if(e.startsWith(`## `)||e.startsWith(`### `)){let t=e.startsWith(`### `)?3:2,i=e.slice(t+1).trim(),a=t===2?`h2`:`h3`;n.push((0,q.jsx)(a,{id:kn(i),className:t===2?`scroll-mt-24 text-2xl sm:text-3xl font-black text-[#10245c] mt-12 mb-5 border-l-4 border-[#f97316] pl-5`:`scroll-mt-24 text-xl font-black text-[#17346f] mt-8 mb-3`,children:i},`h-${r}`)),r++;continue}if(e.startsWith(`> `)){n.push((0,q.jsx)(`blockquote`,{className:`my-6 rounded-2xl border-l-4 border-[#f97316] bg-orange-50 px-6 py-5 text-[#10245c] font-semibold leading-relaxed`,children:An(e.slice(2))},`q-${r}`)),r++;continue}if(e.startsWith(`|`)&&e.endsWith(`|`)){let{rows:e,nextIndex:i}=Mn(t,r);if(e.length>0){let[t,...i]=e;n.push((0,q.jsx)(`div`,{className:`my-8 overflow-x-auto rounded-2xl border border-slate-200`,children:(0,q.jsxs)(`table`,{className:`w-full text-sm`,children:[(0,q.jsx)(`thead`,{className:`bg-[#10245c] text-white`,children:(0,q.jsx)(`tr`,{children:t.map(e=>(0,q.jsx)(`th`,{className:`px-4 py-3 text-left font-black`,children:An(e)},e))})}),(0,q.jsx)(`tbody`,{children:i.map((e,t)=>(0,q.jsx)(`tr`,{className:`border-t border-slate-100 odd:bg-slate-50/70`,children:e.map((e,n)=>(0,q.jsx)(`td`,{className:`px-4 py-3 text-slate-600`,children:An(e)},`${t}-${n}`))},t))})]})},`table-${r}`))}r=i;continue}if(e.startsWith(`- `)){let e=[];for(;r<t.length&&t[r].trim().startsWith(`- `);)e.push(t[r].trim().slice(2)),r++;n.push((0,q.jsx)(`ul`,{className:`my-5 space-y-3`,children:e.map((e,t)=>(0,q.jsxs)(`li`,{className:`flex gap-3 text-slate-700 leading-relaxed`,children:[(0,q.jsx)(`span`,{className:`mt-2 h-2 w-2 rounded-full bg-[#f97316] shrink-0`}),(0,q.jsx)(`span`,{children:An(e)})]},t))},`ul-${r}`));continue}if(e.match(/^(\d+)\.\s(.+)/)){let e=[];for(;r<t.length;){let n=t[r].trim().match(/^(\d+)\.\s(.+)/);if(!n)break;e.push({num:Number(n[1]),text:n[2]}),r++}n.push((0,q.jsx)(`ol`,{className:`my-5 space-y-3 counter-reset-list`,children:e.map((e,t)=>(0,q.jsxs)(`li`,{className:`flex gap-3 text-slate-700 leading-relaxed`,children:[(0,q.jsx)(`span`,{className:`flex h-7 w-7 items-center justify-center rounded-full bg-[#10245c] text-white text-xs font-black shrink-0`,children:e.num}),(0,q.jsx)(`span`,{children:An(e.text)})]},t))},`ol-${r}`));continue}n.push((0,q.jsx)(`p`,{className:`text-[17px] leading-8 text-slate-700 mb-5`,children:An(e)},`p-${r}`)),r++}return n}function Pn({post:e}){let[t,n]=(0,K.useState)(!1),r=encodeURIComponent(e.url),i=encodeURIComponent(e.title),a=[{label:`Facebook`,icon:ae,href:`https://www.facebook.com/sharer/sharer.php?u=${r}`},{label:`LinkedIn`,icon:S,href:`https://www.linkedin.com/sharing/share-offsite/?url=${r}`},{label:`Telegram`,icon:v,href:`https://t.me/share/url?url=${r}&text=${i}`}];return(0,q.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,q.jsxs)(`button`,{onClick:async()=>
399{if(navigator.share){await navigator.share({title:e.title,text:e.description,url:e.url});return}await navigator.clipboard.writeText(e.url),n(!0),setTimeout(()=>n(!1),1800)},className:`inline-flex items-center gap-2 rounded-full bg-[#10245c] px-4 py-2 text-sm font-bold text-white hover:bg-[#f97316] transition`,children:[(0,q.jsx)(ce,{className:`w-4 h-4`}),` Chia sẻ`]}),a.map(e=>{let t=e.icon;return(0,q.jsx)(`a`,{href:e.href,target:`_blank`,rel:`noreferrer`,"aria-label":`Chia sẻ lên ${e.label}`,className:`inline-flex h-10 w-10 items-center justify-center rounded-full border border-slate-200 text-slate-600 hover:border-[#f97316] hover:text-[#f97316] transition`,children:(0,q.jsx)(t,{className:`w-4 h-4`})},e.label)}),(0,q.jsx)(`button`,{onClick:async()=>{await navigator.clipboard.writeText(e.url),n(!0),setTimeout(()=>n(!1),1800)},className:`inline-flex h-10 w-10 items-center justify-center rounded-full border border-slate-200 text-slate-600 hover:border-[#f97316] hover:text-[#f97316] transition`,"aria-label":`Sao chép liên kết`,children:t?(0,q.jsx)(We,{className:`w-4 h-4`}):(0,q.jsx)(Ce,{className:`w-4 h-4`})})]})}function Fn(){let{slug:e}=h(),[t,n]=(0,K.useState)(null),[r,i]=(0,K.useState)([]),[a,o]=(0,K.useState)(!0);(0,K.useEffect)(()=>{let t=!0;return(async()=>{o(!0);try{let[r,a]=await Promise.allSettled([G.get(`/blog/${e}`),G.get(`/blog`)]),o=It(a.status===`fulfilled`&&a.value.posts?.length?a.value.posts:wn),s=r.status===`fulfilled`&&r.value.post?Pt(r.value.post):o.find(t=>t.slug===e)||It(wn).find(t=>t.slug===e);t&&(n(s||null),i(o.length?o:It(wn)))}catch{let r=It(wn);t&&(n(r.find(t=>t.slug===e)||null),i(r))}finally{t&&o(!1)}})(),()=>{t=!1}},[e]);let s=(0,K.useMemo)(()=>jn(t?.content||``),[t]),c=(0,K.useMemo)(()=>Lt(r,t,3),[r,t]);return Z(t?{title:t.title,description:t.description,keywords:t.keywords,canonicalPath:`/blog/${t.slug}`,image:t.cover,type:`article`,publishedTime:t.publishedIso,modifiedTime:t.updatedIso,jsonLd:zt(t)}:{title:`Blog`,description:`Bài viết Traffic68 về SEO, traffic user thật và tăng trưởng website.`,canonicalPath:`/blog/${e}`}),a?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:`min-h-[70vh] bg-[#f6f8fc] px-4 py-16`,children:(0,q.jsxs)(`div`,{className:`max-w-5xl mx-auto space-y-6 animate-pulse`,children:[(0,q.jsx)(`div`,{className:`h-12 w-2/3 rounded-2xl bg-white`}),(0,q.jsx)(`div`,{className:`h-72 rounded-[2rem] bg-white`}),(0,q.jsxs)(`div`,{className:`grid lg:grid-cols-[1fr_280px] gap-8`,children:[(0,q.jsx)(`div`,{className:`h-96 rounded-3xl bg-white`}),(0,q.jsx)(`div`,{className:`h-72 rounded-3xl bg-white`})]})]})}),(0,q.jsx)(J,{})]}):t?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`section`,{className:`blog-hero relative overflow-hidden bg-[#071633] py-14 sm:py-20`,children:[(0,q.jsx)(`div`,{className:`absolute inset-0 blog-grid opacity-70`}),(0,q.jsx)(`div`,{className:`absolute -right-24 top-10 h-96 w-96 rounded-full bg-[#f97316]/20 blur-3xl`}),(0,q.jsxs)(`div`,{className:`relative max-w-6xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsxs)(`nav`,{className:`mb-8 flex flex-wrap items-center gap-2 text-sm text-blue-100/70`,children:[(0,q.jsx)(u,{to:`/`,className:`hover:text-white`,children:`Trang chá»§`}),(0,q.jsx)(`span`,{children:`/`}),(0,q.jsx)(u,{to:`/blog`,className:`hover:text-white`,children:`Blog`}),(0,q.jsx)(`span`,{children:`/`}),(0,q.jsx)(`span`,{className:`text-orange-200`,children:t.tag})]}),(0,q.jsxs)(`div`,{className:`max-w-4xl`,children:[(0,q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 mb-5`,children:[(0,q.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 rounded-full px-3 py-1 text-xs font-black ${t.tagColor}`,children:[(0,q.jsx)(j,{className:`w-3 h-3`}),` `,t.tag]}),(0,q.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-blue-100/80 text-sm`,children:[(0,q.jsx)(Ee,{className:`w-4 h-4`}),` `,t.readTime]}),(0,q.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-blue-100/80 text-sm`,children:[(0,q.jsx)(x,{className:`w-4 h-4`}),` `,t.dateLabel]})]}),(0,q.jsx)(`h1`,{className:`text-4xl sm:text-6xl font-black text-white leading-tight tracking-tight mb-6`,children:t.title}),(0,q.jsx)(`p`,{className:`text-lg sm:text-xl text-blue-100/85 leading-relaxed max-w-3xl mb-8`,children:t.description}),(0,q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-5 text-blue-100/80`,children:[(0,q.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[(0,q.jsx)(F,{className:`w-4 h-4 text-[#f97316]`}),` `,t.author]}),(0,q.jsx)(Pn,{post:t})]})]})]})]}),(0,q.jsx)(`section`,{className:`bg-[#f6f8fc] pb-16`,children:(0,q.jsxs)(`div`,{className:`max-w-6xl mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,q.jsx)(`div`,{className:`-mt-10 relative rounded-[2rem] overflow-hidden border border-white shadow-2xl bg-slate-900 mb-12`,children:(0,q.jsx)(`img`,{src:t.cover,alt:t.title,className:`w-full max-h-[520px] object-cover`,loading:`eager`})}),(0,q.jsxs)(`div`,{className:`grid lg:grid-cols-[minmax(0,1fr)_320px] gap-10 items-start`,children:[(0,q.jsxs)(`main`,{className:`bg-white rounded-[2rem] border border-slate-200 p-6 sm:p-10 shadow-sm`,children:[(0,q.jsx)(`article`,{className:`blog-prose`,children:t.content?Nn(t.content):(0,q.jsx)(`p`,{className:`text-slate-500`,children:`Nội dung đang được cập nhật...`})}),(0,q.jsxs)(`div`,{className:`mt-12 pt-8 border-t border-slate-200 flex flex-col sm:flex-row sm:items-center sm:justify-between gap-5`,children:[(0,q.jsxs)(u,{to:`/blog`,className:`inline-flex items-center gap-2 text-[#10245c] font-black hover:text-[#f97316] transition`,children:[(0,q.jsx)(he,{size:16}),` Quay lại Blog`]}),(0,q.jsx)(Pn,{post:t})]})]}),(0,q.jsxs)(`aside`,{className:`lg:sticky lg:top-24 space-y-6`,children:[s.length>0&&(0,q.jsxs)(`div`,{className:`bg-white rounded-3xl border border-slate-200 p-6 shadow-sm`,children:[(0,q.jsxs)(`h2`,{className:`flex items-center gap-2 text-[#10245c] font-black mb-4`,children:[(0,q.jsx)(Ue,{className:`w-5 h-5 text-[#f97316]`}),` Mục lục`]}),(0,q.jsx)(`div`,{className:`space-y-2`,children:s.map(e=>(0,q.jsx)(`a`,{href:`#${e.id}`,className:`block text-sm leading-snug hover:text-[#f97316] transition ${e.depth===3?`pl-4 text-slate-500`:`text-slate-700 font-bold`}`,children:e.title},e.id))})]}),(0,q.jsxs)(`div`,{className:`bg-white rounded-3xl border border-slate-200 p-6 shadow-sm`,children:[(0,q.jsxs)(`h2`,{className:`flex items-center gap-2 text-[#10245c] font-black mb-4`,children:[(0,q.jsx)(ue,{className:`w-5 h-5 text-[#f97316]`}),` Đọc tiếp`]}),(0,q.jsx)(`div`,{className:`space-y-4`,children:c.map(e=>(0,q.jsxs)(u,{to:`/blog/${e.slug}`,className:`group grid grid-cols-[84px_1fr] gap-3`,children:[(0,q.jsx)(`img`,{src:e.cover,alt:e.title,className:`h-20 w-20 rounded-2xl object-cover`,loading:`lazy`}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`span`,{className:`inline-block rounded-full px-2 py-0.5 text-[10px] font-black ${e.tagColor}`,children:e.tag}),(0,q.jsx)(`h3`,{className:`mt-2 line-clamp-2 text-sm font-black text-[#10245c] group-hover:text-[#f97316] transition`,children:e.title})]})]},e.slug))})]}),(0,q.jsxs)(`div`,{className:`overflow-hidden rounded-3xl bg-[#10245c] p-6 text-white shadow-sm relative`,children:[(0,q.jsx)(`div`,{className:`absolute -right-16 -top-16 h-40 w-40 rounded-full bg-[#f97316]/30 blur-2xl`}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(`p`,{className:`text-orange-200 font-black text-xs uppercase tracking-[0.2em] mb-3`,children:`Traffic audit`}),(0,q.jsx)(`h2`,{className:`text-2xl font-black leading-tight mb-3`,children:`Cần user thật cho website?`}),(0,q.jsx)(`p`,{className:`text-blue-100/80 text-sm leading-relaxed mb-5`,children:`Nhận tư vấn cách tăng traffic an toàn, giữ tín hiệu SEO sạch và đo được hiệu quả.`}),(0,q.jsxs)(u,{to:`/lien-he`,className:`orange-btn inline-flex items-center gap-2 rounded-2xl px-5 py-3 text-sm font-black text-white`,children:[`Liên hệ ngay `,(0,q.jsx)(T,{className:`w-4 h-4`})]})]})]})]})]})]})}),(0,q.jsx)(J,{})]}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:`min-h-[70vh] flex items-center justify-center bg-[#f6f8fc] px-4`,children:(0,q.jsxs)(`div`,{className:`text-center bg-white rounded-[2rem] border border-slate-200 p-10 max-w-lg`,children:[(0,q.jsx)(ue,{className:`w-16 h-16 text-slate-300 mx-auto mb-4`}),(0,q.jsx)(`h1`,{className:`text-2xl font-black text-[#10245c] mb-2`,children:`Bài viết không tồn tại`}),(0,q.jsx)(`p`,{className:`text-slate-500 mb-6`,children:`Bài viết bạn tìm kiếm không tồn tại hoặc đã bị xóa.`}),(0,q.jsxs)(u,{to:`/blog`,className:`inline-flex items-center gap-2 text-[#f97316] font-black hover:underline`,children:[(0,q.jsx)(he,{size:16}),` Quay lại Blog`]})]})}),(0,q.jsx)(J,{})]})}var In=[{icon:z,label:`Địa chỉ`,value:`Hà Nội, Việt Nam`,sub:`Làm việc: T2 – T7, 8:00 – 18:00`},{icon:R,label:`Email`,value:`[email protected]`,sub:`Phản hồi trong 30 phút`},{icon:g,label:`Hotline`,value:`0989 759 050`,sub:`06533 06 339 · 0692 6 563 558`},{icon:Se,label:`Live Chat`,value:`Zalo / Telegram`,sub:`Hỗ trợ 24/7 real-time`}],Ln=[`100% Traffic user thật, không bot`,`Cam kết hoàn tiền nếu không đạt KPI`,`Hỗ trợ chuyên gia 24/7`,`Báo cáo minh bạch, real-time`];function Rn(){Z(`Liên hệ`);let[e,t]=(0,K.useState)({name:``,email:``,phone:``,service:``,message:``}),[n,r]=(0,K.useState)(!1),i=n=>t({...e,[n.target.name]:n.target.value});return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:`hero-bg py-20`,children:(0,q.jsxs)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 text-center relative z-10`,children:[(0,q.jsxs)(`h1`,{className:`text-4xl sm:text-5xl font-black text-white mb-4 uppercase`,children:[`Liên Hệ `,(0,q.jsx)(`span`,{className:`text-[#f97316]`,children:`Với Chúng Tôi`})]}),(0,q.jsx)(`p`,{className:`text-white/70 text-lg max-w-2xl mx-auto`,children:`Nhận tư vấn miễn phí từ chuyên gia trong vòng 5 phút. Không cam kết, không ràng buộc.`})]})}),(0,q.jsx)(`section`,{className:`py-6 bg-white border-b border-gray-100`,children:(0,q.jsx)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:(0,q.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4`,children:In.map(({icon:e,label:t,value:n,sub:r})=>(0,q.jsxs)(`div`,{className:`card-hover flex items-start gap-4 bg-gray-50 rounded-2xl p-5 border border-gray-100`,children:[(0,q.jsx)(`div`,{className:`w-11 h-11 gradient-btn rounded-xl flex items-center justify-center shrink-0 shadow-md`,children:(0,q.jsx)(e,{className:`w-5 h-5 text-white`})}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`text-xs text-gray-400 uppercase tracking-wider font-semibold mb-0.5`,children:t}),(0,q.jsx)(`p`,{className:`font-bold text-[#1e3a8a] text-sm`,children:n}),(0,q.jsx)(`p`,{className:`text-xs text-gray-500 mt-0.5`,children:r})]})]},t))})})}),(0,q.jsx)(`section`,{className:`py-20 bg-gray-50`,children:(0,q.jsx)(`div`,{className:`max-w-7xl mx-auto px-4 sm:px-6 lg:px-8`,children:(0,q.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-5 ga
399p-12`,children:[(0,q.jsx)(`div`,{className:`lg:col-span-3`,children:(0,q.jsxs)(`div`,{className:`bg-white rounded-2xl shadow-md border border-gray-100 p-8`,children:[(0,q.jsx)(`h2`,{className:`text-2xl font-black text-[#1e3a8a] mb-1`,children:`Gá»­i Yêu Cầu Tư Vấn`}),(0,q.jsx)(`p`,{className:`text-gray-500 text-sm mb-7`,children:`Điền thông tin bên dưới – chuyên gia sẽ liên hệ trong 30 phút.`}),n?(0,q.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,q.jsx)(`div`,{className:`w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mb-4`,children:(0,q.jsx)(H,{className:`w-8 h-8 text-green-500`})}),(0,q.jsx)(`h3`,{className:`text-xl font-black text-[#1e3a8a] mb-2`,children:`Gá»­i thành công!`}),(0,q.jsx)(`p`,{className:`text-gray-500 text-sm`,children:`Chuyên gia sẽ liên hệ với bạn trong vòng 30 phút.`}),(0,q.jsx)(`button`,{onClick:()=>r(!1),className:`mt-6 text-sm text-[#f97316] font-semibold hover:underline`,children:`Gá»­i yêu cầu khác`})]}):(0,q.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),r(!0)},className:`space-y-5`,children:[(0,q.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 gap-4`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Họ và tên *`}),(0,q.jsx)(`input`,{required:!0,name:`name`,value:e.name,onChange:i,placeholder:`Nguyễn Văn A`,className:`w-full px-4 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition`})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Email *`}),(0,q.jsx)(`input`,{required:!0,type:`email`,name:`email`,value:e.email,onChange:i,placeholder:`[email protected]`,className:`w-full px-4 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition`})]})]}),(0,q.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 gap-4`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Số điện thoại`}),(0,q.jsx)(`input`,{name:`phone`,value:e.phone,onChange:i,placeholder:`0912 345 678`,className:`w-full px-4 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition`})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Dịch vụ quan tâm`}),(0,q.jsxs)(`select`,{name:`service`,value:e.service,onChange:i,className:`w-full px-4 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] bg-white transition`,children:[(0,q.jsx)(`option`,{value:``,children:`Chọn dịch vụ...`}),(0,q.jsx)(`option`,{children:`Traffic SEO`}),(0,q.jsx)(`option`,{children:`Traffic Ads`}),(0,q.jsx)(`option`,{children:`Traffic CRO`}),(0,q.jsx)(`option`,{children:`Tư vấn tổng thể`})]})]})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Nội dung yêu cầu *`}),(0,q.jsx)(`textarea`,{required:!0,name:`message`,value:e.message,onChange:i,rows:5,placeholder:`Mô tả mục tiêu traffic, URL website và yêu cầu cụ thể cá»§a bạn...`,className:`w-full px-4 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 focus:ring-[#1e3a8a] transition resize-none`})]}),(0,q.jsxs)(`button`,{type:`submit`,className:`w-full orange-btn text-white font-black py-4 rounded-xl shadow-lg flex items-center justify-center gap-2.5 text-sm`,children:[(0,q.jsx)(v,{className:`w-4 h-4`}),` GỬI YÊU CẦU TƯ VẤN`]}),(0,q.jsx)(`p`,{className:`text-center text-xs text-gray-400`,children:`✓ Miễn phí · ✓ Không spam · ✓ Bảo mật 100%`})]})]})}),(0,q.jsxs)(`div`,{className:`lg:col-span-2 space-y-6`,children:[(0,q.jsxs)(`div`,{className:`bg-[#1e3a8a] rounded-2xl p-7 text-white`,children:[(0,q.jsx)(`h3`,{className:`text-lg font-black mb-4`,children:`Tại Sao Chọn Chúng Tôi?`}),(0,q.jsx)(`ul`,{className:`space-y-3`,children:Ln.map(e=>(0,q.jsxs)(`li`,{className:`flex items-start gap-2.5 text-sm text-white/80`,children:[(0,q.jsx)(H,{className:`w-4 h-4 shrink-0 mt-0.5 text-emerald-400`}),e]},e))})]}),(0,q.jsxs)(`div`,{className:`bg-white rounded-2xl border border-gray-100 shadow-sm p-7`,children:[(0,q.jsxs)(`h3`,{className:`text-base font-black text-[#1e3a8a] mb-4 flex items-center gap-2`,children:[(0,q.jsx)(Ee,{className:`w-4 h-4 text-[#f97316]`}),` Thời Gian Làm Việc`]}),(0,q.jsx)(`ul`,{className:`space-y-2.5 text-sm`,children:[{day:`Thứ 2 – Thứ 6`,time:`8:00 – 18:00`},{day:`Thứ 7`,time:`8:00 – 12:00`},{day:`Chá»§ nhật`,time:`Chat 24/7`}].map(({day:e,time:t})=>(0,q.jsxs)(`li`,{className:`flex justify-between`,children:[(0,q.jsx)(`span`,{className:`text-gray-600`,children:e}),(0,q.jsx)(`span`,{className:`font-semibold text-[#1e3a8a]`,children:t})]},e))})]}),(0,q.jsxs)(`div`,{className:`bg-orange-50 border border-orange-100 rounded-2xl p-6 text-center`,children:[(0,q.jsx)(`p`,{className:`text-[#1e3a8a] font-black text-base mb-1`,children:`Cần hỗ trợ khẩn cấp?`}),(0,q.jsx)(`p`,{className:`text-sm text-gray-500 mb-4`,children:`Gọi hotline 24/7 để được hỗ trợ ngay`}),(0,q.jsxs)(`a`,{href:`tel:0989759050`,className:`orange-btn text-white font-bold px-6 py-2.5 rounded-xl text-sm shadow-md inline-flex items-center gap-2`,children:[(0,q.jsx)(g,{className:`w-4 h-4`}),` 0989 759 050`]})]})]})]})})}),(0,q.jsx)(J,{})]})}var zn=null,Bn=`unknown`,Vn=!1,Hn=[];function Un(e){Vn||(zn=e,Vn=!0,Hn.forEach(t=>t(e)),Hn=[])}if(typeof window<`u`){window.addEventListener(`message`,function e(t){if(!t.data||t.data.type!==`creep-result`)return;let n=t.data.data;n&&(n.visitorId&&n.visitorId!==`unknown`&&(Bn=n.visitorId),n.botDetection&&(zn=n.botDetection)),window.removeEventListener(`message`,e),Un(n?.botDetection||zn||{bot:!1})});let e=0,t=()=>{let n=document.createElement(`iframe`);n.src=`/creep-frame.html`,n.style.cssText=`position:absolute;width:0;height:0;border:0;opacity:0;pointer-events:none;`,n.setAttribute(`aria-hidden`,`true`),n.setAttribute(`referrerpolicy`,`no-referrer`),n.setAttribute(`s
399andbox`,`allow-scripts allow-same-origin`),n.onerror=()=>{e<3?(e++,setTimeout(t,2e3)):Un({bot:!1,creepError:!0})},document.body.appendChild(n),setTimeout(()=>{Vn||Un({bot:!1,creepTimeout:!0})},12e3)};document.body?t():document.addEventListener(`DOMContentLoaded`,t)}function Wn(){return new Promise(e=>{let t=()=>e({botDetection:zn,visitorId:Bn}),n=()=>{if(Bn&&Bn!==`unknown`)return t();let e=Date.now()+8e3,n=setInterval(()=>{(Bn&&Bn!==`unknown`||Date.now()>=e)&&(clearInterval(n),t())},100)};Vn?n():Hn.push(()=>n())})}var Gn=[],Kn=0;typeof window<`u`&&(document.addEventListener(`pointerdown`,()=>{Kn=performance.now()},!0),document.addEventListener(`pointerup`,()=>{Kn>0&&Gn.length<20&&(Gn.push({duration:Math.round(performance.now()-Kn)}),Kn=0)},!0));var qn=0,Jn=0,Yn=window?.scrollY||0,Xn=0;typeof window<`u`&&window.addEventListener(`scroll`,()=>{let e=performance.now(),t=Math.abs(window.scrollY-Yn);qn===0&&(qn=e),Jn+=t,Yn=window.scrollY,Xn=e-qn},{passive:!0});var Zn=[];if(typeof window<`u`&&window.DeviceMotionEvent){let e=t=>{Zn.length<10&&t.accelerationIncludingGravity&&Zn.push({x:parseFloat((t.accelerationIncludingGravity.x||0).toFixed(3)),y:parseFloat((t.accelerationIncludingGravity.y||0).toFixed(3)),z:parseFloat((t.accelerationIncludingGravity.z||0).toFixed(3))}),Zn.length>=10&&window.removeEventListener(`devicemotion`,e)};window.addEventListener(`devicemotion`,e,{passive:!0})}function Qn(){let e={};try{e.webdriver=!!navigator.webdriver,e.cdc=!!(window.cdc_adoQpoasnfa76pfcZLmcfl_||window.cdc_adoQpoasnfa76pfcZLmcfl_Array),e.selenium=!!(document.__selenium_unwrapped||document.__webdriver_evaluate||window._Selenium_IDE_Recorder)}catch{}try{let t=Object.getOwnPropertyDescriptor(Event.prototype,`isTrusted`);t&&typeof t.get==`function`?e.eventTampered=!t.get.toString().includes(`[native code]`):e.eventTampered=!1}catch{e.eventTampered=!1}let t=!1;try{t=/Mobi|Android|iPhone|iPad/i.test(navigator.userAgent)&&window.matchMedia&&window.matchMedia(`(pointer: fine)`).matches}catch{}return{automation:e,behavioral:{probes:{fakeMobileWithMouse:t}},behavior:{clicks:Gn.slice(-10),scroll:Jn>0?{totalDistance:Math.round(Jn),timeMs:Math.round(Xn)}:null},sensor:{motion:Zn.length>=3?{samples:Zn}:null}}}var $n=`/api/vuot-link`;function er(){let{slug:e}=h(),[t,n]=(0,K.useState)(null),[r,i]=(0,K.useState)(``),[a,o]=(0,K.useState)(!0),[s,c]=(0,K.useState)(``),[l,u]=(0,K.useState)(null),[d,f]=(0,K.useState)(!1),[p,m]=(0,K.useState)(!1),[g,_]=(0,K.useState)(``),[v,y]=(0,K.useState)(!1),[x,S]=(0,K.useState)(!1),[ee,te]=(0,K.useState)(null),[C,ne]=(0,K.useState)(!1),[re,ae]=(0,K.useState)(!1),[se,ce]=(0,K.useState)(`unknown`),[E,D]=(0,K.useState)(!1),[le,O]=(0,K.useState)(!1),[ue,fe]=(0,K.useState)(!1),[pe,me]=(0,K.useState)(0),k=(0,K.useRef)(null),he=(0,K.useRef)(0),A=/Mobi|Android|iPhone|iPad|iPod/i.test(typeof navigator<`u`?navigator.userAgent:``);(0,K.useEffect)(()=>{document.title=`Vượt link để truy cập — traffic68.com`},[]),(0,K.useEffect)(()=>{(async()=>{let e=document.createElement(`div`);e.className=`ad ads adsbox ad-placement ad-banner textads banner-ads`,e.setAttribute(`id`,`ad-test-banner`),e.innerHTML=`&nbsp;`,e.style.cssText=`position:absolute;top:-10px;left:-10px;width:1px;height:1px;overflow:hidden;`,document.body.appendChild(e),await new Promise(e=>setTimeout(e,200));let t=e.offsetHeight===0||e.clientHeight===0||window.getComputedStyle(e).display===`none`||window.getComputedStyle(e).visibility===`hidden`;e.remove();let n=!1;try{await fetch(`https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js`,{method:`HEAD`,mode:`no-cors`,cache:`no-cache`})}catch{n=!0}(t||n)&&m(!0)})()},[]);let j=(0,K.useRef)(null);(0,K.useEffect)(()=>{let t=new AbortController;return fetch(`${$n}/challenge?slug=${encodeURIComponent(e)}&_t=${Date.now()}`,{cache:`no-store`,signal:t.signal}).then(e=>e.ok?e.json():null).then(e=>{e&&(j.current=e)}).catch(()=>{}),()=>t.abort()},[e]),(0,K.useEffect)(()=>{fetch(`/api/shortlink/info/${e}`).then(e=>e.json()).then(e=>{e.error?i(e.error):n(e.link)}).catch(()=>i(`Không thể tải thông tin link`))},[e]);let[ge,_e]=(0,K.useState)(()=>{try{return JSON.parse(sessionStorage.getItem(`gw_skip_${e}`))||[]}catch{return[]}}),N=(0,K.useCallback)(async(n=!1,r=null)=>{if(!t)return;let i=`gw_task_${e}`;if(k.current&&=(clearTimeout(k.current),null),!n)try{let e=sessionStorage.getItem(i);if(e){let t=JSON.parse(e);if(t&&t.id&&!t._expired)if(!t._fetched_at||Date.now()-t._fetched_at<780*1e3){u(t),t.trusted&&D(!0),o(!1);return}else try{sessionStorage.removeItem(i)}catch{}}}catch{}let a=!1;try{if(o(!0),c(``),n&&D(!1),navigator.storage&&navigator.storage.estimate){let{quota:e}=await navigator.storage.estimate();if(e&&e<10*1024*1024*1024){f(!0);return}}let t=Wn(),s=await(j.current?Promise.resolve(j.current).finally(()=>{j.current=null}):fetch(`${$n}/challenge?slug=${encodeURIComponent(e)}&_t=${Date.now()}`,{cache:`no-store`}).then(e=>{if(!e.ok)throw Error(`Không thể lấy challenge`);return e.json()})),l=0,d=`0`.repeat(s.d||4),p=new TextEncoder;for(;;){let e=p.encode(s.p+l),t=await crypto.subtle.digest(`SHA-256`,e);if(Array.from(new Uint8Array(t)).map(e=>e.toString(16).padStart(2,`0`)).join(``).startsWith(d))break;if(l++,l>5e6)throw Error(`PoW timeout`)}let m=await t,h=m.visitorId||`unknown`,g=m.botDetection;ce(h),window.clarity&&(window.clarity(`set`,`visitor_id`,h),window.clarity(`identify`,h));let _=localStorage.getItem(`token`),v={"Content-Type":`application/json`};_&&(v.Authorization=`Bearer ${_}`);let y=await fetch(`${$n}/task`,{method:`POST`,headers:v,body:JSON.stringify({challengeId:s.c,powNonce:l,visitorId:h,botDetection:g,deviceData:Qn(),excludeCampaigns:r||ge})});if(y.status===404){he.current+=1;let e=he.current<=3,t=e?200:1e3;a=e,k.current=setTimeout(()=>{k.current=null,N(!0,r)},t),e||c(`no_task`);return}if(y.status===429){c((await y.json()).error||`Bạn đã đạt giới hạn hôm nay.`);return}if(y.status===403){let t=await y.json().catch(()=>({}));if(t.error&&(t.error.includes(`vô hiệu`)||t.error.includes(`kích hoạt`))){c(t.error);return}j.current=null;let n=await fetch(`${$n}/challenge?slug=${encodeURIComponent(e)}&_t=${Date.now()}`,{cache:`no-store`});if(!n.ok)throw Error(`Không thể lấy challenge mới`);let o=await n.json(),s=0,l=`0`.repeat(o.d||4),d=new TextEncoder;for(;;){let e=d.encode(o.p+s),t=await crypto.subtle.digest(`SHA-256`,e);if(Array.from(new Uint8Array(t)).map(e=>e.toString(16).padStart(2,`0`)).join(``).startsWith(l))break;if(s++,s>5e6)throw Error(`PoW timeout`)}let f=await fetch(`${$n}/task`,{method:`POST`,headers:v,body:JSON.stringify({challengeId:o.c,powNonce:s,visitorId:h,botDetection:g,deviceData:Qn(),excludeCampaigns:r||ge})});if(f.status===429){c((await f.json()).error||`Bạn đã đạt giới hạn hôm nay.`);return}
399if(f.status===404){a=!0,k.current=setTimeout(()=>{k.current=null,N(!0,r)},1e3);return}if(!f.ok){let e=await f.json().catch(()=>({}));throw Error(e.error||`Lỗi server (${f.status})`)}let p=await f.json();u(p),p.trusted&&D(!0);try{sessionStorage.setItem(i,JSON.stringify({...p,_fetched_at:Date.now()}))}catch{}return}if(!y.ok){let e=await y.json().catch(()=>({}));throw Error(e.error||`Lỗi server (${y.status})`)}he.current=0;let b=await y.json();u(b),b.trusted&&D(!0);try{sessionStorage.setItem(i,JSON.stringify({...b,_fetched_at:Date.now()}))}catch{}}catch(e){c(e.message||`Lỗi`),a=!0,k.current=setTimeout(()=>{k.current=null,N(!0,r)},1e3)}finally{a||o(!1)}},[t,e]),ve=(0,K.useRef)(!1);(0,K.useEffect)(()=>{!t||ve.current||(ve.current=!0,N(!1))},[t,N]);let ye=(0,K.useRef)(null),[P,be]=(0,K.useState)(1200);(0,K.useEffect)(()=>{if(ye.current&&clearTimeout(ye.current),!l||v)return;be(1200);let t=setInterval(()=>{be(n=>{if(n<=1){clearInterval(t),console.log(`[LinkGateway] Task expired, auto-fetching new campaign...`),u(null),_(``),S(!1),D(!1);try{sessionStorage.removeItem(`gw_task_${e}`)}catch{}return N(!0),0}return n-1})},1e3);return()=>clearInterval(t)},[l,v,e,N]);let[F,xe]=(0,K.useState)(!1),Se=(0,K.useCallback)(async()=>{xe(!0),ye.current&&clearTimeout(ye.current);let t=l?.campaign_id?[...new Set([...ge,l.campaign_id])]:ge;_e(t);try{sessionStorage.setItem(`gw_skip_${e}`,JSON.stringify(t))}catch{}u(null),_(``),y(!1),D(!1),te(null),S(!1);try{sessionStorage.removeItem(`gw_task_${e}`)}catch{}await N(!0,t),xe(!1)},[N,e,l,ge]),Ce=(0,K.useCallback)(async(t,n,r)=>{A&&n?n(!0):fe(!0);try{let n={"Content-Type":`application/json`},i=localStorage.getItem(`token`);if(i&&(n.Authorization=`Bearer ${i}`),!l)throw Error(`Task không còn tồn tại, vui lòng thử lại`);let a={_tk:l._tk};Array.isArray(t)&&t.length>=3&&(a.shakeLog=t);let o=await fetch(`${$n}/task/${l.id}/challenge-passed`,{method:`POST`,headers:n,body:JSON.stringify(a)}),s=await o.json();if(o.status===410){O(!1),u(null),_(``),D(!1),S(!1);try{sessionStorage.removeItem(`gw_task_${e}`)}catch{}N(!0);return}if(!o.ok){let e=s.error||`Xác minh thất bại`;if(r){r(e);return}throw Error(e)}D(!0),O(!1)}catch(e){O(!1),S(!0),c(`Xác minh thất bại, nhấn nút để thử lại: `+(e.message||``)),setTimeout(()=>S(!1),5e3)}finally{n&&n(!1),fe(!1)}},[l,e,N,A]),we=(0,K.useCallback)(async()=>{if(!g.trim()||g.trim().length<4){S(!0),c(`Vui lòng nhập mã xác nhận.`),setTimeout(()=>S(!1),3e3);return}ne(!0);try{let t=localStorage.getItem(`token`),n={"Content-Type":`application/json`};t&&(n.Authorization=`Bearer ${t}`);let r=await fetch(`${$n}/task/${l.id}/verify`,{method:`POST`,headers:n,body:JSON.stringify({code:g.trim(),_tk:l._tk,visitorId:se})}),i=await r.json();
399if(r.status===410){ne(!1),_(``),S(!1),u(null);try{sessionStorage.removeItem(`gw_task_${e}`)}catch{}N(!0);return}if(!r.ok)throw Error(i.error||`Mã không đúng`);te(i),y(!0),S(!1);try{sessionStorage.removeItem(`gw_task_${e}`)}catch{}i.destination_url&&(ae(!0),setTimeout(()=>{window.location.href=i.destination_url},3e3))}catch(e){S(!0),c(e.message),setTimeout(()=>S(!1),5e3)}finally{ne(!1)}},[g,l,e,N,se]),I=l?.keyword||``,L=l?.image1_url||``,R=l?.image2_url||``,Te=!!R,z=l?.widgetConfig||null,De=l?.traffic_type||`google_search`,Oe=l?.target_url||``,B=De===`direct`,V=De===`social`;return r?(0,q.jsx)(tr,{children:(0,q.jsxs)(nr,{children:[(0,q.jsx)(rr,{bg:`#FEF2F2`,border:`#FECACA`,children:(0,q.jsx)(Fe,{size:32,color:`#EF4444`})}),(0,q.jsx)(`h2`,{style:{color:`#1E3A6E`,fontWeight:800,margin:`0 0 8px`},children:`Link không tồn tại`}),(0,q.jsx)(`p`,{style:{color:`#64748B`,margin:0},children:r})]})}):t?d?(0,q.jsx)(tr,{children:(0,q.jsxs)(nr,{children:[(0,q.jsx)(rr,{bg:`#FFF7ED`,border:`#FED7AA`,children:(0,q.jsx)(w,{size:32,color:`#F97316`})}),(0,q.jsx)(`h2`,{style:{color:`#1E3A6E`,fontWeight:800,margin:0},children:`Không hỗ trợ trình duyệt ẩn danh`}),(0,q.jsx)(`p`,{style:{color:`#64748B`,margin:0},children:`Vui lòng mở bằng cửa sổ trình duyệt bình thường.`})]})}):p?(0,q.jsx)(tr,{children:(0,q.jsxs)(nr,{children:[(0,q.jsx)(rr,{bg:`#FEF2F2`,border:`#FECACA`,children:(0,q.jsx)(de,{size:32,color:`#EF4444`})}),(0,q.jsx)(`h2`,{style:{color:`#1E3A6E`,fontWeight:800,margin:0},children:`Vui lòng tắt trình chặn quảng cáo`}),(0,q.jsxs)(`p`,{style:{color:`#64748B`,margin:0,maxWidth:400,lineHeight:1.6},children:[`Hệ thống phát hiện bạn đang sử dụng tiện ích chặn quảng cáo.`,(0,q.jsx)(`br`,{}),`Vui lòng `,(0,q.jsx)(`strong`,{children:`tắt trình chặn quảng cáo`}),` rồi tải lại trang.`]}),(0,q.jsx)(`button`,{onClick:()=>window.location.reload(),style:{display:`inline-flex`,alignItems:`center`,gap:8,background:`linear-gradient(135deg,#F97316,#EA580C)`,color:`#fff`,padding:`12px 28px`,borderRadius:12,border:`none`,fontSize:14,fontWeight:700,cursor:`pointer`,marginTop:8,boxShadow:`0 4px 20px rgba(249,115,22,0.3)`},children:`Tải lại trang`})]})}):a?(0,q.jsx)(tr,{children:(0,q.jsxs)(nr,{children:[(0,q.jsx)(`div`,{style:{width:56,height:56,borderRadius:`50%`,border:`3px solid #E2E8F0`,borderTopColor:`#3B82F6`,animation:`spin 1s linear infinite`}}),(0,q.jsx)(`p`,{style:{color:`#64748B`,fontWeight:500},children:`Đang chuẩn bị nhiệm vụ...`})]})}):s&&!l?(0,q.jsx)(tr,{children:(0,q.jsx)(nr,{children:s===`no_task`?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(rr,{bg:`#FFF7ED`,border:`#FED7AA`,children:(0,q.jsx)(ie,{size:32,color:`#F97316`,style:{animation:`spin 1s linear infinite`}})}),(0,q.jsx)(`h2`,{style:{color:`#1E3A6E`,fontWeight:800,margin:`0 0 8px`},children:`Chưa có nhiệm vụ`}),(0,q.jsx)(`p`,{style:{color:`#64748B`,margin:`0 0 4px`},children:`Hệ thống đang tìm chiến dịch phù hợp...`}),(0,q.jsx)(`p`,{style:{color:`#F97316`,fontWeight:700,fontSize:13,margin:0},children:`Đang thử lại tự động...`})]}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(rr,{bg:`#FEF2F2`,border:`#FECACA`,children:(0,q.jsx)(Fe,{size:32,color:`#EF4444`})}),(0,q.jsx)(`h2`,{style:{color:`#1E3A6E`,fontWeight:800,margin:`0 0 8px`},children:`Không thể tải nhiệm vụ`}),(0,q.jsx)(`p`,{style:{color:`#64748B`,margin:`0 0 4px`},children:s}),(0,q.jsx)(`p`,{style:{color:`#94A3B8`,fontSize:13,margin:0},children:`Đang thử lại tự động...`})]})})}):(0,q.jsxs)(tr,{children:[(0,q.jsxs)(`div`,{style:{maxWidth:720,margin:`0 auto`,padding:`32px 16px 48px`},children:[(0,q.jsxs)(`div`,{style:{textAlign:`center`,marginBottom:28},children:[(0,q.jsx)(`h1`,{style:{fontSize:`clamp(20px,4vw,30px)`,fontWeight:900,color:`#1E3A6E`,margin:`0 0 6px`},children:`HOÀN THÀNH NHIỆM VỤ ĐỂ TRUY CẬP`}),(0,q.jsxs)(`p`,{style:{color:`#64748B`,fontSize:14,margin:0},children:[`Thực hiện `,B?2:V?3:4,` bước bên dưới theo thứ tự để mở khóa liên kết`]}),!v&&P>0&&(0,q.jsxs)(`div`,{style:{marginTop:14,display:`flex`,flexDirection:`column`,alignItems:`center`,gap:6},children:[(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:6,background:P<120?`#FEF2F2`:`#F0F9FF`,border:`1px solid ${P<120?`#FECACA`:`#BFDBFE`}`,borderRadius:10,padding:`6px 14px`},children:[(0,q.jsx)(Ee,{size:14,style:{color:P<120?`#EF4444`:`#3B82F6`}}),(0,q.jsxs)(`span`,{style:{fontSize:13,fontWeight:700,color:P<120?`#EF4444`:`#1E3A6E`,fontVariantNumeric:`tabular-nums`},children:[String(Math.floor(P/60)).padStart(2,`0`),`:`,String(P%60).padStart(2,`0`)]}),(0,q.jsx)(`span`,{style:{fontSize:11,color:P<120?`#EF4444`:`#64748B`},children:P<120?`Sắp hết hạn!`:`Thời gian còn lại`})]}),(0,q.jsx)(`div`,{style:{width:200,height:3,background:`#E2E8F0`,borderRadius:99,overflow:`hidden`},children:(0,q.jsx)(`div`,{style:{height:`100%`,background:P<120?`#EF4444`:`#3B82F6`,borderRadius:99,width:`${P/1200*100}%`,transition:`width 1s linear`}})})]})]}),(0,q.jsxs)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:20},children:[!B&&!V&&(0,q.jsx)(ir,{n:1,color:`#3B82F6`,title:`MỞ GOOGLE`,verified:v,children:(0,q.jsxs)(`div`,{style:{background:`#EFF6FF`,border:`1px solid #BFDBFE`,borderRadius:14,padding:20,display:`flex`,flexDirection:`column`,alignItems:`center`,gap:14},children:[(0,q.jsxs)(`div`,{style:{width:`100%`,maxWidth:360,background:`#fff`,borderRadius:10,overflow:`hidden`,boxShadow:`0 4px 20px rgba(0,0,0,0.08)`,border:`1px solid #E2E8F0`},children:[(0,q.jsxs)(`div`,{style:{background:`#F1F5F9`,padding:`8px 12px`,display:`flex`,alignItems:`center`,gap:6,borderBottom:`1px solid #E2E8F0`},children:[(0,q.jsx)(`div`,{style:{display:`flex`,gap:5},children:[`#EF4444`,`#F59E0B`,`#22C55E`].map(e=>(0,q.jsx)(`div`,{style:{width:10,height:10,borderRadius:`50%`,background:e}},e))}),(0,q.jsxs)(`div`,{style:{flex:1,background:`#fff`,borderRadius:6,padding:`4px 10px`,fontSize:12,color:`#3B82F6`,fontWeight:600,display:`flex`,alignItems:`center`,gap:4},children:[(0,q.jsx)(Ke,{size:12,style:{color:`#3B82F6`}}),` google.com`]})]}),(0,q.jsxs)(`div`,{style:{padding:`32px 16px`,textAlign:`center`},children:[(0,q.jsxs)(`div`,{style:{fontSize:32,fontWeight:900,letterSpacing:-1},children:[(0,q.jsx)(`span`,{style:{color:`#4285F4`},children:`G`}),(0,q.jsx)(`span`,{style:{color:`#EA4335`},children:`o`}),(0,q.jsx)(`span`,{style:{color:`#FBBC04`},children:`o`}),(0,q.jsx)(`span`,{style:{color:`#4285F4`},children:`g`}),(0,q.jsx)(`span`,{style:{color:`#34A853`},children:`l`}),(0,q.jsx)(`span`,{style:{color:`#EA4335`},children:`e`})]}),(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,margin:`16px auto 0`,maxWidth:300,background:`#fff`,border:`1px solid #ddd`,borderRadius:24,padding:`8px 16px`,boxShadow:`0 2px 8px rgba(0,0,0,0.08)`},children:[(0,q.jsx)(M,{size:16,style:{color:`#94A3B8`,marginRight:8}}),(0,q.jsx)(`span`,{style:{color:`#94A3B8`,fontSize:14},children:`Tìm kiếm...`})]})]})]}),(0,q.jsxs)(`a`,{href:`https://www.google.com`,target:`_blank`,rel:`noopener noreferrer`,style:{display:`inline-flex`,alignItems:`center`,gap:8,background:`linear-gradient(135deg,#3B82F6,#2563EB)`,color:`#fff`,textDecoration:`none`,padding:`11px 28px`,borderRadius:10,fontSize:14,fontWeight:700,boxShadow:`0 4px 16px rgba(59,130,246,0.35)`},children:[(0,q.jsx)(oe,{size:15}),` Mở Google`]})]})}),!B&&!V&&(0,q.jsx)(ir,{n:2,color:`#F97316`,title:`NHẬP TỪ KHÓA`,verified:v,children:(0,q.jsxs)(`div`,{style:{background:`#FFF7ED`,border:`1px solid #FED7AA`,borderRadius:14,padding:16},children:[(0,q.jsx)(`p`,{style:{fontSize:11,color:`#92400E`,fontWeight:700,textTransform:`uppercase`,letterSpacing:`0.06em`,marginBottom:8},children:`Từ khóa tìm kiếm`}),(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,background:`#fff`,border:`1.5px dashed #FB923C`,borderRadius:10,padding:`12px 16px`,marginBottom:12},children:[(0,q.jsx)(M,{size:16,color:`#F97316`}),(0,q.jsx)(`span`,{style:{flex:1,color:`#EA580C`,fontSize:`clamp(13px,2.5vw,16px)`,fontWeight:700},children:I||`traffic user giá rẻ traffic68`}),(0,q.jsx)(ar,{text:I||`traffic user giá rẻ traffic68`})]}),[`Copy từ khóa bên trên`,`Dán vào ô tìm kiếm Google`,`Nhấn Enter để tìm kiếm`].map((e,t)=>(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,background:`rgba(249,115,22,0.06)`,borderRadius:8,padding:`8px 12px`,marginBottom:t<2?6:0},children:[(0,q.jsx)(`div`,{style:{width:22,height:22,borderRadius:`50%`,background:`#F97316`,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0},children:(0,q.jsx)(`span`,{style:{color:`#fff`,fontSize:11,fontWeight:800},children:t+1})}),(0,q.jsx)(`span`,{style:{color:`#374151`,fontSize:13},children:e})]},t))]})}),!B&&!V&&(0,q.jsxs)(ir,{n:3,color:`#7C3AED`,title:`TÌM TRANG ĐÍCH`,verified:v,children:[(L||R)&&(0,q.
399jsx)(`div`,{style:{marginBottom:16},children:Te?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,background:`#EFF6FF`,border:`1px solid #BFDBFE`,borderRadius:10,padding:`10px 14px`,marginBottom:12},children:[(0,q.jsx)(`span`,{style:{fontSize:16},children:`💡`}),(0,q.jsxs)(`p`,{style:{margin:0,color:`#1D4ED8`,fontSize:13,fontWeight:700},children:[`Bạn có thể truy cập `,(0,q.jsx)(`strong`,{children:`1 trong 2 trang web`}),` bất kỳ dưới đây.`]})]}),(0,q.jsx)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:12},children:[{img:L,label:`Trang web 1`},{img:R,label:`Trang web 2`}].map(({img:e,label:t},n)=>e?(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`p`,{style:{color:`#64748B`,fontSize:11,fontWeight:700,textTransform:`uppercase`,letterSpacing:`0.05em`,margin:`0 0 6px`},children:[`🎯 `,t]}),(0,q.jsx)(`div`,{style:{borderRadius:12,overflow:`hidden`,border:`2px solid #DDD6FE`,boxShadow:`0 4px 16px rgba(99,102,241,0.1)`},children:(0,q.jsx)(`img`,{src:e,alt:t,style:{width:`100%`,display:`block`},onError:e=>e.target.style.display=`none`})})]},n):null)})]}):L?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`p`,{style:{color:`#64748B`,fontSize:11,fontWeight:700,textTransform:`uppercase`,letterSpacing:`0.05em`,margin:`0 0 6px`},children:[(0,q.jsx)(b,{size:12,style:{display:`inline`,marginRight:4,verticalAlign:`middle`}}),`Trang đích cần tìm:`]}),(0,q.jsx)(`div`,{style:{borderRadius:12,overflow:`hidden`,border:`2px solid #DDD6FE`,boxShadow:`0 4px 20px rgba(99,102,241,0.12)`},children:(0,q.jsx)(`img`,{src:L,alt:`Trang đích`,style:{width:`100%`,display:`block`},onError:e=>e.target.style.display=`none`})})]}):null}),(0,q.jsx)(`div`,{style:{background:`#F5F3FF`,border:`1px solid #DDD6FE`,borderRadius:14,padding:14},children:[`Cuộn tìm trong kết quả Google`,Te?`Tìm trang có giao diện giống 1 trong 2 hình trên`:`Tìm trang có giao diện giống hình trên`,`Click vào kết quả để truy cập trang`].map((e,t)=>(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,background:`rgba(139,92,246,0.06)`,borderRadius:8,padding:`8px 12px`,marginBottom:t<2?8:0},children:[(0,q.jsx)(`div`,{style:{width:22,height:22,borderRadius:`50%`,background:`#7C3AED`,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0},children:(0,q.jsx)(`span`,{style:{color:`#fff`,fontSize:11,fontWeight:800},children:t+1})}),(0,q.jsx)(`span`,{style:{color:`#374151`,fontSize:13},children:e})]},t))})]}),V&&(0,q.jsx)(ir,{n:1,color:`#1877F2`,title:`MỞ BÀI ĐĂNG SOCIAL`,verified:v,children:(0,q.jsxs)(`div`,{style:{background:`#EFF6FF`,border:`1px solid #BFDBFE`,borderRadius:14,padding:24,display:`flex`,flexDirection:`column`,alignItems:`center`,gap:14},children:[(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`flex-start`,gap:10,background:`#fff`,border:`1.5px dashed #1877F2`,borderRadius:10,padding:`12px 16px`,width:`100%`,boxSizing:`border-box`},children:[(0,q.jsx)(ke,{size:18,style:{color:`#1877F2`,flexShrink:0,marginTop:1}}),(0,q.jsx)(`span`,{style:{flex:1,color:`#1D4ED8`,fontSize:`clamp(11px,2.5vw,13px)`,fontWeight:700,wordBreak:`break-all`,overflowWrap:`anywhere`,minWidth:0,lineHeight:1.5},children:I}),(0,q.jsx)(ar,{text:I})]}),(0,q.jsxs)(`a`,{href:I,target:`_blank`,rel:`noopener noreferrer`,style:{display:`inline-flex`,alignItems:`center`,gap:8,background:`linear-gradient(135deg,#1877F2,#1565C0)`,color:`#fff`,textDecoration:`none`,padding:`11px 28px`,borderRadius:10,fontSize:14,fontWeight:700,boxShadow:`0 4px 16px rgba(24,119,242,0.35)`},children:[(0,q.jsx)(oe,{size:15}),` Mở bài đăng`]}),(0,q.jsx)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:8,width:`100%`},children:[`Copy hoặc nhấn nút Mở bài đăng`,`Xem bài đăng tự nhiên`,`Tìm link URL trong mô tả / bình luận`].map((e,t)=>(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,background:`rgba(24,119,242,0.06)`,borderRadius:8,padding:`8px 12px`},children:[(0,q.jsx)(`div`,{style:{width:22,height:22,borderRadius:`50%`,background:`#1877F2`,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0},children:(0,q.jsx)(`span`,{style:{color:`#fff`,fontSize:11,fontWeight:800},children:t+1})}),(0,q.jsx)(`span`,{style:{color:`#374151`,fontSize:13},children:e})]},t))})]})}
399),V&&(0,q.jsx)(ir,{n:2,color:`#7C3AED`,title:`TÌM & CLICK LINK TRONG BÀI`,verified:v,children:(0,q.jsxs)(`div`,{style:{background:`#F5F3FF`,border:`1px solid #DDD6FE`,borderRadius:14,padding:18,display:`flex`,flexDirection:`column`,gap:14},children:[L&&(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`p`,{style:{color:`#6D28D9`,fontSize:11,fontWeight:700,textTransform:`uppercase`,letterSpacing:`0.05em`,margin:`0 0 8px`},children:[(0,q.jsx)(M,{size:13,style:{display:`inline`,marginRight:4,verticalAlign:`middle`}}),`Bài viết cần tìm:`]}),(0,q.jsx)(`div`,{style:{borderRadius:10,overflow:`hidden`,border:`2px solid #DDD6FE`,boxShadow:`0 4px 16px rgba(99,102,241,0.12)`},children:(0,q.jsx)(`img`,{src:L,alt:`Bài viết`,style:{width:`100%`,display:`block`},onError:e=>e.target.style.display=`none`})})]}),[`Tìm link trong mô tả bài đăng hoặc bình luận`,`Click vào link đó để truy cập trang đích`,`Ở lại trang, tìm nút lấy mã → nhập mã vào bước 3`].map((e,t)=>(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,background:`rgba(139,92,246,0.06)`,borderRadius:8,padding:`8px 12px`},children:[(0,q.jsx)(`div`,{style:{width:22,height:22,borderRadius:`50%`,background:`#7C3AED`,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0},children:(0,q.jsx)(`span`,{style:{color:`#fff`,fontSize:11,fontWeight:800},children:t+1})}),(0,q.jsx)(`span`,{style:{color:`#374151`,fontSize:13},children:e})]},t))]})}),B&&(0,q.jsx)(ir,{n:1,color:`#3B82F6`,title:`TRUY CẬP TRANG WEB`,verified:v,children:(0,q.jsxs)(`div`,{style:{background:`#EFF6FF`,border:`1px solid #BFDBFE`,borderRadius:14,padding:24,display:`flex`,flexDirection:`column`,alignItems:`center`,gap:14},children:[(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,background:`#fff`,border:`1.5px dashed #3B82F6`,borderRadius:10,padding:`12px 16px`,width:`100%`,maxWidth:400},children:[(0,q.jsx)(Ke,{size:16,style:{color:`#3B82F6`,flexShrink:0}}),(0,q.jsx)(`span`,{style:{flex:1,color:`#1D4ED8`,fontSize:`clamp(12px,2.5vw,14px)`,fontWeight:700,wordBreak:`break-all`},children:Oe}),(0,q.jsx)(ar,{text:Oe})]}),(0,q.jsxs)(`a`,{href:Oe,target:`_blank`,rel:`noopener noreferrer`,style:{display:`inline-flex`,alignItems:`center`,gap:8,background:`linear-gradient(135deg,#3B82F6,#2563EB)`,color:`#fff`,textDecoration:`none`,padding:`11px 28px`,borderRadius:10,fontSize:14,fontWeight:700,boxShadow:`0 4px 16px rgba(59,130,246,0.35)`},children:[(0,q.jsx)(oe,{size:15}),` Mở trang web`]}),(0,q.jsx)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:8,width:`100%`},children:[`Copy hoặc nhấn nút mở trang web`,`Ở lại trang và tương tác tự nhiên`,`Tìm nút lấy mã trên trang → lấy mã`,`Quay lại đây nhập mã xác nhận`].map((e,t)=>(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,background:`rgba(59,130,246,0.06)`,borderRadius:8,padding:`8px 12px`},children:[(0,q.jsx)(`div`,{style:{width:22,height:22,borderRadius:`50%`,background:`#3B82F6`,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0},children:(0,q.jsx)(`span`,{style:{color:`#fff`,fontSize:11,fontWeight:800},children:t+1})}),(0,q.jsx)(`span`,{style:{color:`#374151`,fontSize:13},children:e})]},t))})]})}),l&&!v&&(0,q.jsx)(`div`,{style:{textAlign:`center`},children:(0,q.jsxs)(`button`,{onClick:Se,disabled:F,style:{display:`inline-flex`,alignItems:`center`,gap:6,background:`none`,border:`1.5px solid #CBD5E1`,color:`#64748B`,padding:`8px 20px`,borderRadius:10,fontSize:13,fontWeight:600,cursor:`pointer`,transition:`all 0.2s`},onMouseOver:e=>{e.currentTarget.style.borderColor=`#F97316`,e.currentTarget.style.color=`#F97316`},onMouseOut:e=>{e.currentTarget.style.borderColor=`#CBD5E1`,e.currentTarget.style.color=`#64748B`},children:[(0,q.jsx)(ie,{size:14,style:F?{animation:`spin 1s linear infinite`}:{}}),F?`Đang đổi...`:`Không tìm thấy? Đổi nhiệm vụ`]})}),(0,q.jsx)(ir,{n:B?2:V?3:4,color:`#16A34A`,title:`NHẬP MÃ XÁC NHẬN`,verified:v,children:v?(0,q.jsxs)(`div`,{style:{textAlign:`center`,padding:`32px 16px`},children:[(0,q.jsx)(`div`,{style:{width:80,height:80,borderRadius:`50%`,background:`#F0FEF4`,border:`3px solid #86EFAC`,margin:`0 auto 16px`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,q.jsx)(Ge,{size:36,color:`#22C55E`})}),(0,q.jsx)(`h3`,{style:{color:`#16A34A`,fontWeight:800,margin:`0 0 8px`},children:`Xác nhận thành công!`}),(0,q.jsx)(`p`,{style:{color:`#64748B`,margin:`0 0 20px`},children:re?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(ie,{size:14,style:{animation:`spin 1s linear infinite`}}),` Đang chuyển hướng đến trang đích...`]}):`Bạn đã hoàn thành nhiệm vụ!`}),re&&(0,q.jsx)(`div`,{style:{marginBottom:20},children:(0,q.jsx)(`div`,{style:{height:4,background:`#E2E8F0`,borderRadius:99,overflow:`hidden`},children:(0,q.jsx)(`div`,{style:{height:4,background:`#22C55E`,borderRadius:99,animation:`progress 3s linear forwards`}})})}),ee?.destination_url&&(0,q.jsxs)(`a`,{href:ee.destination_url,style:{display:`inline-flex`,alignItems:`center`,gap:8,background:`linear-gradient(135deg,#22C55E,#16A34A)`,color:`#fff`,textDecoration:`none`,padding:`12px 28px`,borderRadius:12,fontSize:14,fontWeight:700,boxShadow:`0 4px 16px rgba(34,197,94,0.3)`},children:[`Đến trang đích ngay `,(0,q.jsx)(T,{size:16})]})]}):(0,q.jsxs)(`div`,{style:{background:`#F0FDF4`,border:`1px solid #BBF7D0`,borderRadius:14,padding:20,display:`flex`,flexDirection:`column`,gap:16},children:[[{num:`1`,color:`#3B82F6`,label:`Cuộn & tìm nút`,content:(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,flexWrap:`wrap`},children:[(0,q.jsx)(`span`,{style:{fontSize:12,color:`#64748B`},children:`Nút trông như thế này trên trang đích:`}),(0,q.jsxs)(`div`,{style:{display:`inline-flex`,alignItems:`center`,gap:8,background:z?.buttonColor||`#F97316`,color:z?.textColor||`#fff`,borderRadius:`${z?.borderRadius??50}px`,fontSize:`${z?.fontSize||15}px`,fontWeight:700,padding:`8px 16px`,boxShadow:`0 4px 16px ${z?.buttonColor||`#F97316`}
39955`,userSelect:`none`,whiteSpace:`nowrap`,cursor:`default`},children:[(0,q.jsx)(`img`,{src:z?.iconUrl||`https://traffic68.com/lg.png`,width:z?.iconSize??22,height:z?.iconSize??22,alt:``,style:{background:z?.iconBg??`rgba(255,255,255,0.92)`,borderRadius:6,padding:2,objectFit:`contain`,flexShrink:0,display:`block`},onError:e=>{e.target.src=`https://traffic68.com/lg.png`}}),z?.buttonText||`Lấy Mã`]})]})},{num:`2`,color:`#F97316`,label:`Chờ đủ thời gian → bấm nút → sao chép mã`,content:(0,q.jsx)(`p`,{style:{fontSize:12,color:`#64748B`,margin:0},children:`Khi nút kích hoạt, bấm vào — popup sẽ hiện mã. Sao chép mã rồi quay lại đây.`})}].map(({num:e,color:t,label:n,content:r})=>(0,q.jsxs)(`div`,{style:{display:`flex`,gap:12,alignItems:`flex-start`},children:[(0,q.jsx)(`div`,{style:{width:26,height:26,borderRadius:`50%`,background:t,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0,marginTop:2},children:(0,q.jsx)(`span`,{style:{color:`#fff`,fontSize:12,fontWeight:900},children:e})}),(0,q.jsxs)(`div`,{style:{flex:1},children:[(0,q.jsx)(`p`,{style:{fontSize:11,fontWeight:800,color:t,textTransform:`uppercase`,letterSpacing:`0.5px`,margin:`0 0 6px`},children:n}),r]})]},e)),(0,q.jsx)(`div`,{style:{borderTop:`1.5px dashed #BBF7D0`,margin:0}}),E?(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`p`,{style:{color:`#16A34A`,fontSize:12,fontWeight:800,textTransform:`uppercase`,letterSpacing:`0.5px`,margin:`0 0 8px`,display:`flex`,alignItems:`center`,gap:6},children:[(0,q.jsx)(`span`,{style:{width:20,height:20,borderRadius:`50%`,background:`#22C55E`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`,fontSize:11,color:`#fff`,fontWeight:900,flexShrink:0},children:`3`}),`Nhập mã xác nhận`]}),(0,q.jsx)(`div`,{style:{marginBottom:10},children:(0,q.jsx)(`input`,{type:`text`,maxLength:6,value:g,onChange:e=>_(e.target.value.toUpperCase()),disabled:C,placeholder:`Nhập mã tại đây`,onKeyDown:e=>e.key===`Enter`&&we(),style:{width:`100%`,padding:`12px 14px`,background:`#fff`,border:`1.5px solid ${x?`#FCA5A5`:`#86EFAC`}`,borderRadius:10,outline:`none`,fontSize:16,fontWeight:700,letterSpacing:3,textAlign:`center`,color:`#1E293B`,boxSizing:`border-box`}})}),x&&(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:6,background:`#FEF2F2`,border:`1px solid #FECACA`,borderRadius:8,padding:`8px 12px`,marginBottom:10},children:[(0,q.jsx)(Ae,{size:14,color:`#EF4444`}),(0,q.jsx)(`span`,{style:{color:`#DC2626`,fontSize:12,fontWeight:500},children:s||`Mã xác nhận không đúng.`})]}),(0,q.jsx)(`button`,{onClick:we,disabled:g.length<4||C,style:{width:`100%`,padding:15,borderRadius:12,border:`none`,background:g.length>=4&&!C?`linear-gradient(135deg,#F97316,#EA580C)`:`#E2E8F0`,color:g.length>=4?`#fff`:`#94A3B8`,fontSize:14,fontWeight:800,cursor:g.length>=4&&!C?`pointer`:`not-allowed`,letterSpacing:`0.3px`,display:`flex`,alignItems:`center`,justifyContent:`center`,gap:8,boxShadow:g.length>=4&&!C?`0 6px 24px rgba(249,115,22,0.4)`:`none`,transition:`all 0.3s`,animation:g.length>=4&&!C?`glow 2.5s ease-in-out infinite`:`none`},onMouseEnter:e=>{g.length>=4&&!C&&(e.currentTarget.style.transform=`translateY(-2px)`)},onMouseLeave:e=>{e.currentTarget.style.transform=`none`},children:C?`ĐANG XỬ LÝ...`:`XÁC NHẬN VÀ MỞ KHÓA LINK`})]}):(0,q.jsxs)(`div`,{style:{textAlign:`center`,padding:`8px 0 4px`},children:[(0,q.jsx)(`p`,{style:{fontSize:12,color:`#64748B`,margin:`0 0 12px`,display:`flex`,alignItems:`center`,justifyContent:`center`,gap:6},children:A?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(ke,{size:13}),` Cần xác minh bạn là người thật trước khi nhập mã`]}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(ze,{size:13}),` Cần xác minh bạn là người thật trước khi nhập mã`]})}),(0,q.jsxs)(`button`,{onClick:()=>O(!0),style:{display:`inline-flex`,alignItems:`center`,gap:10,background:`linear-gradient(135deg,#7C3AED,#6D28D9)`,color:`#fff`,border:`none`,borderRadius:12,padding:`13px 28px`,fontSize:14,fontWeight:800,cursor:`pointer`,boxShadow:`0 6px 24px rgba(124,58,237,0.35)`,animation:`glow-purple 2.5s ease-in-out infinite`},children:[A?(0,q.jsx)(ke,{size:20}):(0,q.jsx)(ze,{size:20}),A?`LẮC ĐIỆN THOẠI ĐỂ XÁC MINH`:`RÊ CHUỘT ĐỂ XÁC MINH`]})]})]})})]})]}),le&&!E&&(A?(0,q.jsx)(or,{onPass:Ce,onClose:()=>O(!1)}):(0,q.jsx)(lr,{onPass:Ce,onClose:()=>O(!1)})),ue&&(0,q.jsxs)(`div`,{style:{position:`fixed`,inset:0,zIndex:1e3,background:`rgba(15,15,35,0.7)`,backdropFilter:`blur(8px)`,display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,gap:16},children:[(0,q.jsx)(`div`,{style:{width:52,height:52,borderRadius:`50%`,border:`4px solid rgba(255,255,255,0.2)`,borderTopColor:`#22C55E`,animation:`spin 0.8s linear infinite`}}),(0,q.jsx)(`p`,{style:{color:`#fff`,fontWeight:700,fontSize:15,margin:0}
399,children:`Đang xác minh với máy chủ...`})]}),(0,q.jsx)(`style`,{children:`
400        @keyframes spin { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
401        @keyframes progress { from{width:0} to{width:100%} }
402        @keyframes glow { 0%,100%{box-shadow:0 6px 24px rgba(249,115,22,0.4)} 50%{box-shadow:0 8px 36px rgba(249,115,22,0.6)} }
403        @keyframes glow-purple { 0%,100%{box-shadow:0 6px 24px rgba(124,58,237,0.35)} 50%{box-shadow:0 8px 40px rgba(124,58,237,0.6)} }
404      `})]}):(0,q.jsx)(tr,{children:(0,q.jsxs)(nr,{children:[(0,q.jsx)(`div`,{style:{width:56,height:56,borderRadius:`50%`,border:`3px solid #E2E8F0`,borderTopColor:`#3B82F6`,animation:`spin 1s linear infinite`}}),(0,q.jsx)(`p`,{style:{color:`#64748B`,fontWeight:500},children:`Đang tải link...`})]})})}function tr({children:e}){return(0,q.jsxs)(`div`,{style:{background:`linear-gradient(160deg,#DBEAFE 0%,#EFF6FF 40%,#F0F9FF 70%,#F8FAFC 100%)`,fontFamily:`'Inter',sans-serif`,position:`relative`},children:[(0,q.jsx)(`div`,{style:{position:`fixed`,inset:0,pointerEvents:`none`,zIndex:0,overflow:`hidden`},children:(0,q.jsxs)(`svg`,{width:`100%`,height:`100%`,style:{opacity:.04},children:[(0,q.jsx)(`defs`,{children:(0,q.jsx)(`pattern`,{id:`grid`,width:`60`,height:`60`,patternUnits:`userSpaceOnUse`,children:(0,q.jsx)(`path`,{d:`M 60 0 L 0 0 0 60`,fill:`none`,stroke:`#1E3A6E`,strokeWidth:`1`})})}),(0,q.jsx)(`rect`,{width:`100%`,height:`100%`,fill:`url(#grid)`})]})}),(0,q.jsx)(`div`,{style:{position:`relative`,zIndex:1},children:e})]})}function nr({children:e}){return(0,q.jsx)(`div`,{style:{display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,minHeight:`60vh`,gap:16,textAlign:`center`,padding:`0 24px`},children:e})}function rr({children:e,bg:t,border:n}){return(0,q.jsx)(`div`,{style:{width:72,height:72,borderRadius:`50%`,background:t,border:`2px solid ${n}`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:e})}function ir({n:e,color:t,title:n,verified:r,children:i}){let a={1:`#3B82F6`,2:`#F97316`,3:`#7C3AED`,4:`#22C55E`}[e]||t;return(0,q.jsxs)(`div`,{style:{background:`#fff`,border:`2px solid ${r?`#86EFAC`:e===4?`#BBF7D0`:`#E2E8F0`}`,borderRadius:20,padding:`clamp(20px,3vw,28px)`,boxShadow:r?`0 4px 16px rgba(34,197,94,0.08)`:`0 2px 12px rgba(0,0,0,0.05)`,transition:`all 0.4s ease`},children:[(0,q.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,marginBottom:6},children:[(0,q.jsx)(`div`,{style:{width:30,height:30,borderRadius:`50%`,background:r?`#22C55E`:a,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0,boxShadow:`0 4px 12px ${a}40`},children:(0,q.jsx)(`span`,{style:{color:`#fff`,fontSize:14,fontWeight:900},children:e})}),(0,q.jsxs)(`span`,{style:{color:r?`#16A34A`:a,fontSize:12,fontWeight:800,letterSpacing:1},children:[`BƯỚC `,e]}),r&&(0,q.jsx)(`span`,{style:{marginLeft:`auto`,background:`#F0FEF4`,border:`1px solid #86EFAC`,color:`#16A34A`,fontSize:10,fontWeight:700,padding:`3px 10px`,borderRadius:100},children:`✓ HOÀN THÀNH`})]}),(0,q.jsx)(`h2`,{style:{color:r?`#16A34A`:a,fontSize:`clamp(18px,3vw,24px)`,fontWeight:900,margin:`0 0 14px`},children:n}),i]})}function ar({text:e}){let[t,n]=(0,K.useState)(!1);return(0,q.jsxs)(`button`,{onClick:()=>{navigator.clipboard.writeText(e),n(!0),setTimeout(()=>n(!1),2e3)},style:{display:`flex`,alignItems:`center`,gap:5,background:t?`#F0FEF4`:`#FFF7ED`,border:`1px solid ${t?`#86EFAC`:`#FED7AA`}`,color:t?`#16A34A`:`#EA580C`,padding:`6px 12px`,borderRadius:8,fontSize:12,fontWeight:700,cursor:`pointer`,transition:`all 0.2s`,flexShrink:0},children:[t?(0,q.jsx)(We,{size:13}):(0,q.jsx)(Ce,{size:13}),` `,t?`Đã copy`:`Copy`]})}function or({onPass:e,onClose:t}){let[n,r]=(0,K.useState)(0),[i,a]=(0,K.useState)(!1),[o,s]=(0,K.useState)(!1),[c,l]=(0,K.useState)(!1),[u,d]=(0,K.useState)(!1),[f,p]=(0,K.useState)(``),m=(0,K.useRef)(0),h=(0,K.useRef)([]),g=(0,K.useRef)(!1);return(0,K.useEffect)(()=>{let t=(async()=>{try{if(typeof DeviceMotionEvent<`u`&&typeof DeviceMotionEvent.requestPermission==`function`)try{if(await DeviceMotionEvent.requestPermission()!==`granted`){console.log(`[ShakeChallenge] Permission denied`);return}}catch(e){console.error(`[ShakeChallenge] Permission error:`,e);return}let t=t=>{try{if(!(t instanceof DeviceMotionEvent))return;let n=navigator.userAgent||``,i=/FBAN|FBAV|Instagram|TikTok|Line\/|ZaloApp|Twitter\/|Snapchat|Viber/i.test(n),o=t.accelerationIncludingGravity,c=o&&o.z!==0&&o.z!==null;if(!t.isTrusted&&!(i&&c))return;let u=t.accelerationIncludingGravity;if(!u)return;let f=u.x||0,p=u.y||0,_=u.z||0,v=(f<0?-f:f)+(p<0?-p:p)+(_<0?-_:_);if(f===p&&p===_)return;let y=Date.now();h.current.push({t:y,ax:+f.toFixed(2),ay:+p.toFixed(2),az:+_.toFixed(2)}),h.current.length>50&&h.current.shift(),v>22&&y-m.current>300&&(m.current=y,a(!0),setTimeout(()=>a(!1),300),r(t=>{let n=t+1;if(n>=3&&!g.current){g.current=!0;let t=[...h.current],r=t.every(e=>e.ax===0),i=t.every(e=>e.ay===0),a=t.every(e=>e.az===0);if(r&&i&&a)return d(!0),g.current=!1,n;s(!0),e(t,l)}return n}))}catch(e){console.error(`[ShakeChallenge] Handler error:`,e)}};return window.addEventListener(`devicemotion`,t,{passive:!0}),()=>window.removeEventListener(`devicemotion`,t)}catch(e){return console.error(`[ShakeChallenge] Setup error:`,e),()=>{}}})();return()=>{t.then&&t.then(e=>e&&e())}},[e]),(0,q.jsxs)(`div`,{style:{position:`fixed`,inset:0,zIndex:999,background:o?`#15803D`:`#0d0d20`,display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,padding:24,transition:`background 0.35s ease`},children:[(0,q.jsx)(`button`,{onClick:t,style:{position:`absolute`,top:20,right:20,background:`rgba(255,255,255,0.15)`,border:`none`,color:`#fff`,borderRadius:`50%`,width:36,height:36,cursor:`pointer`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,q.jsx)(V,{size:16})}),o?(0,q.jsxs)(`div`,{style:{textAlign:`center`,color:`#fff`,animation:`fadeIn 0.4s ease`},children:[(0,q.jsx)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`,marginBottom:16},children:c?(0,q.jsx)(`div`,{style:{width:72,height:72,borderRadius:`50%`,border:`4px solid rgba(255,255,255,0.2)`,borderTopColor:`#fff`,animation:`spin 0.8s linear infinite`}}):(0,q.jsx)(`div`,{style:{width:72,height:72,borderRadius:`50%`,background:`rgba(255,255,255,0.15)`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,q.jsx)(We,{size:40,color:`#fff`,strokeWidth:3})})}),(0,q.jsx)(`h2`,{style:{fontSize:28,fontWeight:900,margin:`0 0 8px`},children:c?`Đang xác minh...`:`Lắc thành công!`}),(0,q.jsx)(`p`,{style:{fontSize:16,opacity:.9},children:c?`Vui lòng chờ trong giây lát`:`Đang kết nối với máy chá»
404§...`})]}):u?(0,q.jsxs)(`div`,{style:{textAlign:`center`,color:`#fff`,animation:`fadeIn 0.4s ease`},children:[(0,q.jsx)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`,marginBottom:16},children:(0,q.jsx)(`div`,{style:{width:72,height:72,borderRadius:`50%`,background:`rgba(239,68,68,0.3)`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,q.jsx)(D,{size:40,color:`#fca5a5`,strokeWidth:2.5})})}),(0,q.jsx)(`h2`,{style:{fontSize:24,fontWeight:900,margin:`0 0 12px`,color:`#fca5a5`},children:`Phát hiện giả lập!`}),(0,q.jsxs)(`p`,{style:{fontSize:14,opacity:.8,margin:`0 0 24px`},children:[`Cảm biến điện thoại cho thấy thiết bị không hợp lệ.`,(0,q.jsx)(`br`,{}),`Vui lòng dùng thiết bị thật.`]}),(0,q.jsx)(`button`,{onClick:t,style:{padding:`10px 24px`,background:`rgba(255,255,255,0.2)`,border:`1px solid rgba(255,255,255,0.4)`,color:`#fff`,borderRadius:12,cursor:`pointer`,fontSize:14,fontWeight:700},children:`Đóng`})]}):f?(0,q.jsxs)(`div`,{style:{textAlign:`center`,color:`#fff`,animation:`fadeIn 0.4s ease`},children:[(0,q.jsx)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`,marginBottom:16},children:(0,q.jsx)(`div`,{style:{width:72,height:72,borderRadius:`50%`,background:`rgba(239,68,68,0.2)`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,q.jsx)(Ae,{size:40,color:`#fca5a5`,strokeWidth:2.5})})}),(0,q.jsx)(`h2`,{style:{fontSize:22,fontWeight:900,margin:`0 0 10px`,color:`#fca5a5`},children:`Xác minh thất bại`}),(0,q.jsx)(`p`,{style:{fontSize:14,opacity:.8,margin:`0 0 24px`,maxWidth:300,lineHeight:1.6},children:f}),(0,q.jsxs)(`button`,{onClick:()=>{s(!1),l(!1),p(``),r(0),g.current=!1,h.current=[],m.current=0},style:{padding:`12px 32px`,background:`linear-gradient(135deg,#7C3AED,#6D28D9)`,border:`none`,color:`#fff`,borderRadius:12,cursor:`pointer`,fontSize:14,fontWeight:800,boxShadow:`0 4px 16px rgba(124,58,237,0.4)`},children:[(0,q.jsx)(ke,{size:16,style:{display:`inline`,marginRight:6,verticalAlign:`middle`}}),`Lắc lại`]})]}):(0,q.jsxs)(`div`,{style:{textAlign:`center`,color:`#fff`},children:[(0,q.jsx)(`div`,{style:{marginBottom:24,animation:i?`shake-anim 0.3s ease`:`phone-idle 2s ease-in-out infinite`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`,width:80,height:80,borderRadius:`50%`,background:`rgba(255,255,255,0.15)`},children:(0,q.jsx)(ke,{size:44,color:`#fff`})}),(0,q.jsx)(`h2`,{style:{fontSize:22,fontWeight:900,margin:`0 0 8px`,letterSpacing:.5},children:`LẮC ĐIỆN THOẠI ĐỂ XÁC MINH`}),(0,q.jsxs)(`p`,{style:{fontSize:14,opacity:.75,margin:`0 0 32px`},children:[`Lắc mạnh điện thoại `,(0,q.jsxs)(`strong`,{children:[3,` lần`]}),` để chứng minh bạn là người thật`]}),(0,q.jsx)(`div`,{style:{display:`flex`,gap:14,justifyContent:`center`,marginBottom:28},children:Array.from({length:3}).map((e,t)=>(0,q.jsx)(`div`,{style:{width:20,height:20,borderRadius:`50%`,background:t<n?`#22C55E`:`rgba(255,255,255,0.25)`,border:`2px solid `+(t<n?`#22C55E`:`rgba(255,255,255,0.4)`),transition:`all 0.3s`,transform:t<n?`scale(1.2)`:`scale(1)`,boxShadow:t<n?`0 0 12px rgba(34,197,94,0.6)`:`none`}},t))}),(0,q.jsx)(`p`,{style:{fontSize:13,opacity:.6},children:n===0?`Chưa phát hiện lắc...`:`Đã lắc ${n}/3 lần`})]}),(0,q.jsx)(`style`,{children:`
405        @keyframes phone-idle {
406          0%,100% { transform: rotate(-5deg); }
407          50% { transform: rotate(5deg); }
408        }
409        @keyframes shake-anim {
410          0% { transform: rotate(0deg) scale(1.1); }
411          25% { transform: rotate(-15deg) scale(1.2); }
412          75% { transform: rotate(15deg) scale(1.2); }
413          100% { transform: rotate(0deg) scale(1); }
414        }
415        @keyframes fadeIn { from { opacity: 0; transform: scale(0.9); } to { opacity: 1; transform: scale(1); } }
416      `})]})}function sr(e,t){return[{x:60+Math.random()*e*.2,y:60+Math.random()*(t-120)},{x:e*.3+Math.random()*e*.15,y:60+Math.random()*(t-120)},{x:e*.55+Math.random()*e*.15,y:60+Math.random()*(t-120)},{x:e-60-Math.random()*e*.2,y:60+Math.random()*(t-120)}]}
416function cr(e,t=120){let[n,r,i,a]=e;return Array.from({length:t},(e,o)=>{let s=o/(t-1),c=1-s;return{x:c**3*n.x+3*c**2*s*r.x+3*c*s**2*i.x+s**3*a.x,y:c**3*n.y+3*c**2*s*r.y+3*c*s**2*i.y+s**3*a.y}})}function lr({onPass:e,onClose:t}){let n=(0,K.useRef)(null),r=(0,K.useRef)({points:[],progress:0,isDragging:!1,passed:!1,curveLog:[]}),[i,a]=(0,K.useState)(0),[o,s]=(0,K.useState)(!1),[c,l]=(0,K.useState)(!1),u=(0,K.useRef)(null),d=(0,K.useRef)(e);return(0,K.useEffect)(()=>{d.current=e}),(0,K.useEffect)(()=>{let e=n.current;if(!e)return;let t;try{if(t=e.getContext(`2d`),!t){console.error(`[CurveChallenge] Cannot get 2d context`);return}}catch(e){console.error(`[CurveChallenge] Context error:`,e);return}let i=e.width=Math.max((()=>{if(e.offsetWidth>0)return e.offsetWidth;if(e.parentElement?.offsetWidth>0)return e.parentElement.offsetWidth;if(e.clientWidth>0)return e.clientWidth;let t=window.getComputedStyle(e),n=parseInt(t.width);return n>0?n:window.innerWidth>640?560:Math.max(window.innerWidth-64,320)})(),320),o=e.height=220;if(i<100||o<100){console.error(`[CurveChallenge] Canvas too small:`,i,o);return}let c=r.current;if(!c.initialized)try{c.pts=sr(i,o),c.samples=cr(c.pts),c.initialized=!0}catch(e){console.error(`[CurveChallenge] Curve generation error:`,e);return}c.progress=0,c.isDragging=!1,c.passed=!1;let f=()=>{try{t.clearRect(0,0,i,o),t.beginPath(),t.moveTo(c.pts[0].x,c.pts[0].y),t.bezierCurveTo(c.pts[1].x,c.pts[1].y,c.pts[2].x,c.pts[2].y,c.pts[3].x,c.pts[3].y),t.strokeStyle=`rgba(148,163,184,0.3)`,t.lineWidth=20,t.lineCap=`round`,t.stroke(),t.beginPath(),t.setLineDash([8,6]),t.moveTo(c.pts[0].x,c.pts[0].y),t.bezierCurveTo(c.pts[1].x,c.pts[1].y,c.pts[2].x,c.pts[2].y,c.pts[3].x,c.pts[3].y),t.strokeStyle=`rgba(99,102,241,0.5)`,t.lineWidth=3,t.stroke(),t.setLineDash([]);let e=Math.min(c.progress,c.samples.length);if(e>1){t.beginPath(),t.moveTo(c.samples[0].x,c.samples[0].y);for(let n=1;n<e;n++)t.lineTo(c.samples[n].x,c.samples[n].y);t.strokeStyle=`rgba(124,58,237,0.9)`,t.lineWidth=5,t.lineCap=`round`,t.lineJoin=`round`,t.stroke(),t.beginPath(),t.moveTo(c.samples[0].x,c.samples[0].y);for(let n=1;n<e;n++)t.lineTo(c.samples[n].x,c.samples[n].y);t.strokeStyle=`rgba(167,139,250,0.3)`,t.lineWidth=14,t.stroke()}t.beginPath(),t.arc(c.pts[0].x,c.pts[0].y,12,0,Math.PI*2),t.fillStyle=`rgba(124,58,237,0.2)`,t.fill(),t.beginPath(),t.arc(c.pts[0].x,c.pts[0].y,8,0,Math.PI*2),t.fillStyle=`#7C3AED`,t.fill();let n=c.pts[3];t.beginPath(),t.arc(n.x,n.y,12,0,Math.PI*2),t.fillStyle=c.passed?`rgba(34,197,94,0.2)`:`rgba(226,232,240,0.2)`,t.fill(),t.beginPath(),t.arc(n.x,n.y,8,0,Math.PI*2),t.fillStyle=c.passed?`#22C55E`:`#94A3B8`,t.fill(),t.fillStyle=`#A78BFA`,t.font=`bold 11px Inter,sans-serif`,t.fillText(`BẮT ĐẦU`,c.pts[0].x-28,c.pts[0].y-16),t.fillStyle=`#94A3B8`,t.fillText(`KẾT THÚC`,n.x-28,n.y-16),u.current=requestAnimationFrame(f)}catch(e){console.error(`[CurveChallenge] Draw error:`,e)}};u.current=requestAnimationFrame(f);let p=t=>{let n=e.getBoundingClientRect(),r=i/n.width,a=o/n.height,s=t.touches?t.touches[0]:t;return{x:(s.clientX-n.left)*r,y:(s.clientY-n.top)*a}},m=e=>{if(!c.isDragging)return;if(e.type===`mousemove`&&!e.isTrusted){c.isDragging=!1;return}e.preventDefault();let{x:t,y:n}=p(e),r=performance.now();if(c.lastMoveTime&&c.lastPos){let e=Math.max(r-c.lastMoveTime,1),i=Math.sqrt((t-c.lastPos.x)**2+(n-c.lastPos.y)**2)/e;if(c.speedBuf=c.speedBuf||[],c.speedBuf.push(i),c.speedBuf.length>12&&c.speedBuf.shift(),c.speedBuf.length===12){let e=c.speedBuf.reduce((e,t)=>e+t,0)/12;if(c.speedBuf.reduce((t,n)=>t+(n-e)**2,0)/12<8e-5&&e>.08){c.progress=0,a(0),c.speedBuf=[],c.curveLog=[];return}}}c.lastMoveTime=r,c.lastPos={x:t,y:n},c.curveLog.length<50&&(c.curveLog.length===0||r-c.curveLog[c.curveLog.length-1].t>20)&&c.curveLog.push({x:+t.toFixed(1),y:+n.toFixed(1),t:r});let i=c.progress,o=c.samples[i]||c.samples[c.samples.length-1],l=t-o.x,u=n-o.y;if(Math.sqrt(l*l+u*u)<80&&(c.progress=Math.min(i+1,c.samples.length),a(Math.round(c.progress/c.samples.length*100)),c.progress>=Math.floor(c.samples.length*.75)&&!c.passed)){if(r-(c.dragStartTime||r)<500){c.progress=0,a(0),c.speedBuf=[],c.curveLog=[];return}c.passed=!0,s(!0),setTimeout(()=>d.current(c.curveLog),900)}}
416,h=e=>{e.isTrusted&&(c.isDragging=!0,c.dragStartTime=performance.now(),c.speedBuf=[],c.curveLog=[],c.lastMoveTime=null,c.lastPos=null,l(!0),m(e))},g=()=>{c.isDragging=!1};return e.addEventListener(`mousedown`,h),e.addEventListener(`mousemove`,m),e.addEventListener(`mouseup`,g),e.addEventListener(`touchstart`,h,{passive:!1}),e.addEventListener(`touchmove`,m,{passive:!1}),e.addEventListener(`touchend`,g),()=>{cancelAnimationFrame(u.current),e.removeEventListener(`mousedown`,h),e.removeEventListener(`mousemove`,m),e.removeEventListener(`mouseup`,g),e.removeEventListener(`touchstart`,h),e.removeEventListener(`touchmove`,m),e.removeEventListener(`touchend`,g)}},[]),(0,q.jsxs)(`div`,{style:{position:`fixed`,inset:0,zIndex:999,background:o?`rgba(34,197,94,0.88)`:`rgba(15,15,35,0.93)`,backdropFilter:`blur(12px)`,display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,transition:`background 0.4s`},children:[(0,q.jsx)(`button`,{onClick:t,style:{position:`absolute`,top:20,right:20,background:`rgba(255,255,255,0.15)`,border:`none`,color:`#fff`,borderRadius:`50%`,width:36,height:36,cursor:`pointer`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,q.jsx)(V,{size:16})}),o?(0,q.jsxs)(`div`,{style:{textAlign:`center`,color:`#fff`,animation:`fadeIn 0.4s ease`},children:[(0,q.jsx)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`,marginBottom:16},children:(0,q.jsx)(`div`,{style:{width:80,height:80,borderRadius:`50%`,background:`rgba(255,255,255,0.2)`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,q.jsx)(We,{size:44,color:`#fff`,strokeWidth:3})})}),(0,q.jsx)(`h2`,{style:{fontSize:28,fontWeight:900,margin:`0 0 8px`},children:`Xác minh thành công!`}),(0,q.jsx)(`p`,{style:{fontSize:16,opacity:.9},children:`Đang mở ô nhập mã...`})]}):(0,q.jsxs)(`div`,{style:{width:`100%`,maxWidth:600,padding:`0 16px`,display:`flex`,flexDirection:`column`,gap:16},children:[(0,q.jsxs)(`div`,{style:{textAlign:`center`,color:`#fff`},children:[(0,q.jsxs)(`h2`,{style:{fontSize:20,fontWeight:900,margin:`0 0 4px`,display:`flex`,alignItems:`center`,justifyContent:`center`,gap:8},children:[(0,q.jsx)(ze,{size:20}),` RÊ CHUỘT THEO ĐƯỜNG`]}),(0,q.jsx)(`p`,{style:{fontSize:13,opacity:.7,margin:0},children:c?`Hoàn thành: ${i}%`:`Nhấn giữ chuột tại điểm BẮT ĐẦU và kéo theo đường tím`})]}),(0,q.jsx)(`div`,{style:{height:6,background:`rgba(255,255,255,0.15)`,borderRadius:99,overflow:`hidden`},children:(0,q.jsx)(`div`,{style:{height:`100%`,width:`${i}%`,background:`linear-gradient(90deg,#7C3AED,#A78BFA)`,borderRadius:99,transition:`width 0.1s`}})}),(0,q.jsx)(`div`,{style:{position:`relative`,borderRadius:20,overflow:`hidden`,border:`2px solid rgba(124,58,237,0.4)`,boxShadow:`0 0 40px rgba(124,58,237,0.2)`,cursor:`crosshair`,background:`rgba(255,255,255,0.05)`},children:(0,q.jsx)(`canvas`,{ref:n,style:{width:`100%`,height:220,display:`block`,userSelect:`none`,touchAction:`none`}})}),(0,q.jsx)(`p`,{style:{textAlign:`center`,color:`rgba(255,255,255,0.5)`,fontSize:12,margin:0},children:`Rê chậm và sát đường dẫn để được xác minh là người thật`})]}),(0,q.jsx)(`style`,{children:`
417        @keyframes fadeIn { from { opacity: 0; transform: scale(0.9); } to { opacity: 1; transform: scale(1); } }
418        @keyframes glow-purple { 0%,100%{box-shadow:0 6px 24px rgba(124,58,237,0.35)} 50%{box-shadow:0 8px 40px rgba(124,58,237,0.6)} }
419      `})]})}function ur({isWorker:e=!1}){let t=e?`worker`:`buyer`,[n,r]=(0,K.useState)(!1),[i,a]=(0,K.useState)([]),[o,s]=(0,K.useState)(null),c=(0,K.useRef)(null),l=(0,K.useRef)(null);(0,K.useEffect)(()=>{G.get(`/notifications?role=${t}`).then(e=>{a((e.notifications||[]).map(e=>({...e,title:e.title?.replace(/[✅🎉]/g,``)?.replace(`✅`,``)?.replace(`🎉`,``)?.trim(),message:e.message?.replace(/[✅🎉]/g,``)?.replace(`✅`,``)?.replace(`🎉`,``)?.trim(),isRead:!!e.is_read,time:new Date(e.created_at).toLocaleString(`vi-VN`)})))}).catch(()=>{})},[]);let u=()=>c.current?c.current.getBoundingClientRect().bottom+8:0;(0,K.useEffect)(()=>
419{if(!n)return;let e=e=>{l.current&&!l.current.contains(e.target)&&r(!1)};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[n]);let d=(0,K.useMemo)(()=>i.some(e=>!e.isRead),[i]),f=()=>{G.put(`/notifications/read-all?role=${t}`).catch(()=>{}),a(e=>e.map(e=>({...e,isRead:!0})))},p=e=>{G.put(`/notifications/${e.id}/read`).catch(()=>{}),a(t=>t.map(t=>t.id===e.id?{...t,isRead:!0}:t)),s(e),r(!1)},m=()=>{s(null)},h=(e,t=`md`)=>{let n=`flex items-center justify-center rounded-full`;return e===`success`?(0,q.jsx)(`div`,{className:`${n} ${t===`lg`?`w-16 h-16 bg-emerald-50`:`w-9 h-9 bg-emerald-50`}`,children:(0,q.jsx)(H,{className:t===`lg`?`w-10 h-10 text-emerald-500`:`w-5 h-5 text-emerald-500`})}):e===`warning`?(0,q.jsx)(`div`,{className:`${n} ${t===`lg`?`w-16 h-16 bg-amber-50`:`w-9 h-9 bg-amber-50`}`,children:(0,q.jsx)(Te,{className:t===`lg`?`w-10 h-10 text-amber-500`:`w-5 h-5 text-amber-500`})}):(0,q.jsx)(`div`,{className:`${n} ${t===`lg`?`w-16 h-16 bg-blue-50`:`w-9 h-9 bg-blue-50`}`,children:(0,q.jsx)(Oe,{className:t===`lg`?`w-10 h-10 text-blue-500`:`w-5 h-5 text-blue-500`})})};return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`div`,{className:`relative`,ref:l,children:[(0,q.jsxs)(`button`,{ref:c,type:`button`,onClick:()=>r(e=>!e),className:`relative flex items-center justify-center w-9 h-9 rounded-full hover:bg-slate-100`,children:[(0,q.jsx)(De,{className:`w-5 h-5 text-slate-600`}),d&&(0,q.jsx)(`span`,{className:`absolute -top-0.5 -right-0.5 w-2 h-2 rounded-full bg-red-500`})]}),n&&(0,q.jsxs)(`div`,{className:`notification-dropdown`,style:{top:u()},children:[(0,q.jsxs)(`div`,{className:`px-4 py-3 border-b border-slate-100 dark:border-slate-700`,style:{display:`flex`,justifyContent:`space-between`,alignItems:`center`},children:[(0,q.jsx)(`p`,{className:`text-sm font-semibold text-slate-900`,children:`Thông báo`}),(0,q.jsx)(`button`,{type:`button`,onClick:f,className:`text-xs font-medium text-indigo-600 hover:text-indigo-700`,style:{whiteSpace:`nowrap`,marginLeft:`12px`},children:`Đánh dấu tất cả đã đọc`})]}),(0,q.jsxs)(`div`,{className:`max-h-96 overflow-y-auto`,children:[i.length===0&&(0,q.jsx)(`div`,{className:`px-4 py-6 text-center text-sm text-slate-500`,children:`Không có thông báo nào`}),i.map(e=>(0,q.jsxs)(`button`,{type:`button`,onClick:()=>p(e),className:`w-full flex items-start gap-3 px-4 py-3 text-left transition-colors ${e.isRead?`bg-white dark:bg-slate-800 hover:bg-slate-50 dark:hover:bg-slate-700`:`bg-blue-50/50 dark:bg-blue-900/20 hover:bg-blue-50 dark:hover:bg-blue-900/30`}`,children:[(0,q.jsx)(`div`,{className:`mt-0.5`,children:h(e.type)}),(0,q.jsxs)(`div`,{className:`flex-1`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`p`,{className:`text-sm font-medium text-slate-900`,children:e.title}),!e.isRead&&(0,q.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full bg-indigo-500`})]}),(0,q.jsx)(`p`,{className:`mt-1 text-xs text-slate-600 line-clamp-2`,children:e.message}),(0,q.jsx)(`p`,{className:`mt-1 text-xs text-slate-400`,children:e.time})]})]},e.id))]})]})]}),o&&(0,q.jsx)(`div`,{className:`fixed inset-0 z-[60] flex items-center justify-center bg-black/50`,children:(0,q.jsxs)(`div`,{className:`bg-white dark:bg-slate-800 w-full max-w-md rounded-xl shadow-2xl overflow-hidden relative`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 border-b border-slate-100 dark:border-slate-700`,children:[(0,q.jsx)(`p`,{className:`text-sm font-semibold text-slate-900`,children:`Chi tiết thông báo`}),(0,q.jsx)(`button`,{type:`button`,onClick:m,className:`p-1 rounded-full hover:bg-slate-100`,children:(0,q.jsx)(V,{className:`w-4 h-4 text-slate-500`})})]}),(0,q.jsxs)(`div`,{className:`px-6 py-6 flex flex-col items-center text-center`,children:[h(o.type,`lg`),(0,q.jsx)(`p`,{className:`mt-4 text-xl font-bold text-slate-800`,children:o.title}),(0,q.jsx)(`p`,{className:`mt-2 text-sm text-slate-600`,children:o.message}),(0,q.jsx)(`p`,{className:`mt-4 text-sm text-slate-400`,children:o.time})]}),(0,q.jsx)(`div`,{className:`px-4 py-4 border-t border-slate-100 dar
419k:border-slate-700 bg-slate-50 dark:bg-slate-900`,children:(0,q.jsx)(`button`,{type:`button`,onClick:m,className:`w-full inline-flex items-center justify-center px-4 py-2.5 text-sm font-semibold text-white bg-indigo-600 rounded-lg hover:bg-indigo-700`,children:`Đóng`})})]})})]})}function dr({onMenuClick:e}){let t=l(),{pathname:n}=a(),r=n.startsWith(`/worker`)?`/worker/dashboard`:`/buyer/dashboard`,[i,o]=(0,K.useState)(!1),[s,c]=(0,K.useState)(()=>Je()||{name:``,email:``}),[u,d]=(0,K.useState)({main:0,commission:0,earning:0}),f=n.startsWith(`/worker`),p=(0,K.useRef)(null),m=()=>{G.get(`/finance`).then(e=>{d({main:e.wallets?.main?.balance||0,commission:e.wallets?.commission?.balance||0,earning:e.wallets?.earning?.balance||0})}).catch(()=>{})};(0,K.useEffect)(()=>{G.get(`/auth/me`).then(e=>{e.user&&(c(e.user),localStorage.setItem(`user`,JSON.stringify(e.user)))}).catch(()=>{})},[]),(0,K.useEffect)(()=>{m();let e=setInterval(m,6e4);return()=>clearInterval(e)},[n]),(0,K.useEffect)(()=>{if(!i)return;let e=e=>{p.current&&!p.current.contains(e.target)&&o(!1)};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[i]);let h=()=>{Ye(),document.documentElement.classList.remove(`dark`),localStorage.removeItem(`theme`),t(`/dang-nhap`)},g=(s.name||`U`).split(` `).map(e=>e[0]).join(``).slice(-2).toUpperCase();return(0,q.jsx)(`header`,{className:`sticky top-0 z-30`,style:{background:`linear-gradient(90deg, #f8faff 0%, #ffffff 60%)`,borderBottom:`1px solid #e2e8f0`,boxShadow:`0 2px 12px 0 rgba(99,102,241,0.07)`},children:(0,q.jsxs)(`div`,{className:`px-4 sm:px-6 py-2.5 flex items-center justify-between gap-3`,children:[(0,q.jsx)(`button`,{onClick:e,className:`lg:hidden p-2 hover:bg-slate-100 rounded-lg flex-shrink-0 transition-colors text-slate-600`,children:(0,q.jsx)(`svg`,{className:`w-6 h-6`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`,children:(0,q.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:2,d:`M4 6h16M4 12h16M4 18h16`})})}),(0,q.jsxs)(`div`,{className:`ml-auto flex items-center gap-2 sm:gap-3`,children:[(0,q.jsxs)(`button`,{onClick:()=>t(f?`/worker/dashboard/withdraw`:`/buyer/dashboard/finance/deposit`),className:`hidden sm:flex items-center gap-2 text-xs font-bold px-3 py-2 rounded-xl transition-all border ${f?`bg-emerald-50 hover:bg-emerald-100 border-emerald-200 text-emerald-700`:`bg-indigo-50 hover:bg-indigo-100 border-indigo-200 text-indigo-700`}`,title:f?`Ví Earning – thu nhập vượt link`:`Ví Traffic – dùng để mua traffic`,children:[(0,q.jsx)(N,{size:14,className:`flex-shrink-0 ${f?`text-emerald-500`:`text-indigo-500`}`}),(0,q.jsx)(`span`,{className:`hidden md:inline text-slate-500 font-medium`,children:f?`Ví Earning`:`Ví Traffic`}),(0,q.jsx)(`span`,{className:`font-black`,children:Q(f?u.earning:u.main)}),(0,q.jsx)(`span`,{className:`text-slate-400 font-normal`,children:`đ`})]}),(0,q.jsxs)(`button`,{onClick:()=>t(f?`/worker/dashboard/transactions`:`/buyer/dashboard/finance/transactions`),className:`hidden sm:flex items-center gap-2 bg-amber-50 hover:bg-amber-100 border border-amber-200 text-amber-700 text-xs font-bold px-3 py-2 rounded-xl transition-all`,title:`Ví Hoa Hồng – nhận khi giới thiệu thành viên`,children:[(0,q.jsx)(y,{size:14,className:`text-amber-500 flex-shrink-0`}),(0,q.jsx)(`span`,{className:`hidden md:inline text-slate-500 font-medium`,children:`Hoa hồng`}),(0,q.jsx)(`span`,{className:`font-black`,children:Q(u.commission)}),(0,q.jsx)(`span`,{className:`text-slate-400 font-normal`,children:`đ`})]}),(0,q.jsx)(ur,{isWorker:f}),(0,q.jsxs)(`div`,{className:`relative border-l border-slate-200 pl-2 sm:pl-3`,ref:p,children:[(0,q.jsxs)(`button`,{onClick:()=>o(e=>!e),className:`flex items-center gap-2 text-sm text-slate-700 hover:text-slate-900 transition-colors`,children:[(0,q.jsx)(`div`,{className:`w-8 h-8 rounded-full flex items-center justify-center text-white font-bold text-xs overflow-hidden flex-shrink-0`,style:s.avatar_url?{}:{background:`linear-gradient(135deg, #6366f1, #818cf8)`},children:s.avatar_url?(0,q.jsx)(`img`,{src:s.avatar_url,alt:``,className:`w-full h-full object-cover`}):g}),(0,q.jsx)(`span`,{className:`hidden sm:inline font-medium`,children:s.name||`User`}),(0,q.jsx)(U,{size:14,className:`transition-transform ${i?`rotate-180`:``}`})]}
419),i&&(0,q.jsxs)(`div`,{className:`absolute right-0 mt-2 w-52 bg-white rounded-xl shadow-xl border border-slate-100 py-1.5 z-50`,children:[(0,q.jsxs)(`div`,{className:`px-4 py-2.5 border-b border-slate-100`,children:[(0,q.jsx)(`p`,{className:`font-bold text-slate-800 text-sm`,children:s.name||`User`}),(0,q.jsx)(`p`,{className:`text-xs text-slate-500 mt-0.5`,children:s.email||`Đang hoạt động`})]}),(0,q.jsxs)(`div`,{className:`px-4 py-2 border-b border-slate-100 space-y-1.5`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,q.jsxs)(`span`,{className:`flex items-center gap-1 text-slate-500`,children:[(0,q.jsx)(N,{size:11}),` `,f?`Ví Earning`:`Ví Traffic`]}),(0,q.jsxs)(`span`,{className:`font-bold ${f?`text-emerald-600`:`text-indigo-600`}`,children:[Q(f?u.earning:u.main),` đ`]})]}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,q.jsxs)(`span`,{className:`flex items-center gap-1 text-slate-500`,children:[(0,q.jsx)(y,{size:11}),` Hoa hồng`]}),(0,q.jsxs)(`span`,{className:`font-bold text-amber-500`,children:[Q(u.commission),` đ`]})]})]}),(0,q.jsx)(`a`,{href:`${r}/profile`,className:`block px-4 py-2 text-sm text-slate-700 hover:bg-slate-50 transition`,children:`Hồ sơ của tôi`}),(0,q.jsx)(`a`,{href:`${r}/profile?tab=password`,className:`block px-4 py-2 text-sm text-slate-700 hover:bg-slate-50 transition`,children:`Cài đặt tài khoản`}),s.role===`admin`&&(0,q.jsx)(`a`,{href:`/admin`,className:`flex items-center gap-2 px-4 py-2 text-sm text-orange-600 hover:bg-orange-50 transition font-semibold`,children:`🛡️ Admin Panel`}),s.role!==`admin`&&(s.agency_role===`owner`||s.agency_role===`admin`)&&(0,q.jsx)(`a`,{href:`/agency-admin`,className:`flex items-center gap-2 px-4 py-2 text-sm text-orange-600 hover:bg-orange-50 transition font-semibold`,children:`🛡️ Agency Admin`}),(0,q.jsx)(`button`,{onClick:h,className:`block w-full text-left px-4 py-2 text-sm text-red-500 hover:bg-red-50 transition font-medium`,children:`Đăng xuất`})]})]})]})]})})}var $=`flex items-center gap-3 px-3 py-2 rounded-lg text-sm font-medium transition-all duration-150`;function fr({isOpen:e,onClose:t,agencyConfig:n}){let[r,i]=(0,K.useState)(!0),[a,o]=(0,K.useState)(!0),[s,c]=(0,K.useState)(!0),[l,u]=(0,K.useState)(null);return(0,K.useEffect)(()=>{n||G.get(`/agencies/my`).then(e=>{e?.domain&&u(e.domain)}).catch(()=>{})},[n]),(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:`fixed inset-0 bg-black/40 z-40 lg:hidden transition-opacity duration-300 ${e?`opacity-100`:`opacity-0 pointer-events-none`}`,onClick:t}),(0,q.jsxs)(`aside`,{className:`fixed top-0 left-0 h-full w-64 z-50 transform transition-transform duration-300 lg:translate-x-0 ${e?`translate-x-0`:`-translate-x-full`} flex flex-col`,style:{background:`linear-gradient(180deg, #f8faff 0%, #f1f5f9 100%)`,borderRight:`1px solid #e2e8f0`,boxShadow:`2px 0 12px 0 rgba(99,102,241,0.06)`},children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-center px-5 py-5 relative flex-shrink-0 border-b border-slate-100`,children:[n?n.logo_url?(0,q.jsx)(`img`,{src:n.logo_url,alt:n.name,className:`h-10 sm:h-12 w-auto mx-auto object-contain`}):(0,q.jsx)(`div`,{className:`text-xl font-black truncate`,style:{color:n.primary_color||`#3B82F6`},children:n.name}):(0,q.jsx)(`img`,{src:`/traffic68_com.gif`,alt:`Traffic68`,className:`h-14 sm:h-16 w-auto mx-auto`}),(0,q.jsx)(`button`,{onClick:t,className:`lg:hidden p-2 rounded-lg absolute right-4 text-slate-400 hover:text-slate-600 hover:bg-slate-100 transition-colors`,children:(0,q.jsx)(V,{size:18})})]}),(0,q.jsxs)(`nav`,{className:`flex-1 overflow-y-auto p-3 space-y-0.5`,children:[(0,q.jsx)(f,{to:`/buyer/dashboard`,end:!0,onClick:t,className:({isActive:e})=>`${$} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(C,{size:16,className:e?`text-indigo-600`:`text-slate-400`}),`Tổng quan`]})}),(0,q.jsx)(`div`,{className:`h-px bg-slate-100 my-2 mx-1`}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`button`,{type:`button`,onClick:()=>i(e=>!e),className:`w-full flex items-center justify-between px-3 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400 hover:text-slate-600 transition-colors`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(Ne,{size:11}),`Chiến dịch`]}),(0,q.jsx)(U,{size:11,className:`transition-transform duration-200 ${r?``:`-rotate-90`}`})]}),r&&(0,q.jsx)(`div`,{className:`ml-1 mt-0.5 space-y-0.5`,children:[{to:`/buyer/dashboard/campaigns/create`,icon:xe,label:`Tạo chiến dịch`},{to:`/buyer/dashboard/campaigns`,icon:be,label:`Quản lý chiến dịch`,end:!0}].map(({to:e,icon:n,label:r,end:i})=>(0,q.jsx)(f,{to:e,end:i,onClick:t,className:({isActive:e})=>`${$} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(n,{size:15,className:e?`text-indigo-500`:`text-slate-400`}),r]})},e))})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`w-full flex items-center justify-between px-3 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400 hover:text-slate-600 transition-colors`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(He,{size:11}),`Báo cáo`]}),(0,q.jsx)(U,{size:11,className:`transition-transform duration-200 ${a?``:`-rotate-90`}`})]}),a&&(0,q.jsx)(`div`,{className:`ml-1 mt-0.5 space-y-0.5`,children:(0,q.jsx)(f,{to:`/buyer/dashboard/reports`,onClick:t,className:({isActive:e})=>`${$} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(I,{size:15,className:e?`text-indigo-500`:`text-slate-400`}),`Theo dõi traffic`]})})})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`button`,{type:`button`,onClick:()=>c(e=>!e),className:`w-full flex items-center justify-between px-3 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400 hover:text-slate-600 transition-colors`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(N,{size:11}),`Tài chính`]}),(0,q.jsx)(U,{size:11,className:`transition-transform duration-200 ${s?``:`-rotate-90`}`})]}
419),s&&(0,q.jsx)(`div`,{className:`ml-1 mt-0.5 space-y-0.5`,children:[{to:`/buyer/dashboard/finance/deposit`,icon:_,label:`Nạp tiền`},{to:`/buyer/dashboard/finance/transactions`,icon:le,label:`Lịch sử giao dịch`}].map(({to:e,icon:n,label:r})=>(0,q.jsx)(f,{to:e,onClick:t,className:({isActive:e})=>`${$} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(n,{size:15,className:e?`text-indigo-500`:`text-slate-400`}),r]})},e))})]}),(0,q.jsx)(`div`,{className:`h-px bg-slate-100 my-2 mx-1`}),[{to:`/buyer/dashboard/referral`,icon:y,label:`Giới thiệu bạn bè`},{to:`/buyer/dashboard/pricing`,icon:me,label:`Bảng giá`},{to:`/buyer/dashboard/profile`,icon:Me,label:`Hồ sơ của tôi`},{to:`/buyer/dashboard/support`,icon:Re,label:`Hỗ trợ`}].map(({to:e,icon:n,label:r})=>(0,q.jsx)(f,{to:e,onClick:t,className:({isActive:e})=>`${$} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(n,{size:16,className:e?`text-indigo-500`:`text-slate-400`}),r]})},e)),!n&&(0,q.jsxs)(`div`,{className:`pt-1`,children:[(0,q.jsx)(`p`,{className:`px-3 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400`,children:`Đại lý`}),(0,q.jsx)(f,{to:`/buyer/dashboard/agency`,onClick:t,className:({isActive:e})=>`${$} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(te,{size:16,className:e?`text-indigo-500`:`text-slate-400`}),`Quản lý web con`]})})]}),n&&(()=>{try{let e=JSON.parse(localStorage.getItem(`user`)||`null`);if(e&&(e.agency_role===`owner`||e.agency_role===`admin`))return(0,q.jsxs)(`div`,{className:`pt-1`,children:[(0,q.jsx)(`p`,{className:`px-3 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400`,children:`Quản trị`}),(0,q.jsx)(f,{to:`/agency-admin`,onClick:t,className:({isActive:e})=>`${$} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(E,{size:16,className:e?`text-indigo-500`:`text-slate-400`}),`Agency Admin`]})})]})}catch{}return null})(),(0,q.jsxs)(`div`,{className:`pt-1`,children:[(0,q.jsx)(`p`,{className:`px-3 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400`,children:`Công cụ`}),[{to:`/buyer/dashboard/script`,icon:Ie,label:`Script nút lấy mã`},{to:`/buyer/dashboard/api`,icon:A,label:`Buyer API`}].map(({to:e,icon:n,label:r})=>(0,q.jsx)(f,{to:e,onClick:t,className:({isActive:e})=>`${$} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(n,{size:16,className:e?`text-indigo-500`:`text-slate-400`}),r]})},e))]})]}),(0,q.jsx)(`div`,{className:`p-3 flex-shrink-0 border-t border-slate-100`,children:(0,q.jsxs)(`div`,{className:`px-3 py-2 rounded-lg bg-slate-50`,children:[(0,q.jsx)(`p`,{className:`text-[10px] font-bold uppercase tracking-widest text-slate-400 mb-0.5`,children:n?n.name:`Traffic68`}),(0,q.jsx)(`p`,{className:`text-[10px] text-slate-300`,children:`© 2025 · Nền tảng mua traffic SEO`})]})})]})]})}var pr={main:{balance:1e6,transactions:[{id:1,type:`deposit`,label:`Nạp tiền (Momo)`,amount:5e6,date:`2026-03-15`,ref:`MM-20260315-001`},{id:2,type:`spend`,label:`Mua traffic – Campaign #12`,amount:-12e5,date:`2026-03-14`,ref:`SYS-20260314-001`},{id:3,type:`deposit`,label:`Nạp tiền (Chuyển khoản)`,amount:3e6,date:`2026-03-13`,ref:`VCB-20260313-002`},{id:4,type:`spend`,label:`Mua traffic – Campaign #11`,amount:-85e4,date:`2026-03-12`,ref:`SYS-20260312-003`}]},commission:{balance:1e6,transactions:[{id:1,type:`commission`,label:`Hoa hồng ref – user_abc123`,amount:75e3,date:`2026-03-16`,ref:`REF-20260316-001`},{id:2,type:`commission`,label:`Hoa hồng ref – user_xyz789`,amount:12e4,date:`2026-03-14`,ref:`REF-20260314-002`},{id:3,type:`withdraw`,label:`Rút hoa hồng (Momo)`,amount:-1e5,date:`2026-03-10`,ref:`WD-20260310-001`}]}},mr=(0,K.createContext)(null);function hr({children:e}){let[t,n]=(0,K.useState)(pr);return(0,q.jsx)(mr.Provider,{value:{wallets:t,depositMain:e=>{n(t=>({...t,main:{balance:t.main.balance+e,transactions:[{id:Date.now(),type:`deposit`,label:`Nạp tiền`,amount:e,date:new Date().toISOString().slice(0,10),ref:`DEP-${Date.now()}`},...t.main.transactions]}}))},spendMain:(e,t=`Mua dịch vụ traffic`)=>{n(n=>({...n,main:{balance:Math.max(0,n.main.balance-e),transactions:[{id:Date.now(),type:`spend`,label:t,amount:-e,date:new Date().toISOString().slice(0,10),ref:`SYS-${Date.now()}`},...n.main.transactions]}}))},addCommission:(e,t=`user`)=>{n(n=>({...n,commission:{balance:n.commission.balance+e,transactions:[{id:Date.now(),type:`commission`,label:`Hoa hồng ref – ${t}`,amount:e,date:new Date().toISOString().slice(0,10),ref:`REF-${Date.now()}`},...n.commission.transactions]}}))},withdrawCommission:(e,t=`Momo`)=>{n(n=>e>n.commission.balance?n:{...n,commission:{balance:n.commission.balance-e,transactions:[{id:Date.now(),type:`withdraw`,label:`Rút hoa hồng (${t})`,amount:-e,date:new Date().toISOString().slice(0,10),ref:`WD-${Date.now()}`},...n.commission.transactions]}})},transferToMain:e=>{n(t=>{if(e>t.commission.balance)return t;let n=`TRF-${Date.now()}`,r=new Date().toISOString().slice(0,10);return{main:{balance:t.main.balance+e,transactions:[{id:Date.now()+1,type:`transfer_in`,label:`Nhận từ Ví Hoa Hồng`,amount:e,date:r,ref:n},...t.main.transactions]},commission:{balance:t.commission.balance-e,transactions:[{id:Date.now(),type:`transfer_out`,label:`Chuyển sang Ví Traffic`,amount:-e,date:r,ref:n},...t.commission.transactions]}}})}},children:e})}function gr(e){try{let t=e.split(`.`)[1].replace(/-/g,`+`).replace(/_/g,`/`);return JSON.parse(atob(t))}catch{return null}}function _r({agencyConfig:e}){let t=l(),[n,r]=(0,K.useState)(!1),[a,o]=(0,K.useState)(!1);return(0,K.useEffect)(()=>{let e=localStorage.getItem(`token`);if(!e){t(`/dang-nhap`);return}let n=gr(e);if(!n||n.exp&&n.exp*1e3<Date.now()){localStorage.removeItem(`token`),localStorage.removeItem(`user`),t(`/dang-nhap`);return}let r=(()=>{try{return JSON.parse(localStorage.getItem(`user`)||`null`)}catch{return null}})();if(r){if(r.role!==`admin`&&r.service_type===`shortlink`){t(`/worker/dashboard`);return}o(!0)}G.get(`/auth/me`).then(e=>{let n=e.user;if(localStorage.setItem(`user`,JSON.stringify(n)),n.role!==`admin`&&n.service_type===`shortlink`){t(`/worker/dashboard`);return}o(!0)}).catch(()=>{localStorage.removeItem(`token`),localStorage.removeItem(`user`),t(`/dang-nhap`)})},[t]),(0,K.useEffect)(()=>{document.documentElement.classList.remove(`dark`)},[]),(0,q.jsx)(hr,{children:a?(0,q.jsxs)(`div`,{className:`min-h-screen overflow-x-hidden`,style:{background:`#f5f7ff`},children:[(0,q.jsx)(fr,{isOpen:n,onClose:()=>r(!1),agencyConfig:e}),(0,q.jsxs)(`div`,{className:`lg:ml-64`,children:[(0,q.jsx)(dr,{onMenuClick:()=>r(!0)}),(0,q.jsx)(`main`,{className:`p-4 sm:p-6`,children:(0,q.jsx)(i,{})})]})]}):(0,q.jsx)(`div`,{className:`min-h-screen bg-slate-50 flex items-center justify-center`,children:(0,q.jsx)(`div`,{className:`w-10 h-10 border-4 border-blue-500 border-t-transparent roun
419ded-full animate-spin`})})})}var vr=`flex items-center gap-3 px-3 py-2 rounded-lg text-sm font-medium transition-all duration-150`;function yr({isOpen:e,onClose:t}){let[n,r]=(0,K.useState)(!0),[i,a]=(0,K.useState)(!0),[o,s]=(0,K.useState)(!0);return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`div`,{className:`fixed inset-0 bg-black/40 backdrop-blur-sm z-40 lg:hidden transition-opacity ${e?`opacity-100`:`opacity-0 pointer-events-none`}`,onClick:t}),(0,q.jsxs)(`aside`,{className:`fixed top-0 left-0 h-full w-64 z-50 transform transition-transform duration-300 lg:translate-x-0 ${e?`translate-x-0`:`-translate-x-full`} flex flex-col`,style:{background:`linear-gradient(180deg, #f8faff 0%, #f1f5f9 100%)`,borderRight:`1px solid #e2e8f0`,boxShadow:`2px 0 12px 0 rgba(99,102,241,0.06)`},children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-center px-5 py-5 relative flex-shrink-0 border-b border-slate-100`,children:[(0,q.jsx)(`img`,{src:`/traffic68_com.gif`,alt:`Traffic68`,className:`h-14 sm:h-16 w-auto mx-auto`}),(0,q.jsx)(`button`,{onClick:t,className:`lg:hidden p-2 rounded-lg absolute right-4 text-slate-400 hover:text-slate-600 hover:bg-slate-100 transition-colors`,children:(0,q.jsx)(V,{size:18})})]}),(0,q.jsxs)(`nav`,{className:`flex-1 overflow-y-auto p-3 space-y-0.5`,children:[(0,q.jsx)(f,{to:`/worker/dashboard`,end:!0,onClick:t,className:({isActive:e})=>`${vr} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(C,{size:16,className:e?`text-indigo-600`:`text-slate-400`}),` Tổng quan`]})}),(0,q.jsx)(`div`,{className:`h-px bg-slate-100 my-2 mx-1`}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`button`,{type:`button`,onClick:()=>r(e=>!e),className:`w-full flex items-center justify-between px-3 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400 hover:text-slate-600 transition-colors`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(Ve,{size:11}),` Quản lý liên kết`]}),(0,q.jsx)(U,{size:11,className:`transition-transform duration-200 ${n?``:`-rotate-90`}`})]}),n&&(0,q.jsx)(`div`,{className:`ml-1 mt-0.5 space-y-0.5`,children:[{to:`/worker/dashboard/links`,icon:be,label:`Tất cả liên kết`,end:!0},{to:`/worker/dashboard/links/hidden`,icon:Pe,label:`Liên kết ẩn`}].map(({to:e,icon:n,label:r,end:i})=>(0,q.jsx)(f,{to:e,end:i,onClick:t,className:({isActive:e})=>`${vr} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(n,{size:15,className:e?`text-indigo-500`:`text-slate-400`}),r]})},e))})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`button`,{type:`button`,onClick:()=>a(e=>!e),className:`w-full flex items-center justify-between px-3 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400 hover:text-slate-600 transition-colors`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(He,{size:11}),` Thống kê thu nhập`]}),(0,q.jsx)(U,{size:11,className:`transition-transform duration-200 ${i?``:`-rotate-90`}`})]}),i&&(0,q.jsx)(`div`,{className:`ml-1 mt-0.5 space-y-0.5`,children:(0,q.jsx)(f,{to:`/worker/dashboard/earnings`,onClick:t,className:({isActive:e})=>`${vr} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(I,{size:15,className:e?`text-indigo-500`:`text-slate-400`}),`Thu nhập theo ngày`]})})})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`button`,{type:`button`,onClick:()=>s(e=>!e),className:`w-full flex items-center justify-between px-3 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400 hover:text-slate-600 transition-colors`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(N,{size:11}),` Tài chính`]}),(0,q.jsx)(U,{size:11,className:`transition-transform duration-200 ${o?``:`-rotate-90`}`})]}),o&&(0,q.jsx)(`div`,{className:`ml-1 mt-0.5 space-y-0.5`,children:[{to:`/worker/dashboard/withdraw`,icon:_,label:`Rút tiền`},{to:`/worker/dashboard/transactions`,icon:le,label:`Lịch sử giao dịch`}].map(({to:e,icon:n,label:r})=>(0,q.jsx)(f,{to:e,onClick:t,className:({isActive:e})=>`${vr} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(n,{size:15,className:e?`text-indigo-500`:`text-slate-400`}),r]})},e))})]}),(0,q.jsx)(`div`,{className:`h-px bg-slate-100 my-2 mx-1`}),[{to:`/worker/dashboard/referral`,icon:y,label:`Giới thiệu bạn bè`},{to:`/worker/dashboard/pricing`,icon:me,label:`Bảng giá`},{to:`/worker/dashboard/profile`,icon:Me,label:`Hồ sơ của tôi`},{to:`/worker/dashboard/support`,icon:Re,label:`Hỗ trợ`}].map(({to:e,icon:n,label:r})=>(0,q.jsx)(f,{to:e,onClick:t,className:({isActive:e})=>`${vr} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(n,{size:16,className:e?`text-indigo-500`:`text-slate-400`}),r]})},e)),(0,q.jsxs)(`div`,{className:`pt-1`,children:[(0,q.jsx)(`p`,{className:`px-3 py-1.5 text-[10px] font-bold uppercase tracking-widest text-slate-400`,children:`Công cụ`}),(0,q.jsx)(f,{to:`/worker/dashboard/api`,onClick:t,className:({isActive:e})=>`${vr} ${e?`bg-indigo-50 text-indigo-700 font-semibold`:`text-slate-600 hover:bg-slate-50 hover:text-slate-900`}`,children:({isActive:e})=>(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Ie,{size:16,className:e?`text-indigo-500`:`text-slate-400`}),`API`]})})]})]}),(0,q.jsx)(`div`,{className:`p-3 flex-shrink-0 border-t border-slate-100`,children:(0,q.jsxs)(`div`,{className:`px-3 py-2 rounded-lg bg-slate-50`,children:[(0,q.jsx)(`p`,{className:`text-[10px] font-bold uppercase tracking-widest text-slate-400 mb-0.5`,children:`Traffic68`}),(0,q.jsx)(`p`,{className:`text-[10px] text-slate-300`,children:`© 2025 · Nền tảng kiếm tiền online`})]})})]})]})}function br(e){try{let t=e.split(`.`)[1].replace(/-/g,`+`).replace(/_/g,`/`);return JSON.parse(atob(t))}catch{return null}}function xr(){let e=l(),{pathname:t}=a(),[n,r]=(0,K.useState)(!1),[o,s]=(0,K.useState)(!1);(0,K.useEffect)(()=>{let t=localStorage.getItem(`token`);if(!t){e(`/dang-nhap`);return}let n=br(t);if(!n||n.exp&&n.exp*1e3<Date.now()){localStorage.removeItem(`token`),localStorage.removeItem(`user`),e(`/dang-nhap`);return}let r=(()=>{try{return JSON.parse(localStorage.getItem(`user`)||`null`)}catch{return null}})();if(r){if(r.role!==`admin`&&r.service_type!==`shortlink`){e(`/buyer/dashboard`);return}s(!0)}G.get(`/auth/me`).then(t=>{let n=t.user;if(localStorage.setItem(`user`,JSON.stringify(n)),n.role!==`admin`&&n.service_type!==`shortlink`){e(`/buyer/dashboard`);return}s(!0)}).catch(()=>{localStorage.removeItem(`token`),localStorage.removeItem(`user`),e(`/dang-nhap`)})},[e]),(0,K.useEffect)(()=>{document.documentElement.classList.remove(`dark`)},[]);let c=!t.includes(`/links`);return(0,q.jsx)(q.Fragment,{children:o?(0,q.jsxs)(`div`,{className:`min-h-screen bg-slate-50 overflow-x-hidden`,children:[(0,q.jsx)(yr,{isOpen:n,onClose:()=>r(!1)}),(0,q.jsxs)(`div`,{className:`lg:ml-64`,children:[(0,q.jsx)(dr,{onMenuClick:()=>r(!0)}),(0,q.jsx)(`main`,{className:`p-4 sm:p-6`,children:(0,q.jsx)(i,{})})]}
419),c&&(0,q.jsxs)(`button`,{onClick:()=>e(`/worker/dashboard/links`),className:`fixed bottom-6 right-6 z-50 flex items-center gap-2
420                         text-white font-bold text-sm px-5 py-3.5 rounded-full
421                         shadow-lg hover:shadow-xl
422                         hover:-translate-y-0.5 active:translate-y-0
423                         transition-all duration-200 group`,style:{background:`linear-gradient(135deg, #6366f1, #8b5cf6)`,boxShadow:`0 8px 24px rgba(99,102,241,0.3)`},children:[(0,q.jsx)(Ve,{size:18,className:`group-hover:rotate-45 transition-transform duration-300`}),(0,q.jsx)(`span`,{children:`Tạo Link`})]})]}):(0,q.jsx)(`div`,{className:`min-h-screen bg-slate-50 flex items-center justify-center`,children:(0,q.jsx)(`div`,{className:`w-10 h-10 border-4 border-blue-500 border-t-transparent rounded-full animate-spin`})})})}var Sr=(0,K.lazy)(()=>s(()=>import(`./TrafficDashboard.20260815092527.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8]))),Cr=(0,K.lazy)(()=>s(()=>import(`./CreateCampaign.20260815092527.js`),__vite__mapDeps([9,1,2,3,4,5,6,10,8]))),wr=(0,K.lazy)(()=>s(()=>import(`./CampaignList.20260815092527.js`),__vite__mapDeps([11,1,2,3,4,5,6,10,7,8,12]))),Tr=(0,K.lazy)(()=>s(()=>import(`./TrafficTracking.20260815092527.js`),__vite__mapDeps([13,1,3,4,5,6,10,2,8,12]))),Er=(0,K.lazy)(()=>s(()=>import(`./Deposit.20260815092527.js`),__vite__mapDeps([14,1,3,4,5,6,10,2,8]))),Dr=(0,K.lazy)(()=>s(()=>import(`./TransactionHistory.20260815092527.js`),__vite__mapDeps([15,1,3,4,5,6,10,2,8]))),Or=(0,K.lazy)(()=>s(()=>import(`./UserProfileAndAccountSettings.20260815092527.js`),__vite__mapDeps([16,1,2,3,4,5,6,10,8]))),kr=(0,K.lazy)(()=>s(()=>import(`./ScriptGenerator.20260815092527.js`),__vite__mapDeps([17,1,2,3,4,5,6,10]))),Ar=(0,K.lazy)(()=>s(()=>import(`./UserPricing.20260815092527.js`),__vite__mapDeps([18,1,2,3,4,5,6]))),jr=(0,K.lazy)(()=>s(()=>import(`./UserReferral.20260815092527.js`),__vite__mapDeps([19,1,2,3,4,5,6,10,8]))),Mr=(0,K.lazy)(()=>s(()=>import(`./BuyerSupport.20260815092527.js`),__vite__mapDeps([20,1,3,4,5,6,10,2,8]))),Nr=(0,K.lazy)(()=>s(()=>import(`./BuyerApi.20260815092527.js`),__vite__mapDeps([21,1,3,4,5,6,10,2,8]))),Pr=(0,K.lazy)(()=>s(()=>import(`./AgencyDashboard.20260815092527.js`),__vite__mapDeps([22,1,3,4,5,6,8]))),Fr=(0,K.lazy)(()=>s(()=>import(`./MemberDashboard.20260815092527.js`),__vite__mapDeps([23,1,3,4,5,6,10,2,8]))),Ir=(0,K.lazy)(()=>s(()=>import(`./AllLinks.20260815092527.js`),__vite__mapDeps([24,1,3,4,5,6,10,2,8]))),Lr=(0,K.lazy)(()=>s(()=>import(`./HiddenLinks.20260815092527.js`),__vite__mapDeps([25,1,3,4,5,6,10,2,8]))),Rr=(0,K.lazy)(()=>s(()=>import(`./DailyEarnings.20260815092527.js`),__vite__mapDeps([26,1,3,4,5,6,10,2,8]))),zr=(0,K.lazy)(()=>s(()=>import(`./Withdraw.20260815092527.js`),__vite__mapDeps([27,1,2,3,4,5,6,10,8]))),Br=(0,K.lazy)(()=>s(()=>import(`./WorkerTransactions.20260815092527.js`),__vite__mapDeps([28,1,3,4,5,6,10,2,8]))),Vr=(0,K.lazy)(()=>s(()=>import(`./WorkerPricing.20260815092527.js`),__vite__mapDeps([29,1,3,4,5,6,10,2]))),Hr=(0,K.lazy)(()=>s(()=>import(`./WorkerProfile.20260815092527.js`),__vite__mapDeps([30,1,2,3,4,5,6,10,8]))),Ur=(0,K.lazy)(()=>s(()=>import(`./WorkerSupport.20260815092527.js`),__vite__mapDeps([31,1,3,4,5,6,10,2,8]))),Wr=(0,K.lazy)(()=>s(()=>import(`./WorkerApi.20260815092527.js`),__vite__mapDeps([32,1,2,3,4,5,6,10,8]))),Gr=(0,K.lazy)(()=>s(()=>import(`./WorkerShortLinks.20260815092527.js`),__vite__mapDeps([33,1,3,4,5,6,8]))),Kr=(0,K.lazy)(()=>s(()=>import(`./AdminLayout.20260815092527.js`),__vite__mapDeps([34,1,2,3,4,5,6,8]))),qr=(0,K.lazy)(()=>s(()=>import(`./AdminDashboard.20260815092527.js`),__vite__mapDeps([35,1,3,4,5,6,7,8]))),Jr=(0,K.lazy)(()=>s(()=>import(`./AdminUsers.20260815092527.js`),__vite__mapDeps([36,1,3,4,5,6,8]))),Yr=(0,K.lazy)(()=>s(()=>import(`./AdminCampaigns.20260815092527.js`),__vite__mapDeps([37,1,3,4,5,6,8,12]))),Xr=(0,K.lazy)(()=>s(()=>import(`./AdminTransactions.20260815092527.js`),__vite__mapDeps([38,1,3,4,5,6,8]))),Zr=(0,K.lazy)(()=>s(()=>import(`./AdminTickets.20260815092527.js`),__vite__mapDeps([39,1,3,4,5,6,8]))),Qr=(0,K.lazy)(()=>s(()=>import(`./AdminPricing.20260815092527.js`),__vite__mapDeps([40,1,3,4,5,6,8]))),$r=(0,K.lazy)(()=>s(()=>import(`./AdminSettings.20260815092527.js`),__vite__mapDeps([41,1,3,4,5,6,8]))),ei=(0,K.lazy)(()=>s(()=>import(`./AdminSecurity.20260815092527.js`),__vite__mapDeps([42,1,3,4,5,6,8]))),ti=(0,K.lazy)(()=>s(()=>import(`./AdminReferrals.20260815092527.js`),__vite__mapDeps([43,1,3,4,5,6,8]))),ni=(0,K.lazy)(()=>s(()=>import(`./AdminWorkerTasks.20260815092527.js`),__vite__mapDeps([44,1,3,4,5,6,8]))),ri=(0,K.lazy)(()=>s(()=>import(`./AdminWorkerWithdrawals.20260815092527.js`),__vite__mapDeps([45,1,3,4,5,6,8,12]))),ii=(0,K.lazy)(()=>s(()=>import(`./AdminPricingGroups.20260815092527.js`),__vite__mapDeps([46,1,3,4,5,6,8]))),ai=(0,K.lazy)(()=>s(()=>import(`./AdminConfig.20260815092527.js`),__vite__mapDeps([47,1,3,4,5,6,8]))),oi=(0,K.lazy)(()=>s(()=>import(`./AdminWithdrawalAddresses.20260815092527.js`),__vite__mapDeps([48,1,3,4,5,6,8]))),si=(0,K.lazy)(()=>s(()=>import(`./AdminSourceApproval.20260815092527.js`),__vite__mapDeps([49,1,3,4,5,6,8]))),ci=(0,K.lazy)(()=>s(()=>import(`./AdminWorkerLinks.20260815092527.js`),__vite__mapDeps([50,1,3,4,5,6,8]))),li=(0,K.lazy)(()=>s(()=>import(`./AdminBlog.20260815092527.js`),__vite__mapDeps([51,1,3,4,5,6,8]))),ui=[`/buyer`,`/worker`,`/dashboard`,`/campaigns`,`/reports`,`/finance`,`/settings`,`/profile`,`/admin`];function di(){return(0,q.jsx)(`div`,{style:{minHeight:`60vh`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,q.jsx)(`div`,{style:{width:36,height:36,borderRadius:`50%`,border:`3px solid #E2E8F0`,borderTopColor:`#3B82F6`,animation:`spin 0.8s linear infinite`}})})}function fi(){return(0,q.jsx)(`div`,{className:`min-h-[calc(100vh-66px)] flex items-center justify-center bg-gray-50`,children:(0,q.jsxs)(`div`,{className:`text-center`,children:[(0,q.jsx)(`p`,{className:`text-6xl font-black text-orange-500 mb-3`,children:`404`}),(0,q.jsx)(`h1`,{className:`text-2xl font-black text-blue-900 mb-2`,children:`Không tìm thấy trang`}),(0,q.jsx)(`p`,{className:`text-gray-400 text-sm`,children:`Trang bạn tìm kiếm không tồn tại.`})]})})}function pi(){return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(tt,{}),(0,q.jsx)(rt,{}),(0,q.jsx)(ot,{}),(0,q.jsx)(ct,{}),(0,q.jsx)(ut,{}),(0,q.jsx)(ft,{}),(0,q.jsx)(ht,{}),(0,q.jsx)(vt,{}),(0,q.jsx)(yt,{}),(0,q.jsx)(J,{})]})}function mi(){let{pathname:e}=a();return(0,q.jsxs)(q.Fragment,{children:[!ui.some(t=>
423e.startsWith(t))&&(0,q.jsx)(Qe,{}),(0,q.jsx)(K.Suspense,{fallback:(0,q.jsx)(di,{}),children:(0,q.jsxs)(p,{children:[(0,q.jsx)(d,{path:`/`,element:(0,q.jsx)(pi,{})}),(0,q.jsx)(d,{path:`/dich-vu`,element:(0,q.jsx)(fn,{})}),(0,q.jsx)(d,{path:`/bang-gia`,element:(0,q.jsx)(yn,{})}),(0,q.jsx)(d,{path:`/faq`,element:(0,q.jsx)(Cn,{})}),(0,q.jsx)(d,{path:`/blog`,element:(0,q.jsx)(On,{})}),(0,q.jsx)(d,{path:`/blog/:slug`,element:(0,q.jsx)(Fn,{})}),(0,q.jsx)(d,{path:`/lien-he`,element:(0,q.jsx)(Rn,{})}),(0,q.jsx)(d,{path:`/vuot-link/:slug`,element:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(er,{}),(0,q.jsx)(J,{})]})}),(0,q.jsx)(d,{path:`/dang-nhap`,element:(0,q.jsx)(nn,{})}),(0,q.jsx)(d,{path:`/dang-ky`,element:(0,q.jsx)(cn,{})}),(0,q.jsx)(d,{path:`/dashboard`,element:(0,q.jsx)(c,{to:`/buyer/dashboard`,replace:!0})}),(0,q.jsxs)(d,{path:`/buyer/dashboard`,element:(0,q.jsx)(_r,{}),children:[(0,q.jsx)(d,{index:!0,element:(0,q.jsx)(Sr,{})}),(0,q.jsx)(d,{path:`campaigns`,element:(0,q.jsx)(wr,{})}),(0,q.jsx)(d,{path:`campaigns/create`,element:(0,q.jsx)(Cr,{})}),(0,q.jsx)(d,{path:`reports`,element:(0,q.jsx)(Tr,{})}),(0,q.jsx)(d,{path:`finance/deposit`,element:(0,q.jsx)(Er,{})}),(0,q.jsx)(d,{path:`finance/transactions`,element:(0,q.jsx)(Dr,{})}),(0,q.jsx)(d,{path:`script`,element:(0,q.jsx)(kr,{})}),(0,q.jsx)(d,{path:`support`,element:(0,q.jsx)(Mr,{})}),(0,q.jsx)(d,{path:`pricing`,element:(0,q.jsx)(Ar,{})}),(0,q.jsx)(d,{path:`referral`,element:(0,q.jsx)(jr,{})}),(0,q.jsx)(d,{path:`profile`,element:(0,q.jsx)(Or,{})}),(0,q.jsx)(d,{path:`api`,element:(0,q.jsx)(Nr,{})}),(0,q.jsx)(d,{path:`agency`,element:(0,q.jsx)(Pr,{})})]}),(0,q.jsxs)(d,{path:`/worker/dashboard`,element:(0,q.jsx)(xr,{}),children:[(0,q.jsx)(d,{index:!0,element:(0,q.jsx)(Fr,{})}),(0,q.jsx)(d,{path:`links`,element:(0,q.jsx)(Ir,{})}),(0,q.jsx)(d,{path:`links/hidden`,element:(0,q.jsx)(Lr,{})}),(0,q.jsx)(d,{path:`earnings`,element:(0,q.jsx)(Rr,{})}),(0,q.jsx)(d,{path:`withdraw`,element:(0,q.jsx)(zr,{})}),(0,q.jsx)(d,{path:`transactions`,element:(0,q.jsx)(Br,{})}),(0,q.jsx)(d,{path:`pricing`,element:(0,q.jsx)(Vr,{})}),(0,q.jsx)(d,{path:`profile`,element:(0,q.jsx)(Hr,{})}),(0,q.jsx)(d,{path:`support`,element:(0,q.jsx)(Ur,{})}),(0,q.jsx)(d,{path:`referral`,element:(0,q.jsx)(jr,{})}),(0,q.jsx)(d,{path:`api`,element:(0,q.jsx)(Wr,{})}),(0,q.jsx)(d,{path:`short-links`,element:(0,q.jsx)(Gr,{})})]}),(0,q.jsxs)(d,{path:`/admin`,element:(0,q.jsx)(Kr,{}),children:[(0,q.jsx)(d,{index:!0,element:(0,q.jsx)(qr,{})}),(0,q.jsx)(d,{path:`users`,element:(0,q.jsx)(Jr,{type:`buyers`})}),(0,q.jsx)(d,{path:`campaigns`,element:(0,q.jsx)(Yr,{})}),(0,q.jsx)(d,{path:`transactions`,element:(0,q.jsx)(Xr,{})}),(0,q.jsx)(d,{path:`tickets`,element:(0,q.jsx)(Zr,{defaultRole:`buyer`})}),(0,q.jsx)(d,{path:`pricing`,element:(0,q.jsx)(Qr,{})}),(0,q.jsx)(d,{path:`security`,element:(0,q.jsx)(ei,{})}),(0,q.jsx)(d,{path:`referrals/buyers`,element:(0,q.jsx)(ti,{type:`buyers`})}),(0,q.jsx)(d,{path:`referrals/workers`,element:(0,q.jsx)(ti,{type:`workers`})}),(0,q.jsx)(d,{path:`worker-users`,element:(0,q.jsx)(Jr,{type:`workers`})}),(0,q.jsx)(d,{path:`worker-tasks`,element:(0,q.jsx)(ni,{})}),(0,q.jsx)(d,{path:`worker-withdrawals`,element:(0,q.jsx)(ri,{})}),(0,q.jsx)(d,{path:`withdrawal-addresses`,element:(0,q.jsx)(oi,{})}),(0,q.jsx)(d,{path:`worker-pricing-groups`,element:(0,q.jsx)(ii,{})}),(0,q.jsx)(d,{path:`source-approval`,element:(0,q.jsx)(si,{})}),(0,q.jsx)(d,{path:`worker-tickets`,element:(0,q.jsx)(Zr,{defaultRole:`worker`})}),(0,q.jsx)(d,{path:`worker-links`,element:(0,q.jsx)(ci,{})}),(0,q.jsx)(d,{path:`blog`,element:(0,q.jsx)(li,{})}),(0,q.jsx)(d,{path:`config`,element:(0,q.jsx)(ai,{})}),(0,q.jsx)(d,{path:`settings`,element:(0,q.jsx)($r,{})})]}),(0,q.jsx)(d,{path:`*`,element:(0,q.jsx)(fi,{})})]})})]})}function hi(){return(0,q.jsx)(m,{children:(0,q.jsx)(mi,{})})}function gi({config:e}){Z(e?.name||`Hệ thống Traffic`);let t=e?.primary_color||`#3B82F6`,n=[{icon:Be,title:`Tốc độ cực nhanh`,desc:`Hệ thống xử lý lưu lượng truy cập mượt mà, thời gian thực.`},{icon:E,title:`An toàn 100%`,desc:`Cam kết nguồn traffic chất lượng cao, an toàn cho SEO.`},{icon:I,title:`Tối ưu tỷ lệ chuyển đổi`,desc:`Tăng cường hiển thị, giúp website của bạn đạt thứ hạng tốt hơn.`},{icon:Le,title:`Hỗ trợ tận tình`,desc:`Đội ngũ CSKH chuyên nghiệp luôn sẵn sàng hỗ trợ 24/7.`}];return(0,q.jsxs)(`div`,{className:`min-h-screen bg-white font-sans text-slate-800`,children:[(0,q.jsx)(`header`,{className:`sticky top-0 z-50 bg-white/80 backdrop-blur-md border-b border-slate-100`,children:(0,q.jsxs)(`div`,{className:`max-w-6xl mx-auto px-4 sm:px-6 h-16 flex items-center justify-between`,children:[(0,q.jsx)(u,{to:`/`,className:`flex items-center gap-2`,children:e?.logo_url?(0,q.jsx)(`img`,{src:e.logo_url,alt:e.name,className:`h-8 w-auto object-contain`}):(0,q.jsx)(`span`,{className:`text-xl font-black tracking-tight`,style:{color:t},children:e?.name||`Hệ Thống Traffic`})}),(0,q.jsxs)(`div`,{className:`flex items-center gap-3 sm:gap-4`,children:[(0,q.jsx)(u,{to:`/dang-nhap`,className:`text-sm font-semibold text-slate-600 hover:text-slate-900 transition-colors`,children:`Đăng nhập`}),(0,q.jsx)(u,{to:`/dang-ky`,className:`text-sm font-bold text-white px-4 py-2 rounded-full shadow-md hover:shadow-lg transition-all hover:-translate-y-0.5`,style:{backgroundColor:t},children:`Đăng ký ngay`})]})]})}),(0,q.jsxs)(`section`,{className:`relative overflow-hidden pt-20 pb-32`,children:[(0,q.jsx)(`div`,{className:`absolute inset-0 bg-slate-50 -z-10`}),(0,q.jsx)(`div`,{className:`absolute -top-40 -right-40 w-96 h-96 rounded-full blur-3xl op
423acity-20`,style:{backgroundColor:t}}),(0,q.jsx)(`div`,{className:`absolute -bottom-40 -left-40 w-96 h-96 rounded-full blur-3xl opacity-20`,style:{backgroundColor:t}}),(0,q.jsxs)(`div`,{className:`max-w-6xl mx-auto px-4 sm:px-6 text-center`,children:[(0,q.jsxs)(`h1`,{className:`text-4xl sm:text-5xl lg:text-6xl font-black text-slate-900 tracking-tight leading-tight mb-6`,children:[`Giải pháp `,(0,q.jsx)(`span`,{style:{color:t},children:`Tăng Trưởng`}),(0,q.jsx)(`br`,{className:`hidden sm:block`}),` Traffic Chuyên Nghiệp`]}),(0,q.jsx)(`p`,{className:`text-lg text-slate-500 max-w-2xl mx-auto mb-10 leading-relaxed`,children:`Hệ thống cung cấp lưu lượng truy cập chất lượng cao giúp tăng cường thứ hạng SEO và đột phá doanh thu cho doanh nghiệp của bạn.`}),(0,q.jsxs)(`div`,{className:`flex flex-col sm:flex-row items-center justify-center gap-4`,children:[(0,q.jsxs)(u,{to:`/dang-ky`,className:`w-full sm:w-auto px-8 py-3.5 rounded-full text-white font-black text-lg shadow-xl flex items-center justify-center gap-2 hover:-translate-y-1 transition-all`,style:{backgroundColor:t,boxShadow:`0 20px 40px -15px ${t}80`},children:[`Bắt đầu miễn phí `,(0,q.jsx)(T,{size:20})]}),(0,q.jsx)(u,{to:`/dang-nhap`,className:`w-full sm:w-auto px-8 py-3.5 rounded-full bg-white text-slate-700 font-bold text-lg border border-slate-200 hover:bg-slate-50 hover:border-slate-300 transition-all flex items-center justify-center gap-2`,children:`Đăng nhập hệ thống`})]}),(0,q.jsxs)(`div`,{className:`mt-14 flex items-center justify-center gap-6 sm:gap-10 text-sm font-semibold text-slate-400 flex-wrap`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(H,{size:18,style:{color:t}}),` Nhanh chóng`]}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(H,{size:18,style:{color:t}}),` An toàn 100%`]}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(H,{size:18,style:{color:t}}),` Chi phí tối ưu`]})]})]})]}),(0,q.jsx)(`section`,{className:`py-24 bg-white`,children:(0,q.jsxs)(`div`,{className:`max-w-6xl mx-auto px-4 sm:px-6`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-16`,children:[(0,q.jsx)(`h2`,{className:`text-3xl font-black text-slate-900 mb-4`,children:`Tại sao chọn chúng tôi?`}),(0,q.jsx)(`p`,{className:`text-slate-500 max-w-2xl mx-auto`,children:`Cung cấp những tính năng và giải pháp vượt trội, đáp ứng hoàn hảo nhu cầu đẩy Top SEO của bạn.`})]}),(0,q.jsx)(`div`,{className:`grid sm:grid-cols-2 lg:grid-cols-4 gap-8`,children:n.map((e,n)=>(0,q.jsxs)(`div`,{className:`p-6 rounded-3xl bg-slate-50 border border-slate-100 hover:shadow-xl transition-all hover:-translate-y-1 group`,children:[(0,q.jsx)(`div`,{className:`w-14 h-14 rounded-2xl flex items-center justify-center mb-6 shadow-sm transition-colors`,style:{backgroundColor:`${t}15`,color:t},children:(0,q.jsx)(e.icon,{size:26})}),(0,q.jsx)(`h3`,{className:`text-xl font-bold text-slate-800 mb-3 group-hover:text-slate-900`,children:e.title}),(0,q.jsx)(`p`,{className:`text-slate-500 leading-relaxed text-sm`,children:e.desc})]},n))})]})}),(0,q.jsx)(`section`,{className:`py-20`,children:(0,q.jsx)(`div`,{className:`max-w-5xl mx-auto px-4 sm:px-6`,children:(0,q.jsxs)(`div`,{className:`rounded-3xl p-10 sm:p-16 text-center text-white relative overflow-hidden`,style:{backgroundColor:t},children:[(0,q.jsx)(`div`,{className:`absolute inset-0 bg-black/10`}),(0,q.jsxs)(`div`,{className:`relative z-10`,children:[(0,q.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-black mb-6`,children:`Sẵn sàng để tăng tốc?`}),(0,q.jsx)(`p`,{className:`text-white/80 text-lg max-w-2xl mx-auto mb-10`,children:`Tạo tài khoản ngay hôm nay và nhận hàng ngàn lượt truy cập thực cho website của bạn.`}),(0,q.jsxs)(u,{to:`/dang-ky`,className:`inline-flex items-center gap-2 px-8 py-4 bg-white text-slate-900 font-black rounded-full text-lg shadow-2xl hover:scale-105 transition-transform`,children:[`Tạo chiến dịch ngay `,(0,q.jsx)(T,{size:20})]})]})]})})}),(0,q.jsx)(`footer`,{className:`border-t border-slate-100 bg-slate-50 py-10`,children:(0,q.jsxs)(`div`,{className:`max-w-6xl mx-auto px-4 sm:px-6 flex flex-col sm:flex-row items-center justify-between gap-4 text-sm text-slate-400 font-medium`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[e?.logo_url?(0,q.jsx)(`img`,{src:e.logo_url,alt:e.name,className:`h-6 w-auto grayscale opacity-70`}):(0,q.jsx)(`span`,{className:`font-bold`,children:e?.name||`Hệ Thống Traffic`}),(0,q.jsxs)(`span`,{children:[`© `,new Date().getFullYear(),` All rights reserved.`]})]}),(0,q.jsxs)(`div`,{className:`flex gap-6`,children:[(0,q.jsx)(`a`,{href:`#`,className:`hover:text-slate-600 transition-colors`,children:`Điều khoản`}),(0,q.jsx)(`a`,{href:`#`,className:`hover:text-slate-600 transition-colors`,children:`Bảo mật`}),e?.contact_email&&(0,q.jsx)(`a`,{href:`mailto:${e.contact_email}`,className:`hover:text-slate-600 transition-colors`,children:`Liên hệ`})]})]})})]})}function _i({config:e}){Z(`Đăng nhập - ${e?.name||`Hệ thống`}`);let t=l(),n=$t(),[r]=o(),i=r.get(`banned`)===`1`,[a,s]=(0,K.useState)(!1),[c,d]=(0,K.useState)({login:``,password:``}),[f,p]=(0,K.useState)(!1),[m,h]=(0,K.useState)(!1),[g,_]=(0,K.useState)(``),{captchaRef:v,token:y,resetCaptcha:b}=tn(),x=e?.primary_color||`#3B82F6`;(0,K.useEffect)(()=>
423{if(localStorage.getItem(`token`))try{JSON.parse(localStorage.getItem(`user`)||`{}`),t(`/buyer/dashboard`)}catch{t(`/buyer/dashboard`)}},[t]);let S=e=>d({...c,[e.target.name]:e.target.value});return(0,q.jsxs)(`div`,{className:`min-h-screen bg-gray-50 flex`,children:[(0,q.jsxs)(`div`,{className:`hidden lg:flex lg:w-1/2 items-center justify-center p-12 relative`,style:{backgroundColor:x},children:[(0,q.jsx)(`div`,{className:`absolute inset-0 bg-black/20 rounded-none`}),(0,q.jsxs)(`div`,{className:`relative z-10 text-center max-w-md`,children:[(0,q.jsxs)(`h2`,{className:`text-3xl font-black text-white mb-4 uppercase leading-tight`,children:[`Chào mừng đến với`,(0,q.jsx)(`br`,{}),(0,q.jsx)(`span`,{className:`text-white opacity-90`,children:e?.name||`Hệ thống`})]}),(0,q.jsx)(`p`,{className:`text-white/80 text-base mb-10 leading-relaxed`,children:`Hệ thống quản lý dịch vụ và khách hàng chuyên nghiệp.`}),(0,q.jsxs)(`ul`,{className:`space-y-3 text-left`,children:[(0,q.jsxs)(`li`,{className:`flex items-center gap-3 text-sm text-white/90`,children:[(0,q.jsx)(H,{className:`w-4 h-4 text-white shrink-0`}),`Đăng nhập để xem báo cáo chi tiết`]}),(0,q.jsxs)(`li`,{className:`flex items-center gap-3 text-sm text-white/90`,children:[(0,q.jsx)(H,{className:`w-4 h-4 text-white shrink-0`}),`Quản lý tài khoản dễ dàng`]})]})]})]}),(0,q.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-6 sm:p-12`,children:(0,q.jsxs)(`div`,{className:`w-full max-w-md`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-8`,children:[(0,q.jsx)(u,{to:`/`,className:`inline-block mb-6`,children:e?.logo_url?(0,q.jsx)(`img`,{src:e.logo_url,alt:e.name,className:`h-16 w-auto mx-auto object-contain`}):(0,q.jsx)(`div`,{className:`text-3xl font-black`,style:{color:x},children:e?.name||`Hệ thống`})}),(0,q.jsx)(`h1`,{className:`text-2xl font-black text-slate-800 mb-1`,children:`Đăng nhập`}),(0,q.jsx)(`p`,{className:`text-gray-500 text-sm`,children:`Truy cập vào bảng điều khiển cá»§a bạn`})]}),(0,q.jsxs)(`div`,{className:`bg-white rounded-2xl shadow-sm border border-gray-100 p-8`,children:[i&&(0,q.jsxs)(`div`,{className:`mb-4 flex items-center gap-3 p-3 bg-red-50 border border-red-200 rounded-xl text-red-700`,children:[(0,q.jsx)(de,{size:18,className:`shrink-0`}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`font-bold text-sm`,children:`Tài khoản bị tạm ngưng`}),(0,q.jsx)(`p`,{className:`text-xs text-red-500 mt-0.5`,children:`Tài khoản cá»§a bạn đã bị admin tạm ngưng.`})]})]}),g&&(0,q.jsx)(`div`,{className:`mb-4 p-3 bg-red-50 border border-red-200 rounded-xl text-red-600 text-sm font-medium text-center`,children:g}),(0,q.jsxs)(`form`,{onSubmit:async e=>{if(e.preventDefault(),!y){_(`Vui lòng xác nhận captcha trước khi đăng nhập.`);return}h(!0),_(``);try{let e=await fetch(`/api/auth/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({email:c.login,password:c.password,remember:f,captchaToken:y})}),r=await e.json();if(!e.ok){_(r.error||`Đăng nhập thất bại`),b(),h(!1);return}localStorage.setItem(`token`,r.token),localStorage.setItem(`user`,JSON.stringify(r.user)),n.success(`Chào mừng ${r.user.name||`bạn`}!`,`Đăng nhập thành công`),t(`/buyer/dashboard`)}catch{_(`Không thể kết nối đến máy chá»§`)}finally{h(!1)}},className:`space-y-5`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Email hoặc Username`}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(F,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:`text`,name:`login`,value:c.login,onChange:S,placeholder:`[email protected] hoặc username`,className:`w-full pl-10 pr-4 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 transition`,style:{"--tw-ring-color":x}})]})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between mb-1.5`,children:[(0,q.jsx)(`label`,{className:`text-xs font-semibold text-gray-600`,children:`Mật khẩu`}),(0,q.jsx)(`button`,{type:`button`,className:`text-xs font-semibold`,style:{color:x},children:`Quên mật khẩu?`})]}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(W,{className:`absolute left-3.5 to
423p-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:a?`text`:`password`,name:`password`,value:c.password,onChange:S,placeholder:`••••••••`,className:`w-full pl-10 pr-11 py-3 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 transition`,style:{"--tw-ring-color":x}}),(0,q.jsx)(`button`,{type:`button`,onClick:()=>s(!a),className:`absolute right-3.5 top-1/2 -translate-y-1/2 text-gray-400 hover:text-gray-600`,children:a?(0,q.jsx)(Pe,{className:`w-4 h-4`}):(0,q.jsx)(se,{className:`w-4 h-4`})})]})]}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`input`,{type:`checkbox`,id:`remember`,checked:f,onChange:e=>p(e.target.checked),className:`w-4 h-4 rounded border-gray-300 cursor-pointer`,style:{accentColor:x}}),(0,q.jsx)(`label`,{htmlFor:`remember`,className:`text-sm text-gray-600 cursor-pointer select-none`,children:`Ghi nhớ đăng nhập`})]}),(0,q.jsx)(`div`,{className:`flex justify-center`,children:(0,q.jsx)(`div`,{ref:v})}),(0,q.jsx)(`button`,{type:`submit`,disabled:m,className:`w-full text-white font-black py-3.5 rounded-xl shadow-lg flex items-center justify-center gap-2.5 text-sm disabled:opacity-70 transition-all hover:opacity-90`,style:{backgroundColor:x},children:m?(0,q.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`span`,{className:`w-4 h-4 border-2 border-white border-t-transparent rounded-full animate-spin`}),` Đang đăng nhập...`]}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`span`,{children:`ĐĂNG NHẬP`}),` `,(0,q.jsx)(T,{className:`w-4 h-4`})]})})]}),(0,q.jsx)(`div`,{className:`mt-6 pt-6 border-t border-gray-100 text-center`,children:(0,q.jsxs)(`p`,{className:`text-sm text-gray-500`,children:[`Chưa có tài khoản?`,` `,(0,q.jsx)(u,{to:`/dang-ky`,className:`font-bold hover:underline`,style:{color:x},children:`Đăng ký ngay`})]})})]})]})})]})}function vi({config:e}){Z(`Đăng ký - ${e?.name||`Hệ thống`}`);let t=l(),n=$t(),[r,i]=(0,K.useState)(!1),[a,o]=(0,K.useState)(!1),[s,c]=(0,K.useState)(``),{captchaRef:d,token:f,resetCaptcha:p}=tn(),m=e?.primary_color||`#3B82F6`,[h,_]=(0,K.useState)({username:``,email:``,phone:``,password:``,repassword:``,agree:!1});(0,K.useEffect)(()=>{localStorage.getItem(`token`)&&t(`/buyer/dashboard`)},[t]);let v=e=>{let{name:t,value:n,type:r,checked:i}=e.target;_(e=>({...e,[t]:r===`checkbox`?i:n}))};return(0,q.jsxs)(`div`,{className:`min-h-screen bg-gray-50 flex flex-row-reverse`,children:[(0,q.jsxs)(`div`,{className:`hidden lg:flex lg:w-1/2 items-center justify-center p-12 relative`,style:{backgroundColor:m},children:[(0,q.jsx)(`div`,{className:`absolute inset-0 bg-black/20 rounded-none`}),(0,q.jsxs)(`div`,{className:`relative z-10 text-center max-w-md`,children:[(0,q.jsxs)(`h2`,{className:`text-3xl font-black text-white mb-4 uppercase leading-tight`,children:[`Tạo tài khoản`,(0,q.jsx)(`br`,{}),(0,q.jsx)(`span`,{className:`text-white opacity-90`,children:e?.name||`Hệ thống`})]}),(0,q.jsx)(`p`,{className:`text-white/80 text-base mb-10 leading-relaxed`,children:`Đăng ký ngay để bắt đầu sử dụng các dịch vụ của chúng tôi.`}),(0,q.jsxs)(`ul`,{className:`space-y-3 text-left`,children:[(0,q.jsxs)(`li`,{className:`flex items-center gap-3 text-sm text-white/90`,children:[(0,q.jsx)(H,{className:`w-4 h-4 text-white shrink-0`}),`Tài khoản miễn phí, thao tác nhanh chóng`]}),(0,q.jsxs)(`li`,{className:`flex items-center gap-3 text-sm text-white/90`,children:[(0,q.jsx)(H,{className:`w-4 h-4 text-white shrink-0`}),`Bảo mật an toàn, thông tin tuyệt mật`]})]})]})]}),(0,q.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-6 sm:p-12 overflow-y-auto`,children:(0,q.jsxs)(`div`,{className:`w-full max-w-md py-8`,children:[(0,q.jsxs)(`div`,{className:`text-center mb-8`,children:[(0,q.jsx)(u,{to:`/`,className:`inline-block mb-6`,children:e?.logo_url?(0,q.jsx)(`img`,{src:e.logo_url,alt:e.name,className:`h-16 w-auto mx-auto object-contain`}):(0,q.jsx)(`div`,{className:`text-3xl font-black`,style:{color:m},children:e?.name||`Hệ thống`})}),(0,q.jsx)(`h1`,{className:`text-2xl font-black text-slate-800 mb-1`,children:`Đăng ký tài khoản`}),(0,q.jsx)(`p`,{className:`text-gray-500 text-sm`,children:`Điền thông tin để bắt đầu`})]}),(0,q.jsxs)(`div`,{className:`bg-white rounded-2xl shadow-sm border border-gray-100 p-8`,children:[s&&(0,q.
423jsx)(`div`,{className:`mb-6 p-3 bg-red-50 border border-red-200 rounded-xl text-red-600 text-sm font-medium text-center`,children:s}),(0,q.jsxs)(`form`,{onSubmit:async e=>{if(e.preventDefault(),!h.agree){c(`Bạn phải đồng ý với Điều khoản dịch vụ`);return}if(h.password!==h.repassword){c(`Mật khẩu không khớp`);return}if(!f){c(`Vui lòng xác nhận captcha`);return}o(!0),c(``);try{let e=await fetch(`/api/auth/register`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({username:h.username,email:h.email,phone:h.phone,password:h.password,captchaToken:f})}),r=await e.json();if(!e.ok){c(r.error||`Đăng ký thất bại`),p();return}n.success(`Đăng ký thành công! Đang đăng nhập...`,`Thành công`);let i=await fetch(`/api/auth/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({email:h.email,password:h.password,captchaToken:f})}),a=await i.json();i.ok&&a.token?(localStorage.setItem(`token`,a.token),localStorage.setItem(`user`,JSON.stringify(a.user)),t(`/buyer/dashboard`)):t(`/dang-nhap`)}catch{c(`Lỗi kết nối máy chá»§`)}finally{o(!1)}},className:`space-y-4`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:[`Tên đăng nhập `,(0,q.jsx)(`span`,{className:`text-red-500`,children:`*`})]}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(F,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:`text`,name:`username`,value:h.username,onChange:v,placeholder:`vd: nguyenvan_a`,className:`w-full pl-10 pr-4 py-2.5 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 transition`,style:{"--tw-ring-color":m}})]})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:[`Email `,(0,q.jsx)(`span`,{className:`text-red-500`,children:`*`})]}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(R,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:`email`,name:`email`,value:h.email,onChange:v,placeholder:`[email protected]`,className:`w-full pl-10 pr-4 py-2.5 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 transition`,style:{"--tw-ring-color":m}})]})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:`Số điện thoại`}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(g,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{type:`tel`,name:`phone`,value:h.phone,onChange:v,placeholder:`0987654321`,className:`w-full pl-10 pr-4 py-2.5 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 transition`,style:{"--tw-ring-color":m}})]})]}),(0,q.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 gap-4`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:[`Mật khẩu `,(0,q.jsx)(`span`,{className:`text-red-500`,children:`*`})]}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(W,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:r?`text`:`password`,name:`password`,value:h.password,onChange:v,placeholder:`••••••••`,className:`w-full pl-10 pr-10 py-2.5 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 transition`,style:{"--tw-ring-color":m}})]})]}),(0,q.jsxs)(`div`,{children:[(0,q.jsxs)(`label`,{className:`block text-xs font-semibold text-gray-600 mb-1.5`,children:[`Nhập lại MK `,(0,q.jsx)(`span`,{className:`text-red-500`,children:`*`})]}),(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(W,{className:`absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400`}),(0,q.jsx)(`input`,{required:!0,type:r?`text`:`password`,name:`repassword`,value:h.repassword,onChange:v,placeholder:`••••••••`,className:`w-full pl-10 pr-10 py-2.5 rounded-xl border border-gray-200 text-sm focus:outline-none focus:ring-2 transition`,style:{"--tw-ring-color":m}})]})]})]}),(0,q.jsx)(`div`,{className:`flex justify-end`,children:(0,q.jsx)(`button`,{type:`button`,onClick:()=>i(!r),className:`text-xs font-medium hover:underline flex items-center gap-1`,style:{color:m},children:r?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Pe,{className:`w-3 h-3`}),` Ẩn MK`]}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(se,{className:`w-3 h-3`}),` Hiện MK`]})})}),(0,q.jsxs)(`div`,{className:`flex items-start gap-2 pt-2`,children:[(0,q.jsx)(`input`,{type:`checkbox`,id:`agree`,name:`agree`,checked:h.agree,onChange:v,className:`mt-0.5 w-4 h-4 rounded border-gray-300 cursor-pointer`,style:{accentColor:m}}),(0,q.jsxs)(`label`,{htmlFor:`agree`,className:`text-sm text-gray-600 cursor-pointer select-none leading-tight`,children:[`Tôi đồng ý với `,(0,q.jsx)(`a`,{href:`#`,className:`font-semibold hover:underline`,style:{color:m},children:`Điều khoản dịch vụ`}),` và `,(0,q.jsx)(`a`,{href:`#`,className:`font-semibold hover:underline`,style:{color:m},children:`Chính sách bảo mật`})]})]}),(0,q.jsx)(`div`,{className:`flex justify-center pt-2`,children:(0,q.jsx)(`div`,{ref:d})}),(0,q.jsx)(`button`,{type:`submit`,disabled:a,className:`w-full mt-2 text-white font-black py-3.5 rounded-xl shadow-lg flex items-center justify-center gap-2.5 text-sm disabled:opacity-70 transition-all hover:opacity-90`,style:{backgroundColor:m},children:a?(0,q.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`span`,{className:`w-4 h-4 border-2 border-white border-t-transparent roun
423ded-full animate-spin`}),` Đang xử lý...`]}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`span`,{children:`ĐĂNG KÝ TÀI KHOẢN`}),` `,(0,q.jsx)(T,{className:`w-4 h-4`})]})})]}),(0,q.jsx)(`div`,{className:`mt-6 pt-6 border-t border-gray-100 text-center`,children:(0,q.jsxs)(`p`,{className:`text-sm text-gray-500`,children:[`Đã có tài khoản?`,` `,(0,q.jsx)(u,{to:`/dang-nhap`,className:`font-bold hover:underline`,style:{color:m},children:`Đăng nhập`})]})})]})]})})]})}var yi=(0,K.lazy)(()=>s(()=>import(`./TrafficDashboard.20260815092527.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8]))),bi=(0,K.lazy)(()=>s(()=>import(`./CreateCampaign.20260815092527.js`),__vite__mapDeps([9,1,2,3,4,5,6,10,8]))),xi=(0,K.lazy)(()=>s(()=>import(`./CampaignList.20260815092527.js`),__vite__mapDeps([11,1,2,3,4,5,6,10,7,8,12]))),Si=(0,K.lazy)(()=>s(()=>import(`./TrafficTracking.20260815092527.js`),__vite__mapDeps([13,1,3,4,5,6,10,2,8,12]))),Ci=(0,K.lazy)(()=>s(()=>import(`./Deposit.20260815092527.js`),__vite__mapDeps([14,1,3,4,5,6,10,2,8]))),wi=(0,K.lazy)(()=>s(()=>import(`./TransactionHistory.20260815092527.js`),__vite__mapDeps([15,1,3,4,5,6,10,2,8]))),Ti=(0,K.lazy)(()=>s(()=>import(`./UserProfileAndAccountSettings.20260815092527.js`),__vite__mapDeps([16,1,2,3,4,5,6,10,8]))),Ei=(0,K.lazy)(()=>s(()=>import(`./ScriptGenerator.20260815092527.js`),__vite__mapDeps([17,1,2,3,4,5,6,10]))),Di=(0,K.lazy)(()=>s(()=>import(`./UserPricing.20260815092527.js`),__vite__mapDeps([18,1,2,3,4,5,6]))),Oi=(0,K.lazy)(()=>s(()=>import(`./BuyerSupport.20260815092527.js`),__vite__mapDeps([20,1,3,4,5,6,10,2,8]))),ki=(0,K.lazy)(()=>s(()=>import(`./BuyerApi.20260815092527.js`),__vite__mapDeps([21,1,3,4,5,6,10,2,8]))),Ai=(0,K.lazy)(()=>s(()=>import(`./AgencyAdminLayout.20260815092527.js`),__vite__mapDeps([52,1,2,3,4,5,6,8]))),ji=(0,K.lazy)(()=>s(()=>import(`./AgencyAdminDashboard.20260815092527.js`),__vite__mapDeps([53,1,3,4,5,6,8]))),Mi=(0,K.lazy)(()=>s(()=>import(`./AgencyAdminBuyers.20260815092527.js`),__vite__mapDeps([54,1,3,4,5,6,8]))),Ni=(0,K.lazy)(()=>s(()=>import(`./AgencyAdminCampaigns.20260815092527.js`),__vite__mapDeps([55,3,1,5,6,37,4,8,12]))),Pi=(0,K.lazy)(()=>s(()=>import(`./AgencyAdminTransactions.20260815092527.js`),__vite__mapDeps([56,1,3,4,5,6,8]))),Fi=(0,K.lazy)(()=>s(()=>import(`./AgencyAdminTickets.20260815092527.js`),__vite__mapDeps([57,1,3,4,5,6,8]))),Ii=(0,K.lazy)(()=>s(()=>import(`./AgencyAdminPricing.20260815092527.js`),__vite__mapDeps([58,1,3,4,5,6,8]))),Li=(0,K.lazy)(()=>s(()=>import(`./AgencyAdminConfig.20260815092527.js`),__vite__mapDeps([59,1,3,4,5,6,8]))),Ri=(0,K.lazy)(()=>s(()=>import(`./AgencyAdminSettings.20260815092527.js`),__vite__mapDeps([60,1,3,4,5,6,8])));function zi(){return(0,q.jsx)(`div`,{style:{minHeight:`60vh`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,q.jsx)(`div`,{style:{width:36,height:36,borderRadius:`50%`,border:`3px solid #E2E8F0`,borderTopColor:`var(--primary-color, #3B82F6)`,animation:`spin 0.8s linear infinite`}})})}function Bi(){return(0,q.jsx)(`div`,{className:`min-h-screen flex items-center justify-center bg-gray-50`,children:(0,q.jsxs)(`div`,{className:`text-center`,children:[(0,q.jsx)(`p`,{className:`text-6xl font-black mb-3`,style:{color:`var(--primary-color, #3B82F6)`},children:`404`}),(0,q.jsx)(`h1`,{className:`text-2xl font-black text-slate-800 mb-2`,children:`Không tìm thấy trang`})]})})}function Vi({config:e}){return(0,K.useEffect)(()=>{if(e?.primary_color&&document.documentElement.style.setProperty(`--primary-color`,e.primary_color),e?.name&&(document.title=e.name),e?.favicon_url){document.querySelectorAll(`link[rel~='icon']`).forEach(e=>e.remove());let t=document.createElement(`link`);t.rel=`icon`,t.href=e.favicon_url,document.head.appendChild(t)}},[e]),(0,K.useEffect)(()=>{e&&localStorage.setItem(`agency_config`,JSON.stringify(e))},[e]),(0,q.jsx)(K.Suspense,{fallback:(0,q.jsx)(zi,{}),children:(0,q.jsxs)(p,{children:[(0,q.jsx)(d,{path:`/`,element:(0,q.jsx)(gi,{config:e})}),(0,q.jsx)(d,{path:`/dang-nhap`,element:(0,q.jsx)(_i,{config:e})}),(0,q.jsx)(d,{path:`/dang-ky`,element:(0,q.jsx)(vi,{config:e})}),(0,q.jsx)(d,{path:`/dashboard`,element:(0,q.jsx)(c,{to:`/buyer/dashboard`,replace:!0})}),(0,q.jsxs)(d,{path:`/buyer/dashboard`,element:(0,q.jsx)(_r,{agencyConfig:e}),children:[(0,q.jsx)(d,{index:!0,element:(0,q.jsx)(yi,{})}),(0,q.jsx)(d,{path:`campaigns`,element:(0,q.jsx)(xi,{})}),(0,q.jsx)(d,{path:`campaigns/create`,element:(0,q.jsx)(bi,{})}),(0,q.jsx)(d,{path:`reports`,element:(0,q.jsx)(Si,{})}),(0,q.jsx)(d,{path:`finance/deposit`,element:(0,q.jsx)(Ci,{})}),(0,q.jsx)(d,{path:`finance/transactions`,element:(0,q.jsx)(wi,{})}),(0,q.jsx)(d,{path:`script`,element:(0,q.jsx)(Ei,{})}
423),(0,q.jsx)(d,{path:`support`,element:(0,q.jsx)(Oi,{})}),(0,q.jsx)(d,{path:`pricing`,element:(0,q.jsx)(Di,{})}),(0,q.jsx)(d,{path:`profile`,element:(0,q.jsx)(Ti,{})}),(0,q.jsx)(d,{path:`api`,element:(0,q.jsx)(ki,{})})]}),(0,q.jsxs)(d,{path:`/agency-admin`,element:(0,q.jsx)(Ai,{config:e}),children:[(0,q.jsx)(d,{index:!0,element:(0,q.jsx)(ji,{})}),(0,q.jsx)(d,{path:`buyers`,element:(0,q.jsx)(Mi,{})}),(0,q.jsx)(d,{path:`campaigns`,element:(0,q.jsx)(Ni,{})}),(0,q.jsx)(d,{path:`transactions`,element:(0,q.jsx)(Pi,{})}),(0,q.jsx)(d,{path:`tickets`,element:(0,q.jsx)(Fi,{})}),(0,q.jsx)(d,{path:`pricing`,element:(0,q.jsx)(Ii,{})}),(0,q.jsx)(d,{path:`config`,element:(0,q.jsx)(Li,{})}),(0,q.jsx)(d,{path:`settings`,element:(0,q.jsx)(Ri,{})})]}),(0,q.jsx)(d,{path:`*`,element:(0,q.jsx)(Bi,{})})]})})}function Hi({config:e}){return(0,q.jsx)(m,{children:(0,q.jsx)(Vi,{config:e})})}var Ui=class extends K.Component{constructor(e){super(e),this.state={hasError:!1,error:null,errorInfo:null}}static getDerivedStateFromError(e){return{hasError:!0}}componentDidCatch(e,t){this.setState({error:e,errorInfo:t}),console.error(`ErrorBoundary caught an error`,e,t)}render(){return this.state.hasError?(0,q.jsxs)(`div`,{style:{padding:`20px`,background:`#fee2e2`,color:`#991b1b`,minHeight:`100vh`,fontFamily:`sans-serif`},children:[(0,q.jsx)(`h1`,{style:{fontSize:`24px`,fontWeight:`bold`},children:`Đã xảy ra lỗi trên giao diện!`}),(0,q.jsx)(`p`,{children:`Vui lòng chụp ảnh màn hình này gửi cho admin:`}),(0,q.jsx)(`pre`,{style:{background:`#f87171`,color:`white`,padding:`10px`,marginTop:`10px`,whiteSpace:`pre-wrap`,borderRadius:`8px`},children:this.state.error&&this.state.error.toString()}),(0,q.jsx)(`pre`,{style:{background:`#fca5a5`,color:`#7f1d1d`,padding:`10px`,marginTop:`10px`,whiteSpace:`pre-wrap`,fontSize:`12px`,borderRadius:`8px`},children:this.state.errorInfo&&this.state.errorInfo.componentStack})]}):this.props.children}};function Wi(){let[e,t]=(0,K.useState)(null),[n,r]=(0,K.useState)(!0),[i,a]=(0,K.useState)(!1),[o,s]=(0,K.useState)(null);return(0,K.useEffect)(()=>{let e=window.location.hostname;if([`localhost`,`127.0.0.1`,`traffic68.com`,`www.traffic68.com`].includes(e)){r(!1);return}a(!0),fetch(`/api/agencies/config?domain=${e}`).then(e=>e.json()).then(e=>{e.error?s(e.error):t(e)}).catch(e=>{console.error(e),s(`Lỗi kết nối máy chủ`)}).finally(()=>r(!1))},[]),n?(0,q.jsx)(`div`,{style:{height:`100vh`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,q.jsx)(`div`,{style:{width:36,height:36,borderRadius:`50%`,border:`3px solid #E2E8F0`,borderTopColor:`#3B82F6`,animation:`spin 0.8s linear infinite`}})}):i?o?(0,q.jsxs)(`div`,{style:{height:`100vh`,display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,backgroundColor:`#f8fafc`},children:[(0,q.jsx)(`p`,{style:{fontSize:`4rem`,fontWeight:`bold`,color:`#94a3b8`,margin:0},children:`404`}),(0,q.jsx)(`p`,{style:{fontSize:`1.2rem`,color:`#475569`,marginTop:`8px`},children:o===`Agency not found for this domain`?`Tên miền chưa được cấu hình đại lý`:o})]}):(0,q.jsx)(Hi,{config:e}):(0,q.jsx)(hi,{})}(0,Xe.createRoot)(document.getElementById(`root`)).render((0,q.jsx)(K.StrictMode,{children:(0,q.jsx)(Ui,{children:(0,q.jsx)(Qt,{children:(0,q.jsx)(Wi,{})})})}));export{$t as a,Q as i,gn as n,Z as o,hn as r,mn as t};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.