/* ============================================================
   assets/css/theme.css  — Shared cyberpunk dark theme
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Exo+2:wght@400;500;600;700;800;900&family=Orbitron:wght@400;700;900&family=Rajdhani:wght@400;500;600;700&display=swap');

:root {
  --bg:           #030509;
  --surface:      rgba(7,16,30,0.85);
  --surface2:     rgba(12,24,44,0.9);
  --border:       rgba(255,0,51,0.15);
  --border2:      rgba(0,68,255,0.15);
  --red:          #FF0033;
  --red-dim:      rgba(255,0,51,0.4);
  --blue:         #0044FF;
  --cyan:         #00e5ff;
  --green:        #00ff88;
  --yellow:       #FF8C00;
  --text:         #ffffff;
  --muted:        #7888a8;
  --radius:       16px;
  --nav-h:        70px;
  --bot-h:        70px;
}

*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{width:100%;max-width:100vw;overflow-x:hidden;background:var(--bg);color:var(--text);font-family:'Exo 2',sans-serif;min-height:100vh}
body{background-image:radial-gradient(circle at 15% 50%,rgba(0,68,255,0.05),transparent 25%),radial-gradient(circle at 85% 30%,rgba(255,0,51,0.05),transparent 25%)}

/* ── SCROLLBAR ─────────────────────── */
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}

/* ── GLASS ──────────────────────────── */
.glass{background:var(--surface);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid var(--border);border-radius:var(--radius)}

/* ── BUTTONS ────────────────────────── */
.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:0 20px;height:48px;border-radius:50px;font-family:'Rajdhani',sans-serif;font-weight:700;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;border:none;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none;white-space:nowrap}
.btn-primary{background:linear-gradient(135deg,#FF0033,#CC0028);color:#fff;box-shadow:0 6px 20px rgba(255,0,51,.4)}
.btn-primary:hover:not(:disabled){transform:translateY(-2px) scale(1.02);box-shadow:0 10px 30px rgba(255,0,51,.6)}
.btn-gradient{background:linear-gradient(90deg,var(--cyan),#FF0033);color:#fff;font-weight:800}
.btn-gradient:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px rgba(255,0,51,.5)}
.btn-blue{background:linear-gradient(135deg,var(--blue),#0073ff);color:#fff;box-shadow:0 6px 20px rgba(0,68,255,.4)}
.btn-outline{background:transparent;border:1px solid var(--border);color:var(--muted)}
.btn-outline:hover:not(:disabled){border-color:var(--red);color:var(--red);background:rgba(255,0,51,.05)}
.btn-danger{background:rgba(255,0,51,.1);border:1px solid rgba(255,0,51,.3);color:var(--red)}
.btn-danger:hover:not(:disabled){background:var(--red);color:#fff;box-shadow:0 0 20px rgba(255,0,51,.5)}
.btn-success{background:rgba(0,255,136,.1);border:1px solid rgba(0,255,136,.3);color:var(--green)}
.btn-sm{height:36px;padding:0 14px;font-size:11px;border-radius:12px}
.btn-block{width:100%}
.btn:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(1)}

/* ── INPUTS ─────────────────────────── */
.input-group{margin-bottom:16px}
.input-group label{display:block;margin-bottom:7px;font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.5px;text-transform:uppercase}
.input-group input,.input-group select,.input-group textarea{width:100%;padding:0 16px;height:50px;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.1);border-radius:14px;color:var(--text);font-size:14px;outline:none;transition:.3s;font-family:'Exo 2',sans-serif}
.input-group textarea{height:auto;padding:14px 16px;resize:vertical}
.input-group input:focus,.input-group select:focus,.input-group textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(255,0,51,.1),0 0 20px rgba(255,0,51,.1)}
.input-group select{appearance:none;cursor:pointer}
.input-icon{position:relative}
.input-icon i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:15px;pointer-events:none}
.input-icon input{padding-left:44px}

/* ── BADGES ─────────────────────────── */
.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.badge-pending{background:rgba(255,140,0,.15);color:var(--yellow);border:1px solid rgba(255,140,0,.3)}
.badge-approved,.badge-active{background:rgba(0,255,136,.15);color:var(--green);border:1px solid rgba(0,255,136,.3)}
.badge-rejected,.badge-danger{background:rgba(255,0,51,.15);color:var(--red);border:1px solid rgba(255,0,51,.3)}

/* ── TOAST ──────────────────────────── */
#toast-container{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);z-index:9999;display:flex;flex-direction:column;gap:8px;width:90%;max-width:380px;pointer-events:none}
.toast{padding:13px 18px;border-radius:14px;color:#fff;font-size:13px;font-weight:600;background:var(--surface2);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-left:4px solid var(--red);box-shadow:0 10px 30px rgba(0,0,0,.8);display:flex;align-items:center;gap:12px;animation:slideUp .3s cubic-bezier(.175,.885,.32,1.275) forwards;pointer-events:all}
.toast.success{border-left-color:var(--green)}
.toast.error{border-left-color:var(--red)}
@keyframes slideUp{from{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}

/* ── LOADER ─────────────────────────── */
#loader{position:fixed;inset:0;background:rgba(3,5,9,.95);z-index:9999;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;backdrop-filter:blur(10px)}
.spinner{width:48px;height:48px;border:4px solid rgba(255,0,51,.1);border-top-color:var(--red);border-radius:50%;animation:spin 1s linear infinite;box-shadow:0 0 20px var(--red-dim)}
@keyframes spin{100%{transform:rotate(360deg)}}

/* ── MODAL ──────────────────────────── */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(8px);z-index:2000;display:flex;justify-content:center;align-items:center;opacity:0;visibility:hidden;transition:.3s}
.modal-overlay.show{opacity:1;visibility:visible}
.modal-box{background:var(--surface2);border:1px solid var(--border);border-radius:20px;padding:30px;width:90%;max-width:440px;max-height:90vh;overflow-y:auto;transform:scale(.9);transition:.3s;box-shadow:0 20px 60px rgba(0,0,0,.9)}
.modal-overlay.show .modal-box{transform:scale(1)}
.modal-title{font-size:18px;font-weight:800;color:#fff;margin-bottom:20px;display:flex;align-items:center;gap:10px}

/* ── CARDS / STAT BOXES ─────────────── */
.stat-card{padding:20px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;gap:6px}
.stat-label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}
.stat-value{font-size:22px;font-weight:800;color:var(--green)}
.stat-value.red{color:var(--red)}
.stat-value.blue{color:var(--cyan)}
.stat-value.orange{color:var(--yellow)}

/* ── PAGE HEADER ────────────────────── */
.page-header{margin-bottom:24px}
.page-title{font-size:26px;font-weight:900;letter-spacing:2px;text-transform:uppercase}
.page-title span{color:var(--red)}

/* ── TOP NAV (user) ─────────────────── */
.top-nav{position:fixed;top:0;left:0;width:100%;height:var(--nav-h);z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:rgba(10,12,18,.9);backdrop-filter:blur(15px);border-bottom:1px solid rgba(255,255,255,.04);border-radius:0 0 18px 18px}
.nav-logo{display:flex;align-items:center;gap:10px;font-family:'Orbitron',sans-serif;font-weight:700;font-size:17px;color:#fff;text-decoration:none}
.nav-logo img{width:34px;height:34px;border-radius:8px;object-fit:cover}
.nav-right{display:flex;align-items:center;gap:10px}
.balance-pill{background:rgba(255,0,51,.1);border:1px solid rgba(255,0,51,.35);color:var(--red);padding:7px 15px;border-radius:30px;font-weight:800;font-size:13px;display:flex;align-items:center;gap:7px}
.topup-pill{background:linear-gradient(90deg,var(--cyan),#FF0033);color:#fff;border:none;padding:7px 16px;border-radius:30px;font-weight:800;font-size:12px;cursor:pointer;text-decoration:none}

/* ── BOTTOM NAV (user) ──────────────── */
.bottom-nav{position:fixed;bottom:0;left:0;width:100%;height:var(--bot-h);z-index:100;background:rgba(7,10,18,.95);border-top:1px solid rgba(255,255,255,.05);display:flex;backdrop-filter:blur(15px)}
.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;text-decoration:none;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.5px;transition:.3s;position:relative}
.nav-item i{font-size:20px;transition:.3s}
.nav-item.active,.nav-item:hover{color:#fff}
.nav-item.active::before{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:40px;height:3px;background:var(--red);border-radius:3px 3px 0 0}
.nav-item.active i{color:var(--red);filter:drop-shadow(0 0 6px var(--red))}
.nav-item.active .nav-label{color:#fff}

/* ── PAGE CONTENT wrapper ───────────── */
.page-wrap{padding:calc(var(--nav-h) + 18px) 16px calc(var(--bot-h) + 18px);max-width:640px;margin:0 auto;min-height:100vh}

/* ── EMPTY STATE ─────────────────────  */
.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 20px;gap:14px;text-align:center;color:var(--muted)}
.empty-state i{font-size:44px;opacity:.3}
.empty-state p{font-size:14px}

/* ── FILTER PILLS ────────────────────── */
.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.filter-pill{padding:8px 16px;border-radius:30px;font-size:12px;font-weight:700;border:1px solid rgba(255,255,255,.1);color:var(--muted);cursor:pointer;transition:.3s;background:transparent;letter-spacing:.5px;text-transform:uppercase}
.filter-pill.active,.filter-pill:hover{background:var(--surface2);border-color:var(--red);color:#fff}
.filter-pill.active{border-color:var(--red);color:var(--red)}

/* ── COUNTRY RADIO ───────────────────── */
.country-option{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.08);border-radius:14px;cursor:pointer;transition:.3s;margin-bottom:10px;background:rgba(0,0,0,.3)}
.country-option:hover,.country-option.selected{border-color:var(--red);background:rgba(255,0,51,.06)}
.country-option input[type=radio]{accent-color:var(--red);width:18px;height:18px}
.country-flag{font-size:22px}
.country-info{flex:1}
.country-name{font-weight:700;font-size:15px}
.country-cur{font-size:12px;color:var(--muted)}
.country-code{background:rgba(255,255,255,.07);padding:4px 10px;border-radius:8px;font-size:12px;font-weight:700}

/* ── PRODUCT CARD ────────────────────── */
.product-card{border-radius:20px;overflow:hidden;background:linear-gradient(145deg,rgba(20,24,34,.9),rgba(10,12,18,.95));border:1px solid var(--border);margin-bottom:20px;transition:all .4s}
.product-card:hover{border-color:rgba(0,68,255,.5);box-shadow:0 15px 40px rgba(255,0,51,.12)}
.video-wrap{position:relative;width:100%;padding-bottom:56.25%;background:#000;border-bottom:1px solid rgba(255,255,255,.05)}
.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:none}
.product-body{padding:20px}
.product-name{font-size:18px;font-weight:800;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}
.features-list{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}
.feature-chip{background:rgba(255,0,51,.06);border:1px solid rgba(255,0,51,.2);color:var(--red);padding:5px 10px;border-radius:8px;font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:5px;letter-spacing:.5px}
.feature-chip i{color:var(--yellow)}
.trust-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;background:rgba(0,0,0,.3);padding:10px;border-radius:12px;border:1px dashed rgba(255,255,255,.07)}
.trust-item{font-size:11px;color:var(--green);display:flex;align-items:center;gap:5px;font-weight:600}
.btn-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.btn-info{flex:1;min-width:110px;font-size:11px;padding:0 10px;height:38px;border-radius:10px;background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.1);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:600;cursor:pointer;transition:.3s;text-decoration:none}
.btn-info:hover{border-color:var(--red);color:#fff}

/* ── PLAN SECTION ────────────────────── */
.plan-block{border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:16px;margin-bottom:12px;background:rgba(0,0,0,.25)}
.plan-label{font-size:15px;font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:10px}
.plan-price{color:var(--green);font-size:18px;font-weight:800}
.stock-out{display:inline-block;background:rgba(255,0,51,.15);color:var(--red);border:1px solid rgba(255,0,51,.3);padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.qty-row{display:flex;align-items:center;gap:0;margin:10px 0;border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden}
.qty-btn{width:44px;height:44px;background:rgba(255,255,255,.05);border:none;color:#fff;font-size:18px;cursor:pointer;transition:.3s;flex-shrink:0}
.qty-btn:hover{background:rgba(255,0,51,.2);color:var(--red)}
.qty-input{flex:1;text-align:center;background:transparent;border:none;color:#fff;font-size:16px;font-weight:700;font-family:'Exo 2';padding:0;height:44px;outline:none}

/* ── HISTORY CARD ────────────────────── */
.hist-card{padding:18px;border-radius:16px;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--blue);margin-bottom:12px}
.hist-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px;flex-wrap:wrap;gap:8px}
.hist-name{font-size:16px;font-weight:700}
.hist-meta{font-size:11px;color:var(--muted);margin-top:3px}
.hist-price{font-size:16px;font-weight:800;color:var(--red)}
.key-box{background:rgba(0,0,0,.5);border:1px dashed var(--green);border-radius:10px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;word-break:break-all}
.key-text{font-family:monospace;font-size:14px;font-weight:700;color:var(--green);letter-spacing:1px}

/* ── PROFILE ─────────────────────────── */
.profile-header{text-align:center;padding:24px 0 14px}
.avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--red),var(--blue));display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:800;margin:0 auto 12px;border:3px solid rgba(255,0,51,.4);box-shadow:0 0 20px rgba(255,0,51,.3)}
.prof-name{font-size:20px;font-weight:800;letter-spacing:1px}
.prof-email{font-size:13px;color:var(--muted);margin-top:3px}
.balance-display{text-align:center;padding:14px;border-radius:14px;background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.06);margin:14px 0}
.balance-amount{font-size:28px;font-weight:900;color:var(--yellow)}
.balance-label{font-size:12px;color:var(--muted);margin-top:3px}
.menu-list{border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:var(--surface)}
.menu-item{display:flex;align-items:center;gap:14px;padding:16px 18px;cursor:pointer;text-decoration:none;color:var(--text);font-size:14px;font-weight:500;border-bottom:1px solid rgba(255,255,255,.04);transition:.3s}
.menu-item:last-child{border-bottom:none}
.menu-item:hover{background:rgba(255,0,51,.06);color:var(--red);padding-left:24px}
.menu-item .icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px}
.menu-item .chevron{margin-left:auto;color:var(--muted);font-size:14px}
.menu-item.red{color:var(--red)}
.sub-page{display:none}
.sub-page.active{display:block}

/* ── REFERRAL PAGE ───────────────────── */
.ref-bonus-card{text-align:center;padding:24px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);margin-bottom:16px}
.ref-amount{font-size:32px;font-weight:900;color:var(--green)}
.ref-label{font-size:12px;color:var(--muted);margin-top:4px;text-transform:uppercase;letter-spacing:.5px}
.how-box{background:rgba(0,0,0,.3);border:1px solid rgba(255,140,0,.2);border-radius:14px;padding:18px;margin-bottom:16px}
.how-step{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;font-size:13px;color:var(--muted)}
.how-step:last-child{margin-bottom:0}
.step-num{width:28px;height:28px;border-radius:50%;background:var(--yellow);color:#000;font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ref-link-box{display:flex;align-items:center;gap:10px}
.ref-link-input{flex:1;background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px 14px;color:var(--muted);font-size:12px;word-break:break-all}
.ref-code-box{font-family:monospace;font-size:22px;font-weight:900;color:#fff;background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px;text-align:center;letter-spacing:4px}
.ref-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}

/* ── DEPOSIT PAGE ────────────────────── */
.cur-balance-card{padding:20px;border-radius:var(--radius);background:linear-gradient(135deg,rgba(0,229,255,.06),rgba(255,0,51,.04));border:1px solid rgba(0,229,255,.15);margin-bottom:14px}
.cur-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.cur-amount{font-size:28px;font-weight:900;color:var(--cyan)}
.add-funds-card{padding:22px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}
.section-title{font-size:16px;font-weight:800;margin-bottom:16px;letter-spacing:.5px}

/* ── MISC ─────────────────────────────── */
.divider{height:1px;background:rgba(255,255,255,.05);margin:18px 0}
.text-muted{color:var(--muted);font-size:13px}
.text-green{color:var(--green)}
.text-red{color:var(--red)}
.text-yellow{color:var(--yellow)}
.mt-10{margin-top:10px}
.mt-16{margin-top:16px}
.mb-0{margin-bottom:0}
.hidden{display:none!important}
a{color:inherit;text-decoration:none}
