:root{
  /* base (overridden by theme classes) */
  --bg:#f7f9fc;
  --text:#0f172a;
  --muted:#475569;
  --card:#ffffff;
  --surface-elevated:#ffffff;
  --border:rgba(15,23,42,0.08);
  --border-strong:rgba(15,23,42,0.14);
  --brand-500:#4850ff;
  --brand-600:#3044f2;
  --brand-grad:linear-gradient(135deg,#6e5eff,#1bd2a2);
  --ink:#0f172a;
  --ring:rgba(72,80,255,0.25);
  --radius-pill:999px;
  --radius-xl:22px;
  --shadow-sm:0 10px 24px rgba(15,23,42,0.08);
  --shadow-md:0 18px 36px rgba(15,23,42,0.14);
  --shadow-lg:0 20px 40px rgba(15,23,42,0.16);
  --layout-max-width:1200px;
  --layout-max-width-wide:1200px;
  --layout-page-pad-x:18px;
  --layout-page-pad-bottom:40px;
  --layout-section-gap:32px;
  --layout-header-gap:16px;
  --layout-header-pad-y:12px;
  --layout-wrap-margin-top:28px;
  --layout-wrap-margin-bottom:32px;
  --layout-footer-margin:40px;
  --layout-footer-pad:28px 26px;
  --layout-footer-radius:20px;
  --layout-footer-gap:14px;
  --layout-cta-safe:96px;
  --layout-card-radius:16px;
  --layout-card-radius-lg:22px;
  --layout-card-pad:16px;
  --layout-card-block-pad-x:18px;
  --layout-card-block-pad-y:18px;
  --layout-card-block-pad-mobile:14px;
  --layout-grid-gap:14px;
  --r-xl:28px;
  --r-lg:20px;
  --green:#0ea67f;
  --red:#ef4444;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:20px;
}

/* Performance mode: disable decorative motion site-wide to reduce paint/reflow work. */
*, *::before, *::after{
  animation:none !important;
  transition:none !important;
  scroll-behavior:auto !important;
}

/* Theme: MetaMask (only) */
body.theme-metamask{
  --bg:linear-gradient(180deg,#fff3eb 0%,#ffe5d4 100%);
  --text:#190066;
  --muted:#5a1f8f;
  --card:#ffffff;
  --surface-elevated:#fffaf7;
  --border:rgba(25,0,102,0.12);
  --border-strong:rgba(25,0,102,0.2);
  --brand-500:#ff5c16;
  --brand-600:#661800;
  --brand-grad:linear-gradient(135deg,#ff5c16,#d075ff);
  --ring:rgba(255,92,22,0.28);
}
body.theme-metamask .topbar{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#ffb38f 0%,#ffe6d6 100%);
  border-bottom:1px solid rgba(25,0,102,0.18);
  box-shadow:0 24px 60px rgba(25,0,102,0.2);
}
body.theme-metamask .topbar::before{
  content:"";
  position:absolute;
  inset:-30px -30px auto -30px;
  height:90px;
  background:linear-gradient(90deg,#3b2c8a 0%,#3b2c8a 42%,rgba(59,44,138,0.65) 60%,rgba(59,44,138,0.3) 72%,rgba(59,44,138,0.12) 82%,transparent 90%);
  clip-path:polygon(0 0, 72% 0, 86% 100%, 0 100%);
  opacity:0.6;
  pointer-events:none;
}
body.theme-metamask .topbar::after{
  content:"";
  position:absolute;
  width:200px;
  height:200px;
  right:-80px;
  top:-120px;
  background:radial-gradient(circle at 35% 35%, rgba(255,92,22,0.35), rgba(208,117,255,0.2), transparent 70%);
  pointer-events:none;
}
body.theme-metamask .topbar > *{
  position:relative;
  z-index:1;
}
body.theme-metamask .brand img{filter:drop-shadow(0 6px 14px rgba(0,0,0,0.35));}
body.theme-metamask .site-nav a,
body.theme-metamask .nav-dropdown>button{
  color:#fff;
}
body.theme-metamask .site-nav a.active{
  color:#fff;
  background:rgba(255,92,22,0.22);
}
body.theme-metamask .site-nav a:hover,
body.theme-metamask .nav-dropdown>button:hover{
  background:rgba(255,255,255,0.08);
}
body.theme-metamask .nav-dropdown .nav-menu{
  background:#3b2c8a;
  border-color:rgba(255,255,255,0.15);
  box-shadow:0 20px 40px rgba(13,8,60,0.45);
}
body.theme-metamask .nav-dropdown .nav-menu a strong{color:#fff;}
body.theme-metamask .nav-dropdown .nav-menu a span{color:#ffd9c8;}
body.theme-metamask .nav-dropdown .nav-menu a:hover{
  border-color:rgba(255,92,22,0.5);
  background:rgba(255,92,22,0.15);
}

@keyframes mm-cardFloat{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-8px);}
}
@media (prefers-reduced-motion: reduce){
  body.theme-metamask :where(.card,.subscription-card,.profile-card,.support-card,.signal-card,.signal-section,.tour-card,.quality-card,.trust-card,.eco-card,.faq-item,.automation-card,.futures-card,.token-card,.status-card,.snippet-card,.embed-preview,.trade-chip,.pulse-tile,.market-pulse__list .pulse-tile,.latest-trades__list .trade-chip){
    animation:none;
  }
}
body.theme-metamask :where(.card,.subscription-card,.profile-card,.support-card,.signal-card,.signal-section,.tour-card,.quality-card,.trust-card,.eco-card,.faq-item,.automation-card,.futures-card,.token-card,.status-card,.snippet-card,.embed-preview,.trade-chip,.pulse-tile,.market-pulse__list .pulse-tile,.latest-trades__list .trade-chip){
  animation:mm-cardFloat 6.5s ease-in-out infinite;
}
body.theme-metamask :where(.card,.subscription-card,.profile-card,.support-card,.signal-card,.signal-section,.tour-card,.quality-card,.trust-card,.eco-card,.faq-item,.automation-card,.futures-card,.token-card,.status-card,.snippet-card,.embed-preview,.trade-chip,.pulse-tile,.market-pulse__list .pulse-tile,.latest-trades__list .trade-chip):nth-child(2n){
  animation-delay:0.4s;
}
body.theme-metamask :where(.card,.subscription-card,.profile-card,.support-card,.signal-card,.signal-section,.tour-card,.quality-card,.trust-card,.eco-card,.faq-item,.automation-card,.futures-card,.token-card,.status-card,.snippet-card,.embed-preview,.trade-chip,.pulse-tile,.market-pulse__list .pulse-tile,.latest-trades__list .trade-chip):nth-child(3n){
  animation-delay:0.8s;
}
body.theme-metamask :where(.card,.subscription-card,.profile-card,.support-card,.signal-card,.signal-section,.tour-card,.quality-card,.trust-card,.eco-card,.faq-item,.automation-card,.futures-card,.token-card,.status-card,.snippet-card,.embed-preview,.trade-chip,.pulse-tile,.market-pulse__list .pulse-tile,.latest-trades__list .trade-chip):nth-child(4n){
  animation-delay:1.2s;
}
body.theme-metamask .card{
  background:#fffaf7;
  border-color:rgba(25,0,102,0.12);
  box-shadow:0 18px 36px rgba(25,0,102,0.14);
}
body.theme-metamask .btn.ghost{
  color:#ffb38f;
  border-color:rgba(255,92,22,0.5);
}
body.theme-metamask.metamask-panels .metamask-panel{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  background:linear-gradient(180deg,#ffb38f 0%,#ffe6d6 100%);
  border:1px solid rgba(25,0,102,0.18);
  box-shadow:0 24px 60px rgba(25,0,102,0.2);
  color:#ffffff;
}
body.theme-metamask.metamask-panels .metamask-panel::before{
  content:"";
  position:absolute;
  inset:-40px -40px auto -40px;
  height:140px;
  background:linear-gradient(90deg,#3b2c8a 0%,#3b2c8a 42%,rgba(59,44,138,0.75) 60%,rgba(59,44,138,0.35) 72%,rgba(59,44,138,0.12) 82%,transparent 90%);
  clip-path:polygon(0 0, 72% 0, 86% 100%, 0 100%);
  opacity:0.85;
}
body.theme-metamask.metamask-panels .metamask-panel::after{
  content:"";
  position:absolute;
  width:240px;
  height:240px;
  right:-80px;
  bottom:-80px;
  background:radial-gradient(circle at 35% 35%, rgba(255,92,22,0.45), rgba(208,117,255,0.25), transparent 70%);
}
body.theme-metamask.metamask-panels .metamask-panel > *{
  position:relative;
  z-index:1;
}
body.theme-metamask.metamask-panels .metamask-panel h1,
body.theme-metamask.metamask-panels .metamask-panel h2,
body.theme-metamask.metamask-panels .metamask-panel h3,
body.theme-metamask.metamask-panels .metamask-panel .heading-with-icon,
body.theme-metamask.metamask-panels .metamask-panel .heading-with-icon .heading-icon svg{
  color:#ffffff;
  fill:#ffb38f;
  text-shadow:0 2px 6px rgba(25,0,102,0.35);
}
body.theme-metamask.metamask-panels .metamask-panel p,
body.theme-metamask.metamask-panels .metamask-panel .micro{
  color:#ffe6d6;
}
body.theme-metamask.metamask-panels .metamask-panel .card{
  background:#fffaf7;
  color:#190066;
  border-color:rgba(25,0,102,0.12);
  box-shadow:0 16px 30px rgba(25,0,102,0.14);
}
body.theme-metamask.metamask-panels .metamask-panel .card h3,
body.theme-metamask.metamask-panels .metamask-panel .card h2{
  color:#1b0b66;
  text-shadow:none;
}
body.theme-metamask.metamask-panels .metamask-panel .card p,
body.theme-metamask.metamask-panels .metamask-panel .card .micro{
  color:#3d065f;
}
body.theme-metamask .dashboard-tabs{
  background:rgba(31,19,110,0.9);
  border:1px solid rgba(255,255,255,0.12);
}
body.theme-metamask .dashboard-tabs .token-tab{
  background:#fffaf7;
  color:#1b0b66;
  border:1px solid rgba(25,0,102,0.16);
}
body.theme-metamask .dashboard-tabs .token-tab.active{
  background:linear-gradient(135deg,#ff5c16,#d075ff);
  color:#ffffff;
  border-color:transparent;
}
body.theme-metamask .dashboard-tabs .token-tab svg{
  fill:#ff5c16;
}

*{box-sizing:border-box}
html,body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:'Sora', 'Space Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
}
[data-auth="required"]{display:none;}
body.auth-user [data-auth="required"]{display:inline-block;}
body.auth-user [data-auth="required"][data-admin-only]{display:none;}
body.auth-admin [data-auth="required"][data-admin-only]{display:inline-block;}
.sticky-cta{
  position:fixed;
  right:clamp(12px,2vw,24px);
  bottom:clamp(12px,2vw,24px);
  background:var(--brand-grad);
  color:#fff;
  padding:12px 16px;
  border-radius:14px;
  box-shadow:0 18px 36px rgba(15,23,42,0.2);
  text-decoration:none;
  font-weight:700;
  z-index:9;
  max-width:min(260px,80vw);
  text-align:center;
}
.sticky-cta:hover{filter:brightness(1.05);}
.cta-prompt{
  position:fixed;
  right:16px;
  bottom:90px;
  max-width:320px;
  background:#fff;
  border:1px solid rgba(16,58,100,0.12);
  border-radius:16px;
  box-shadow:0 18px 36px rgba(15,23,42,0.2);
  padding:14px;
  z-index:9;
  display:none;
  flex-direction:column;
  gap:10px;
}
.cta-prompt h4{margin:0;font-size:16px;font-weight:800;color:#0f172a;}
.cta-prompt p{margin:0;font-size:13px;color:#4b5a72;line-height:1.5;}
.cta-prompt .cta-actions{display:flex;flex-wrap:wrap;gap:8px;}
.cta-prompt .cta-actions button{border:none;border-radius:10px;padding:8px 12px;font-weight:700;cursor:pointer;}
.cta-prompt .cta-actions .primary{background:var(--brand-grad);color:#fff;}
.cta-prompt .cta-actions .ghost{background:rgba(16,58,100,0.06);color:#0f172a;}
.cta-prompt .cta-close{border:none;background:transparent;color:#64748b;align-self:flex-end;cursor:pointer;}
.trust-strip{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(16,58,100,0.08);
  background:linear-gradient(135deg, rgba(110,94,255,0.08), rgba(27,210,162,0.10));
  box-shadow:0 14px 30px rgba(15,23,42,0.08);
}
.trust-pill{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,0.85);
  border:1px solid rgba(15,23,42,0.05);
  box-shadow:0 10px 20px rgba(15,23,42,0.06);
}
.trust-pill .icon{font-size:18px;}
.trust-pill strong{font-size:15px;}
.trust-pill .muted{font-size:12px;color:#5b6577;}
.trust-title{
  margin:0 0 10px;
  font-size:20px;
  font-weight:800;
  color:#0f172a;
}
.wrap{
  max-width:var(--layout-max-width);
  margin:var(--layout-wrap-margin-top) auto var(--layout-wrap-margin-bottom);
  padding:0 var(--layout-page-pad-x);
  display:flex;
  flex-direction:column;
  gap:var(--layout-section-gap);
}
.wrap.wide,
.page-shell.wide,
.dashboard-wrap.wide{max-width:var(--layout-max-width-wide);}
.dashboard-wrap{
  max-width:var(--layout-max-width);
  margin:var(--layout-wrap-margin-top) auto var(--layout-wrap-margin-bottom);
  padding:0 var(--layout-page-pad-x);
  display:flex;
  flex-direction:column;
  gap:var(--layout-section-gap);
}
.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--layout-card-radius-lg);
  box-shadow:var(--shadow-md);
}

/* ───── Topbar ───── */
.topbar{
  position:sticky;top:0;z-index:10;background:rgba(255,255,255,0.92);
  border-bottom:1px solid rgba(15,23,42,0.08);box-shadow:0 16px 30px rgba(15,23,42,0.08);
  backdrop-filter:blur(8px);
}
.topbar-in{
  max-width:var(--layout-max-width-wide);
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:var(--layout-header-gap);
  padding:12px var(--layout-page-pad-x);
  flex-wrap:wrap;
  justify-content:space-between;
  row-gap:8px;
}
.brand{display:flex;align-items:center;gap:16px;}
.brand img{height:50px;transition:transform .2s ease;}
.brand img:hover{transform:scale(1.03);}
.site-nav{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:14px;
  font-weight:600;
  flex-wrap:wrap;
  flex:1 1 auto;
  min-width:0;
}
.site-nav a{
  padding:8px 12px;border-radius:999px;text-decoration:none;color:#10243c;
  transition:background .18s ease,color .18s ease;
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.site-nav a[data-icon]::before{
  content:attr(data-icon);
  font-size:14px;
}
.site-nav a.active{color:#4850ff;background:rgba(110,94,255,0.15);}
.site-nav a:hover{background:rgba(15,23,42,0.05);}
.nav-dropdown{position:relative;}
.nav-dropdown>button{
  background:transparent;border:none;font-weight:600;font-size:14px;
  color:#10243c;display:flex;align-items:center;gap:6px;cursor:pointer;
  padding:8px;border-radius:8px;
}
.nav-dropdown>button::after{content:'▾';font-size:10px;}
.nav-dropdown .nav-menu{
  position:absolute;top:110%;left:0;min-width:260px;background:#fff;
  border:1px solid rgba(15,23,42,0.12);border-radius:14px;box-shadow:0 20px 40px rgba(15,23,42,0.18);
  padding:12px;display:none;flex-direction:column;gap:8px;
}
.nav-dropdown.open .nav-menu{display:flex;}
.nav-dropdown .nav-menu a{
  display:block;padding:10px;border-radius:12px;border:1px solid transparent;
}
.nav-dropdown .nav-menu a strong{display:block;font-size:14px;color:#0f172a;}
.nav-dropdown .nav-menu a span{display:block;font-size:12px;color:#5b6577;}
.nav-dropdown .nav-menu a strong{
  display:flex;
  align-items:center;
  gap:6px;
}
.nav-dropdown .nav-menu a strong[data-icon]::before{
  content:attr(data-icon);
  font-size:14px;
}
.nav-dropdown .nav-menu a:hover{
  border-color:rgba(72,80,255,0.25);
  background:rgba(72,80,255,0.08);
}
.topbar-actions{margin-left:auto;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;}
.topbar-meta .topbar-actions{margin-left:0;}
.topbar-meta{
  margin-left:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  justify-content:center;
  min-width:0;
  flex:0 0 auto;
}
.btn.small{padding:8px 16px;border-radius:999px;font-size:13px;}
.btn.primary{background:var(--brand-grad);color:#fff;}
.btn.secondary{background:var(--card);border:1px solid var(--border);color:var(--ink);}
.btn.ghost{background:transparent;border:1px solid var(--border);color:var(--ink);}
.btn.primary.connect-wallet-btn{
  background:linear-gradient(135deg,#ffb383,#ff7a45);
  color:#1c1f5a;
  gap:8px;
  text-transform:none;
  letter-spacing:0;
  box-shadow:0 10px 24px rgba(255,122,69,0.24);
  white-space:nowrap;
}
.btn.primary.connect-wallet-btn::before{display:none;}
.btn.primary.connect-wallet-btn:hover{
  filter:brightness(1.03);
  box-shadow:0 12px 24px rgba(255,122,69,0.28);
}
.btn.primary.connect-wallet-btn .connect-wallet-icon{
  width:20px;height:20px;border-radius:999px;background:#fff;
  display:inline-flex;align-items:center;justify-content:center;
  box-shadow:0 6px 12px rgba(0,0,0,0.12);
}
.btn.primary.connect-wallet-btn .connect-wallet-icon svg{
  width:12px;height:12px;fill:#ff7a45;
}
.connect-wallet-btn.connected{
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  box-shadow:0 8px 18px rgba(255,122,69,0.18);
}
.connect-wallet-btn.connected .connect-wallet-icon{display:none;}
.connect-wallet-btn.connected #walletConnectLabel{
  font-weight:700;
  font-size:12px;
  width:auto;
  text-align:left;
}
.connect-wallet-btn.connected .wallet-connected-address{
  margin-left:0;
  padding:2px 6px;
  border-radius:999px;
  background:rgba(255,255,255,0.65);
  color:#1f2a44;
  font-size:11px;
  font-weight:600;
  border:1px solid rgba(15,23,42,0.08);
}
.connect-wallet-btn.connected .wallet-connected-chain{
  margin-left:4px;
  display:inline-flex;
  width:auto;
  height:auto;
  padding:2px 6px;
  font-size:10px;
  font-weight:700;
  border-radius:999px;
}
.btn.primary.connect-wallet-btn .wallet-connected-address{
  max-width:66px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  display:inline-block;
}

/* ───── Wallet modal ───── */
.wallet-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(15,23,42,0.55);backdrop-filter:blur(3px);z-index:1000}
.wallet-modal.active{display:flex}
.wallet-dialog{width:min(380px,92vw);background:#fff;border-radius:18px;padding:18px 18px 16px;box-shadow:0 24px 60px rgba(15,23,42,0.25)}
.wallet-dialog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.wallet-dialog-header h4{margin:0;font-size:16px;font-weight:800;color:#102a43}
.wallet-dialog-close{border:none;background:#eef2f7;color:#102a43;width:28px;height:28px;border-radius:999px;cursor:pointer;font-weight:700}
.wallet-list{display:flex;flex-direction:column;gap:8px}
.wallet-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid rgba(16,58,100,0.14);background:#f8fafc;cursor:pointer}
.wallet-item:hover{border-color:rgba(110,94,255,0.45);background:#fff}
.wallet-icon{width:28px;height:28px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:11px}
.wallet-icon svg{width:18px;height:18px;fill:#fff;display:block}
.wallet-icon.metamask{background:linear-gradient(135deg,#ff7a45,#f97316)}
.wallet-icon.trust{background:linear-gradient(135deg,#2f80ed,#56ccf2)}
.wallet-icon.binance{background:linear-gradient(135deg,#f59e0b,#f97316)}
.wallet-icon.other{background:linear-gradient(135deg,#6366f1,#8b5cf6)}
.wallet-tag{margin-left:auto;font-size:10px;padding:2px 8px;border-radius:999px;background:#e8f5e9;color:#0f8a5f;font-weight:700}
.wallet-modal-note{margin-top:10px;font-size:12px;color:#6b7280}
.wallet-modal-note.error{color:#d73d4a}
.wallet-modal-instructions{margin-top:10px;font-size:12px;color:#0f172a}
.wallet-modal-qr{margin-top:12px;border:1px dashed #d1d5db;border-radius:14px;padding:12px;text-align:center;background:#f8fafc}
.wallet-qr-placeholder{font-size:12px;color:#475569}
.wallet-modal-qr img{max-width:220px;width:100%;height:auto;border-radius:12px;background:#fff;padding:6px}
.wallet-modal-status{margin-top:10px;font-size:12px;color:#0f172a;display:flex;align-items:center;justify-content:space-between;gap:10px}
.wallet-modal-status .status-text{font-weight:600}
.wallet-modal-status .status-actions{display:flex;gap:8px;align-items:center}
.wallet-modal-status button{border:none;background:#fee2e2;color:#b91c1c;padding:6px 10px;border-radius:999px;font-size:12px;cursor:pointer}
.wallet-modal-status button:hover{background:#fecaca}
.wallet-modal-status .copy-btn{background:#e0f2fe;color:#0369a1}
.wallet-modal-status .copy-btn:hover{background:#bae6fd}
.wallet-modal-status .switch-btn{background:#ede9fe;color:#5b21b6}
.wallet-modal-status .switch-btn:hover{background:#ddd6fe}
.wallet-connected-dot{width:8px;height:8px;border-radius:50%;background:#16a34a;display:none;margin-right:6px}
.connect-wallet-btn.connected{
  opacity:.9;
  background:linear-gradient(135deg,#ffe6d6,#ffb383);
  color:#1c1f5a;
}
.connect-wallet-btn.connected .wallet-connected-dot{display:inline-block}
.wallet-connected-chain{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;width:18px;height:18px;border-radius:50%;background:#e2e8f0;color:#0f172a;font-size:10px;display:none}
.connect-wallet-btn.connected .wallet-connected-chain{display:inline-flex}
.wallet-connected-chain.chain-bsc{background:#fef3c7;color:#92400e}
.wallet-connected-chain.chain-eth{background:#e0e7ff;color:#3730a3}
.wallet-connected-chain.chain-polygon{background:#f3e8ff;color:#6b21a8}
.wallet-connected-chain.chain-arb{background:#e0f2fe;color:#0369a1}
.wallet-connected-chain.chain-op{background:#fee2e2;color:#b91c1c}
.wallet-connected-chain.chain-base{background:#e0e7ff;color:#1e3a8a}
.wallet-connected-chain.chain-avax{background:#fee2e2;color:#991b1b}
.wallet-connected-address{margin-left:8px;font-size:11px;color:#0f172a;background:#e2e8f0;padding:2px 6px;border-radius:999px}
.wallet-modal-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.wallet-modal-actions a,.wallet-modal-actions button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;font-size:12px;border-radius:999px;border:1px solid #e2e8f0;color:#0f172a;background:#f8fafc;text-decoration:none;cursor:pointer}
.wallet-modal-actions a:hover,.wallet-modal-actions button:hover{background:#eef2ff;border-color:#c7d2fe}
.wallet-modal-actions button{font-family:inherit}

/* Mobile nav */
@media (max-width:900px){
.topbar-in{flex-wrap:wrap;}
  .brand{flex:1 1 100%;justify-content:center;}
  .site-nav{width:100%;justify-content:center;}
  .topbar-meta{width:100%;align-items:center;gap:8px;justify-content:center;flex-wrap:wrap;}
  .topbar-actions{justify-content:center;flex-wrap:wrap;}
}

@media (min-width:901px){
  .topbar-actions{flex-direction:row;align-items:center;}
  .btn.primary.connect-wallet-btn{min-width:0;justify-content:center;}
}

@media (max-width:600px){
  .brand img{height:48px;}
  .site-nav a{font-size:12px;padding:6px 8px;}
  .nav-dropdown>button{font-size:12px;}
}

/* Shared page shell */
.page-shell{
  max-width:var(--layout-max-width);
  margin:var(--layout-wrap-margin-top) auto var(--layout-wrap-margin-bottom);
  padding:0 var(--layout-page-pad-x) calc(var(--layout-page-pad-bottom) + var(--layout-cta-safe));
  display:flex;
  flex-direction:column;
  gap:var(--layout-section-gap);
}
.page-shell.wide{
  max-width:var(--layout-max-width-wide);
}
.page-shell.tight-spacing{
  max-width:var(--layout-max-width);
  padding:0 var(--layout-page-pad-x) calc(var(--layout-page-pad-bottom) + var(--layout-cta-safe));
  gap:var(--layout-section-gap);
}

/* ───── Footer ───── */
.footer-grid{
  max-width:var(--layout-max-width);
  margin:var(--layout-footer-margin) auto;
  padding:var(--layout-footer-pad);
  border-radius:var(--layout-footer-radius);
  background:linear-gradient(135deg,#2b225e 0%,#3a2a74 45%,#5a2f86 100%);
  border:1px solid rgba(255,255,255,0.12);
  box-shadow:0 24px 60px rgba(22,12,60,0.35);
  position:relative;
  overflow:hidden;
  color:#f5f2ff;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:var(--layout-footer-gap);
}
.footer-grid::before{
  content:"";
  position:absolute;
  inset:-60px -40px auto -40px;
  height:180px;
  background:linear-gradient(110deg,rgba(255,255,255,0.12) 0%,rgba(255,255,255,0.02) 55%,transparent 80%);
  clip-path:polygon(0 0, 68% 0, 84% 100%, 0 100%);
}
.footer-grid::after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-90px;
  bottom:-90px;
  background:radial-gradient(circle at 35% 35%, rgba(255,169,106,0.35), rgba(149,106,255,0.25), transparent 70%);
}
.footer-grid > *{
  position:relative;
  z-index:1;
}
.footer-grid h4{
  margin:0 0 10px;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:#ffffff;
}
.footer-grid ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:8px;
  font-size:13px;
}
.footer-grid a{
  color:#efe3ff;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:8px;
  transition:color .2s ease, transform .2s ease;
}
.footer-grid a:hover{
  color:#ffffff;
  text-decoration:none;
  transform:translateX(2px);
}
.footer-grid a[data-icon]::before{
  content:attr(data-icon);
  font-size:13px;
}
.footer-grid .badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(255,255,255,0.16);
  font-size:12px;
  font-weight:600;
}
@media (max-width:640px){
  .footer-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* ───── Streams modal ───── */
body.modal-open{overflow:hidden;}
.streams-modal{
  position:fixed;
  inset:0;
  background:rgba(15,23,42,0.65);
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  z-index:20;
}
.streams-modal.open{display:flex;}
.streams-modal__dialog{
  background:#0f1b33;
  color:#f8fbff;
  border-radius:20px;
  max-width:520px;
  width:100%;
  box-shadow:0 40px 90px rgba(0,0,0,0.45);
  padding:26px;
  position:relative;
}
.streams-modal__dialog h2{margin:0;font-size:24px;font-weight:800;}
.streams-modal__dialog p{font-size:14px;line-height:1.6;color:#e3e8ff;}
.streams-modal__dialog ol{margin:14px 0 0;padding-left:20px;font-size:13px;color:#cbd5ff;line-height:1.6;}
.streams-modal__close{
  position:absolute;
  top:12px;
  right:12px;
  background:transparent;
  border:none;
  color:#fff;
  font-size:22px;
  cursor:pointer;
}
.streams-modal__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.streams-modal__actions .btn{background:#fff;color:#1c1f5a;font-weight:700;}
.streams-modal__actions .btn.ghost{background:transparent;border:1px solid rgba(255,255,255,0.5);color:#fff;}
.streams-modal__stream{margin-top:18px;}

/* ───── Discord stream feed ───── */
.streams-feed{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:18px;
}
.streams-feed[data-scroll="true"]{
  max-height:320px;
  overflow-y:auto;
  padding-right:6px;
}
.streams-feed[data-scroll="true"]::-webkit-scrollbar{width:6px;}
.streams-feed[data-scroll="true"]::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,0.3);
  border-radius:999px;
}
.streams-feed[data-scroll="true"][data-theme="light"]::-webkit-scrollbar-thumb{
  background:rgba(16,58,100,0.25);
}
.streams-feed__status{
  font-size:13px;
  color:rgba(248,251,255,0.78);
  padding:12px 14px;
  border-radius:12px;
  border:1px dashed rgba(255,255,255,0.35);
  text-align:center;
}
.streams-feed__status a{color:#fff;font-weight:600;}
.streams-feed__item{
  background:rgba(5,8,25,0.65);
  border:1px solid rgba(255,255,255,0.18);
  border-radius:14px;
  padding:12px 14px;
  display:flex;
  flex-direction:column;
  gap:10px;
  color:#f8fbff;
  box-shadow:0 18px 28px rgba(0,0,0,0.25);
}
.streams-feed__meta{
  display:flex;
  justify-content:space-between;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(248,251,255,0.65);
}
.streams-feed__headline{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:15px;
  font-weight:700;
}
.streams-feed__side{
  padding:2px 8px;
  border-radius:999px;
  font-size:11px;
  letter-spacing:.08em;
}
.streams-feed__side.buy{background:rgba(71,248,189,0.18);color:#47f8bd;}
.streams-feed__side.sell{background:rgba(255,138,151,0.2);color:#ff8a97;}
.streams-feed__status-pill{
  padding:2px 8px;
  border-radius:999px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  background:rgba(255,255,255,0.12);
  color:#f8fbff;
}
.streams-feed__status-pill.status-active{background:rgba(71,248,189,0.2);color:#47f8bd;}
.streams-feed__status-pill.status-expired{background:rgba(255,138,151,0.2);color:#ff8a97;}
.streams-feed__body{font-size:13px;line-height:1.5;color:rgba(248,251,255,0.9);}
.streams-feed__stats{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  font-size:12px;
  color:rgba(248,251,255,0.8);
}
.streams-feed__stats span{display:inline-flex;align-items:center;gap:6px;}
.streams-feed__stats strong{font-size:13px;color:#fff;}
.streams-feed[data-theme="light"] .streams-feed__item{
  background:#fff;
  border:1px solid rgba(16,58,100,0.12);
  color:#0f172a;
  box-shadow:0 18px 30px rgba(16,58,100,0.08);
}
.streams-feed[data-theme="light"] .streams-feed__meta{color:#5b6577;}
.streams-feed[data-theme="light"] .streams-feed__status{color:#334155;border-color:rgba(16,58,100,0.2);}
.streams-feed[data-theme="light"] .streams-feed__status a{color:#4850ff;}
.streams-feed[data-theme="light"] .streams-feed__status-pill{background:rgba(16,58,100,0.08);color:#0f172a;}
.streams-feed[data-theme="light"] .streams-feed__stats{color:#475569;}
.streams-feed[data-theme="light"] .streams-feed__side.buy{background:rgba(71,248,189,0.15);color:#0f9d7f;}
.streams-feed[data-theme="light"] .streams-feed__side.sell{background:rgba(255,138,151,0.15);color:#d83c50;}


/* ───── Cards & layout ───── */
.card{
  position:relative;
  background:var(--card);
  border-radius:var(--layout-card-radius);
  border:1px solid rgba(15,23,42,0.08);
  box-shadow:0 20px 40px rgba(15,23,42,0.08);
  transition:box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
.card:hover{box-shadow:0 26px 45px rgba(15,23,42,0.12);transform:translateY(-2px);}
.card:focus-within{box-shadow:0 26px 45px rgba(15,23,42,0.12);outline:none;}
.pad{padding:var(--layout-card-pad)}
.grid{display:grid;gap:var(--layout-grid-gap)}

.grid.kpi{grid-template-columns:repeat(4,1fr)}
@media (max-width:960px){.grid.kpi{grid-template-columns:repeat(2,1fr)}}

.h-title{font-weight:800; position:relative;}
/* gradient underline for section titles */
.h-title::after{
  content:""; position:absolute; left:0; bottom:-8px; height:2px; width:60px;
  background:var(--brand-grad); border-radius:2px; opacity:.6;
}

.small{font-size:12px;color:#5b6577}

/* KPI cards: subtle rainbow accent ring */
.grid.kpi > .card{
  border:1px solid transparent;
  background:
    linear-gradient(var(--card),var(--card)) padding-box,
    var(--brand-grad) border-box;
}

/* Extend the same accent to other big sections:
   - the two chart cards (Account page)
   - the full-span Daily PnL card */
.grid.two .card,
.card.full-span{
  border:1px solid transparent;
  background:
    linear-gradient(var(--card),var(--card)) padding-box,
    var(--brand-grad) border-box;
}

/* Metric cards */
.metric-card-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:var(--space-4);
}
.metric-card{
  position:relative;
  padding:var(--space-5);
  border-radius:var(--radius-xl);
  border:1px solid transparent;
  background:
    linear-gradient(var(--card),var(--card)) padding-box,
    var(--brand-grad) border-box;
  box-shadow:0 18px 36px rgba(15,23,42,0.12);
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  overflow:hidden;
  isolation:isolate;
}
.metric-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,0.35),rgba(255,255,255,0));
  opacity:0.5;
  pointer-events:none;
  z-index:-1;
}
.metric-card .label{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:700;
  color:#1f2a44;
}
.metric-card .value{
  font-size:clamp(1.8rem,2vw,2.4rem);
  font-weight:800;
  color:#090f1f;
}
.metric-card .sub{
  font-size:13px;
  color:var(--muted);
}

/* ───── Buttons ───── */
.btn{
  display:inline-flex;align-items:center;padding:10px 16px;border-radius:10px;
  cursor:pointer;font-size:14px;font-weight:700;text-decoration:none;
  position:relative;isolation:isolate;border:0;color:#fff;
  box-shadow:var(--shadow-sm);
}
.btn::before{
  content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;
  background:var(--brand-grad)
}
.btn:hover{ filter:saturate(1.05); box-shadow:var(--shadow-md); }
.btn:focus-visible{ box-shadow:var(--shadow-md), var(--ring); }
.btn.light{ background:#fff;color:var(--ink); border:1px solid var(--border-strong) }
.btn.light::before{ display:none }
.btn.ghost{
  background:transparent;
  color:#4850ff;
  border:1px solid rgba(72,80,255,0.35);
}
.delivery-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:14px;
}

/* links + focus globally */
a{ color:var(--brand-500) }
a:hover{ text-decoration:underline }
:focus-visible{ outline:2px solid var(--brand-600); outline-offset:2px }
ul{margin:10px 0 0 18px;padding:0}

/* Utilities */
.is-hidden{display:none;}
.mt-6{margin-top:6px;}
.mt-8{margin-top:8px;}
.mt-10{margin-top:10px;}
.mt-12{margin-top:12px;}
.mt-24{margin-top:24px;}
.p-0{padding:0;}
.card-plain{border:none;box-shadow:none;padding:0;background:transparent;}
.overflow-x-auto{overflow-x:auto;}
.text-center{text-align:center;}
.inline-icon{display:inline-flex;align-items:center;gap:6px;}
.table-empty{text-align:center;padding:24px;}
.tip-strong{font-weight:700;}
.note-positive{color:#10b981;}
.note-negative{color:#ef4444;}


/* ───── Footer ───── */
.footer{
  margin:32px 0 24px;
  text-align:center;
  color:var(--muted);
  font-size:12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
}
.footer .footer-meta{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:6px;
}

/* ───── KPIs text ───── */
.kpi .label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.kpi .val{margin-top:6px;font-size:22px;font-weight:700}
.kpi .sub{margin-top:4px;color:var(--muted);font-size:12px}

/* ───── Tables ───── */
.table{width:100%;border-collapse:collapse;font-size:14px}
.table th,.table td{padding:12px}
.table thead th{
  color:var(--muted);text-align:left;border-bottom:1px solid var(--border-strong);
  font-weight:600;position:sticky;top:0;background:#fafafa;z-index:1
}
.table tbody tr{border-bottom:1px solid var(--border)}
.table .num{text-align:right}
.pnl{font-weight:700}
.green{color:var(--green)} .red{color:var(--red)}
.scrolly{max-height:420px;overflow-y:auto}

/* ───── Charts ───── */
.canvas-wrap{
  position:relative;width:100%;height:280px;border-radius:10px;
  /* give each canvas a framed surface + accent border */
  border:1px solid transparent;
  background:
    linear-gradient(#fff,#fff) padding-box,
    var(--brand-grad) border-box;
}
.canvas-wrap.mini{height:220px}
canvas{width:100%;height:280px}
.canvas-wrap.mini canvas{height:220px}
.tooltip{
  position:absolute;pointer-events:none;background:#1e2329;color:#fff;border-radius:8px;
  padding:8px 10px;font-size:12px;box-shadow:0 4px 14px rgba(0,0,0,.15);display:none
}

.trade-card-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:var(--space-4);
}
.trade-card{
  border-radius:var(--radius-xl);
  padding:var(--space-5);
  border:1px solid transparent;
  background:
    linear-gradient(var(--card),var(--card)) padding-box,
    var(--brand-grad) border-box;
  box-shadow:0 20px 45px rgba(15,23,42,0.12);
  display:flex;
  flex-direction:column;
  gap:var(--space-3);
}
.trade-card header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#1f2a44;
}
.trade-card .trade-direction{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 12px;
  border-radius:var(--radius-pill);
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
}
.trade-card .trade-direction.buy{
  background:rgba(27,210,162,0.15);
  color:#0f5132;
}
.trade-card .trade-direction.sell{
  background:rgba(255,106,106,0.18);
  color:#7c1624;
}
.trade-card .trade-volume{
  font-size:clamp(1.6rem,2vw,2.2rem);
  font-weight:800;
  color:#0f172a;
}
.trade-card .trade-meta{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-2);
  font-size:12px;
  color:var(--muted);
}
.trade-card .trade-actions{
  margin-top:auto;
  display:flex;
  gap:var(--space-3);
  flex-wrap:wrap;
}
.btn.gradient{
  background:linear-gradient(135deg,#6e5eff,#1bd2a2);
  color:#fff;
  border:none;
}
.btn.gradient::before{display:none;}

/* ───── Token overview blocks ───── */
.overview-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:12px;
}
.metrics-strip{margin-top:20px;}
.metrics-title{font-weight:700;margin-bottom:12px;}
.metrics-title .muted{color:var(--muted);font-weight:600;margin-left:6px;font-size:12px;text-transform:none;}
.metrics-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:var(--space-3);
}
.metrics-grid .metric-card{
  border-radius:var(--radius-xl);
  padding:var(--space-5);
  border:1px solid transparent;
  background:
    linear-gradient(var(--card),var(--card)) padding-box,
    var(--brand-grad) border-box;
  box-shadow:0 18px 36px rgba(15,23,42,0.12);
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  min-height:110px;
}
.metrics-grid .metric-label{
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted);
  font-weight:700;
}
.metrics-grid .metric-value{
  font-size:clamp(1.6rem,2vw,2.2rem);
  font-weight:700;
  color:var(--ink);
  font-variant-numeric:tabular-nums;
}
.metrics-grid .metric-sub{
  font-size:13px;
  color:var(--muted);
}
.muted{color:var(--muted);}
.digest-card .h-title{margin-bottom:6px;}
.digest-items{
  margin-top:14px;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
}
.digest-item{
  position:relative;
  border-radius:var(--radius-xl);
  padding:var(--space-5);
  border:1px solid transparent;
  background:
    linear-gradient(var(--card),var(--card)) padding-box,
    var(--brand-grad) border-box;
  box-shadow:0 18px 36px rgba(15,23,42,0.12);
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  min-height:140px;
}
.digest-item::before{
  content:"";
  position:absolute;
  width:12px;
  height:6px;
  border-left:2px solid #0ECB81;
  border-bottom:2px solid #0ECB81;
  transform:rotate(-45deg);
  top:18px;
  left:16px;
}
.digest-item .label{
  padding-left:22px;
  font-weight:700;
  color:#102a43;
}
.digest-item .time{
  font-size:12px;
  font-weight:600;
  color:#1e6091;
  padding-left:22px;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.digest-item p{
  margin:0;
  padding-left:22px;
  color:#3e4655;
  font-size:13px;
  line-height:1.5;
}
.digest-item.done{
  background:linear-gradient(var(--card),var(--card)) padding-box,
    linear-gradient(135deg,rgba(14,203,129,0.25),rgba(50,173,230,0.2)) border-box;
  border:1px solid transparent;
}
.digest-item.upcoming::before{
  border-color:#F0B90B;
}
.digest-item.upcoming .time{
  color:#C27C00;
}
.faq-list{
  margin-top:16px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.faq{
  border:1px solid var(--border-strong);
  border-radius:12px;
  background:var(--card);
  box-shadow:var(--shadow-sm);
  padding:0;
  overflow:hidden;
}
.faq summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  font-weight:700;
  font-size:14px;
  padding:16px 18px;
  color:#102a43;
}
.faq summary::-webkit-details-marker{display:none;}
.faq .icon{
  font-size:20px;
  color:#1e6091;
  transition:transform .2s ease;
}
.faq[open] .icon{
  transform:rotate(45deg);
}
.faq-body{
  padding:0 18px 18px;
  font-size:13px;
  color:#3e4655;
  line-height:1.6;
  border-top:1px solid var(--border-strong);
}
.skeleton{
  position:relative;
  color:transparent !important;
  background:linear-gradient(90deg,#f2f4f9 25%,#e1e4f0 37%,#f2f4f9 63%);
  background-size:400% 100%;
  animation:skeleton 1.4s ease infinite;
  border-radius:6px;
  min-height:1.3em;
}
@keyframes skeleton{
  0%{background-position:100% 0;}
  100%{background-position:0 0;}
}
.stat-card{
  position:relative;
  overflow:hidden;
  border-radius:var(--radius-xl);
  border:1px solid transparent;
  padding:var(--space-5);
  background:
    linear-gradient(var(--card),var(--card)) padding-box,
    var(--brand-grad) border-box;
  box-shadow:0 18px 36px rgba(15,23,42,0.12);
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
}
.stat-card .label{font-size:12px;color:#1f2a44;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.stat-card .val{margin-top:6px;font-size:clamp(1.5rem,2vw,2.1rem);font-weight:800;color:#0f172a}
.stat-card .sub{margin-top:4px;font-size:12px;color:var(--muted)}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-variant-numeric:tabular-nums;}

.info-card{
  border-radius:var(--radius-xl);
  padding:var(--space-5);
  border:1px solid transparent;
  background:
    linear-gradient(var(--card),var(--card)) padding-box,
    var(--brand-grad) border-box;
  box-shadow:0 18px 36px rgba(15,23,42,0.12);
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
}
.info-card h4{
  margin:0;
  font-size:1rem;
  color:#0f172a;
}
.info-card p{
  margin:0;
  font-size:13px;
  color:var(--muted);
  line-height:1.5;
}

.gradient-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  border-radius:var(--radius-xl);
  overflow:hidden;
  background:
    linear-gradient(var(--card),var(--card)) padding-box,
    var(--brand-grad) border-box;
  border:1px solid transparent;
  box-shadow:0 20px 45px rgba(15,23,42,0.12);
}
.gradient-table th,
.gradient-table td{
  padding:14px 18px;
  border-bottom:1px solid rgba(15,23,42,0.08);
  background:#fff;
}
.gradient-table th{
  text-transform:uppercase;
  font-size:11px;
  letter-spacing:.08em;
  color:#4b5a72;
}
.gradient-table tr:last-child td{
  border-bottom:none;
}

.loop-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
  margin-top:12px;
}
.loop-card{
  border-radius:12px;
  padding:16px;
  border:1px solid transparent;
  background:
    linear-gradient(var(--card),var(--card)) padding-box,
    var(--brand-grad) border-box;
  box-shadow:var(--shadow-sm);
  position:relative;
  overflow:hidden;
}
.loop-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(80% 120% at 100% 0%, rgba(110,94,255,0.15), transparent);
  opacity:0;
  transition:opacity .2s ease;
}
.loop-card:hover::after{opacity:1;}
.loop-card .step{font-weight:700;margin-bottom:8px}
.loop-card p{margin:0;color:#5b6577;font-size:13px;line-height:1.5}

.timeline{
  position:relative;
  margin-top:16px;
  padding-left:18px;
  border-left:2px solid rgba(110,94,255,.25);
  display:flex;
  flex-direction:column;
  gap:22px;
}
.timeline-item{position:relative;padding-left:16px}
.timeline-item .dot{
  position:absolute;left:-27px;top:4px;width:12px;height:12px;border-radius:50%;
  background:var(--brand-grad);
  box-shadow:0 0 0 4px rgba(110,94,255,.12);
}
.timeline-item .time{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.timeline-item .content strong{display:block;font-size:15px;margin-bottom:4px}
.timeline-item .content p{margin:0;font-size:13px;color:#5b6577;line-height:1.5}
.timeline-item .content ul{margin:8px 0 0 18px;padding:0;font-size:13px;color:#4d5566}

.legal h2{margin-top:24px;font-size:18px}
.legal p, .legal ul{font-size:14px;line-height:1.6;color:#3e4655}
.legal ul{padding-left:20px}

@keyframes floaty{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-6px);}
}

@media (max-width:720px){
  .chip{font-size:11px;padding:5px 10px}
  .overview-grid{grid-template-columns:1fr}
  .loop-grid{grid-template-columns:1fr}
  .timeline{padding-left:14px}
  .timeline-item{padding-left:14px}
  .timeline-item .dot{left:-24px}
}
/* ───── Forms ───── */
.input{flex:1;border:1px solid var(--border-strong);border-radius:10px;padding:10px 12px;font-size:14px}
.row{display:flex;gap:8px;align-items:center}

/* === Trade table enhancements (Recent Closures) === */
.table .muted { color: var(--muted); }
.table .mono  { font-variant-numeric: tabular-nums; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }
.table .tight { white-space: nowrap; }

/* Side chips */
.badge {
  display:inline-flex; align-items:center; justify-content:center;
  height:20px; min-width:52px; padding:0 8px; border-radius:999px;
  font-size:12px; font-weight:700; letter-spacing:.02em;
  border:1px solid var(--border-strong); background:#fff; color:var(--ink);
}
.badge.long  { border-color:#a6efd2; color:#0a6e4b; background:linear-gradient(#fff,#fff) padding-box, linear-gradient(90deg,#bff3dd,#6ce2b1) border-box; }
.badge.short { border-color:#ffc7cf; color:#7a0b1e; background:linear-gradient(#fff,#fff) padding-box, linear-gradient(90deg,#ffd6db,#ff9aaa) border-box; }

/* Small pill for symbols if you want to emphasize them later
.symbol-pill { padding:2px 8px; border-radius:8px; background:#f6f7fb; border:1px solid var(--border); font-weight:700; } */

/* Highlight LONG vs SHORT rows */
#trades tr td .badge.long { background:#e6f9f0; color:#0ECB81; border:1px solid #0ECB81; }
#trades tr td .badge.short{ background:#fdeaea; color:#F6465D; border:1px solid #F6465D; }

/* Right align numeric columns */
#trades td.num { text-align:right; font-family:monospace; }
.invest-hero h1{
  font-size:32px;
  line-height:1.2;
}
@media (max-width:720px){
  .invest-hero h1{font-size:26px}
  .hero-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
  .hero-pill{width:100%;text-align:center}
}

@media (max-width:860px){
  .jump-tabs{display:none;}
  .jump-mobile-btn{display:inline-flex;}
}
.contract-wrap{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.contract-text{
  word-break:break-all;
  max-width:100%;
}
.copy-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 12px;
  border-radius:10px;
  border:1px solid rgba(30,96,145,0.25);
  background:rgba(30,96,145,0.08);
  color:#1e3a64;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
  transition:background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.copy-btn:hover:not([disabled]){
  background:rgba(27,210,162,0.18);
  border-color:rgba(27,210,162,0.4);
  color:#0e6f55;
  transform:translateY(-1px);
}

/* Sentiment charts (Recent Closures) */
.sentiment-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:12px;
}
.sentiment-card{
  border-radius:16px;
  padding:14px;
  border:1px solid rgba(30,96,145,0.12);
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(120deg, rgba(27,210,162,0.14), rgba(110,94,255,0.10)) border-box;
  box-shadow:0 12px 28px rgba(15,23,42,0.10);
  position:relative;
  overflow:hidden;
}
.sentiment-card.short{
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(120deg, rgba(246,70,93,0.16), rgba(110,94,255,0.10)) border-box;
}
.sentiment-card::after{
  content:"";
  position:absolute;
  inset:-40% -20%;
  background:radial-gradient(120% 120% at 0% 0%, rgba(255,255,255,0.3), transparent 65%);
  opacity:0;
  transform:translateY(10px);
  animation:floaty 6s ease-in-out infinite;
  pointer-events:none;
}
.sentiment-card:hover::after{opacity:1;}
.sentiment-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:8px;
}
.pill-label{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  font-weight:800;
  letter-spacing:.05em;
  border-radius:999px;
  font-size:12px;
  background:#eef2ff;
  color:#1f2a44;
  text-transform:uppercase;
}
.sentiment-card.long .pill-label{background:rgba(14,203,129,0.15); color:#0a7a53;}
.sentiment-card.short .pill-label{background:rgba(246,70,93,0.15); color:#8a0f21;}
.sentiment-sub{color:#5b6577;font-size:12px;margin-top:4px}
.sentiment-meta{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#4d5566}
.sentiment-meta .dot{width:10px;height:10px;border-radius:50%;display:inline-block}
.sentiment-meta .dot.long{background:#0ECB81;box-shadow:0 0 0 4px rgba(14,203,129,0.15);}
.sentiment-meta .dot.short{background:#F6465D;box-shadow:0 0 0 4px rgba(246,70,93,0.15);}
.sentiment-meta-label{font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.sentiment-stats{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:8px;
  margin:8px 0 12px;
}
.sentiment-stats .stat{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border-radius:12px;
  background:rgba(255,255,255,0.8);
  border:1px solid rgba(30,96,145,0.08);
  box-shadow:0 6px 16px rgba(15,23,42,0.08);
}
.stat-icon{font-size:16px}
.stat-label{font-size:11px; letter-spacing:.04em; text-transform:uppercase; color:#6b7280;}
.stat-value{font-weight:800; font-size:15px;}
.stat-value.positive{color:#0a7a53;}
.stat-value.negative{color:#8a0f21;}

@media (max-width:720px){
  .sentiment-grid{grid-template-columns:1fr}
}
.copy-btn:focus-visible{
  outline:2px solid var(--brand-600);
  outline-offset:2px;
}
.copy-btn[disabled]{
  opacity:0.45;
  cursor:not-allowed;
  transform:none;
}
.copy-btn.copied{
  background:rgba(14,203,129,0.18);
  border-color:rgba(14,203,129,0.4);
  color:#0ECB81;
}
.copy-btn.error{
  background:rgba(246,70,93,0.18);
  border-color:rgba(246,70,93,0.4);
  color:#F6465D;
}
.contract-link{
  color:var(--brand-500);
  font-weight:600;
  text-decoration:none;
}
.contract-link:hover{
  text-decoration:underline;
}
.price-widget{
  margin-top:18px;
  padding:14px 16px;
  border-radius:14px;
  border:1px solid rgba(16,58,100,0.12);
  background:linear-gradient(var(--card),var(--card)) padding-box, linear-gradient(135deg,rgba(95,250,229,0.16),rgba(110,94,255,0.12)) border-box;
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  align-items:flex-start;
}
.channel-options{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:6px;
}
.channel-option{
  display:flex;
  gap:12px;
  align-items:flex-start;
  border:1px solid rgba(16,58,100,0.14);
  border-radius:12px;
  padding:10px 12px;
  background:#fff;
}
.channel-option input{
  margin-top:4px;
}
.channel-option.disabled{
  opacity:0.5;
}
.channel-option strong{
  font-size:14px;
  color:#102a43;
}
.channel-option .channel-head{
  display:flex;
  align-items:center;
  gap:8px;
}
.channel-option .chip{
  font-size:11px;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(110,94,255,0.12);
  border:1px solid rgba(110,94,255,0.2);
}
.channel-option span.note{
  display:block;
  font-size:12px;
  color:#5b6577;
}
.channel-note{
  font-size:12px;
  color:#5b6577;
  margin-top:6px;
}
.price-summary{
  font-weight:800;
  font-size:16px;
  color:#102a43;
  padding:10px 12px;
  border:1px dashed rgba(16,58,100,0.2);
  border-radius:12px;
  background:#f8f9fe;
}
.delivery-table-wrap{margin-top:12px;overflow-x:auto;}
.billing-history .delivery-table-wrap{margin-top:16px;}
.billing-table{min-width:640px;}
.delivery-table{width:100%;border-collapse:collapse;font-size:13px;}
.delivery-table th,.delivery-table td{padding:10px 8px;border-bottom:1px solid rgba(16,58,100,0.08);text-align:left;}
.delivery-table td.actions{display:flex;gap:6px;flex-wrap:wrap;}
.delivery-table td.empty{text-align:center;color:#5b6577;}
.delivery-form{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;}
.delivery-form .form-row{display:flex;flex-direction:column;gap:6px;}
.delivery-form input,.delivery-form select{border:1px solid rgba(16,58,100,0.18);border-radius:10px;padding:10px 12px;font-size:14px;}
.delivery-table td.actions .danger{
  padding:8px 14px;
  border-radius:10px;
  border:0;
  background:#F6465D;
  color:#fff;
  font-weight:700;
  cursor:pointer;
}
.delivery-table td.actions .danger:hover{filter:brightness(0.95);}
.delivery-summary{font-size:13px;color:#1f5f89;font-weight:600;margin-top:8px;}
.price-info{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:180px;
}
.live-demo-note{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
  padding:14px 16px;
  border-radius:14px;
  background:linear-gradient(120deg,rgba(24,177,121,0.18),rgba(16,185,129,0.12),rgba(240,253,244,0.95));
  border:1px solid rgba(16,185,129,0.35);
  color:#065f46;
  font-size:15px;
  font-weight:700;
  line-height:1.5;
  box-shadow:0 12px 30px rgba(6,95,70,0.08);
}
.live-demo-note .live-demo-icon{
  font-size:20px;
}
.live-demo-note .live-demo-text strong{
  font-weight:800;
}
.price-label{
  font-weight:700;
  color:#1e2329;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.price-row{
  display:flex;
  align-items:baseline;
  gap:12px;
}
.price-value{
  font-size:32px;
  font-weight:800;
  color:#102a43;
  font-variant-numeric:tabular-nums;
}
.price-change{
  font-size:16px;
  font-weight:700;
  color:var(--muted);
}
.price-change.up{color:var(--green);}
.price-change.down{color:var(--red);}
.price-change.flat{color:var(--muted);}
.price-meta{
  display:flex;
  gap:8px;
  align-items:center;
  color:var(--muted);
}
.price-meta .dot{font-size:16px;line-height:1;color:rgba(30,96,145,0.6);}
#priceSparkline{
  flex:1;
  min-width:160px;
  max-width:260px;
  height:70px;
  background:rgba(16,58,100,0.04);
  border-radius:12px;
  border:1px solid rgba(16,58,100,0.08);
}
@media (max-width:600px){
  .price-widget{flex-direction:column;align-items:stretch;}
  #priceSparkline{width:100%;}
}

.stat-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,rgba(30,96,145,0.08),rgba(42,157,143,0.04));
  opacity:0;
  transition:opacity .2s ease;
}
.stat-card:hover::after{opacity:1;}
.hero-inline{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:space-between;margin-bottom:12px;}
.hero-topline{display:flex;align-items:center;gap:14px;flex:1 1 auto;min-width:260px;}
.token-mark-wrap{flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:16px;box-shadow:var(--shadow-sm);padding:10px;background:linear-gradient(135deg,rgba(110,94,255,0.1),rgba(27,210,162,0.1));}
.hero-card .token-mark{width:72px;height:72px;}
.hero-card .hero-text{flex:1 1 auto;min-width:220px;display:flex;flex-direction:column;gap:8px;max-width:480px;}
.hero-card .hero-text h1{margin:0;font-size:26px;font-weight:800;}
.hero-card .hero-text p{margin:0;color:#5b6577;font-size:14px;line-height:1.45;}
.hero-card .hero-chips{gap:6px;flex-wrap:wrap;}
.price-widget{margin-top:0;flex:0 0 auto;min-width:220px;box-shadow:var(--shadow-sm);border-radius:14px;}

@media (max-width:900px){
  .hero-inline{flex-direction:column;align-items:center;gap:16px;margin-bottom:10px;}
  .hero-topline{width:100%;flex-direction:column;align-items:center;text-align:center;}
  .hero-card .hero-text{min-width:100%;text-align:center;}
  .hero-card .token-mark{width:68px;height:68px;}
  .price-widget{width:100%;justify-content:center;}
}
@media (max-width:720px){
  .hero-card .pad{padding:16px 14px;}
  .hero-card .hero-text h1{font-size:22px;}
  .hero-card .hero-text p{font-size:13px;}
  .hero-inline{gap:12px;}
  .hero-card .token-mark{width:60px;height:60px;}
  .price-widget{padding:12px 14px;}
  .hero-topline{gap:12px;}
}
.subscription-status .subscription-link{
  color:#4850ff;
  font-weight:600;
  text-decoration:underline;
}
.delivery-onboarding{
  border:1px dashed rgba(72,80,255,0.35);
  border-radius:16px;
  padding:16px 18px;
  background:linear-gradient(120deg,rgba(72,80,255,0.06),rgba(88,101,242,0.03));
  margin-bottom:18px;
}
.delivery-onboarding h4{
  margin:0 0 4px 0;
  font-size:1rem;
}
.delivery-onboarding p{
  margin:0 0 12px 0;
  color:#4b5563;
}
.delivery-onboarding ol{
  margin:0 0 12px 18px;
  padding:0;
  color:#374151;
}
.delivery-onboarding ol li{
  margin-bottom:6px;
}
.delivery-onboarding .onboarding-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:8px;
}
.btn.small{
  font-size:0.85rem;
  padding:0.35rem 0.85rem;
  border-radius:999px;
}
.btn.ghost.small{
  border:1px solid rgba(72,80,255,0.35);
  background:transparent;
  color:#4850ff;
}
.micro{
  font-size:0.78rem;
  color:#6b7280;
  margin:0;
}
.badge{
  display:inline-flex;
  align-items:center;
  padding:0.12rem 0.65rem;
  margin-left:0.5rem;
  font-size:0.72rem;
  font-weight:700;
  border-radius:999px;
  border:1px solid transparent;
  text-transform:uppercase;
  letter-spacing:0.04em;
}
.badge-verified{
  background:linear-gradient(120deg,#16a34a,#22c55e);
  color:#fff;
  border-color:#15803d;
  box-shadow:0 4px 10px rgba(22,163,74,0.25);
}
.badge-pending{
  background:linear-gradient(120deg,#dc2626,#ef4444);
  color:#fff;
  border-color:#991b1b;
  box-shadow:0 4px 10px rgba(220,38,38,0.25);
}
.streams-footnote{
  font-size:12px;
  color:rgba(248,251,255,0.75);
  margin-top:8px;
}
.streams-feed[data-theme="light"] + .streams-footnote{color:#5b6577;}
.card-block{
  border:1px solid rgba(15,23,42,0.08);
  border-radius:var(--layout-card-radius-lg);
  background:#fff;
  box-shadow:0 20px 45px rgba(15,23,42,0.08);
  padding:var(--layout-card-block-pad-y) var(--layout-card-block-pad-x);
  width:100%;
}
@media (max-width:640px){
.card-block{padding:var(--layout-card-block-pad-mobile);}
}
.holder-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:var(--space-3);
  margin-top:var(--space-4);
}
.holder-card{
  padding:0;
  background:none;
  border:none;
  box-shadow:none;
}
.holder-card.info-card{
  padding:var(--space-5);
}
.footer-social{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.footer-social li{
  list-style:none;
  display:flex;
  align-items:center;
  gap:6px;
}
.footer-social li::before{
  content:"";
  width:16px;
  height:16px;
  background:var(--muted);
  border-radius:4px;
  mask-size:contain;
  mask-repeat:no-repeat;
}
.footer-social li.discord::before{
  background:#5865f2;
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 245 240'%3E%3Cpath fill='%23fff' d='M104.4 104.8c-5.7 0-10.2 5-10.2 11.1c0 6.1 4.6 11.1 10.2 11.1c5.7 0 10.2-5 10.2-11.1c.1-6.1-4.5-11.1-10.2-11.1m36.2 0c-5.7 0-10.2 5-10.2 11.1c0 6.1 4.6 11.1 10.2 11.1c5.7 0 10.2-5 10.2-11.1c0-6.1-4.5-11.1-10.2-11.1'/><path fill='%23fff' d='M189.5 20h-134A35.6 35.6 0 0 0 20 55.6v128.8A35.6 35.6 0 0 0 55.5 220h96.4l-4.5-15l10.8 10l10.3 9.3l18.3 16.7V55.6c0-19.7-16-35.6-35.3-35.6M163 145.1s-4.2-5-7.7-9.4c15.3-4.3 21.2-13.8 21.2-13.8c-4.8 3.1-9.4 5.3-13.5 6.8c-5.9 2.5-11.5 4.1-17 5.1c-11.2 2.1-21.5 1.5-30.4-.1c-6.7-1.3-12.5-3-17.3-5.1c-2.7-1.1-5.7-2.4-8.6-4.2c-.4-.2-.8-.4-1.2-.7c-.3-.2-.6-.3-.9-.5c-.4-.3-.6-.4-.6-.4s5.6 9.3 20.4 13.7c-3.5 4.4-7.8 9.6-7.8 9.6c-25.8-.8-35.6-17.7-35.6-17.7c0-37.5 16.8-68 16.8-68c16.8-12.6 32.7-12.2 32.7-12.2l1.2 1.4c-21 6-30.7 15.3-30.7 15.3s2.6-1.4 7-3.4c12.7-5.6 22.8-7.2 27-7.6c.7-.1 1.3-.2 2-.2a129 129 0 0 1 55 5.4c26 7.5 41 18.7 41 18.7s-10.1-9.6-31.9-15.6l1.7-1.9s16-.4 32.7 12.2c0 0 16.8 30.5 16.8 68c0 0-9.9 16.9-35.7 17.7'/%3E%3C/svg%3E");
}
.footer-social li.telegram::before{
  background:#2aabee;
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 240'%3E%3Cpath fill='%23fff' d='M120 0C53.7 0 0 53.7 0 120s53.7 120 120 120s120-53.7 120-120S186.3 0 120 0Zm50.3 87.6l-20.2 95.5c-1.5 6.8-5.5 8.5-11.3 5.3l-31.3-23.2l-15.1 14.6c-1.7 1.7-3.1 3.1-6.3 3.1l2.3-32.7l59.5-53.7c2.6-2.3-.6-3.6-4-1.3l-73.4 46.2l-31.6-9.9c-6.8-2.1-6.9-6.8 1.4-10.1l123.6-47.7c5.7-2.1 10.6 1.3 8.8 10.1Z'/%3E%3C/svg%3E");
}
.footer-social li.x::before{
  background:#1d9bf0;
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 1227'%3E%3Cpath fill='%23fff' d='M714 0H978L408 729L0 1227H276L708 707L1140 1227H1200z'/%3E%3C/svg%3E");
}
.footer-social li.facebook::before{
  background:#1877f2;
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M13.5 9H16V6h-2.5a3.5 3.5 0 0 0-3.5 3.5V12H8v3h2v7h3v-7h2.1l.4-3H13.5V9.5c0-.276.224-.5.5-.5z'/%3E%3C/svg%3E");
}

/* Password toggle helpers */
.password-field{
  display:flex;
  align-items:center;
  gap:8px;
}
.password-field input{
  flex:1;
}
.password-toggle{
  border:1px solid var(--border);
  background:var(--card);
  color:var(--ink);
  padding:8px 12px;
  border-radius:10px;
  cursor:pointer;
  font-weight:600;
}
.password-toggle:hover{background:rgba(16,58,100,0.06);}
