@import url('https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,300&display=swap');

:root{
  --void:#02020e;--base:#07071a;--surface:#0d0d2b;
  --elevated:rgba(255,255,255,0.035);--hover:rgba(255,255,255,0.062);--active:rgba(255,255,255,0.09);
  --violet:#7c3aed;--violet-l:#a78bfa;--violet-g:rgba(124,58,237,0.35);
  --cyan:#06b6d4;--cyan-g:rgba(6,182,212,0.25);
  --amber:#f59e0b;--emerald:#10b981;--emerald-g:rgba(16,185,129,0.3);
  --rose:#f43f5e;--rose-g:rgba(244,63,94,0.25);
  --t1:#f1f5f9;--t2:#94a3b8;--t3:#475569;
  --b1:rgba(255,255,255,0.06);--b2:rgba(255,255,255,0.1);--ba:rgba(124,58,237,0.4);
  --r-sm:10px;--r-md:16px;--r-lg:24px;--r-xl:34px;--r-pill:9999px;
  --glass:blur(28px) saturate(160%);--glass-s:blur(14px) saturate(130%);
  --ease:cubic-bezier(0.4,0,0.2,1);--spring:cubic-bezier(0.34,1.56,0.64,1);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;background:var(--void);color:var(--t1);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;line-height:1.6;}

/* BG MESH */
body::before{content:'';position:fixed;inset:0;background:radial-gradient(ellipse 70% 55% at 8% 12%,rgba(124,58,237,0.14) 0%,transparent 60%),radial-gradient(ellipse 55% 45% at 92% 88%,rgba(6,182,212,0.09) 0%,transparent 55%),radial-gradient(ellipse 40% 30% at 50% 50%,rgba(124,58,237,0.04) 0%,transparent 70%);pointer-events:none;z-index:0;}
body::after{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Ccircle cx='30' cy='30' r='0.5' fill='rgba(255,255,255,0.035)'/%3E%3C/svg%3E");pointer-events:none;z-index:0;opacity:.7;}

/* ANNOUNCE */
.announce-bar{position:fixed;top:0;left:0;right:0;z-index:1002;background:linear-gradient(90deg,var(--violet),var(--cyan),var(--amber),var(--violet));background-size:300% 100%;animation:barShift 7s linear infinite;padding:10px 20px;text-align:center;font-family:'Syne',sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.4px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.35);}
@keyframes barShift{0%{background-position:0% 50%}100%{background-position:300% 50%}}

/* NAVBAR */
.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(7,7,26,.78);backdrop-filter:var(--glass);-webkit-backdrop-filter:var(--glass);border-bottom:1px solid var(--b1);transition:background .3s;}
.navbar-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:68px;padding:0 28px;}
.navbar-logo{font-family:'Syne',sans-serif;font-size:1.5rem;font-weight:800;text-decoration:none;display:flex;align-items:center;gap:9px;letter-spacing:-.4px;}
.logo-text{background:linear-gradient(130deg,#c4b5fd,#67e8f9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.logo-accent{color:#fbbf24;-webkit-text-fill-color:#fbbf24;}
.logo-icon{width:36px;height:36px;background:linear-gradient(135deg,var(--violet),var(--cyan));border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;box-shadow:0 0 18px var(--violet-g);flex-shrink:0;}
.navbar-links{display:flex;align-items:center;gap:3px;}
.navbar-links a{color:var(--t2);text-decoration:none;padding:8px 15px;border-radius:var(--r-sm);font-size:.875rem;font-weight:500;transition:all .2s var(--ease);}
.navbar-links a:hover,.navbar-links a.active{color:var(--t1);background:var(--elevated);}
.btn-nav-cta{background:linear-gradient(135deg,var(--violet),#4338ca) !important;color:#fff !important;font-weight:600 !important;box-shadow:0 0 20px var(--violet-g),inset 0 1px 0 rgba(255,255,255,.15) !important;padding:9px 20px !important;border-radius:12px !important;margin-left:8px;}
.btn-nav-cta:hover{box-shadow:0 0 30px rgba(124,58,237,.55) !important;transform:translateY(-1px);}

/* HERO */
.hero{position:relative;z-index:1;padding:175px 24px 80px;text-align:center;max-width:900px;margin:0 auto;}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(124,58,237,.1);border:1px solid rgba(124,58,237,.22);padding:7px 20px;border-radius:var(--r-pill);font-size:.75rem;font-weight:600;color:#c4b5fd;margin-bottom:28px;letter-spacing:.5px;text-transform:uppercase;}
.hero-badge .pulse-dot{width:7px;height:7px;background:#10b981;border-radius:50%;box-shadow:0 0 8px #10b981;animation:pulseAnim 2s infinite;}
@keyframes pulseAnim{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}
.hero h1{font-family:'Syne',sans-serif;font-size:clamp(2.6rem,6.5vw,4.8rem);font-weight:800;line-height:1.1;letter-spacing:-2px;margin-bottom:22px;}
.hero h1 .grad{background:linear-gradient(135deg,#c4b5fd 0%,#67e8f9 50%,#fbbf24 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hero p{font-size:1.05rem;color:var(--t2);max-width:580px;margin:0 auto 42px;line-height:1.75;font-weight:300;}
.hero-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 30px;border-radius:var(--r-pill);font-family:'DM Sans',sans-serif;font-weight:600;font-size:.9rem;text-decoration:none;cursor:pointer;border:none;transition:all .28s var(--spring);position:relative;overflow:hidden;letter-spacing:.1px;}
.btn::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.14),transparent);opacity:0;transition:opacity .25s;}
.btn:hover::after{opacity:1;}
.btn-primary{background:linear-gradient(135deg,#7c3aed,#4338ca);color:#fff;box-shadow:0 4px 24px var(--violet-g),inset 0 1px 0 rgba(255,255,255,.18);}
.btn-primary:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 36px rgba(124,58,237,.5);}
.btn-outline{background:var(--elevated);color:var(--t1);border:1px solid var(--b2);backdrop-filter:var(--glass-s);}
.btn-outline:hover{background:var(--hover);border-color:rgba(255,255,255,.22);transform:translateY(-2px);}
.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 18px var(--emerald-g),inset 0 1px 0 rgba(255,255,255,.2);}
.btn-success:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 28px rgba(16,185,129,.45);}
.btn-danger{background:linear-gradient(135deg,#f43f5e,#e11d48);color:#fff;box-shadow:0 4px 18px var(--rose-g);}
.btn-danger:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(244,63,94,.4);}
.btn-amber{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 18px rgba(245,158,11,.3);}
.btn-amber:hover{transform:translateY(-2px);}
.btn-full{width:100%;justify-content:center;}
.btn-sm{padding:9px 18px;font-size:.82rem;border-radius:12px;}

/* STATS */
.stats-row{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;max-width:900px;margin:0 auto 70px;padding:0 24px;position:relative;z-index:1;}
.stat-card{background:var(--elevated);border:1px solid var(--b1);padding:26px 34px;border-radius:var(--r-lg);text-align:center;flex:1;min-width:190px;backdrop-filter:var(--glass-s);transition:all .3s var(--ease);position:relative;overflow:hidden;}
.stat-card::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:60%;height:1px;background:linear-gradient(90deg,transparent,var(--violet),transparent);}
.stat-card:hover{border-color:var(--ba);transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.4),0 0 20px var(--violet-g);}
.stat-card .num{font-family:'Syne',sans-serif;font-size:2.3rem;font-weight:800;background:linear-gradient(135deg,var(--violet-l),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:7px;}
.stat-card .label{color:var(--t2);font-size:.8rem;font-weight:500;letter-spacing:.3px;}

/* SECTION TITLE */
.section-title{font-family:'Syne',sans-serif;font-size:clamp(1.5rem,3vw,2.1rem);font-weight:800;text-align:center;letter-spacing:-.5px;margin-bottom:8px;position:relative;z-index:1;}
.section-sub{text-align:center;color:var(--t2);font-size:.88rem;margin-bottom:40px;position:relative;z-index:1;}

/* OFFERS GRID */
.offers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:22px;max-width:1280px;margin:0 auto;padding:0 24px 80px;position:relative;z-index:1;}
.offer-card{background:var(--elevated);border:1px solid var(--b1);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;transition:all .3s var(--ease);position:relative;overflow:hidden;}
.offer-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(124,58,237,.06),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none;}
.offer-card:hover{border-color:var(--ba);background:var(--hover);transform:translateY(-7px);box-shadow:0 24px 50px rgba(0,0,0,.5),0 0 28px var(--violet-g);}
.offer-card:hover::before{opacity:1;}
.offer-api-badge{position:absolute;top:14px;right:14px;background:rgba(0,0,0,.55);border:1px solid var(--b1);border-radius:7px;padding:2px 9px;font-size:.62rem;font-weight:600;color:var(--t3);letter-spacing:.5px;text-transform:uppercase;}
.offer-category{display:inline-flex;align-items:center;gap:5px;background:rgba(124,58,237,.12);border:1px solid rgba(124,58,237,.18);color:#c4b5fd;font-size:.68rem;font-weight:600;padding:4px 12px;border-radius:var(--r-pill);margin-bottom:13px;text-transform:uppercase;letter-spacing:.5px;}
.offer-title{font-family:'Syne',sans-serif;font-size:1.05rem;font-weight:700;color:var(--t1);margin-bottom:10px;line-height:1.35;padding-right:36px;}
.offer-desc{color:var(--t2);font-size:.83rem;line-height:1.55;margin-bottom:22px;font-weight:300;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.offer-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--b1);padding-top:16px;margin-top:auto;}
.offer-reward .amount{font-family:'Syne',sans-serif;font-size:1.65rem;font-weight:800;color:var(--emerald);letter-spacing:-1px;line-height:1;}
.offer-reward .reward-label{font-size:.68rem;color:var(--t3);font-weight:500;margin-top:3px;letter-spacing:.5px;text-transform:uppercase;}

/* SEARCH */
.search-wrap{max-width:520px;margin:0 auto 48px;padding:0 24px;position:relative;z-index:1;}
.search-input{width:100%;background:var(--elevated);border:1px solid var(--b2);border-radius:var(--r-pill);padding:14px 22px 14px 50px;color:var(--t1);font-family:'DM Sans',sans-serif;font-size:.93rem;outline:none;transition:all .25s;backdrop-filter:var(--glass-s);}
.search-input:focus{border-color:var(--ba);background:var(--hover);box-shadow:0 0 0 3px rgba(124,58,237,.14);}
.search-input::placeholder{color:var(--t3);}
.search-icon{position:absolute;left:40px;top:50%;transform:translateY(-50%);color:var(--t3);pointer-events:none;font-size:1rem;}

/* MODAL */
.modal-overlay{position:fixed;inset:0;background:rgba(2,2,14,.9);backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%);z-index:9999;display:none;align-items:center;justify-content:center;padding:20px;}
.modal-overlay.active{display:flex;}
.modal{background:linear-gradient(145deg,rgba(13,13,43,.99),rgba(7,7,24,.99));border:1px solid var(--ba);border-radius:var(--r-xl);padding:36px 30px;max-width:460px;width:100%;box-shadow:0 40px 80px rgba(0,0,0,.65),0 0 50px rgba(124,58,237,.12);animation:modalIn .35s var(--spring) forwards;position:relative;overflow:hidden;}
.modal::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:70%;height:1px;background:linear-gradient(90deg,transparent,rgba(167,139,250,.65),transparent);}
@keyframes modalIn{from{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:none}}
.modal-close{position:absolute;top:16px;right:16px;width:32px;height:32px;background:var(--hover);border:1px solid var(--b1);border-radius:9px;color:var(--t2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all .2s;font-family:inherit;}
.modal-close:hover{background:var(--active);color:var(--t1);}
.modal-title{font-family:'Syne',sans-serif;font-size:1.15rem;font-weight:700;margin-bottom:18px;padding-right:32px;line-height:1.3;}
.modal-offer-info{background:rgba(16,185,129,.07);border:1px solid rgba(16,185,129,.15);border-radius:var(--r-md);padding:16px 20px;margin-bottom:22px;display:flex;justify-content:space-between;align-items:center;gap:12px;}
.modal-offer-info .info-label{color:var(--t2);font-size:.8rem;font-weight:500;}
.modal-offer-info .info-sublabel{font-size:.68rem;color:var(--t3);text-transform:uppercase;letter-spacing:.5px;margin-top:3px;}
.modal-offer-info .info-amount{font-family:'Syne',sans-serif;font-size:1.9rem;font-weight:800;color:var(--emerald);letter-spacing:-1px;line-height:1;}

/* FORM */
.form-group{margin-bottom:16px;}
.form-group label{display:block;font-size:.76rem;font-weight:600;color:var(--t2);margin-bottom:7px;letter-spacing:.4px;text-transform:uppercase;}
.form-group input,.form-group select,.form-group textarea{width:100%;background:rgba(255,255,255,.04);border:1px solid var(--b2);border-radius:var(--r-sm);padding:12px 15px;color:var(--t1);font-family:'DM Sans',sans-serif;font-size:.92rem;outline:none;transition:all .22s;-webkit-appearance:none;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--ba);background:rgba(124,58,237,.05);box-shadow:0 0 0 3px rgba(124,58,237,.12);}
.form-group input::placeholder{color:var(--t3);}
.form-group select option{background:var(--surface);color:var(--t1);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}

/* TOAST */
.toast{position:fixed;bottom:28px;right:28px;z-index:100000;background:var(--surface);border:1px solid var(--b2);border-left:3px solid var(--emerald);color:var(--t1);padding:14px 20px;border-radius:var(--r-md);font-weight:500;font-size:.87rem;box-shadow:0 12px 40px rgba(0,0,0,.55);display:none;animation:toastIn .35s var(--spring);max-width:340px;backdrop-filter:var(--glass-s);}
.toast.error{border-left-color:var(--rose);}
.toast.warning{border-left-color:var(--amber);}
@keyframes toastIn{from{transform:translateX(120%);opacity:0}to{transform:none;opacity:1}}

/* STEPS */
.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;max-width:860px;margin:0 auto;padding:0 24px 80px;position:relative;z-index:1;}
.step-card{background:var(--elevated);border:1px solid var(--b1);border-radius:var(--r-lg);padding:30px 22px;text-align:center;transition:all .3s var(--ease);position:relative;overflow:hidden;}
.step-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--violet),var(--cyan));opacity:0;transition:opacity .3s;}
.step-card:hover{transform:translateY(-5px);border-color:var(--ba);}
.step-card:hover::before{opacity:1;}
.step-num{font-family:'Syne',sans-serif;font-size:2.4rem;font-weight:800;background:linear-gradient(135deg,var(--violet-l),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:12px;}
.step-icon{font-size:1.9rem;margin-bottom:12px;}
.step-title{font-family:'Syne',sans-serif;font-weight:700;font-size:.97rem;margin-bottom:9px;}
.step-desc{color:var(--t2);font-size:.83rem;line-height:1.6;font-weight:300;}

/* ADMIN */
.admin-layout{max-width:1320px;margin:0 auto;padding:30px 24px;position:relative;z-index:1;}
.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid var(--b1);}
.admin-header h1{font-family:'Syne',sans-serif;font-size:1.5rem;font-weight:800;letter-spacing:-.5px;}
.admin-card{background:var(--elevated);border:1px solid var(--b1);border-radius:var(--r-lg);padding:26px;margin-bottom:22px;backdrop-filter:var(--glass-s);}
.admin-card-title{font-family:'Syne',sans-serif;font-size:.95rem;font-weight:700;margin-bottom:20px;display:flex;align-items:center;gap:9px;padding-bottom:13px;border-bottom:1px solid var(--b1);}
.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:22px;}
.admin-stat{background:var(--elevated);border:1px solid var(--b1);border-radius:var(--r-md);padding:18px;text-align:center;}
.admin-stat .n{font-family:'Syne',sans-serif;font-size:1.7rem;font-weight:800;color:var(--violet-l);}
.admin-stat .l{font-size:.73rem;color:var(--t3);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;}

/* BADGE */
.badge{display:inline-block;padding:3px 10px;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;}
.badge-pending{background:rgba(245,158,11,.15);color:var(--amber);border:1px solid rgba(245,158,11,.25);}
.badge-completed{background:rgba(16,185,129,.15);color:var(--emerald);border:1px solid rgba(16,185,129,.25);}
.badge-rejected{background:rgba(244,63,94,.15);color:var(--rose);border:1px solid rgba(244,63,94,.25);}
.badge-active{background:rgba(6,182,212,.15);color:var(--cyan);border:1px solid rgba(6,182,212,.25);}

/* TABLE */
.data-table-wrap{overflow-x:auto;border-radius:var(--r-md);}
table{width:100%;border-collapse:collapse;font-size:.83rem;}
thead th{background:rgba(255,255,255,.02);color:var(--t3);font-weight:600;font-size:.73rem;text-transform:uppercase;letter-spacing:.8px;padding:12px 15px;text-align:left;border-bottom:1px solid var(--b1);white-space:nowrap;}
tbody td{padding:12px 15px;border-bottom:1px solid rgba(255,255,255,.025);vertical-align:middle;color:var(--t2);}
tbody tr:hover td{background:rgba(255,255,255,.02);color:var(--t1);}
tbody tr:last-child td{border-bottom:none;}
code{background:rgba(255,255,255,.07);border:1px solid var(--b1);padding:2px 8px;border-radius:6px;font-size:.78rem;color:var(--cyan);font-family:'Courier New',monospace;}

/* ALERT */
.alert{padding:13px 18px;border-radius:var(--r-md);font-size:.86rem;font-weight:500;margin-bottom:18px;display:flex;align-items:center;gap:9px;}
.alert-success{background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.2);color:#6ee7b7;}
.alert-error{background:rgba(244,63,94,.1);border:1px solid rgba(244,63,94,.2);color:#fda4af;}
.alert-info{background:rgba(6,182,212,.1);border:1px solid rgba(6,182,212,.2);color:#67e8f9;}

/* TABS */
.tab-nav{display:flex;gap:5px;margin-bottom:22px;border-bottom:1px solid var(--b1);padding-bottom:1px;overflow-x:auto;}
.tab-btn{padding:10px 20px;border:none;background:transparent;color:var(--t2);font-family:'DM Sans',sans-serif;font-size:.86rem;font-weight:500;cursor:pointer;border-radius:10px 10px 0 0;transition:all .2s;position:relative;white-space:nowrap;}
.tab-btn.active{color:var(--t1);background:var(--hover);}
.tab-btn.active::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--violet),var(--cyan));}
.tab-content{display:none;}
.tab-content.active{display:block;}

/* FOOTER */
.footer{background:rgba(2,2,14,.95);border-top:1px solid var(--b1);padding:48px 24px 28px;position:relative;z-index:1;}
.footer-inner{max-width:1280px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:18px;}
.footer-links{display:flex;gap:22px;flex-wrap:wrap;justify-content:center;}
.footer-links a{color:var(--t3);text-decoration:none;font-size:.83rem;transition:color .2s;}
.footer-links a:hover{color:var(--t1);}
.footer-copy{color:var(--t3);font-size:.78rem;text-align:center;}

/* MISC */
.spinner{width:20px;height:20px;border:2px solid var(--b2);border-top-color:var(--violet);border-radius:50%;animation:spin .7s linear infinite;display:inline-block;vertical-align:middle;}
@keyframes spin{to{transform:rotate(360deg)}}
.empty-state{grid-column:1/-1;text-align:center;padding:80px 20px;color:var(--t3);}
.empty-state .empty-icon{font-size:3rem;margin-bottom:16px;opacity:.5;}
.page-wrap{max-width:1280px;margin:0 auto;padding:0 24px;position:relative;z-index:1;}

/* RESPONSIVE */
@media(max-width:768px){
  .navbar-links{display:none;}
  .hero{padding:128px 16px 50px;}
  .hero h1{letter-spacing:-1px;}
  .offers-grid{padding:0 14px 60px;gap:14px;}
  .stats-row{gap:12px;}
  .stat-card{padding:18px;min-width:140px;}
  .admin-layout{padding:18px 14px;}
  .modal{padding:22px 18px;}
  .form-row{grid-template-columns:1fr;}
  .admin-stats-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:480px){
  .hero h1{font-size:2.2rem;}
  .offers-grid{grid-template-columns:1fr;}
  .hero-btns{flex-direction:column;align-items:center;}
  .stat-card{min-width:130px;}
}
