/* ============================================================
   PumpSuite — DraconX-inspired green / aurora
   ============================================================ */
:root{
  --bg:#050a08; --bg-2:#050607; --surface:#0c1210; --surface-2:#0e1411;
  --line:rgba(120,220,160,.08); --line-soft:rgba(120,220,160,.05);
  --ink:#eef2ef; --ink-2:#b8c3be; --muted:#8a9590;
  --red:#4ade80; --red-soft:#86efac; --red-deep:#22c55e; --red-glow:rgba(74,222,128,.28);
  --accent:#4ade80; --accent-2:#86efac; --accent-dark:#04120a;
  --r:16px; --r-sm:12px; --maxw:1120px;
  --ease:cubic-bezier(.22,.61,.36,1); --ease-out:cubic-bezier(.16,1,.3,1);
  --font-display:'Sora','Inter',system-ui,sans-serif;
  --font-body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
}
*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0; background:var(--bg-2); color:var(--ink);
  font-family:var(--font-body);
  font-size:16px; line-height:1.55; -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
.mono{ font-family:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace; }

/* Solana mark — PumpSuite green gradient asset */
.sol-ic{
  width:14px; height:11px; display:inline-block; vertical-align:-1px;
  object-fit:contain; flex-shrink:0;
}
.sol-ic-sm{ width:11px; height:9px; vertical-align:0; }
.sol-ic-lg{ width:22px; height:17px; vertical-align:-2px; }
.sol-amt{
  display:inline-flex; align-items:center; gap:.35em; white-space:nowrap;
}
.sol-amt .sol-ic{ margin:0; }
h1,h2,h3,h4{ margin:0; font-family:var(--font-display); font-weight:650; letter-spacing:-.03em; line-height:1.1; }
p{ margin:0; } a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; } ul{ margin:0; padding:0; list-style:none; }
.container{ width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:24px; }
.container.narrow{ max-width:780px; }

/* background — DraconX-style layered aurora */
.bg{ position:fixed; inset:0; z-index:-1; pointer-events:none; overflow:hidden; }
.bg-glow{
  position:absolute; inset:0;
  background:
    radial-gradient(1000px 700px at 95% 10%, rgba(74,222,128,.14), transparent 55%),
    radial-gradient(700px 500px at 5% 80%, rgba(74,222,128,.08), transparent 60%),
    radial-gradient(900px 600px at 40% 30%, rgba(74,222,128,.05), transparent 55%),
    radial-gradient(1200px 800px at 50% 120%, rgba(74,222,128,.06), transparent 60%);
}
.bg-aurora{
  position:absolute; inset:-20%;
  background:
    radial-gradient(ellipse 50% 40% at 20% 20%, rgba(74,222,128,.16), transparent 55%),
    radial-gradient(ellipse 45% 35% at 80% 15%, rgba(134,239,172,.10), transparent 50%),
    radial-gradient(ellipse 40% 40% at 70% 75%, rgba(34,197,94,.08), transparent 55%);
  filter:blur(40px); opacity:.85;
  animation:aurora-drift 18s ease-in-out infinite alternate;
}
.bg-grid{
  position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(74,222,128,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(74,222,128,.035) 1px, transparent 1px);
  background-size:64px 64px; opacity:.7;
  mask-image:radial-gradient(ellipse 70% 60% at 50% 30%, #000 20%, transparent 75%);
  -webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 30%, #000 20%, transparent 75%);
}
.bg-noise{
  position:absolute; inset:0; opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* floating Solana logos */
.bg-sols{ position:absolute; inset:0; overflow:hidden; }
.sol-float{
  position:absolute; width:var(--sz,120px); height:auto;
  opacity:var(--op,.12); filter:blur(var(--blur,0px));
  color:#14F195; transform:rotate(var(--rot,-12deg));
  animation:sol-drift var(--dur,22s) ease-in-out infinite alternate;
  animation-delay:var(--delay,0s); will-change:transform;
}
.sol-float svg{ width:100%; height:auto; display:block; }
@keyframes sol-drift{
  0%{ transform:translate3d(0,0,0) rotate(var(--rot,-12deg)) scale(1); }
  50%{ transform:translate3d(var(--dx,18px),var(--dy,-24px),0) rotate(calc(var(--rot,-12deg) + 6deg)) scale(1.04); }
  100%{ transform:translate3d(calc(var(--dx,18px) * -0.6),calc(var(--dy,-24px) * .5),0) rotate(calc(var(--rot,-12deg) - 4deg)) scale(.98); }
}

/* mouse spotlight — illuminates grid + sols under cursor */
.bg-cursor{
  position:absolute; inset:0; opacity:0; transition:opacity .35s ease;
  background:radial-gradient(
    420px circle at var(--mx,50%) var(--my,40%),
    rgba(20,241,149,.16) 0%,
    rgba(74,222,128,.08) 28%,
    transparent 62%
  );
  mix-blend-mode:screen;
}
.bg-cursor.on{ opacity:1; }
@media (hover:none){
  .bg-cursor{ display:none; }
}
@media (prefers-reduced-motion:reduce){
  .sol-float{ animation:none !important; }
  .bg-cursor{ display:none; }
}

@keyframes aurora-drift{
  0%{ transform:translate(0,0) scale(1); }
  50%{ transform:translate(-3%,2%) scale(1.05); }
  100%{ transform:translate(2%,-2%) scale(1.02); }
}
@keyframes breathe{ 0%,100%{opacity:.75;transform:translateX(-50%) scale(1);} 50%{opacity:1;transform:translateX(-50%) scale(1.08);} }
@keyframes brand-shimmer{ to{ background-position:220% center; } }
@keyframes btn-sheen{ to{ transform:translateX(120%); } }

/* progress */
.progress{ position:fixed; top:0; left:0; height:2px; width:0;
  background:linear-gradient(90deg,var(--red-deep),var(--red));
  box-shadow:0 0 12px var(--red-glow); z-index:100; }

/* nav — floating glass shell */
.nav{
  position:fixed; top:0; left:0; right:0; z-index:90;
  padding:14px 16px 0; pointer-events:none;
  transition:padding .35s var(--ease);
}
.nav.scrolled{ padding-top:10px; }
.nav-inner{
  max-width:var(--maxw); margin-inline:auto; pointer-events:none;
}
.nav-shell{
  pointer-events:auto;
  display:flex; align-items:center; gap:18px;
  padding:10px 12px 10px 14px;
  border-radius:18px;
  border:1px solid rgba(74,222,128,.12);
  background:rgba(8,14,11,.55);
  backdrop-filter:blur(18px) saturate(150%);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
  box-shadow:
    0 10px 40px -20px rgba(0,0,0,.65),
    0 0 0 1px rgba(255,255,255,.03) inset;
  transition:background .35s var(--ease), border-color .35s, box-shadow .35s, padding .35s;
}
.nav.scrolled .nav-shell{
  background:rgba(5,10,8,.82);
  border-color:rgba(74,222,128,.22);
  box-shadow:
    0 16px 48px -18px rgba(0,0,0,.8),
    0 0 28px -16px var(--red-glow),
    0 0 0 1px rgba(255,255,255,.04) inset;
}

.brand{
  display:inline-flex; align-items:center; gap:10px; flex-shrink:0;
  font-family:var(--font-display); font-weight:700; letter-spacing:-.02em; color:var(--ink);
}
.brand .mark{
  width:32px; height:32px; border-radius:10px; object-fit:cover; display:block;
  box-shadow:0 0 16px -2px var(--red-glow);
}
.brand:hover .mark{ animation:spin .9s var(--ease-out); }
.brand-text{ display:flex; flex-direction:column; gap:1px; line-height:1.15; }
.brand-name{
  font-size:15px;
  background:linear-gradient(105deg,var(--ink) 28%,var(--accent) 50%,var(--ink) 72%);
  background-size:220% auto; -webkit-background-clip:text; background-clip:text; color:transparent;
}
.brand:hover .brand-name{ animation:brand-shimmer 1.4s linear; }
.brand-tag{
  display:inline-flex; align-items:center; gap:5px;
  font-size:9.5px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--accent-2); opacity:.8; font-weight:500;
}
@keyframes spin{ from{transform:rotate(0);} to{transform:rotate(360deg);} }

.nav-links{
  display:flex; align-items:center; gap:4px; margin-left:auto;
  padding:4px; border-radius:12px;
  background:rgba(255,255,255,.02); border:1px solid rgba(255,255,255,.04);
}
.nav-links a{
  font-size:13px; font-weight:500; color:var(--muted);
  position:relative; padding:8px 12px; border-radius:9px;
  transition:color .22s var(--ease), background .22s var(--ease);
}
.nav-links a:hover{ color:var(--ink); background:rgba(74,222,128,.08); }
.nav-links a.on{
  color:var(--accent-dark); font-weight:600;
  background:linear-gradient(135deg,#5eead4,var(--accent));
  box-shadow:0 4px 14px -6px var(--red-glow);
}
.nav-links a::after{ display:none; }

.nav-actions{ display:flex; align-items:center; gap:10px; flex-shrink:0; }
.nav-live{
  display:inline-flex; align-items:center; gap:7px;
  font-size:11.5px; font-weight:600; color:var(--accent-2);
  padding:6px 11px; border-radius:100px;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.22);
}
.btn-nav{
  padding:9px 16px; font-size:13px; border-radius:11px; gap:6px;
}
.btn-nav svg{ width:14px; height:14px; }

.burger{
  display:none; width:40px; height:36px; border:1px solid rgba(74,222,128,.22);
  border-radius:11px; background:rgba(74,222,128,.06); cursor:pointer;
  flex-direction:column; align-items:center; justify-content:center; gap:5px;
  transition:border-color .25s, background .25s;
}
.burger:hover{ border-color:rgba(74,222,128,.45); background:rgba(74,222,128,.1); }
.burger span{ width:15px; height:1.5px; background:var(--ink); transition:.3s var(--ease); }
.burger.open span:first-child{ transform:translateY(3.25px) rotate(45deg); }
.burger.open span:last-child{ transform:translateY(-3.25px) rotate(-45deg); }

/* buttons */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font:inherit; font-size:14px; font-weight:500; letter-spacing:-.01em;
  padding:10px 18px; border-radius:var(--r-sm); border:1px solid var(--line);
  background:transparent; color:var(--ink); cursor:pointer; position:relative; overflow:hidden;
  transition:transform .25s var(--ease-out),background .25s var(--ease),border-color .25s var(--ease),box-shadow .35s var(--ease),color .25s; }
.btn svg{ width:16px; height:16px; }
.btn:active{ transform:scale(.975); }
.btn-accent{
  background:linear-gradient(135deg,#5eead4 0%,var(--accent) 45%,#22c55e 100%);
  border-color:transparent; color:var(--accent-dark); font-weight:700;
  box-shadow:0 0 0 1px rgba(74,222,128,.25),0 8px 28px -10px var(--red-glow),inset 0 1px 0 rgba(255,255,255,.25);
}
.btn-accent:hover{
  background:linear-gradient(135deg,#86efac 0%,var(--accent-2) 50%,#4ade80 100%);
  border-color:transparent; color:var(--accent-dark);
  box-shadow:0 0 32px var(--red-glow),inset 0 1px 0 rgba(255,255,255,.3);
  transform:translateY(-2px);
}
.btn-accent svg{ transition:transform .3s var(--ease-out); color:inherit; }
.btn-accent:hover svg{ transform:translateX(4px); }
.btn-quiet{ background:rgba(74,222,128,.08); color:var(--accent-2); border-color:rgba(74,222,128,.35); }
.btn-quiet:hover{ color:var(--ink); border-color:rgba(74,222,128,.55); background:rgba(74,222,128,.14); }
.btn-lg{ padding:14px 26px; font-size:15px; border-radius:12px; }
.btn-block{ width:100%; }
.btn-accent::before,.btn::before{ content:''; position:absolute; inset:0;
  background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.35) 50%,transparent 65%);
  transform:translateX(-120%); transition:none; pointer-events:none; }
.btn-accent:hover::before{ animation:btn-sheen .7s ease; }
.btn:hover::before{ transform:translateX(120%); transition:transform .7s var(--ease-out); }
.btn-accent:hover::before{ transform:none; }
.btn[disabled]{ opacity:.6; pointer-events:none; }

/* hero */
.hero{ padding:150px 0 0; position:relative; }
.hero-grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:64px; align-items:center; }
.pill{ display:inline-flex; align-items:center; gap:9px; font-size:12.5px; color:var(--ink-2);
  border:1px solid var(--line); border-radius:100px; padding:6px 14px 6px 11px;
  background:rgba(255,255,255,.02); margin-bottom:28px; }
.pulse{ width:6px; height:6px; border-radius:50%; background:var(--red); position:relative; }
.pulse::after{ content:''; position:absolute; inset:-3px; border-radius:50%; border:1px solid var(--red); animation:ping 2s ease-out infinite; }
@keyframes ping{ 0%{transform:scale(.6);opacity:.9;} 70%,100%{transform:scale(2.1);opacity:0;} }
.hero-title{ font-family:var(--font-display); font-size:clamp(42px,6vw,70px); font-weight:700; letter-spacing:-.045em; line-height:1.03; margin-bottom:24px; }
.hero-title .line{ display:block; overflow:hidden; padding-bottom:.06em; }
.hero-title .up{ display:inline-block; transform:translateY(110%) rotate(3deg); opacity:0;
  animation:rise .95s var(--ease-out) forwards; animation-delay:calc(var(--i) * 70ms + 120ms); }
@keyframes rise{ to{ transform:translateY(0) rotate(0); opacity:1; } }
.hero-title .accent{ background:linear-gradient(100deg,var(--red) 10%,var(--red-soft) 90%);
  -webkit-background-clip:text; background-clip:text; color:transparent; }
.hero-sub{ font-size:17px; color:var(--muted); max-width:52ch; margin-bottom:34px; }
.cta-row{ display:flex; gap:12px; flex-wrap:wrap; }
.cta-row.center{ justify-content:center; }
.hero-stats{ display:flex; gap:44px; margin-top:56px; padding-top:26px; border-top:1px solid var(--line-soft); }
.stat b{ display:block; font-size:26px; font-weight:600; letter-spacing:-.03em; }
.stat span{ font-size:12.5px; color:var(--muted); }
.hero-visual{ perspective:1200px; position:relative; }
.glass{
  position:relative; border:1px solid transparent; border-radius:24px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.97), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.5), rgba(74,222,128,.06) 42%, rgba(134,239,172,.22)) border-box;
  backdrop-filter:blur(16px);
  box-shadow:
    0 40px 90px -40px rgba(74,222,128,.36),
    0 1px 0 rgba(255,255,255,.06) inset,
    0 0 0 1px rgba(0,0,0,.35);
  overflow:hidden; transform-style:preserve-3d; transition:transform .5s var(--ease-out);
  animation:float 7s ease-in-out infinite;
}
.panel-shine{
  position:absolute; inset:-40% -20% auto; height:55%; pointer-events:none; z-index:0;
  background:radial-gradient(ellipse at 50% 0%, rgba(74,222,128,.14), transparent 65%);
  animation:breathe 8s var(--ease) infinite;
}
.glass > *:not(.panel-shine){ position:relative; z-index:1; }
@keyframes float{ 0%,100%{translate:0 0;} 50%{translate:0 -10px;} }

.glass-head{
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:14px 16px; border-bottom:1px solid var(--line-soft);
  background:rgba(255,255,255,.02);
}
.gh-left{ display:flex; align-items:center; gap:11px; min-width:0; }
.gh-logo{ width:28px; height:28px; border-radius:8px; object-fit:cover;
  box-shadow:0 0 16px -4px var(--red-glow); }
.gh-meta{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.gh-meta b{ font-family:var(--font-display); font-size:13.5px; font-weight:700; letter-spacing:-.02em; color:var(--ink); }
.gh-meta span{ font-size:10.5px; color:var(--muted); }
.gh-right{ display:flex; align-items:center; gap:10px; flex-shrink:0; }
.net-pill{
  font-size:10px; letter-spacing:.04em; color:var(--accent-2);
  padding:4px 9px; border-radius:100px;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.22);
}
.live{ display:inline-flex; align-items:center; gap:6px; color:var(--red-soft);
  font-size:10.5px; letter-spacing:.08em; text-transform:uppercase; font-weight:600; }

.glass-token{
  display:flex; align-items:center; gap:12px; padding:14px 16px;
  border-bottom:1px solid var(--line-soft);
  background:linear-gradient(90deg, rgba(74,222,128,.06), transparent 70%);
}
.gt-av{
  width:40px; height:40px; border-radius:12px; flex-shrink:0;
  display:grid; place-items:center; font-family:var(--font-display); font-weight:700; font-size:16px;
  color:var(--accent-dark);
  background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 8px 20px -8px var(--red-glow);
}
.gt-info{ min-width:0; flex:1; }
.gt-name{ font-size:14px; font-weight:600; letter-spacing:-.02em; display:flex; align-items:center; gap:8px; }
.gt-name span{ color:var(--accent-2); font-weight:500; font-size:12px; }
.gt-sub{ font-size:11px; color:var(--muted); margin-top:3px; }
.gt-badge{
  font-size:10px; letter-spacing:.08em; text-transform:uppercase; font-weight:600;
  padding:5px 10px; border-radius:100px; color:var(--accent-dark);
  background:linear-gradient(135deg,#5eead4,var(--accent));
  box-shadow:0 0 16px -6px var(--red-glow);
  transition:background .3s, color .3s;
}
.gt-badge.done{ background:rgba(55,214,122,.15); color:#37d67a; border:1px solid rgba(55,214,122,.35); box-shadow:none; }

.glass-steps{
  display:grid; grid-template-columns:repeat(4,1fr); gap:8px;
  padding:14px 16px 6px;
}
.gs{
  display:flex; flex-direction:column; align-items:center; gap:7px;
  padding:10px 6px 8px; border-radius:12px;
  border:1px solid var(--line-soft); background:rgba(255,255,255,.015);
  opacity:.45; transition:opacity .35s, border-color .35s, background .35s, box-shadow .35s;
}
.gs i{
  width:18px; height:18px; border-radius:50%;
  border:1.5px solid rgba(255,255,255,.18); position:relative;
  transition:border-color .3s, background .3s;
}
.gs span{ font-size:10.5px; color:var(--muted); font-family:var(--font-display); font-weight:600; letter-spacing:.02em; }
.gs.active{ opacity:1; border-color:rgba(74,222,128,.35); background:rgba(74,222,128,.06);
  box-shadow:0 0 20px -12px var(--red-glow); }
.gs.active i{ border-color:var(--red); border-top-color:transparent; animation:spin .8s linear infinite; }
.gs.active span{ color:var(--ink); }
.gs.done{ opacity:1; border-color:rgba(55,214,122,.25); background:rgba(55,214,122,.05); }
.gs.done i{ border-color:#37d67a; background:#37d67a; animation:none; }
.gs.done i::after{
  content:''; position:absolute; left:5px; top:2px; width:4px; height:8px;
  border-right:2px solid #06120b; border-bottom:2px solid #06120b; transform:rotate(42deg);
}
.gs.done span{ color:var(--ink-2); }

.term-wrap{ padding:8px 16px 4px; }
.term-label{
  font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted);
  margin-bottom:8px;
}
.term{
  padding:12px 14px; height:168px; overflow:hidden;
  font-family:'JetBrains Mono',monospace; font-size:12px; line-height:1.8; color:var(--ink-2);
  border-radius:14px; border:1px solid var(--line-soft);
  background:rgba(0,0,0,.35);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.term .l{ display:block; white-space:pre-wrap; animation:term-in .35s var(--ease-out) both; }
@keyframes term-in{ from{ opacity:0; transform:translateY(4px);} to{ opacity:1; transform:none;} }
.term .c-mut{ color:var(--muted); } .term .c-red{ color:var(--red-soft); } .term .c-ok{ color:#37d67a; }
.term .caret{ display:inline-block; width:7px; height:13px; background:var(--red); vertical-align:-2px; animation:blink 1s steps(1) infinite; border-radius:1px; }
@keyframes blink{ 50%{ opacity:0; } }

.glass-foot{
  display:grid; grid-template-columns:repeat(3,1fr); gap:8px;
  padding:12px 16px 16px; margin-top:4px;
  border-top:1px solid var(--line-soft);
}
.glass-foot div{
  display:flex; flex-direction:column; align-items:center; gap:4px;
  padding:10px 6px; border-radius:12px;
  background:rgba(255,255,255,.02); border:1px solid var(--line-soft);
}
.glass-foot span{ font-size:9.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
.glass-foot b{ font-family:var(--font-display); font-size:13px; font-weight:650; letter-spacing:-.02em; }
.glass-foot b.ok{ color:var(--accent-2); }
.glass-foot .sol-amt{ gap:.3em; }

@media (max-width:980px){
  .term{ height:150px; }
}

/* ticker */
.ticker{ margin-top:96px; border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft);
  overflow:hidden; padding:13px 0;
  mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent); }
.ticker-track{ display:flex; gap:44px; width:max-content; animation:slide 42s linear infinite; }
.ticker:hover .ticker-track{ animation-play-state:paused; }
@keyframes slide{ to{ transform:translateX(-50%); } }
.tk{ display:inline-flex; align-items:center; gap:9px; font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--muted); white-space:nowrap; }
.tk b{ color:var(--ink-2); font-weight:500; }
.tk .up-v{ color:#37d67a; } .tk .dn-v{ color:var(--red-soft); }

/* trust */
.trust{ padding:48px 0; }
.trust-inner{ display:flex; align-items:center; gap:22px; flex-wrap:wrap; }
.trust-label{ font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); flex-shrink:0; }
.logos{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.logo-item{
  display:inline-flex; align-items:center; gap:9px;
  padding:8px 12px 8px 8px; border-radius:12px;
  border:1px solid rgba(74,222,128,.14);
  background:rgba(255,255,255,.02);
  color:rgba(255,255,255,.42);
  font-size:13px; font-weight:600; letter-spacing:-.01em;
  transition:color .25s var(--ease), border-color .25s, background .25s, box-shadow .25s, transform .25s;
}
.logo-ic{
  width:28px; height:28px; border-radius:8px; display:grid; place-items:center; flex-shrink:0;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  overflow:hidden;
  transition:background .25s, border-color .25s, box-shadow .25s, transform .25s;
}
.logo-ic--dark{ background:#0b1210; border-color:rgba(255,255,255,.12); }
.logo-ic img{ width:18px; height:18px; display:block; object-fit:contain; }
.logo-item:hover{
  color:var(--ink);
  border-color:rgba(74,222,128,.4);
  background:rgba(74,222,128,.06);
  box-shadow:0 10px 24px -16px var(--red-glow);
  transform:translateY(-2px);
}
.logo-item:hover .logo-ic{
  border-color:rgba(74,222,128,.35);
  background:rgba(255,255,255,.07);
  box-shadow:0 6px 16px -10px var(--red-glow);
  transform:scale(1.06);
}
.logo-item:hover .logo-ic--dark{ background:#0e1612; }

@media (max-width:720px){
  .trust-inner{ gap:14px; }
  .logo-item span:last-child{ font-size:12px; }
}

/* sections */
.section{ padding:104px 0; }
.sec-head{ margin-bottom:52px; max-width:640px; }
.eyebrow{ display:block; font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--red); margin-bottom:16px; }
.sec-head h2{ font-size:clamp(28px,4vw,42px); margin-bottom:14px; }
.sec-head p{ color:var(--muted); font-size:16px; }
.features-head{
  max-width:none; display:flex; align-items:flex-end; justify-content:space-between;
  gap:28px; flex-wrap:wrap; margin-bottom:40px;
}
.features-head > div{ max-width:640px; }
.features-head h2{ margin-bottom:0; }
.features-head .accent-line{
  background:linear-gradient(100deg,var(--accent) 10%,var(--accent-2) 90%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.sec-lead{ max-width:34ch; margin:0; color:var(--muted); font-size:15px; line-height:1.55; }

/* launcher */
.launch-head{
  max-width:none; display:flex; align-items:flex-end; justify-content:space-between;
  gap:28px; flex-wrap:wrap; margin-bottom:36px;
}
.launch-head > div{ max-width:520px; }
.launch-head h2{ margin-bottom:0; }

.launcher{ display:grid; grid-template-columns:1.15fr .85fr; gap:20px; align-items:start; position:relative; }
.panel{
  border-radius:20px; padding:22px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.94), rgba(6,10,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.18), rgba(74,222,128,.04) 50%, rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  box-shadow:0 1px 0 rgba(255,255,255,.03) inset;
}
.launch-form{ display:flex; flex-direction:column; gap:14px; padding:16px; }
.form{ display:flex; flex-direction:column; gap:20px; }

.form-block{
  border-radius:16px; padding:18px;
  background:rgba(255,255,255,.015); border:1px solid var(--line-soft);
  display:flex; flex-direction:column; gap:16px;
}
.form-block-head{ display:flex; align-items:center; gap:12px; margin-bottom:2px; }
.fb-n{
  width:34px; height:34px; border-radius:10px; display:grid; place-items:center; flex-shrink:0;
  font-size:11px; font-weight:700; letter-spacing:.06em; color:var(--accent-dark);
  background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 6px 16px -8px var(--red-glow);
}
.form-block-head b{ display:block; font-family:var(--font-display); font-size:14.5px; letter-spacing:-.02em; }
.form-block-head small{ display:block; font-size:12px; color:var(--muted); margin-top:2px; }

.field{ display:flex; flex-direction:column; gap:8px; }
.field label{ font-size:12.5px; color:var(--ink-2); font-weight:500; }
.opt{ color:var(--muted); font-weight:400; }
.row{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }

/* social field icons */
.socials-row .field label{
  display:inline-flex; align-items:center; gap:8px;
}
.soc-ic{
  width:22px; height:22px; border-radius:7px; flex-shrink:0;
  display:grid; place-items:center;
  color:var(--accent);
  background:rgba(74,222,128,.10);
  border:1px solid rgba(74,222,128,.28);
  box-shadow:0 0 12px -6px var(--red-glow);
  transition:background .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease), color .25s;
}
.soc-ic svg{ width:12px; height:12px; display:block; }
.socials-row .field:focus-within .soc-ic{
  color:var(--accent-dark);
  background:linear-gradient(135deg,#5eead4,var(--accent));
  border-color:transparent;
  box-shadow:0 0 16px -4px var(--red-glow);
}
input[type=text],input[type=number],input[type=email],input[type=password],input[type=url]{
  width:100%; padding:12px 14px; background:#050a08; color:var(--ink);
  border:1px solid var(--line); border-radius:12px; font:inherit; font-size:14px;
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease),background .25s;
  color-scheme: dark;
}
input::placeholder{ color:#4d4d54; }
input:focus{ outline:none; border-color:rgba(74,222,128,.55); box-shadow:0 0 0 3px rgba(74,222,128,.10); background:#0a110e; }
input.err{ border-color:rgba(74,222,128,.80); animation:shake .4s var(--ease); }
input[type=email]:-webkit-autofill,
input[type=password]:-webkit-autofill,
input[type=text]:-webkit-autofill{
  -webkit-text-fill-color:var(--ink);
  caret-color:var(--ink);
  box-shadow:0 0 0 1000px #050a08 inset;
  transition:background-color 99999s ease-out;
}
@keyframes shake{ 25%{transform:translateX(-5px);} 75%{transform:translateX(5px);} }
input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
input[type=number]{ -moz-appearance:textfield; }
.input-wrap{ position:relative; display:flex; align-items:center; }
.input-wrap input{ padding-right:96px; min-width:0; width:100%; }
.mini-btn{
  position:absolute; right:6px; font:inherit; font-size:11.5px; font-weight:700;
  padding:7px 12px; border-radius:9px; cursor:pointer; border:0;
  background:linear-gradient(135deg,#5eead4,var(--accent)); color:var(--accent-dark);
  box-shadow:0 4px 14px -6px var(--red-glow); transition:.25s var(--ease);
  white-space:nowrap;
}
.mini-btn:hover{ filter:brightness(1.06); transform:translateY(-1px); }
.mini-btn[disabled]{ opacity:.55; pointer-events:none; }
.chips{ display:flex; gap:8px; margin-top:2px; flex-wrap:wrap; }
.chip{
  display:inline-flex; align-items:center; gap:5px;
  font:inherit; font-size:12px; font-weight:600; padding:6px 12px; cursor:pointer;
  border:1px solid rgba(74,222,128,.2); border-radius:100px;
  background:rgba(74,222,128,.05); color:var(--muted); transition:.22s var(--ease);
}
.chip:hover{ color:var(--ink); border-color:rgba(74,222,128,.4); background:rgba(74,222,128,.1); }
.chip.on{ color:var(--accent-dark); background:linear-gradient(135deg,#5eead4,var(--accent)); border-color:transparent; }
.field > label.sol-amt{ gap:7px; }

.drop{
  display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px;
  border:1px dashed rgba(74,222,128,.28); border-radius:14px;
  background:rgba(5,10,8,.65); cursor:pointer; color:var(--muted); font-size:14px; transition:.25s var(--ease);
}
.drop:hover,.drop.drag{
  border-color:rgba(74,222,128,.55); color:var(--ink-2);
  background:rgba(74,222,128,.06); box-shadow:0 0 24px -14px var(--red-glow);
}
.drop-main{ display:flex; align-items:center; gap:12px; min-width:0; }
.drop-ic{
  width:36px; height:36px; border-radius:10px; display:grid; place-items:center; flex-shrink:0;
  color:var(--accent); background:rgba(74,222,128,.1); border:1px solid rgba(74,222,128,.22);
}
.drop-ic svg{ width:16px; height:16px; }
.drop .thumb{ width:26px; height:26px; border-radius:6px; object-fit:cover; }
.drop-text{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.drop-hint{ font-size:10px; letter-spacing:.08em; color:var(--muted); flex-shrink:0; }

.hr{ height:1px; background:var(--line-soft); margin:4px 0; }
.sub-label{ font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }

.toggle-stack{ display:flex; flex-direction:column; gap:8px; }
.toggle-row{
  display:flex; align-items:center; gap:16px; cursor:pointer;
  padding:12px 14px; border-radius:12px;
  border:1px solid var(--line-soft); background:rgba(0,0,0,.2);
  transition:border-color .25s, background .25s;
}
.toggle-row > div{ flex:1; min-width:0; }
.toggle-row:hover{ border-color:rgba(74,222,128,.28); background:rgba(74,222,128,.04); }
.toggle-row:last-of-type{ border-bottom:1px solid var(--line-soft); }
.toggle-row b{ display:block; font-size:14px; font-weight:600; }
.toggle-row small{
  display:block; font-size:11.5px; color:var(--muted); margin-top:2px;
  line-height:1.4; overflow-wrap:anywhere; word-break:break-word;
}
.toggle-row .sw{ position:absolute; opacity:0; pointer-events:none; }
.switch{ margin-left:auto; flex-shrink:0; width:42px; height:24px; border-radius:100px;
  background:rgba(255,255,255,.09); border:1px solid var(--line); position:relative; transition:.3s var(--ease); }
.switch::after{ content:''; position:absolute; top:2.5px; left:3px; width:17px; height:17px;
  border-radius:50%; background:#8b8b92; transition:.32s var(--ease-out); }
.sw:checked + .switch{ background:var(--red); border-color:var(--red); box-shadow:0 0 14px -2px var(--red-glow); }
.sw:checked + .switch::after{ transform:translateX(17px); background:#fff; }

/* summary */
.summary-wrap{ position:sticky; top:96px; display:flex; flex-direction:column; gap:14px; }
.summary{
  background:
    linear-gradient(165deg, rgba(16,26,20,.97), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.4), rgba(74,222,128,.06) 45%, rgba(134,239,172,.18)) border-box;
}
.sum-kicker{
  font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:var(--accent-2);
  margin-bottom:14px;
}
.sum-head{ display:flex; align-items:center; gap:13px; padding-bottom:18px; border-bottom:1px solid var(--line-soft); }
.sum-avatar{
  width:48px; height:48px; border-radius:14px; flex-shrink:0; display:grid; place-items:center;
  font-family:var(--font-display); font-weight:700; font-size:18px;
  color:var(--accent-dark); background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 8px 20px -8px var(--red-glow); overflow:hidden;
}
.sum-avatar img{ width:100%; height:100%; object-fit:cover; }
.sum-name{ font-size:16px; font-weight:700; letter-spacing:-.02em; font-family:var(--font-display); }
.sum-sym{ font-size:12px; color:var(--accent-2); margin-top:2px; }
.sum-rows{ padding:18px 0; display:flex; flex-direction:column; gap:12px; }
.sum-row{ display:flex; justify-content:space-between; align-items:center; font-size:13px; }
.sum-row span{ color:var(--muted); } .sum-row b{ font-weight:600; font-size:12.5px; }
.sum-total{
  display:flex; justify-content:space-between; align-items:center;
  padding:14px 14px; margin-bottom:16px; border-radius:12px;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.22);
  font-size:15px; font-weight:600;
}
.sum-total b{ font-size:18px; color:var(--accent-2); font-family:var(--font-display); }
.flash{ animation:flash .5s var(--ease); }
@keyframes flash{ 0%{opacity:.25;transform:translateY(-3px);} 100%{opacity:1;transform:none;} }
.pay-to{ margin-top:16px; padding-top:16px; border-top:1px solid var(--line-soft); }
.pt-label{ font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); display:block; margin-bottom:7px; }
.pay-addr{ display:flex; align-items:center; gap:8px; background:#050a08; border:1px solid var(--line);
  border-radius:12px; padding:10px 11px; font-size:11.5px; color:var(--ink-2); cursor:pointer;
  width:100%; text-align:left; font-family:'JetBrains Mono',monospace; transition:.25s var(--ease); }
.pay-addr:hover{ border-color:rgba(74,222,128,.45); color:var(--ink); background:rgba(74,222,128,.04); }
.pay-addr span{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pay-addr svg{ width:14px; height:14px; margin-left:auto; flex-shrink:0; opacity:.6; }
.sum-note{ font-size:11.5px; color:var(--muted); text-align:center; margin-top:12px; }
.mini-note{
  display:flex; align-items:flex-start; gap:10px; font-size:12.5px; color:var(--muted);
  padding:14px 16px; border-radius:16px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.94), rgba(6,10,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.2), rgba(74,222,128,.04)) border-box;
  border:1px solid transparent;
}
.mini-note svg{ width:16px; height:16px; color:var(--red); flex-shrink:0; margin-top:1px; }

/* features */
.feature-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.card{
  border-radius:20px; padding:24px; position:relative; overflow:hidden;
  background:
    linear-gradient(165deg, rgba(14,20,17,.94), rgba(6,10,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.18), rgba(74,222,128,.03) 45%, rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  transition:transform .45s var(--ease-out), box-shadow .35s;
  box-shadow:0 1px 0 rgba(255,255,255,.03) inset;
}
.card::before{
  content:''; position:absolute; inset:0; pointer-events:none; opacity:.55;
  background:radial-gradient(500px circle at 0% 0%, rgba(74,222,128,.08), transparent 45%);
}
.card::after{ content:''; position:absolute; inset:0; opacity:0; pointer-events:none;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(74,222,128,.12),transparent 70%);
  transition:opacity .4s var(--ease); }
.card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 50px -30px rgba(74,222,128,.35), 0 1px 0 rgba(255,255,255,.04) inset;
}
.card:hover::after{ opacity:1; }
.card.wide,
.card.feat-full{ grid-column:1 / -1; }
.card > *{ position:relative; z-index:1; }

.feat-top{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:18px; }
.ic-wrap{
  width:42px; height:42px; border-radius:12px; display:grid; place-items:center;
  color:var(--accent-dark);
  background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 8px 22px -10px var(--red-glow), inset 0 1px 0 rgba(255,255,255,.28);
}
.card .ic{ width:20px; height:20px; color:inherit; margin:0; display:block; }
.feat-tag{
  font-size:10px; letter-spacing:.1em; text-transform:uppercase; font-weight:600;
  color:var(--accent-2); padding:5px 9px; border-radius:100px;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.22);
}
.card h3{ font-size:18px; margin-bottom:10px; letter-spacing:-.02em; }
.card p{ font-size:14px; color:var(--muted); line-height:1.6; }

.feat-points{ display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.feat-points li{
  font-size:11.5px; color:var(--ink-2); font-family:var(--font-display); font-weight:600;
  padding:6px 10px; border-radius:8px;
  background:rgba(255,255,255,.03); border:1px solid var(--line-soft);
}

.pipeline{ display:flex; align-items:center; gap:8px; margin-top:22px; flex-wrap:wrap; }
.pipeline span{
  display:inline-flex; align-items:center; gap:7px;
  font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--ink-2);
  border:1px solid rgba(74,222,128,.2); border-radius:9px; padding:7px 11px;
  background:rgba(5,10,8,.65);
}
.pipeline span em{ font-style:normal; font-size:9.5px; letter-spacing:.08em; color:var(--accent); opacity:.85; }
.pipeline i{ width:18px; height:1px; background:linear-gradient(90deg,var(--red),transparent); }

.feat-hero{
  background:
    linear-gradient(165deg, rgba(16,26,20,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.45), rgba(74,222,128,.06) 40%, rgba(134,239,172,.18)) border-box;
}
.feat-hero-grid{
  display:grid; grid-template-columns:1.35fr .65fr; gap:28px; align-items:center;
}
.feat-hero-copy h3{ margin-bottom:10px; }
.pipeline-stack{
  display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:0;
}
.pipeline-stack span{ justify-content:flex-start; }
.pipeline-stack i{ display:none; }

.feat-analytics{
  display:grid; grid-template-columns:1.15fr .85fr; gap:22px; align-items:stretch; padding:24px;
}
.feat-metrics{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:20px; }
.feat-metrics div{
  display:flex; flex-direction:column; gap:4px; padding:12px 10px; border-radius:12px;
  background:rgba(255,255,255,.025); border:1px solid var(--line-soft); text-align:center;
}
.feat-metrics b{ font-family:var(--font-display); font-size:16px; font-weight:700; letter-spacing:-.02em; color:var(--accent-2); }
.feat-metrics span{ font-size:10.5px; color:var(--muted); text-transform:uppercase; letter-spacing:.06em; }

.spark-panel{
  border-radius:16px; padding:14px; border:1px solid rgba(74,222,128,.18);
  background:rgba(0,0,0,.28); display:flex; flex-direction:column; justify-content:flex-end; min-height:160px;
}
.spark-head{ font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin-bottom:12px; }
.spark{ display:flex; align-items:flex-end; gap:4px; height:110px; margin-top:0; flex:1; }
.spark b{
  flex:1; background:linear-gradient(180deg,#5eead4,rgba(74,222,128,.14));
  border-radius:3px 3px 1px 1px; height:8%;
  box-shadow:0 0 10px -4px rgba(74,222,128,.5);
  transition:height .7s var(--ease-out);
}

/* steps / process */
.process-head{
  max-width:none; display:flex; align-items:flex-end; justify-content:space-between;
  gap:28px; flex-wrap:wrap; margin-bottom:40px;
}
.process-head > div{ max-width:560px; }
.process-head h2{ margin-bottom:0; }
.process-head .accent-line{
  background:linear-gradient(100deg,var(--accent) 10%,var(--accent-2) 90%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

.steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.step{
  border-radius:20px; padding:26px 24px 28px; position:relative; overflow:hidden;
  background:
    linear-gradient(165deg, rgba(14,20,17,.94), rgba(6,10,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.2), rgba(74,222,128,.04) 50%, rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  box-shadow:0 1px 0 rgba(255,255,255,.03) inset;
  transition:transform .45s var(--ease-out), box-shadow .35s;
}
.step::before{
  content:''; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(420px circle at 0% 0%, rgba(74,222,128,.09), transparent 50%);
}
.step::after{
  content:''; position:absolute; left:0; top:0; height:2px; width:0;
  background:linear-gradient(90deg,#5eead4,var(--accent),transparent);
  transition:width .55s var(--ease-out);
}
.step:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 50px -30px rgba(74,222,128,.35), 0 1px 0 rgba(255,255,255,.04) inset;
}
.step:hover::after{ width:100%; }
.step > *{ position:relative; z-index:1; }

.step-top{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:18px; }
.step-ic{
  width:44px; height:44px; border-radius:13px; display:grid; place-items:center;
  color:var(--accent-dark);
  background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 8px 22px -10px var(--red-glow), inset 0 1px 0 rgba(255,255,255,.28);
}
.step-ic svg{ width:20px; height:20px; display:block; }
.step-n{
  font-size:12px; letter-spacing:.12em; font-weight:700;
  color:var(--accent-2); padding:6px 10px; border-radius:100px;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.22);
}
.step h3{ font-size:18px; margin-bottom:10px; letter-spacing:-.02em; }
.step p{ font-size:14px; color:var(--muted); line-height:1.6; }

.step-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.step-chips li{
  font-size:11.5px; color:var(--ink-2); font-family:var(--font-display); font-weight:600;
  padding:6px 10px; border-radius:8px;
  background:rgba(255,255,255,.03); border:1px solid var(--line-soft);
}

.step-link{
  display:none;
}
@media (min-width:981px){
  .step-link{
    display:block; position:absolute; top:48px; right:-22px; z-index:2;
    width:30px; height:2px;
    background:linear-gradient(90deg, rgba(74,222,128,.55), rgba(74,222,128,.05));
    pointer-events:none;
  }
  .step-link::after{
    content:''; position:absolute; right:-1px; top:50%; width:6px; height:6px;
    border-right:1.5px solid rgba(74,222,128,.7); border-top:1.5px solid rgba(74,222,128,.7);
    transform:translateY(-50%) rotate(45deg);
  }
}

.process-cta{
  margin-top:22px; display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap;
  padding:18px 20px; border-radius:18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.94), rgba(6,10,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.35), rgba(74,222,128,.06) 50%, rgba(134,239,172,.15)) border-box;
  border:1px solid transparent;
  box-shadow:0 0 40px -24px var(--red-glow);
}
.process-cta b{ display:block; font-family:var(--font-display); font-size:15px; letter-spacing:-.02em; margin-bottom:4px; }
.process-cta span{ font-size:13px; color:var(--muted); }

/* reviews */
.marquee{ overflow:hidden; padding:8px 0; width:100%;
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.marquee-track{ display:flex; gap:16px; width:max-content; animation:slide 60s linear infinite; }
.marquee.reverse .marquee-track{ animation-direction:reverse; animation-duration:72s; }
.marquee:hover .marquee-track{ animation-play-state:paused; }
.review{ width:370px; flex-shrink:0; border:1px solid var(--line); border-radius:var(--r);
  background:var(--surface); padding:22px; transition:border-color .3s var(--ease),background .3s; }
.review:hover{ border-color:rgba(74,222,128,.30); background:var(--surface-2); }
.rv-head{ display:flex; align-items:center; gap:11px; margin-bottom:13px; }
.rv-av{ width:34px; height:34px; border-radius:50%; flex-shrink:0; display:grid; place-items:center;
  font-size:13px; font-weight:600; background:#141416; border:1px solid var(--line); color:var(--ink-2); }
.rv-name{ font-size:13.5px; font-weight:500; display:flex; align-items:center; gap:6px; }
.rv-name svg{ width:13px; height:13px; color:var(--red); }
.rv-handle{ font-size:11.5px; color:var(--muted); }
.rv-body{ font-size:13.5px; color:var(--ink-2); line-height:1.62; }
.rv-meta{ margin-top:14px; padding-top:12px; border-top:1px solid var(--line-soft);
  display:flex; justify-content:space-between; font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--muted); }
.rv-meta .tk-sym{ color:var(--red-soft); }

/* pricing */
.pricing-head{
  max-width:none; display:flex; align-items:flex-end; justify-content:space-between;
  gap:28px; flex-wrap:wrap; margin-bottom:40px;
}
.pricing-head > div{ max-width:560px; }
.pricing-head h2{ margin-bottom:0; }
.pricing-head .accent-line{
  background:linear-gradient(100deg,var(--accent) 10%,var(--accent-2) 90%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.price-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; align-items:stretch; }
.price-card{
  border-radius:20px; padding:28px 24px; position:relative; overflow:hidden;
  background:
    linear-gradient(165deg, rgba(14,20,17,.94), rgba(6,10,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.16), rgba(74,222,128,.03) 50%, rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  box-shadow:0 1px 0 rgba(255,255,255,.03) inset;
  display:flex; flex-direction:column;
  transition:transform .45s var(--ease-out), box-shadow .35s;
}
.price-card::before{
  content:''; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(420px circle at 0% 0%, rgba(74,222,128,.07), transparent 50%);
}
.price-card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 50px -30px rgba(74,222,128,.35), 0 1px 0 rgba(255,255,255,.04) inset;
}
.price-card > *{ position:relative; z-index:1; }
.price-card.featured{
  background:
    linear-gradient(165deg, rgba(16,28,20,.97), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.55), rgba(74,222,128,.08) 40%, rgba(134,239,172,.22)) border-box;
  box-shadow:0 30px 70px -45px var(--red-glow), 0 1px 0 rgba(255,255,255,.04) inset;
  transform:translateY(-6px);
}
.price-card.featured:hover{ transform:translateY(-10px); }
.pc-tag{
  position:absolute; top:16px; right:16px; font-size:9.5px; letter-spacing:.12em;
  text-transform:uppercase; background:linear-gradient(135deg,#5eead4,var(--accent));
  color:var(--accent-dark); font-weight:700; padding:4px 9px; border-radius:100px;
}
.pc-head{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:14px; }
.pc-name{ font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin:0; }
.pc-badge{
  font-size:10px; letter-spacing:.08em; text-transform:uppercase; font-weight:600;
  color:var(--accent-2); padding:4px 8px; border-radius:100px;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.2);
}
.price-card.featured .pc-badge{ display:none; }
.pc-price{
  font-family:var(--font-display); font-size:42px; font-weight:700; letter-spacing:-.04em; margin-bottom:10px;
  display:flex; align-items:baseline; gap:8px;
}
.pc-price .sol-ic{ align-self:center; margin-right:2px; }
.pc-price small{ font-size:14px; color:var(--muted); font-weight:500; letter-spacing:0; }
.pc-desc{ font-size:13.5px; color:var(--muted); line-height:1.55; margin-bottom:20px; min-height:42px; }
.price-card ul{ display:flex; flex-direction:column; gap:11px; margin-bottom:24px; flex:1; }
.price-card li{ font-size:13.5px; color:var(--ink-2); padding-left:22px; position:relative; }
.price-card li::before{ content:''; position:absolute; left:0; top:7px; width:11px; height:6px;
  border-left:1.5px solid var(--red); border-bottom:1.5px solid var(--red); transform:rotate(-45deg); }

/* faq */
.faq-wrap{ max-width:920px; }
.faq-head{
  max-width:none; display:flex; align-items:flex-end; justify-content:space-between;
  gap:28px; flex-wrap:wrap; margin-bottom:28px;
}
.faq-head > div{ max-width:520px; }
.faq-head h2{ margin-bottom:0; }
.faq-head .accent-line{
  background:linear-gradient(100deg,var(--accent) 10%,var(--accent-2) 90%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.faq{
  border-radius:20px; overflow:hidden;
  background:
    linear-gradient(165deg, rgba(14,20,17,.94), rgba(6,10,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.18), rgba(74,222,128,.04) 50%, rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  box-shadow:0 1px 0 rgba(255,255,255,.03) inset;
}
.faq details{ border-bottom:1px solid var(--line-soft); }
.faq details:last-child{ border-bottom:0; }
.faq summary{
  list-style:none; cursor:pointer; padding:18px 20px; display:flex; align-items:center;
  justify-content:space-between; gap:20px; font-size:15.5px; font-weight:600; letter-spacing:-.02em;
  transition:color .25s var(--ease), background .25s;
}
.faq summary span:first-child{ text-align:left; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary:hover{ color:var(--accent-2); background:rgba(74,222,128,.04); }
.chev{
  position:relative; width:28px; height:28px; flex-shrink:0; border-radius:8px;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.2);
}
.chev::before,.chev::after{
  content:''; position:absolute; top:50%; left:50%; width:11px; height:1.5px;
  background:var(--accent-2); transition:transform .35s var(--ease),background .25s;
  transform:translate(-50%,-50%);
}
.chev::after{ transform:translate(-50%,-50%) rotate(90deg); }
details[open] .chev::after{ transform:translate(-50%,-50%) rotate(0); }
details[open] .chev{ background:linear-gradient(135deg,#5eead4,var(--accent)); border-color:transparent; }
details[open] .chev::before,details[open] .chev::after{ background:var(--accent-dark); }
.faq .ans{ overflow:hidden; }
.faq .ans p{ font-size:14.5px; color:var(--muted); padding:0 20px 20px; max-width:70ch; line-height:1.65; }
details[open] .ans p{ animation:fadeUp .45s var(--ease-out) both; }
details[open] summary{ color:var(--ink); }
@keyframes fadeUp{ from{opacity:0;transform:translateY(-6px);} to{opacity:1;transform:none;} }

/* cta */
.section.cta-section{ padding:28px 0 36px; }
.cta{
  position:relative; overflow:hidden; text-align:center;
  border-radius:18px; padding:22px 24px 20px;
  background:
    linear-gradient(165deg, rgba(14,22,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.45), rgba(74,222,128,.06) 40%, rgba(134,239,172,.2)) border-box;
  border:1px solid transparent;
  box-shadow:0 18px 40px -32px var(--red-glow);
}
.cta-glow{
  position:absolute; top:-80px; left:50%; transform:translateX(-50%);
  width:360px; height:140px; background:radial-gradient(circle,rgba(74,222,128,.16),transparent 65%);
  filter:blur(16px); animation:breathe 8s var(--ease) infinite; pointer-events:none;
}
.cta > *{ position:relative; z-index:1; }
.cta .eyebrow{ margin-bottom:6px; }
.cta h2{
  font-size:clamp(22px,2.8vw,30px); margin:0 auto 6px; max-width:22ch;
  line-height:1.15;
}
.cta p{ color:var(--muted); margin:0 auto 14px; font-size:14px; max-width:40ch; line-height:1.45; }
.cta .cta-row{ margin-bottom:0; gap:10px; }
.cta .btn-lg{ padding:12px 20px; font-size:14px; }
.cta-pills{ display:flex; justify-content:center; gap:6px; flex-wrap:wrap; margin-top:12px; }
.cta-pills span{
  display:inline-flex; align-items:center; gap:5px;
  font-size:10.5px; font-family:var(--font-display); font-weight:600; color:var(--ink-2);
  padding:4px 9px; border-radius:100px;
  background:rgba(255,255,255,.03); border:1px solid var(--line-soft);
}

/* footer */
.footer{
  border-top:1px solid transparent;
  border-image:linear-gradient(90deg, transparent, rgba(74,222,128,.22), transparent) 1;
  padding:48px 0 24px; margin-top:12px;
  background:linear-gradient(180deg, rgba(74,222,128,.03), transparent 40%);
}
.footer-inner{ display:grid; grid-template-columns:1.7fr repeat(3,1fr); gap:40px; }
.f-brand p{ font-size:13.5px; color:var(--muted); margin-top:14px; max-width:34ch; line-height:1.6; }
.f-support{
  display:inline-flex; align-items:center; gap:8px; margin-top:18px;
  font-size:13px; font-weight:600; color:var(--accent-dark);
  padding:9px 14px; border-radius:100px;
  background:linear-gradient(135deg,#5eead4,var(--accent));
  box-shadow:0 8px 22px -10px var(--red-glow);
  transition:transform .25s var(--ease-out), filter .25s;
}
.f-support svg{ width:15px; height:15px; }
.f-support:hover{ transform:translateY(-2px); filter:brightness(1.05); }
.f-col{ display:flex; flex-direction:column; gap:11px; }
.f-col h4{
  font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--accent-2);
  margin-bottom:6px; font-family:var(--font-display);
}
.f-col a{ font-size:13.5px; color:var(--muted); transition:color .25s var(--ease), transform .25s; width:fit-content; }
.f-col a:hover{ color:var(--red-soft); transform:translateX(2px); }
.footer-bottom{
  display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-top:52px;
  padding-top:22px; border-top:1px solid var(--line-soft); font-size:12px; color:var(--muted);
}

/* ---------- modal: payment + deploy ---------- */
[hidden]{ display:none !important; }
.overlay{ position:fixed; inset:0; z-index:200; display:none; place-items:center; padding:22px;
  background:rgba(5,10,8,.82); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); }
.overlay.open{ display:grid; animation:ovIn .3s var(--ease); }
@keyframes ovIn{ from{ opacity:0; } }
.modal{ width:100%; max-width:470px; border:1px solid var(--line); border-radius:20px;
  background:linear-gradient(165deg, rgba(14,20,17,.98), rgba(6,10,8,.99)); padding:28px; position:relative; max-height:92vh; overflow:auto;
  box-shadow:0 40px 100px -40px rgba(74,222,128,.40); animation:modalIn .5s var(--ease-out); }
@keyframes modalIn{ from{ opacity:0; transform:translateY(18px) scale(.97); } }
.modal-x{ position:absolute; top:18px; right:18px; width:28px; height:28px; border-radius:7px;
  border:1px solid var(--line); background:transparent; color:var(--muted); cursor:pointer;
  font-size:16px; line-height:1; transition:.25s var(--ease); }
.modal-x:hover{ color:var(--ink); border-color:rgba(74,222,128,.50); }
.m-eyebrow{ font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--red); }
.modal h3{ font-size:20px; margin:12px 0 22px; }
.pay-amount{ text-align:center; padding:20px 0 22px; border-block:1px solid var(--line-soft); margin-bottom:22px; }
.pay-amount b{
  display:inline-flex; align-items:center; justify-content:center; gap:.4em;
  font-size:40px; font-weight:600; letter-spacing:-.04em; color:var(--red-soft);
  font-family:var(--font-display);
}
.pay-amount span{ display:block; font-size:12px; color:var(--muted); margin-top:6px; }
.m-label{ font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); display:block; margin-bottom:8px; }
.addr-box{ display:flex; align-items:center; gap:10px; width:100%; text-align:left; cursor:pointer;
  background:#050a08; border:1px solid var(--line); border-radius:var(--r-sm); padding:13px;
  font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--ink); line-height:1.5;
  word-break:break-all; transition:.25s var(--ease); }
.addr-box:hover{ border-color:rgba(74,222,128,.50); }
.addr-box svg{ width:15px; height:15px; flex-shrink:0; opacity:.55; }
.m-meta{ display:flex; flex-direction:column; gap:9px; margin:18px 0 22px; }
.m-meta div{ display:flex; justify-content:space-between; font-size:12.5px; }
.m-meta span{ color:var(--muted); }
.m-meta b{ font-weight:500; font-family:'JetBrains Mono',monospace; font-size:12px; }
.waiting{ display:flex; align-items:center; justify-content:center; gap:9px; font-size:12.5px;
  color:var(--muted); margin-bottom:18px; }
.wdot{ width:5px; height:5px; border-radius:50%; background:var(--red); animation:wave 1.2s infinite; }
.wdot:nth-child(2){ animation-delay:.15s; } .wdot:nth-child(3){ animation-delay:.3s; }
@keyframes wave{ 0%,60%,100%{ opacity:.25; transform:translateY(0); } 30%{ opacity:1; transform:translateY(-4px); } }
.m-note{ font-size:11.5px; color:var(--muted); text-align:center; margin-top:14px; line-height:1.55; }

/* modern checkout modal */
.pay-modal{ max-width:440px; padding:26px 24px 22px; }
.pay-modal-head{ padding-right:28px; margin-bottom:16px; }
.pay-modal-head h3{ margin:8px 0 6px; font-size:22px; letter-spacing:-.03em; }
.pay-modal-head h3 span{ color:var(--accent-2); }
.pay-modal-sub{ margin:0; font-size:13px; color:var(--muted); line-height:1.45; }
.pay-hero{
  text-align:center; padding:22px 16px; margin-bottom:14px; border-radius:18px;
  background:
    radial-gradient(120% 80% at 50% 0%, rgba(74,222,128,.16), transparent 60%),
    rgba(0,0,0,.35);
  border:1px solid rgba(74,222,128,.18);
}
.pay-hero-amount{
  display:inline-flex; align-items:center; justify-content:center; gap:.45em;
  font-size:36px; font-weight:700; letter-spacing:-.04em;
  font-family:var(--font-display); color:var(--accent-2);
}
.pay-hero-usd{
  margin-top:6px; font-size:14px; color:var(--ink-2); font-weight:550;
}
.pay-rate{
  margin-top:10px; display:inline-flex; align-items:center; gap:6px;
  padding:5px 10px; border-radius:999px; font-size:10.5px; letter-spacing:.04em;
  color:var(--muted); background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.06);
}
.pay-rate.is-live{ color:var(--accent-2); border-color:rgba(74,222,128,.25); background:rgba(74,222,128,.08); }
.pay-meta-row{
  display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-bottom:14px;
}
.pay-meta-row > div{
  padding:10px; border-radius:12px; text-align:center;
  background:rgba(255,255,255,.02); border:1px solid rgba(255,255,255,.05);
}
.pay-meta-row span{
  display:block; font-size:10px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted); margin-bottom:4px;
}
.pay-meta-row b{ font-size:12px; font-weight:600; }
.pay-addr-block{ margin-bottom:14px; }
.pay-addr-label{
  display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:8px;
}
.pay-addr-label .m-label{ margin:0; }
.pay-copy-hint{ font-size:11px; color:var(--accent-2); font-style:normal; }
.pay-addr{ border-radius:14px; padding:14px; }
.pay-modal #dashPayConfirm{ margin-top:2px; }
.fail-head .m-eyebrow{ display:block; margin-bottom:8px; }
.fail-head h3{ margin:0 0 8px; }
.fail-sub{ margin:0 0 18px; color:var(--muted); font-size:13.5px; line-height:1.5; }

@media (max-width:520px){
  .pay-hero-amount{ font-size:30px; }
  .pay-meta-row{ grid-template-columns:1fr; }
}

/* verify / not-verified */
.verify-scan{ text-align:center; padding:28px 10px 18px; }
.verify-spinner{
  width:42px; height:42px; margin:0 auto 18px; border-radius:50%;
  border:2.5px solid rgba(255,255,255,.08); border-top-color:var(--red);
  animation:spin .8s linear infinite;
}
.verify-scan p{ font-size:13.5px; color:var(--muted); line-height:1.55; }
.fail-head{ text-align:center; margin-bottom:22px; }
.fail-head h3{ font-size:22px; margin:0 0 10px; letter-spacing:-.03em; }
.fail-sub{ font-size:14px; color:var(--muted); line-height:1.55; margin:0; }
.fail-box{
  border:1px solid rgba(239,68,68,.35); border-radius:14px;
  background:rgba(239,68,68,.08); padding:18px 16px; margin-bottom:20px; text-align:center;
}
.fail-box b{ display:block; font-size:14.5px; color:#f87171; margin-bottom:8px; font-weight:600; }
.fail-box p{ font-size:13px; color:var(--muted); line-height:1.6; margin:0; }
.btn-tg{
  background:linear-gradient(105deg,#6d5efc 0%,#3dbbff 100%);
  border:0; color:#fff; font-weight:600;
  box-shadow:0 10px 28px -10px rgba(61,187,255,.55);
}
.btn-tg:hover{
  filter:brightness(1.06);
  box-shadow:0 14px 34px -10px rgba(61,187,255,.65);
  transform:translateY(-1px);
}

.dbar{ height:3px; border-radius:3px; background:rgba(255,255,255,.07); overflow:hidden; margin-bottom:24px; }
.dbar i{ display:block; height:100%; width:0; border-radius:3px;
  background:linear-gradient(90deg,var(--red-deep),var(--red)); transition:width .6s var(--ease-out); }
.dsteps{ display:flex; flex-direction:column; gap:14px; }
.dstep{ display:flex; align-items:center; gap:12px; font-size:13.5px; color:var(--muted); opacity:.45;
  transition:opacity .4s var(--ease),color .4s var(--ease); }
.dstep .mk{ width:17px; height:17px; border-radius:50%; border:1.5px solid rgba(255,255,255,.16);
  flex-shrink:0; position:relative; transition:.35s var(--ease); }
.dstep.active{ opacity:1; color:var(--ink); }
.dstep.active .mk{ border-color:var(--red); border-top-color:transparent; animation:spin .8s linear infinite; }
.dstep.done{ opacity:1; color:var(--ink-2); }
.dstep.done .mk{ border-color:#37d67a; background:#37d67a; animation:none; }
.dstep.done .mk::after{ content:''; position:absolute; left:5px; top:2px; width:4px; height:8px;
  border-right:2px solid #06120b; border-bottom:2px solid #06120b; transform:rotate(42deg); }

@media (max-width:560px){
  .modal{ padding:22px; } .pay-amount b{ font-size:32px; }
}

/* ---------- reviews: add + read ---------- */
.rv-actions{ display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin:-28px 0 40px; }
.rv-lock-note{ display:flex; align-items:center; gap:7px; font-size:12px; color:var(--muted); }
.rv-lock-note svg{ width:13px; height:13px; opacity:.7; }
.btn.locked{ opacity:.55; }
.btn.locked:hover{ border-color:var(--line); background:rgba(255,255,255,.02); }
.gate{ text-align:center; padding:6px 0 4px; }
.gate .gate-ic{ width:42px; height:42px; margin:0 auto 18px; border-radius:50%; display:grid;
  place-items:center; border:1px solid var(--line); background:#050a08; color:var(--red); }
.gate .gate-ic svg{ width:19px; height:19px; }
.gate p{ font-size:13.5px; color:var(--muted); line-height:1.65; margin-bottom:22px; }
textarea{ width:100%; padding:12px 14px; background:#050a08; color:var(--ink); resize:vertical;
  border:1px solid var(--line); border-radius:var(--r-sm); font:inherit; font-size:14px; line-height:1.6;
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease); }
textarea::placeholder{ color:#4d4d54; }
textarea:focus{ outline:none; border-color:rgba(74,222,128,.55); box-shadow:0 0 0 3px rgba(74,222,128,.10); }
textarea.err{ border-color:rgba(74,222,128,.85); }
.stars{ display:flex; gap:6px; }
.star{ width:30px; height:30px; padding:0; cursor:pointer; background:transparent; border:0;
  color:rgba(255,255,255,.18); transition:color .2s var(--ease),transform .2s var(--ease-out); }
.star svg{ width:100%; height:100%; display:block; }
.star:hover{ transform:scale(1.12); }
.star.on{ color:var(--red); }
.rv-modal-list{ display:flex; flex-direction:column; gap:12px; max-height:52vh; overflow-y:auto;
  margin-top:4px; padding-right:4px; }
.review.full{ width:auto; background:#050a08; }
.rv-stars{ display:flex; gap:3px; color:var(--red); margin:0 0 11px; }
.rv-stars svg{ width:13px; height:13px; display:block; }
.rv-stars .dim{ color:rgba(255,255,255,.15); }
.rv-item p{ white-space:pre-wrap; }
.rv-meta time{ font-family:inherit; }
.rv-empty{ text-align:center; padding:34px 10px; color:var(--muted); font-size:13.5px; line-height:1.7; }

/* ---------- support widget ---------- */
.support{ position:fixed; right:26px; bottom:26px; z-index:160; display:flex;
  flex-direction:column; align-items:flex-end; gap:14px; }

/* pulsing status dot */
.sc-dot{ width:9px; height:9px; border-radius:50%; background:var(--red); flex-shrink:0;
  position:relative; box-shadow:0 0 10px var(--red-glow); }
.sc-dot::after{ content:''; position:absolute; inset:-4px; border-radius:50%;
  border:1px solid var(--red); animation:ping 2s ease-out infinite; }

/* the always-visible trigger */
.support-btn{
  position:relative; display:inline-flex; align-items:center; gap:12px;
  font:inherit; padding:10px 18px 10px 10px; border-radius:100px; cursor:pointer;
  color:var(--ink); border:1px solid rgba(74,222,128,.28);
  background:linear-gradient(165deg, rgba(14,20,17,.94), rgba(6,10,8,.96));
  box-shadow:
    0 16px 40px -14px rgba(0,0,0,.75),
    0 0 0 1px rgba(74,222,128,.08),
    0 0 28px -10px var(--red-glow);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  overflow:hidden; transition:transform .28s var(--ease-out), border-color .25s, box-shadow .3s;
}
.support-btn::before{
  content:''; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(105deg, transparent 35%, rgba(255,255,255,.12) 50%, transparent 65%);
  transform:translateX(-120%);
}
.support-btn:hover{
  transform:translateY(-3px);
  border-color:rgba(74,222,128,.5);
  box-shadow:0 22px 48px -14px rgba(0,0,0,.8), 0 0 36px -8px var(--red-glow);
}
.support-btn:hover::before{ animation:btn-sheen .7s ease; }
.support-btn:active{ transform:translateY(-1px) scale(.98); }

.sb-avatar{
  position:relative; width:38px; height:38px; border-radius:50%; flex-shrink:0;
  display:grid; place-items:center;
  color:var(--accent-dark);
  background:linear-gradient(145deg,#5eead4 0%,var(--accent) 50%,#22c55e 100%);
  box-shadow:0 6px 16px -6px var(--red-glow), inset 0 1px 0 rgba(255,255,255,.3);
}
.sb-avatar svg{ width:18px; height:18px; }
.sb-online{
  position:absolute; right:0; bottom:0; width:11px; height:11px; border-radius:50%;
  background:#37d67a; border:2px solid #0a1210;
  box-shadow:0 0 8px rgba(55,214,122,.7);
}
.sb-copy{ display:flex; flex-direction:column; align-items:flex-start; gap:1px; line-height:1.2; text-align:left; }
.sb-title{ font-family:var(--font-display); font-size:13.5px; font-weight:700; letter-spacing:-.02em; color:var(--ink); }
.sb-sub{ font-size:11px; color:var(--accent-2); font-weight:500; letter-spacing:.01em; }
.sb-ping{
  position:absolute; inset:-2px; border-radius:100px; pointer-events:none;
  border:1px solid rgba(74,222,128,.45); opacity:0;
  animation:sb-ring 2.4s ease-out infinite;
}
@keyframes sb-ring{
  0%{ transform:scale(.96); opacity:.55; }
  70%,100%{ transform:scale(1.08); opacity:0; }
}

.support-btn .sc-dot,
.support-btn > svg{ display:none; }

/* the panel */
.support-card{ width:344px; padding:24px; border-radius:20px; border:1px solid var(--line);
  background:var(--surface-2); box-shadow:0 30px 70px -20px rgba(0,0,0,.95),
  0 0 0 1px rgba(74,222,128,.10); animation:modalIn .35s var(--ease-out); }
.sc-head{ display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.sc-head b{ font-size:18px; font-weight:600; letter-spacing:-.02em; }
.sc-body{ font-size:13.5px; color:var(--muted); line-height:1.6; margin-bottom:18px; }

/* telegram row */
.sc-row{ display:flex; align-items:center; gap:14px; padding:16px;
  border:1px solid var(--line); border-radius:14px; background:rgba(5,10,8,.9);
  transition:.25s var(--ease); }
.sc-row:hover{ border-color:rgba(74,222,128,.45); background:rgba(14,20,17,.95); transform:translateY(-1px); }
.sc-ic{ width:44px; height:44px; border-radius:50%; flex-shrink:0; display:grid; place-items:center;
  background:linear-gradient(145deg,#5eead4,var(--red-deep)); color:var(--accent-dark);
  box-shadow:0 6px 18px -6px var(--red-glow); }
.sc-ic svg{ width:22px; height:22px; }
.sc-txt{ min-width:0; }
.sc-txt b{ display:block; font-size:14.5px; font-weight:600; letter-spacing:-.01em; }
.sc-txt small{ display:block; font-size:12px; color:var(--muted); margin-top:2px; }
.sc-txt em{ display:block; font-style:normal; font-size:12.5px; color:var(--red-soft);
  font-family:'JetBrains Mono',monospace; margin-top:4px; }
.sc-chev{ width:18px; height:18px; margin-left:auto; flex-shrink:0; color:var(--muted);
  transition:transform .25s var(--ease),color .25s; }
.sc-row:hover .sc-chev{ transform:translateX(3px); color:var(--red-soft); }

.sc-alt{ display:block; text-align:center; font-size:12.5px; color:var(--muted);
  margin-top:16px; transition:color .25s var(--ease); }
.sc-alt:hover{ color:var(--red-soft); }

.sc-close{ display:flex; align-items:center; justify-content:center; gap:8px; width:100%;
  margin-top:18px; padding:13px; border-radius:100px; cursor:pointer; font:inherit;
  font-size:14.5px; font-weight:700; color:var(--accent-dark); border:0;
  background:linear-gradient(135deg,#5eead4,var(--accent));
  transition:.25s var(--ease); }
.sc-close:hover{ background:linear-gradient(135deg,#86efac,var(--accent-2)); }
.sc-close svg{ width:16px; height:16px; }

@media (max-width:560px){
  .support{ right:14px; bottom:14px; gap:10px; }
  .support-card{ width:min(344px,88vw); padding:20px; }
  .support-btn{ padding:9px 14px 9px 9px; }
  .sb-title{ font-size:13px; }
  .sb-sub{ font-size:10.5px; }
}

/* toast */
/* auth */
.nav-auth{ display:flex; align-items:center; }
.nav-user{
  display:flex; align-items:center; gap:8px;
  padding:4px 4px 4px 4px;
}
.nav-avatar{
  width:30px; height:30px; border-radius:9px; display:grid; place-items:center;
  font-size:12px; font-weight:700; color:var(--accent-dark);
  background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 4px 12px -6px var(--red-glow);
}
.nav-user-meta{ display:flex; flex-direction:column; line-height:1.15; min-width:0; max-width:120px; }
.nav-user-meta b{ font-size:12px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.nav-user-meta small{ font-size:10px; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.launcher.is-locked .launch-form,
.launcher.is-locked .summary-wrap{
  filter:grayscale(.15); opacity:.55; pointer-events:none; user-select:none;
}
.auth-gate{
  grid-column:1 / -1; margin-bottom:18px;
  border-radius:16px; padding:16px 18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.35), rgba(74,222,128,.08)) border-box;
  border:1px solid transparent;
  box-shadow:0 16px 40px -28px var(--red-glow);
}
.auth-gate-inner{
  display:flex; align-items:center; gap:14px; flex-wrap:wrap;
}
.auth-gate-ic{
  width:40px; height:40px; border-radius:12px; display:grid; place-items:center; flex-shrink:0;
  color:var(--accent); background:rgba(74,222,128,.1); border:1px solid rgba(74,222,128,.22);
}
.auth-gate-ic svg{ width:18px; height:18px; }
.auth-gate b{ display:block; font-size:14px; margin-bottom:2px; }
.auth-gate p{ margin:0; font-size:13px; color:var(--muted); max-width:42ch; }
.auth-gate .btn{ margin-left:auto; }

.auth-modal{
  max-width:420px;
  padding:0;
  overflow:hidden;
  border-radius:22px;
  background:
    linear-gradient(165deg, rgba(16,24,20,.98), rgba(6,10,8,.995)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.4), rgba(74,222,128,.06) 45%, rgba(255,255,255,.08)) border-box;
  border:1px solid transparent;
  box-shadow:
    0 40px 100px -36px rgba(0,0,0,.85),
    0 0 0 1px rgba(74,222,128,.06) inset;
}
.auth-modal::before{
  content:''; position:absolute; inset:0 0 auto 0; height:120px; pointer-events:none;
  background:radial-gradient(ellipse 80% 100% at 50% -20%, rgba(74,222,128,.18), transparent 70%);
}
.auth-modal > *:not(.modal-x){ position:relative; z-index:1; }
.auth-modal .modal-x{
  position:absolute; top:16px; right:16px; z-index:5;
  width:32px; height:32px; border-radius:10px;
  background:rgba(255,255,255,.04);
}
.auth-brand{
  display:flex; align-items:center; gap:12px;
  padding:28px 28px 0;
}
.auth-logo{
  width:40px; height:40px; border-radius:12px;
  box-shadow:0 8px 20px -10px var(--red-glow);
}
.auth-brand-text{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.auth-brand-name{
  font-family:var(--font-display); font-size:15px; font-weight:700; letter-spacing:-.02em;
}
.auth-brand-tag{
  font-size:10px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--accent-2); opacity:.85;
}
.auth-head{ padding:18px 28px 0; }
.auth-modal h3{
  margin:0 0 6px; font-size:24px; letter-spacing:-.03em; line-height:1.15;
}
.auth-sub{
  color:var(--muted); font-size:13.5px; line-height:1.45; margin:0;
}
.auth-tabs{
  display:grid; grid-template-columns:1fr 1fr; gap:4px;
  margin:20px 28px 0; padding:4px;
  border-radius:14px;
  background:rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.05);
}
.auth-tab{
  font:inherit; font-size:13px; font-weight:600; padding:11px 12px; cursor:pointer;
  border:0; border-radius:11px; background:transparent; color:var(--muted);
  transition:color .22s, background .22s, box-shadow .22s, transform .22s;
}
.auth-tab:hover{ color:var(--ink); }
.auth-tab.on{
  color:var(--accent-dark);
  background:linear-gradient(135deg,#5eead4,var(--accent));
  box-shadow:0 6px 18px -8px var(--red-glow);
}
.auth-form{ padding:18px 28px 8px; }
.auth-form .field{ margin-bottom:14px; gap:7px; }
.auth-label-row{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
}
.auth-hint{ font-size:10px; letter-spacing:.04em; color:var(--muted); opacity:.8; }
.auth-input{
  position:relative; display:flex; align-items:center;
}
.auth-input-ic{
  position:absolute; left:12px; top:50%; transform:translateY(-50%);
  width:18px; height:18px; color:var(--muted); pointer-events:none;
  transition:color .2s;
}
.auth-input-ic svg{ width:18px; height:18px; display:block; }
.auth-input input{
  width:100%;
  padding:13px 14px 13px 42px !important;
  background:rgba(5,10,8,.9) !important;
  border:1px solid rgba(120,220,160,.12) !important;
  border-radius:12px;
  font-size:14px;
}
.auth-pass-wrap input{ padding-right:46px !important; }
.auth-input:focus-within .auth-input-ic{ color:var(--accent); }
.auth-input:focus-within input{
  border-color:rgba(74,222,128,.5) !important;
  box-shadow:0 0 0 3px rgba(74,222,128,.1);
  background:#0a110e !important;
}
.auth-eye{
  position:absolute; right:8px; top:50%; transform:translateY(-50%);
  width:34px; height:34px; border:0; border-radius:9px; cursor:pointer;
  background:transparent; color:var(--muted); display:grid; place-items:center;
  transition:color .2s, background .2s;
}
.auth-eye:hover{ color:var(--ink); background:rgba(255,255,255,.05); }
.auth-eye svg{ width:16px; height:16px; }
.auth-error{
  margin:0 0 12px; padding:11px 12px; border-radius:11px; font-size:12.5px; line-height:1.4;
  color:#fecaca; background:rgba(248,113,113,.08); border:1px solid rgba(248,113,113,.22);
}
.auth-submit{
  margin-top:4px; padding:14px 18px; font-size:14.5px; border-radius:13px;
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
}
.auth-submit svg{ width:16px; height:16px; }
.auth-foot{
  margin:0; padding:4px 28px 24px; text-align:center;
  font-size:13px; color:var(--muted);
}
.auth-switch{
  font:inherit; font-weight:600; color:var(--accent-2);
  background:none; border:0; padding:0; cursor:pointer;
  text-decoration:underline; text-decoration-color:rgba(134,239,172,.35);
  text-underline-offset:3px; transition:color .2s;
}
.auth-switch:hover{ color:var(--accent); }

/* ---------- dashboard (sidebar app shell) ---------- */
.page-dashboard{ min-height:100vh; }
.page-dashboard .bg{ z-index:0; }
.dash-app{
  position:relative; z-index:1;
  display:grid; grid-template-columns:260px minmax(0,1fr);
  min-height:100vh;
}
.dash-sidebar{
  position:sticky; top:0; height:100vh;
  display:flex; flex-direction:column; gap:8px;
  padding:18px 14px;
  background:rgba(6,10,8,.92);
  border-right:1px solid rgba(74,222,128,.12);
  backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
}
.dash-side-brand{
  display:flex; align-items:center; justify-content:space-between; gap:8px;
  padding:4px 8px 14px;
}
.dash-side-close{
  display:none; width:36px; height:36px; border-radius:10px; cursor:pointer; flex-shrink:0;
  border:1px solid rgba(74,222,128,.18); background:rgba(255,255,255,.03);
  color:var(--ink); align-items:center; justify-content:center; padding:0;
}
.dash-side-close:hover{ background:rgba(74,222,128,.1); border-color:rgba(74,222,128,.32); }
.dash-side-nav{ display:flex; flex-direction:column; gap:16px; flex:1; overflow:auto; }
.dash-side-group{ display:flex; flex-direction:column; gap:3px; }
.dash-side-label{
  display:block; padding:2px 12px 6px;
  font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  color:rgba(163,179,171,.55);
}
.dash-side-link{
  display:flex; align-items:center; gap:10px; width:100%;
  padding:11px 12px; border-radius:12px; border:0; cursor:pointer;
  background:transparent; color:var(--muted); font:inherit; font-size:13.5px; font-weight:550;
  text-align:left; text-decoration:none;
  transition:background .2s, color .2s, box-shadow .2s;
}
.dash-side-link svg{ width:18px; height:18px; flex-shrink:0; opacity:.85; }
.dash-side-link:hover{ color:var(--ink); background:rgba(74,222,128,.07); }
.dash-side-link.on{
  color:var(--accent-dark); font-weight:650;
  background:linear-gradient(135deg,#5eead4,var(--accent));
  box-shadow:0 8px 20px -10px var(--red-glow);
}
.dash-side-link.on svg{ opacity:1; }
.dash-side-link.quiet{ color:var(--muted); }
.dash-side-badge{
  margin-left:auto; font-size:10px; font-weight:700; font-style:normal;
  min-width:20px; height:20px; padding:0 6px; border-radius:999px;
  display:inline-grid; place-items:center;
  background:rgba(255,255,255,.06); color:var(--ink-2);
}
.dash-side-link.on .dash-side-badge{
  background:rgba(4,18,10,.2); color:var(--accent-dark);
}
.dash-side-foot{
  display:flex; flex-direction:column; gap:4px;
  padding-top:10px; border-top:1px solid rgba(255,255,255,.05);
}
.dash-side-user{
  display:flex; align-items:center; gap:10px; width:100%;
  margin-top:8px; padding:10px; border-radius:12px;
  background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.05);
  color:inherit; font:inherit; text-align:left; cursor:pointer;
  transition:border-color .2s, background .2s;
}
.dash-side-user:hover{
  border-color:rgba(74,222,128,.28); background:rgba(74,222,128,.06);
}
.dash-side-user b{ display:block; font-size:12.5px; }
.dash-side-user small{
  display:block; font-size:10.5px; color:var(--muted);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:140px;
}

.dash-main{ min-width:0; display:flex; flex-direction:column; min-height:100vh; }
.dash-topbar{
  position:sticky; top:0; z-index:20;
  display:flex; align-items:center; gap:14px;
  padding:14px 24px;
  background:rgba(5,10,8,.78); backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(74,222,128,.1);
}
.dash-topbar-title{ flex:1; min-width:0; }
.dash-topbar-title .eyebrow{ margin-bottom:2px; font-size:10px; }
.dash-topbar-title h1{ font-size:18px; margin:0; letter-spacing:-.02em; font-weight:700; }
.dash-topbar .btn-accent{
  padding:9px 14px; font-size:13px;
}
.dash-topbar .btn-accent svg{ width:14px; height:14px; }
.dash-balance-chip{
  appearance:none; border:0; cursor:pointer; font:inherit;
  display:inline-flex; align-items:center; gap:7px; flex-shrink:0;
  padding:8px 12px; border-radius:999px;
  background:rgba(74,222,128,.1); border:1px solid rgba(74,222,128,.28);
  color:var(--accent-2); font-weight:700; font-size:13px;
  transition:background .2s, border-color .2s;
}
.dash-balance-chip:hover{
  background:rgba(74,222,128,.16); border-color:rgba(74,222,128,.42);
}
.dash-balance-chip em{
  font-style:normal; font-size:10px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted); font-weight:700;
}
.dash-balance-pill,.admin-balance-pill{
  display:inline-flex; align-items:center; gap:8px;
  padding:12px 14px; border-radius:12px; min-height:46px; width:100%;
  box-sizing:border-box;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.22);
  color:var(--accent-2); font-weight:700; font-size:16px;
}
.dash-balance-pill em,.admin-balance-pill em{
  font-style:normal; font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted); font-weight:700;
}
.dash-side-bal{
  display:flex; align-items:center; gap:5px; margin-top:4px;
  font-size:11.5px; color:var(--accent-2); font-weight:700;
}
.dash-menu-btn{
  display:none; width:40px; height:40px; border-radius:10px; cursor:pointer;
  border:1px solid rgba(74,222,128,.18); background:rgba(255,255,255,.03);
  flex-direction:column; justify-content:center; align-items:center; gap:5px;
}
.dash-menu-btn span{ width:16px; height:1.5px; background:var(--ink); border-radius:2px; }
.dash-scrim{
  position:fixed; inset:0; z-index:45;
  background:rgba(0,0,0,.55);
  border:0; padding:0; margin:0; cursor:pointer;
}
.dash-scrim[hidden]{ display:none !important; }
.dash-app.sidebar-open .dash-sidebar{ z-index:50; }
body.dash-drawer-open{ overflow:hidden !important; touch-action:none; }
.dash-content{ padding:22px 24px 40px; display:flex; flex-direction:column; gap:16px; }
.dash-view{ display:none; animation:dashIn .28s var(--ease-out); }
.dash-view.on{ display:block; }
@keyframes dashIn{ from{ opacity:0; transform:translateY(8px);} to{ opacity:1; transform:none;} }

.dash-hero-card{
  display:flex; align-items:flex-end; justify-content:space-between; gap:18px; flex-wrap:wrap;
  padding:22px; border-radius:20px; margin-bottom:16px;
  background:
    linear-gradient(165deg, rgba(14,22,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.35), rgba(74,222,128,.06) 50%, rgba(255,255,255,.06)) border-box;
  border:1px solid transparent;
}
.dash-hero-card h2{ font-size:clamp(22px,2.6vw,30px); margin:0 0 8px; }
.dash-hero-card p{ margin:0; color:var(--muted); max-width:48ch; font-size:14.5px; }
.dash-hero-actions{ display:flex; gap:10px; flex-wrap:wrap; }
.dash-muted{ color:var(--muted); font-size:14px; line-height:1.5; margin:0 0 14px; }

.dash-stats{
  display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:16px;
}
.dash-stats-5{ grid-template-columns:repeat(5,minmax(0,1fr)); }
.dash-stat{
  padding:16px 18px; border-radius:16px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.94), rgba(6,10,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.2), rgba(74,222,128,.04) 55%, rgba(255,255,255,.05)) border-box;
  border:1px solid transparent;
}
.dash-stat-balance{
  background:
    linear-gradient(165deg, rgba(14,28,18,.96), rgba(6,12,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.45), rgba(74,222,128,.08) 55%, rgba(255,255,255,.05)) border-box;
}
.dash-stat-balance b{ color:var(--accent-2); }
.ds-label{
  display:block; font-size:10px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--muted); margin-bottom:8px;
}
.dash-stat b{
  display:block; font-family:var(--font-display); font-size:26px; font-weight:700;
  letter-spacing:-.03em; margin-bottom:4px;
}
.dash-stat small{ color:var(--muted); font-size:12px; }

.dash-quick{ display:grid; grid-template-columns:1.2fr .8fr; gap:14px; }
.dash-quick-card h3{ font-size:18px; margin:0 0 14px; }
.dash-quick-grid{ display:grid; gap:10px; }
.dash-quick-btn{
  display:flex; align-items:center; gap:14px;
  text-align:left; cursor:pointer; border-radius:14px; padding:14px;
  border:1px solid rgba(255,255,255,.06); background:rgba(255,255,255,.02);
  color:inherit; font:inherit; transition:border-color .2s, background .2s, transform .2s;
}
.dash-quick-btn:hover{
  border-color:rgba(74,222,128,.3); background:rgba(74,222,128,.06); transform:translateY(-1px);
}
.dash-quick-ic{
  width:40px; height:40px; border-radius:12px; flex-shrink:0;
  display:grid; place-items:center;
  color:var(--accent);
  background:rgba(74,222,128,.1);
  border:1px solid rgba(74,222,128,.28);
  transition:background .2s, border-color .2s, color .2s, box-shadow .2s;
}
.dash-quick-ic svg{ width:18px; height:18px; display:block; }
.dash-quick-btn:hover .dash-quick-ic{
  color:var(--accent-dark);
  background:linear-gradient(145deg,#5eead4,var(--accent));
  border-color:transparent;
  box-shadow:0 8px 18px -10px var(--red-glow);
}
.dash-quick-copy{ min-width:0; display:flex; flex-direction:column; gap:3px; }
.dash-quick-btn b{ display:block; font-size:14px; font-weight:650; }
.dash-quick-btn .dash-quick-copy > span{ font-size:12.5px; color:var(--muted); }

.dash-panel{
  border-radius:20px; padding:22px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.22), rgba(74,222,128,.05) 50%, rgba(255,255,255,.05)) border-box;
  border:1px solid transparent;
  box-shadow:0 20px 50px -36px rgba(0,0,0,.7);
}
.dash-panel-wide{ max-width:820px; }
.dash-panel-head{
  display:flex; align-items:flex-end; justify-content:space-between; gap:12px;
  margin-bottom:18px;
}
.dash-panel-head h2{ font-size:22px; margin:0; }
.dash-panel-head .eyebrow{ margin-bottom:8px; }

/* ---------- create launcher layout ---------- */
.dash-create{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:18px;
  align-items:start;
}
.dash-create-main{
  display:flex; flex-direction:column; gap:14px; min-width:0;
}
.dash-step{
  border-radius:18px; padding:18px 18px 16px;
  display:flex; flex-direction:column; gap:14px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.2), rgba(74,222,128,.04) 55%, rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  box-shadow:0 16px 40px -32px rgba(0,0,0,.65);
}
.dash-step-head{
  display:flex; align-items:center; gap:12px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.dash-step-head b{
  display:block; font-family:var(--font-display); font-size:15px; letter-spacing:-.02em;
}
.dash-step-head small{ display:block; font-size:12px; color:var(--muted); margin-top:2px; }
.dash-step .field{ margin-bottom:0; }
.dash-step .row{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.dash-step-split{
  display:grid; grid-template-columns:1.1fr .9fr; gap:14px; align-items:start;
}
.dash-step .chips{ margin:8px 0 0; display:flex; flex-wrap:wrap; gap:8px; }

.dash-media-stack{ display:flex; flex-direction:column; gap:14px; }
.dash-subblock{
  padding:14px; border-radius:14px;
  background:rgba(0,0,0,.22); border:1px solid rgba(255,255,255,.05);
}
.dash-subblock-head{
  display:flex; align-items:center; gap:10px; margin-bottom:12px;
}
.dash-subblock-head b{ display:block; font-size:13.5px; letter-spacing:-.01em; }
.dash-subblock-head small{ display:block; font-size:11.5px; color:var(--muted); margin-top:2px; }
.dash-sub-ic{
  width:32px; height:32px; border-radius:10px; flex-shrink:0;
  display:grid; place-items:center; color:var(--accent);
  background:rgba(74,222,128,.1); border:1px solid rgba(74,222,128,.25);
}
.dash-sub-ic svg{ width:15px; height:15px; display:block; }
.dash-liq-row{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap;
}
.dash-liq-field{ flex:0 0 148px; margin:0; min-width:120px; }
.dash-liq-input{
  position:relative; display:flex; align-items:center;
}
.dash-liq-input input{
  width:100%; padding-right:48px; font-family:var(--font-display);
  font-size:16px; font-weight:650; letter-spacing:-.02em;
}
.dash-liq-unit{
  position:absolute; right:12px; top:50%; transform:translateY(-50%);
  font-size:11px; letter-spacing:.08em; color:var(--muted); pointer-events:none;
}
.dash-liq-row .chips{ margin:0; flex:1; }
.visually-hidden{
  position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

.dash-drop{
  position:relative;
  min-height:0;
  flex-direction:row;
  align-items:center;
  justify-content:flex-start;
  text-align:left;
  padding:14px 16px;
  padding-right:84px;
  gap:0;
}
.dash-drop-inner{
  display:flex; flex-direction:row; align-items:center; gap:12px;
  width:100%; min-width:0; pointer-events:none;
}
.dash-drop .drop-copy{
  display:flex; flex-direction:column; gap:3px; min-width:0; align-items:flex-start;
}
.dash-drop .drop-ic{
  width:40px; height:40px; border-radius:11px;
}
.dash-drop .drop-ic svg{ width:17px; height:17px; }
.dash-drop .drop-text{
  white-space:nowrap; max-width:100%;
  overflow:hidden; text-overflow:ellipsis;
  font-size:13.5px; line-height:1.3; color:inherit;
}
.dash-drop .drop-hint{ margin-top:0; }
.dash-drop.has-file{
  border-style:solid;
  border-color:rgba(74,222,128,.4);
  background:rgba(74,222,128,.05);
}
.dash-drop.has-file .drop-hint{ display:none; }
.dash-drop .dash-drop-preview{
  width:40px; height:40px; border-radius:10px; object-fit:cover;
  border:1px solid rgba(74,222,128,.3);
  box-shadow:0 6px 14px -10px rgba(0,0,0,.7);
  display:block; margin:0; flex-shrink:0;
}
.dash-drop-name{
  display:block; max-width:240px;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  font-size:12.5px; color:var(--ink-2);
}
.dash-drop-clear{
  position:absolute; top:50%; right:10px; transform:translateY(-50%);
  border:1px solid rgba(255,255,255,.1); background:rgba(0,0,0,.45);
  color:var(--muted); font:inherit; font-size:11px; font-weight:600;
  padding:5px 9px; border-radius:8px; cursor:pointer;
  transition:color .2s, border-color .2s, background .2s;
}
.dash-drop-clear:hover{
  color:var(--ink); border-color:rgba(74,222,128,.35); background:rgba(74,222,128,.1);
}
.field-label{
  display:block; font-size:12.5px; color:var(--ink-2); font-weight:500; margin-bottom:8px;
}
.dash-sec-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0;
}
.dash-sec-grid .toggle-row{
  margin:0; border-radius:14px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.02);
  align-items:flex-start;
}
.dash-sec-grid .toggle-row .switch{ margin-top:2px; }
.dash-sec-grid .toggle-row:last-of-type{ border-bottom:1px solid rgba(255,255,255,.06); }
.dash-socials{
  display:grid; grid-template-columns:1fr 1fr; gap:12px;
}
.dash-socials .field > label{
  display:inline-flex; align-items:center; gap:8px;
}

.dash-create-aside{ position:sticky; top:88px; }
.dash-summary{
  border-radius:20px; padding:20px;
  background:
    linear-gradient(165deg, rgba(12,18,15,.98), rgba(5,9,7,.99)) padding-box,
    linear-gradient(150deg, rgba(74,222,128,.35), rgba(74,222,128,.08) 45%, rgba(255,255,255,.06)) border-box;
  border:1px solid transparent;
  box-shadow:0 24px 50px -34px rgba(0,0,0,.8);
}
.dash-summary .eyebrow{ margin-bottom:14px; }
.dash-sum-head{
  display:flex; align-items:center; gap:12px;
  margin-bottom:16px; padding-bottom:14px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.dash-sum-av{
  width:44px; height:44px; border-radius:14px; flex-shrink:0;
  display:grid; place-items:center; font-weight:750; font-size:16px;
  color:var(--accent-dark); overflow:hidden;
  background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 8px 18px -10px var(--red-glow);
}
.dash-sum-av img{ width:100%; height:100%; object-fit:cover; display:block; }
.dash-sum-head b{ display:block; font-size:15px; letter-spacing:-.02em; }
.dash-sum-head span{ display:block; font-size:12.5px; color:var(--accent-2); margin-top:2px; }
.dash-summary .dash-fee-box{
  margin:0 0 14px; padding:0; border:0; background:transparent; gap:11px;
}
.dash-summary .dash-fee-box > div{ font-size:12.5px; }
.dash-sum-note{
  margin:12px 0 0; font-size:11.5px; line-height:1.45; color:var(--muted); text-align:center;
}

.dash-form .field{ margin-bottom:14px; }
.dash-form .row{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.dash-form .chips{ margin:8px 0 0; }
.dash-form .form-block{
  margin-bottom:18px; padding-bottom:16px;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.dash-form .form-block:last-of-type{ border-bottom:0; margin-bottom:8px; padding-bottom:0; }
.dash-form .toggle-stack{ margin-top:4px; }
.dash-form-grid{ max-width:640px; }
.dash-fee-box{
  display:flex; flex-direction:column; gap:10px;
  padding:14px; border-radius:14px; margin-bottom:16px;
  background:rgba(0,0,0,.28); border:1px solid rgba(74,222,128,.12);
}
.dash-fee-box > div{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  font-size:13px; color:var(--muted);
}
.dash-fee-box b{ color:var(--ink); font-weight:600; }
.dash-fee-total{ padding-top:10px; border-top:1px solid rgba(255,255,255,.06); }
.dash-fee-total span,.dash-fee-total b{ color:var(--accent-2); }

.ref-link-box{
  display:flex; gap:8px; align-items:center; flex-wrap:wrap;
  padding:10px; border-radius:14px; margin-bottom:12px;
  background:rgba(0,0,0,.35); border:1px solid rgba(74,222,128,.16);
}
.ref-link-box code{
  flex:1; min-width:0; font-family:var(--font-mono, var(--font-display));
  font-size:12px; color:var(--accent-2); word-break:break-all; padding:0 6px;
}
.ref-mini-stats{
  display:flex; gap:16px; align-items:center; justify-content:space-between; flex-wrap:wrap;
}
.ref-mini-stats > div span{
  display:block; font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:4px;
}
.ref-list{ display:flex; flex-direction:column; gap:8px; }
.ref-person{
  display:flex; align-items:center; gap:12px; padding:12px 14px;
  border-radius:14px; background:rgba(255,255,255,.02); border:1px solid rgba(255,255,255,.05);
  transition:border-color .2s, background .2s;
}
.ref-person:hover{
  border-color:rgba(74,222,128,.22); background:rgba(74,222,128,.04);
}
.ref-person b{ display:block; font-size:13.5px; }
.ref-person small{ color:var(--muted); font-size:12px; }
.ref-person-date{ margin-left:auto; font-size:12px; color:var(--muted); flex-shrink:0; }

/* ---------- referrals panel ---------- */
.dash-ref{ display:flex; flex-direction:column; gap:14px; }
.dash-ref-hero{
  display:flex; align-items:center; justify-content:space-between; gap:20px;
  padding:22px 24px; border-radius:20px;
  background:
    linear-gradient(135deg, rgba(74,222,128,.14), rgba(6,10,8,.2) 42%, rgba(6,10,8,.55)),
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.35), rgba(74,222,128,.06) 50%, rgba(255,255,255,.05)) border-box;
  border:1px solid transparent;
  box-shadow:0 22px 50px -36px rgba(0,0,0,.75);
}
.dash-ref-hero-copy{ min-width:0; max-width:520px; }
.dash-ref-hero-copy .eyebrow{ margin-bottom:8px; }
.dash-ref-hero-copy h2{
  margin:0 0 8px; font-size:clamp(22px, 2.4vw, 28px); letter-spacing:-.03em; line-height:1.15;
}
.dash-ref-hero-copy p{ margin:0; color:var(--muted); font-size:13.5px; line-height:1.5; }
.dash-ref-hero-stat{
  flex-shrink:0; text-align:center; min-width:120px;
  padding:14px 18px; border-radius:16px;
  background:rgba(0,0,0,.35); border:1px solid rgba(74,222,128,.2);
}
.dash-ref-hero-stat b{
  display:block; font-size:42px; line-height:1; font-family:var(--font-display);
  letter-spacing:-.04em; color:var(--accent-2);
}
.dash-ref-hero-stat span{ display:block; margin-top:6px; font-size:11.5px; color:var(--muted); }

.dash-ref-body{
  display:grid; grid-template-columns:1.35fr .75fr; gap:14px; align-items:stretch;
}
.dash-ref-card{
  border-radius:18px; padding:18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.2), rgba(74,222,128,.04) 55%, rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  box-shadow:0 16px 40px -32px rgba(0,0,0,.65);
}
.dash-ref-card-head{
  display:flex; align-items:center; gap:12px;
  margin-bottom:14px; padding-bottom:12px;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.dash-ref-card-head b{ display:block; font-size:14.5px; letter-spacing:-.02em; }
.dash-ref-card-head small{ display:block; font-size:12px; color:var(--muted); margin-top:2px; }
.dash-ref-ic{
  width:36px; height:36px; border-radius:11px; flex-shrink:0;
  display:grid; place-items:center; color:var(--accent);
  background:rgba(74,222,128,.1); border:1px solid rgba(74,222,128,.28);
}
.dash-ref-ic svg{ width:16px; height:16px; display:block; }
.dash-ref-count-pill{
  margin-left:auto; min-width:28px; height:28px; padding:0 9px;
  display:inline-grid; place-items:center; border-radius:999px;
  font-size:12px; font-weight:700;
  color:var(--accent-dark);
  background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 6px 14px -8px var(--red-glow);
}
.ref-code-tile{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:12px 14px; border-radius:14px;
  background:rgba(255,255,255,.025); border:1px solid rgba(255,255,255,.06);
}
.ref-code-tile span{
  display:block; font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:4px;
}
.ref-code-tile b{ font-size:18px; letter-spacing:.04em; color:var(--accent-2); }

.dash-ref-how .ref-tips{
  margin:0; padding:0; list-style:none; display:grid; gap:10px;
}
.dash-ref-how .ref-tips li{
  display:flex; align-items:flex-start; gap:12px;
  padding:12px; border-radius:12px;
  background:rgba(255,255,255,.02); border:1px solid rgba(255,255,255,.05);
  font-size:13px; color:var(--ink-2); line-height:1.4;
}
.dash-ref-how .ref-tips li::before{ display:none; }
.dash-ref-how .ref-tips em{
  flex-shrink:0; font-style:normal; font-family:var(--font-display);
  font-size:11px; font-weight:700; letter-spacing:.06em;
  color:var(--accent-dark);
  width:28px; height:28px; border-radius:8px;
  display:grid; place-items:center;
  background:linear-gradient(145deg,#5eead4,var(--accent));
}
.dash-ref-empty{ padding:28px 16px; }

.dash-ref-grid{ display:grid; grid-template-columns:1.2fr .8fr; gap:14px; }

.dash-settings{
  display:grid; grid-template-columns:1fr 1fr; gap:14px; align-items:start;
  width:100%; max-width:none;
}
.dash-settings-card{
  border-radius:18px; padding:18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.2), rgba(74,222,128,.04) 55%, rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  box-shadow:0 16px 40px -32px rgba(0,0,0,.65);
}
.dash-settings-head{
  display:flex; align-items:center; gap:12px;
  margin-bottom:16px; padding-bottom:12px;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.dash-settings-head b{ display:block; font-size:14.5px; letter-spacing:-.02em; }
.dash-settings-head small{ display:block; font-size:12px; color:var(--muted); margin-top:2px; }
.dash-settings-form{ display:flex; flex-direction:column; gap:14px; }
.dash-settings-form .row{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.dash-settings-form .field{ margin:0; }
.dash-settings-form input:disabled{
  opacity:.65; cursor:not-allowed; color:var(--muted);
}
.dash-settings-hint{
  margin:0; font-size:12px; color:var(--muted); line-height:1.45;
}
.dash-settings-form .btn{ align-self:flex-start; }
@media (max-width:900px){
  .dash-settings{ grid-template-columns:1fr; }
  .dash-settings-form .row{ grid-template-columns:1fr; }
}

/* ---------- wallets ---------- */
.dash-wallets{ display:flex; flex-direction:column; gap:14px; width:100%; max-width:none; }
.dash-wallet-hero{
  display:flex; flex-direction:column; gap:0;
  padding:20px 22px; border-radius:18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.28), rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
}
.dash-wallet-hero-top{
  display:flex; align-items:flex-start; gap:14px; flex-wrap:wrap;
}
.dash-wallet-hero-ic{
  flex:0 0 auto; width:44px; height:44px; border-radius:14px;
  display:grid; place-items:center;
  background:rgba(74,222,128,.12); color:var(--accent);
  border:1px solid rgba(74,222,128,.25);
}
.dash-wallet-hero-ic svg{ width:22px; height:22px; }
.dash-wallet-hero-copy{ flex:1; min-width:0; }
.dash-wallet-hero-copy h2{ margin:0 0 6px; font-size:22px; letter-spacing:-.02em; }
.dash-wallet-hero-copy .dash-muted{ margin:0; max-width:64ch; }
.dash-wallet-toolbar{
  display:flex; align-items:flex-end; justify-content:space-between; gap:16px; flex-wrap:wrap;
  padding:18px 20px; border-radius:18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.22), rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
}
.dash-wallet-toolbar h2{ margin:0 0 6px; font-size:20px; letter-spacing:-.02em; }
.dash-wallet-toolbar .dash-muted{ margin:0; max-width:48ch; }
.dash-wallet-actions{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin-left:auto; }
.dash-wallet-toolbar-bar{
  display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
  padding:12px 16px; border-radius:14px;
  background:rgba(0,0,0,.28); border:1px solid rgba(255,255,255,.05);
}
.dash-wallet-toolbar-note{
  margin:0; font-size:12.5px; color:var(--muted); line-height:1.4; max-width:52ch;
}
.dash-wallet-stats{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:0;
  border-radius:14px; overflow:hidden;
  background:rgba(0,0,0,.32); border:1px solid rgba(255,255,255,.05);
}
.dash-wallet-stats > div{
  padding:12px 16px; border-right:1px solid rgba(255,255,255,.05);
}
.dash-wallet-stats > div:last-child{ border-right:0; }
.dash-wallet-stats span{
  display:block; font-size:10px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--muted); margin-bottom:4px; font-weight:600;
}
.dash-wallet-stats b{ display:block; font-size:15px; font-weight:700; letter-spacing:-.02em; }
.dw-secure{ color:var(--accent-2); }
.dash-wallet-list{
  display:flex; flex-direction:column; gap:8px;
  padding:8px; border-radius:16px;
  background:rgba(0,0,0,.2); border:1px solid rgba(255,255,255,.04);
}
.dash-wallet-card{
  position:relative;
  display:grid;
  grid-template-columns:36px 46px minmax(0,1fr);
  gap:12px; align-items:center;
  padding:14px 16px; border-radius:14px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.97), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.16), rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  box-shadow:none;
  overflow:hidden;
  transition:border-color .18s ease, background .18s ease, transform .18s ease;
}
.dash-wallet-card::before{ display:none; }
.dash-wallet-card:hover{
  transform:translateY(-1px);
  border-color:rgba(74,222,128,.22);
  box-shadow:0 14px 32px -28px rgba(0,0,0,.8);
}
.dw-main{ display:flex; align-items:flex-start; gap:14px; min-width:0; flex:1; }
.dw-av{
  width:46px; height:46px; border-radius:14px; flex-shrink:0;
  display:grid; place-items:center; font-weight:700; font-size:16px;
  color:var(--accent-dark); line-height:1;
  background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 8px 18px -10px rgba(74,222,128,.5);
}
.dw-body{ min-width:0; flex:1; display:flex; flex-direction:column; gap:6px; }
.dw-top{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.dash-wallet-card .dw-label{
  margin:0; font-size:15px; font-weight:700; letter-spacing:-.02em;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:min(320px, 40vw);
}
.dw-chip-main{
  color:var(--accent-2);
  border-color:rgba(74,222,128,.22);
  background:rgba(74,222,128,.08);
  font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  padding:3px 8px; border-radius:999px;
}
.dw-addr-line{
  display:flex; align-items:center; gap:10px; min-width:0; flex-wrap:wrap;
}
.dw-addr-row{
  display:flex; align-items:center; gap:8px; min-width:0; flex:1;
  padding:8px 10px; border-radius:12px;
  background:rgba(0,0,0,.32); border:1px solid rgba(255,255,255,.05);
  max-width:100%;
  min-height:42px;
  box-sizing:border-box;
}
.dw-addr-row .dw-sol{
  flex-shrink:0; width:14px; height:11px; opacity:.95;
}
.dash-wallet-card .dw-actions{
  align-self:stretch;
  min-height:42px;
  box-sizing:border-box;
}
.dw-addr-line-inline{
  display:flex; align-items:center; gap:6px; min-width:0;
}
.dw-addr-line-inline .sol-ic{ flex-shrink:0; opacity:.9; }
.dw-addr-line-inline .dw-addr{
  min-width:0; flex:1;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.dash-wallet-card .dw-addr{
  flex:1; min-width:0; margin:0; display:block;
  font-size:12px; color:var(--accent-2); line-height:1.35;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  font-family:var(--font-mono, 'JetBrains Mono', monospace);
  background:transparent; border:0; padding:0;
}
.dw-icon-btn{
  flex-shrink:0; width:28px; height:28px; border-radius:8px; cursor:pointer;
  display:grid; place-items:center; border:0; padding:0;
  color:var(--muted); background:rgba(255,255,255,.04);
  transition:color .15s, background .15s;
}
.dw-icon-btn:hover{ color:var(--accent-2); background:rgba(74,222,128,.12); }
.dw-meta{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.dw-chip{
  display:inline-flex; align-items:center; gap:5px;
  font-size:11px; color:var(--muted); line-height:1.2;
  padding:4px 8px; border-radius:8px;
  background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.05);
}
.dw-chip-ok{ color:var(--accent-2); border-color:rgba(74,222,128,.22); background:rgba(74,222,128,.08); }
.dw-chip-ok i{
  width:6px; height:6px; border-radius:50%; background:var(--accent);
  box-shadow:0 0 0 3px rgba(74,222,128,.15);
}
.dash-wallet-card .dw-date{ font-size:11px; }
.dw-actions{
  display:inline-flex; align-items:center; gap:0; flex-shrink:0;
  padding:3px; border-radius:12px;
  background:rgba(0,0,0,.28); border:1px solid rgba(255,255,255,.06);
}
.dw-act{
  appearance:none; cursor:pointer; font:inherit;
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  height:34px; padding:0 12px; border-radius:9px; border:0;
  background:transparent; color:var(--muted);
  font-size:12.5px; font-weight:650; letter-spacing:-.01em;
  transition:background .15s, color .15s, box-shadow .15s;
}
.dw-act svg{ width:14px; height:14px; flex-shrink:0; opacity:.85; }
.dw-act:hover{
  color:var(--ink); background:rgba(255,255,255,.06);
}
.dw-act-primary{
  color:#04140a; background:var(--accent);
  box-shadow:0 6px 16px -10px rgba(74,222,128,.55);
}
.dw-act-primary:hover{
  color:#04140a; background:#5eead4;
  box-shadow:0 8px 18px -10px rgba(74,222,128,.65);
}
.dw-act-primary svg{ opacity:1; }
.dw-act-danger:hover{
  color:#fecaca; background:rgba(248,113,113,.14);
}
.dw-actions .dw-danger:hover{
  color:#fecaca; border-color:rgba(248,113,113,.35); background:rgba(248,113,113,.1);
}
.wallet-secret-box{
  display:flex; gap:8px; align-items:flex-start;
  padding:12px; border-radius:14px; margin:14px 0;
  background:rgba(0,0,0,.4); border:1px solid rgba(74,222,128,.2);
}
.wallet-secret-box code{
  flex:1; min-width:0; font-size:12px; line-height:1.5; color:var(--accent-2);
  word-break:break-all; font-family:var(--font-mono, 'JetBrains Mono', monospace);
}
.wallet-addr-line{
  display:block; padding:12px 14px; border-radius:12px;
  background:#050a08; border:1px solid var(--line);
  font-size:12px; color:var(--accent-2); word-break:break-all;
}
.wallet-pick-list{ display:flex; flex-direction:column; gap:8px; margin-top:12px; max-height:280px; overflow:auto; }
.wallet-pick-item{
  display:flex; flex-direction:column; gap:4px; text-align:left; cursor:pointer;
  padding:12px 14px; border-radius:12px; width:100%;
  border:1px solid rgba(255,255,255,.06); background:rgba(255,255,255,.02);
  color:inherit; font:inherit; transition:border-color .2s, background .2s;
}
.wallet-pick-item:hover{ border-color:rgba(74,222,128,.3); background:rgba(74,222,128,.06); }
.wallet-pick-item b{ font-size:13.5px; }
.wallet-pick-item span{ font-size:11.5px; color:var(--accent-2); word-break:break-all; font-family:var(--font-mono, monospace); }
.wallet-modal .field{ margin:12px 0; }
.wallet-bundle-preview{
  max-height:220px; overflow:auto; margin-top:12px; padding:10px 12px; border-radius:14px;
  background:rgba(0,0,0,.35); border:1px solid rgba(74,222,128,.18);
  font-size:12px; font-family:var(--font-mono, monospace); color:var(--accent-2);
  display:flex; flex-direction:column; gap:6px;
}
.wallet-bundle-preview span{ opacity:.75; color:var(--muted); }
@media (max-width:820px){
  .dash-wallets{ gap:14px; }
  .dash-wallet-hero{ padding:14px; border-radius:16px; }
  .dash-wallet-hero-top{
    flex-direction:column; align-items:stretch; gap:12px;
  }
  .dash-wallet-hero-ic{ width:40px; height:40px; border-radius:12px; }
  .dash-wallet-hero-copy h2{ font-size:17px; margin-bottom:4px; }
  .dash-wallet-hero-copy .dash-muted{ font-size:12.5px; line-height:1.4; }
  .dash-wallet-hero .dash-wallet-actions{
    display:grid; grid-template-columns:1.25fr 1fr; gap:8px;
    width:100%; margin-left:0;
  }
  .dash-wallet-hero .dash-wallet-actions .btn{
    min-height:46px; justify-content:center; margin:0; font-size:13.5px;
  }
  .dash-wallet-hero .dash-wallet-actions .btn-accent{
    grid-column:auto; order:0;
  }
  .dash-wallet-list{
    gap:12px; padding:0; background:transparent; border:0; border-radius:0;
  }
  .dash-wallet-card{
    grid-template-columns:26px 40px minmax(0,1fr);
    grid-template-areas:
      "idx av top"
      "addr addr addr";
    gap:10px; padding:14px; align-items:center;
    border-radius:16px;
  }
  .dash-wallet-card:hover{ transform:none; }
  .dash-wallet-card .dash-fleet-idx{ grid-area:idx; font-size:12px; }
  .dash-wallet-card .dw-av{
    grid-area:av; width:40px; height:40px; border-radius:12px; font-size:15px;
  }
  .dash-wallet-card .dw-body{ display:contents; }
  .dash-wallet-card .dw-top{
    grid-area:top; min-width:0; align-self:center; gap:6px;
  }
  .dash-wallet-card .dw-label{ max-width:none; font-size:15px; }
  .dash-wallet-card .dw-chip-main{ font-size:9.5px; padding:3px 7px; }
  .dash-wallet-card .dw-addr-line{
    grid-area:addr;
    flex-direction:column; align-items:stretch; gap:10px;
  }
  .dash-wallet-card .dw-addr-row{
    width:100%; min-height:48px; padding:12px; border-radius:12px;
  }
  .dash-wallet-card .dw-addr{
    white-space:normal; overflow:visible; text-overflow:unset;
    word-break:break-all; font-size:12.5px; line-height:1.5;
  }
  .dash-wallet-card .dw-icon-btn{
    width:40px; height:40px; border-radius:10px;
  }
  .dash-wallet-card .dw-actions{
    display:grid; grid-template-columns:1fr 1fr; gap:8px;
    width:100%; padding:0; min-height:0;
    background:transparent; border:0; border-radius:0;
  }
  .dash-wallet-card .dw-act{
    height:48px; min-width:0; padding:0 10px; gap:6px; font-size:13px;
    border-radius:12px;
    background:rgba(0,0,0,.35); border:1px solid rgba(255,255,255,.06);
    color:var(--muted);
  }
  .dash-wallet-card .dw-act-primary{
    grid-column:1 / -1;
    color:#04140a;
    background:var(--accent);
    border:0;
    box-shadow:0 6px 16px -10px rgba(74,222,128,.55);
  }
  .dash-wallet-card .dw-act-primary:hover{
    color:#04140a; background:#5eead4;
  }
  .dash-wallet-card .dw-act-primary svg{ opacity:1; color:#04140a; }
  .dash-wallet-card .dw-act span{ display:inline !important; }
  .dash-wallet-card .dw-act svg{ width:16px; height:16px; }
  .dash-wallet-actions{ margin-left:0; width:100%; }
  .dash-wallet-actions .btn{ flex:1; justify-content:center; }
  .dash-wallet-toolbar-bar{ align-items:flex-start; flex-direction:column; }
}
@media (max-width:720px){
  .dash-wallet-card{ padding:14px 12px; }
}

/* ---------- trade ---------- */
.dash-trade{ display:flex; flex-direction:column; gap:16px; width:100%; max-width:none; }
.dash-trade-hero{
  display:flex; flex-direction:column; gap:16px;
  padding:20px 22px; border-radius:18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.28), rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
}
.dash-trade-hero-top{ display:flex; align-items:flex-start; gap:14px; }
.dash-trade-hero-copy{ min-width:0; flex:1; }
.dash-trade-hero h2{ margin:0 0 6px; font-size:22px; letter-spacing:-.02em; }
.dash-trade-hero .dash-muted{ margin:0; max-width:72ch; }
.dash-trade-hero-ic{
  flex:0 0 auto; width:44px; height:44px; border-radius:14px;
  display:grid; place-items:center;
  background:rgba(74,222,128,.12); color:var(--accent);
  border:1px solid rgba(74,222,128,.25);
}
.dash-trade-hero-ic svg{ width:22px; height:22px; }
.dash-trade-stats{
  display:grid; grid-template-columns:minmax(140px, 220px); gap:0;
  border-radius:14px; overflow:hidden;
  background:rgba(0,0,0,.32); border:1px solid rgba(255,255,255,.05);
}
.dash-trade-stats > div{
  padding:12px 14px;
}
.dash-trade-stats span{
  display:block; font-size:10px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--muted); margin-bottom:4px; font-weight:600;
}
.dash-trade-stats b{ display:block; font-size:15px; font-weight:700; letter-spacing:-.02em; }
.dash-trade-menu{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:8px;
}
.dash-trade-menu-btn{
  appearance:none; cursor:pointer; font:inherit;
  display:flex; align-items:center; gap:10px;
  padding:12px 14px; border-radius:14px; text-align:left;
  color:var(--muted); background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.05);
  transition:background .2s, color .2s, border-color .2s, box-shadow .2s;
}
.dash-trade-menu-btn span{ font-size:13px; font-weight:650; }
.dash-trade-menu-btn em{
  font-style:normal; font-size:11px; font-weight:800; letter-spacing:.04em;
  width:28px; height:28px; border-radius:9px; flex-shrink:0;
  display:grid; place-items:center;
  color:var(--muted); background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
}
.dash-trade-menu-btn:hover{
  color:var(--ink); border-color:rgba(74,222,128,.25); background:rgba(74,222,128,.06);
}
.dash-trade-menu-btn.on{
  color:var(--ink); border-color:rgba(74,222,128,.35);
  background:rgba(74,222,128,.1);
  box-shadow:0 10px 28px -18px rgba(74,222,128,.45);
}
.dash-trade-menu-btn.on em{
  color:#04140a; background:var(--accent); border-color:transparent;
}
.dash-trade-pane{ display:none; }
.dash-trade-pane.on{ display:block; }
.dash-trade-pane[hidden]{ display:none !important; }
.dash-trade-bundle-wide{ margin-top:2px; }
.dash-trade-bundle-cols{
  display:grid; grid-template-columns:1.2fr minmax(260px, .8fr); gap:20px; align-items:end;
}
.dash-trade-bundle-side{ display:flex; flex-direction:column; gap:10px; }
.dash-trade-bundle-side .field{ margin-bottom:0; }
.dash-trade-pane-nav{
  display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:14px;
}
.dash-trade-wallets-inline{ margin-top:0; min-width:0; }
.dash-fund{ display:flex; flex-direction:column; gap:12px; }
.dash-fund-banner{
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
  padding:16px 18px; border-radius:18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.97), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.24), rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
}
.dash-fund-banner-copy{ display:flex; align-items:flex-start; gap:12px; min-width:0; flex:1; }
.dash-fund-banner-copy b{ display:block; font-size:15.5px; font-weight:700; letter-spacing:-.02em; margin-bottom:4px; }
.dash-fund-banner-copy p{ margin:0; color:var(--muted); font-size:13px; line-height:1.45; max-width:52ch; }
.dash-fund-banner-copy p strong{ color:var(--accent-2); font-weight:650; }
.dash-fund-banner .dash-trade-pane-nav{ margin-top:0; }
.dash-fund-toolbar{
  display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;
  padding:12px 14px; border-radius:14px;
  background:rgba(0,0,0,.28); border:1px solid rgba(255,255,255,.05);
}
.dash-fund-meta{ display:flex; align-items:baseline; gap:8px; }
.dash-fund-meta b{ font-size:22px; font-weight:800; letter-spacing:-.03em; color:var(--accent-2); }
.dash-fund-meta span{ font-size:12.5px; color:var(--muted); font-weight:600; }
.dash-fund-list{
  display:flex; flex-direction:column; gap:6px;
  max-height:min(62vh, 640px); overflow:auto;
  padding:6px; border-radius:16px;
  background:rgba(0,0,0,.22); border:1px solid rgba(255,255,255,.04);
}
.dash-fleet-row{
  display:grid; grid-template-columns:36px 36px minmax(0,1fr) auto; gap:10px; align-items:center;
  padding:10px 12px; border-radius:12px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.98)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.12), rgba(255,255,255,.03)) border-box;
  border:1px solid transparent;
  transition:border-color .15s, background .15s;
}
.dash-fleet-row:hover{
  border-color:rgba(74,222,128,.22);
  background:
    linear-gradient(165deg, rgba(16,24,20,.98), rgba(8,12,10,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.2), rgba(255,255,255,.04)) border-box;
}
.dash-fleet-idx{
  font-size:11px; font-weight:700; color:var(--muted); text-align:center;
  opacity:.7;
}
.dw-av-sm{
  width:34px; height:34px; border-radius:10px; font-size:13px;
  box-shadow:0 6px 14px -10px rgba(74,222,128,.45);
}
.dash-fleet-body{ min-width:0; display:flex; flex-direction:column; gap:2px; }
.dash-fleet-row .dw-label{
  margin:0; font-size:13.5px; font-weight:650; letter-spacing:-.01em;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.dash-fleet-row .dw-addr{
  margin:0; padding:0; border:0; background:transparent;
  font-size:11.5px; color:var(--accent-2); line-height:1.35;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  font-family:var(--font-mono, 'JetBrains Mono', monospace);
}
.dash-fleet-row .dw-actions{ gap:0; }
@media (max-width:720px){
  .dash-fund{ gap:10px; }
  .dash-fund-banner{
    flex-direction:column; align-items:stretch; gap:14px;
    padding:14px;
  }
  .dash-fund-banner-copy{ gap:10px; }
  .dash-fund-banner-copy b{ font-size:15px; }
  .dash-fund-banner-copy p{ font-size:12.5px; }
  .dash-fund-banner .dash-trade-pane-nav{
    display:grid; grid-template-columns:1fr 1fr; gap:8px;
    width:100%; margin-top:0;
  }
  .dash-fund-banner .dash-fund-next,
  .dash-fund-banner .dash-trade-pane-nav .btn-accent{
    grid-column:1 / -1; order:-1; width:100%; justify-content:center;
  }
  .dash-fund-banner .dash-trade-pane-nav .btn{ justify-content:center; min-height:44px; }
  .dash-fund-toolbar{
    flex-direction:column; align-items:stretch; gap:10px;
    padding:12px;
  }
  .dash-fund-toolbar .dash-wallet-actions{
    display:grid; grid-template-columns:1fr 1fr; gap:8px; width:100%;
  }
  .dash-fund-toolbar .dash-wallet-actions .btn{
    justify-content:center; min-height:44px; margin:0;
  }
  .dash-fund-toolbar .dash-wallet-actions .btn-accent{
    grid-column:1 / -1;
  }
  .dash-fund-list{
    gap:8px; padding:0; max-height:none;
    background:transparent; border:0; border-radius:0;
  }
  .dash-fleet-row{
    grid-template-columns:28px 36px minmax(0,1fr);
    grid-template-rows:auto auto;
    gap:8px 10px; padding:12px; align-items:start;
  }
  .dash-fleet-row .dash-fleet-idx{ padding-top:10px; }
  .dash-fleet-row .dw-av-sm{ margin-top:2px; }
  .dash-fleet-row .dw-addr{
    white-space:normal; overflow:visible; text-overflow:unset;
    word-break:break-all; font-size:11px; line-height:1.45;
  }
  .dash-fleet-row .dw-addr-line-inline{
    align-items:flex-start; gap:6px;
  }
  .dash-fleet-row .dw-addr-line-inline .sol-ic{ margin-top:3px; }
  .dash-fleet-row .dw-actions{
    grid-column:1 / -1; justify-content:stretch; width:100%;
    margin-top:4px; padding:4px; gap:0;
  }
  .dash-fleet-row .dw-act{
    flex:1; height:44px; min-width:0; padding:0 8px; gap:5px;
    font-size:12px;
  }
  .dash-fleet-row .dw-act span{ display:inline !important; }
  .dash-fleet-row .dw-act svg{ width:15px; height:15px; }
}
.dash-trade-steps{
  list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:8px;
}
.dash-trade-steps li{
  display:flex; align-items:center; gap:10px;
  padding:10px 12px; border-radius:12px;
  background:rgba(255,255,255,.02); border:1px solid rgba(255,255,255,.05);
  color:var(--muted); font-size:12.5px; font-weight:600;
}
.dash-trade-steps em{
  font-style:normal; font-size:11px; font-weight:800; letter-spacing:.04em;
  width:26px; height:26px; border-radius:9px; flex-shrink:0;
  display:grid; place-items:center;
  color:var(--accent-2); background:rgba(74,222,128,.1);
  border:1px solid rgba(74,222,128,.22);
}
.dash-trade-grid{
  display:grid; grid-template-columns:1fr 1.2fr; gap:14px; align-items:stretch;
}
.dash-trade-grid-bundle{ grid-template-columns:1.05fr .95fr; }
.dash-trade-tip-list{
  margin:0; padding:0 0 0 18px; display:flex; flex-direction:column; gap:10px;
  color:var(--ink-2); font-size:13.5px; line-height:1.45;
}
.dash-trade-tip-list li::marker{ color:var(--accent); }
.dash-trade-card-wide,
.dash-trade-pane,
.dash-fund{ width:100%; }
.dash-trade-form-wide{ flex:1; }
.dash-trade-form-cols{
  display:grid; grid-template-columns:1.2fr minmax(280px, .9fr); gap:18px; align-items:start;
}
.dash-trade-form-main{ display:flex; flex-direction:column; }
.dash-trade-card{
  position:relative;
  padding:18px 18px 16px; border-radius:18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.97), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.16), rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  display:flex; flex-direction:column; gap:16px;
  box-shadow:0 14px 36px -30px rgba(0,0,0,.75);
  overflow:hidden;
}
.dash-trade-card-accent{
  background:
    linear-gradient(165deg, rgba(14,20,17,.97), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.28), rgba(74,222,128,.06) 45%, rgba(255,255,255,.04)) border-box;
}
.dash-trade-card-head{ display:flex; align-items:flex-start; gap:12px; }
.dash-trade-card-head b{ display:block; font-size:15.5px; font-weight:700; letter-spacing:-.02em; margin-bottom:3px; }
.dash-trade-card-head small{ color:var(--muted); font-size:12.5px; line-height:1.4; }
.dash-trade-step-badge{
  flex-shrink:0; width:40px; height:40px; border-radius:12px;
  display:grid; place-items:center;
  font-size:11px; font-weight:800; letter-spacing:.06em;
  color:var(--accent-2);
  background:rgba(74,222,128,.1); border:1px solid rgba(74,222,128,.22);
}
.dash-trade-ic{
  width:36px; height:36px; border-radius:12px; display:grid; place-items:center;
  background:rgba(74,222,128,.1); color:var(--accent); border:1px solid rgba(74,222,128,.2);
}
.dash-trade-ic svg{ width:18px; height:18px; }
.dash-trade-bundle,
.dash-trade-form{ display:flex; flex-direction:column; flex:1; }
.dash-trade-bundle .field,
.dash-trade-form .field{ margin:0 0 14px; }
.dash-trade-form .row{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.dash-bundle-count{
  display:flex; align-items:center; gap:10px;
  padding:8px; border-radius:16px;
  background:rgba(0,0,0,.32); border:1px solid rgba(255,255,255,.05);
}
.dash-bundle-step{
  width:42px; height:42px; border-radius:12px; cursor:pointer;
  border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.03);
  color:var(--ink); font-size:20px; font-weight:600; line-height:1;
  transition:background .15s, border-color .15s, color .15s;
}
.dash-bundle-step:hover{
  color:var(--accent-2); border-color:rgba(74,222,128,.3); background:rgba(74,222,128,.08);
}
.dash-bundle-value{
  flex:1; display:flex; flex-direction:column; align-items:center; gap:2px;
}
.dash-bundle-value input{
  width:100%; max-width:120px; text-align:center; font-weight:800; font-size:28px;
  letter-spacing:-.03em; border:0; background:transparent; color:var(--ink);
  padding:0; appearance:textfield; -moz-appearance:textfield;
}
.dash-bundle-value input::-webkit-outer-spin-button,
.dash-bundle-value input::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.dash-bundle-value span{
  font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--muted);
}
.dash-bundle-presets{ display:grid; grid-template-columns:repeat(4,1fr); gap:6px; margin-top:10px; }
.dash-bundle-preset{
  appearance:none; cursor:pointer; font:inherit; font-size:13px; font-weight:700;
  padding:10px 8px; border-radius:11px; color:var(--muted);
  border:1px solid rgba(255,255,255,.06); background:rgba(255,255,255,.02);
  transition:background .15s, color .15s, border-color .15s, box-shadow .15s;
}
.dash-bundle-preset:hover{ color:var(--ink); border-color:rgba(74,222,128,.25); }
.dash-bundle-preset.on{
  color:#04140a; background:var(--accent); border-color:transparent;
  box-shadow:0 8px 20px -10px rgba(74,222,128,.45);
}
.dash-trade-hint{ margin:auto 0 0; padding-top:10px; font-size:12px; color:var(--muted); line-height:1.45; }
.dash-trade-side{
  display:grid; grid-template-columns:1fr 1fr; gap:6px;
  padding:5px; border-radius:14px; margin-bottom:14px;
  background:rgba(0,0,0,.35); border:1px solid rgba(255,255,255,.06);
}
.dash-trade-side-btn{
  appearance:none; border:0; cursor:pointer; font:inherit; font-weight:700; font-size:13px;
  padding:11px 12px; border-radius:11px; color:var(--muted);
  background:transparent; transition:background .2s, color .2s, box-shadow .2s;
}
.dash-trade-side-btn:hover{ color:var(--ink); }
.dash-trade-side-btn.on{
  color:#04140a; background:var(--accent);
  box-shadow:0 0 0 1px rgba(74,222,128,.35), 0 8px 24px rgba(74,222,128,.18);
}
.dash-trade-side-btn[data-trade-side="sell"].on{
  color:#fff; background:#e85d5d;
  box-shadow:0 0 0 1px rgba(232,93,93,.35), 0 8px 24px rgba(232,93,93,.15);
}
.dash-trade-wallets-field{ margin-bottom:14px !important; }
.dash-trade-wallets-head{
  display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap;
  margin-bottom:8px;
}
.dash-trade-wallets-head label{ margin:0; }
.dash-trade-wallet-tools{ display:flex; gap:6px; }
.dash-trade-wallet-pick{
  max-height:220px; overflow:auto; display:flex; flex-direction:column; gap:6px;
  padding:8px; border-radius:14px; background:rgba(0,0,0,.28); border:1px solid rgba(255,255,255,.05);
}
.dash-trade-wallet-item{
  display:flex; align-items:center; gap:8px; text-align:left;
  padding:8px 10px; border-radius:12px; width:100%;
  border:1px solid rgba(255,255,255,.05); background:rgba(255,255,255,.02);
  color:inherit; font:inherit; transition:border-color .2s, background .2s;
}
.dash-trade-wallet-item:hover{ border-color:rgba(74,222,128,.28); }
.dash-trade-wallet-item.on{
  border-color:rgba(74,222,128,.4); background:rgba(74,222,128,.08);
}
.dash-trade-wallet-check{
  display:flex; align-items:center; gap:10px; flex:1; min-width:0; cursor:pointer;
}
.dash-trade-wallet-item input{ accent-color:var(--accent); flex-shrink:0; }
.dash-trade-wallet-av{
  width:32px; height:32px; border-radius:10px; flex-shrink:0;
  display:grid; place-items:center; font-size:12px; font-weight:700;
  color:var(--accent-dark); background:linear-gradient(145deg,#5eead4,var(--accent));
}
.dash-trade-wallet-copy{ min-width:0; flex:1; }
.dash-trade-wallet-item b{ display:block; font-size:13px; }
.dash-trade-wallet-item .mono{
  display:block; font-size:11px; color:var(--accent-2); word-break:break-all;
  font-family:var(--font-mono, monospace);
}
.dw-danger-icon:hover{
  color:#fecaca; background:rgba(248,113,113,.12);
}
.btn.dw-danger{ color:#fca5a5; }
.btn.dw-danger:hover{
  color:#fecaca; border-color:rgba(248,113,113,.35); background:rgba(248,113,113,.1);
}
.dash-trade-wallets{ display:flex; flex-direction:column; gap:12px; margin-top:2px; }
.dash-trade-wallets-bar{
  display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
  padding:16px 18px; border-radius:18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.96), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.18), rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
}
.dash-trade-wallets-title{ display:flex; align-items:flex-start; gap:12px; min-width:0; }
.dash-trade-wallets-title h2{ margin:0 0 4px; font-size:17px; letter-spacing:-.02em; }
.dash-trade-wallets-title .dash-muted{ margin:0; max-width:42ch; font-size:13px; }
.dash-empty-sm{ padding:22px 12px; }
.dash-empty-sm p{ margin-bottom:0; }
@media (max-width:900px){
  .dash-trade-grid,
  .dash-trade-grid-bundle,
  .dash-trade-form-cols,
  .dash-trade-bundle-cols{ grid-template-columns:1fr; }
  .dash-trade-form .row{ grid-template-columns:1fr; }
  .dash-trade-stats,
  .dash-trade-menu{ grid-template-columns:1fr; }
  .dash-trade-stats > div{ border-right:0; border-bottom:1px solid rgba(255,255,255,.05); }
  .dash-trade-stats > div:last-child{ border-bottom:0; }
}

.dash-token-list{ display:flex; flex-direction:column; gap:12px; }
.dash-portfolio{ display:flex; flex-direction:column; gap:14px; }
.dash-port-toolbar{
  display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;
  padding:10px 12px; border-radius:16px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.92), rgba(6,10,8,.96)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.18), rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
}
.dash-port-filters{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.dash-port-pill{
  display:inline-flex; align-items:center; gap:7px;
  padding:8px 12px; border-radius:999px; cursor:pointer;
  border:1px solid rgba(255,255,255,.06); background:rgba(255,255,255,.02);
  color:var(--muted); font:inherit; font-size:12.5px; font-weight:600;
  transition:background .2s, color .2s, border-color .2s;
}
.dash-port-pill em{
  font-style:normal; font-size:10.5px; font-weight:700;
  min-width:18px; height:18px; padding:0 5px; border-radius:999px;
  display:inline-grid; place-items:center;
  background:rgba(255,255,255,.06); color:var(--ink-2);
}
.dash-port-pill:hover{ color:var(--ink); border-color:rgba(74,222,128,.25); }
.dash-port-pill.on{
  color:var(--ink); border-color:rgba(74,222,128,.35);
  background:rgba(74,222,128,.1);
}
.dash-port-pill.on em{
  background:rgba(74,222,128,.2); color:var(--accent-2);
}
.dash-port-actions{ display:flex; align-items:center; gap:8px; }
.btn-sm{
  padding:8px 12px !important; font-size:12.5px !important; gap:7px;
}
.btn-sm svg{ width:14px; height:14px; flex-shrink:0; }

.dash-token{
  position:relative;
  display:flex; flex-direction:column; gap:14px;
  padding:18px 18px 16px; border-radius:18px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.97), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.2), rgba(74,222,128,.04) 50%, rgba(255,255,255,.04)) border-box;
  border:1px solid transparent;
  box-shadow:0 16px 40px -32px rgba(0,0,0,.85);
  overflow:hidden;
  transition:transform .22s var(--ease-out, ease), box-shadow .22s ease, border-color .22s ease;
}
.dash-token::before{
  content:""; position:absolute; left:0; top:14px; bottom:14px; width:3px; border-radius:0 4px 4px 0;
  background:rgba(74,222,128,.35);
}
.dash-token[data-status="pending"]::before{
  background:linear-gradient(180deg, #fbbf24, #f59e0b);
  box-shadow:0 0 12px rgba(251,191,36,.35);
}
.dash-token[data-status="live"]::before{
  background:linear-gradient(180deg, var(--accent), #22c55e);
  box-shadow:0 0 12px rgba(74,222,128,.3);
}
.dash-token:hover{
  transform:translateY(-2px);
  box-shadow:0 22px 48px -28px rgba(0,0,0,.9);
}
.dash-token[hidden]{ display:none !important; }

.dt-main{
  display:flex; align-items:flex-start; justify-content:space-between; gap:16px;
  padding-left:8px;
}
.dt-lead{ display:flex; align-items:flex-start; gap:14px; min-width:0; flex:1; }
.dt-identity{ min-width:0; display:flex; flex-direction:column; gap:6px; flex:1; }
.dt-av{
  width:52px; height:52px; border-radius:16px; flex-shrink:0;
  display:grid; place-items:center; font-weight:700; font-size:18px;
  color:var(--accent-dark); line-height:1;
  background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 8px 20px -10px rgba(74,222,128,.55);
  overflow:hidden;
}
.dt-av-img{ padding:0; background:#0a110e; box-shadow:none; border:1px solid rgba(74,222,128,.2); }
.dt-av-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.dt-id{
  min-width:0; display:flex; align-items:center; gap:8px; flex-wrap:wrap;
}
.dt-id b{
  font-size:16px; font-weight:700; letter-spacing:-.025em;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:min(280px, 46vw);
}
.dt-sym{
  font-size:12.5px; color:var(--accent-2); flex-shrink:0; font-weight:650;
  padding:3px 8px; border-radius:8px;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.16);
}
.dt-desc{
  margin:0; font-size:13px; line-height:1.45; color:var(--muted);
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  max-width:52ch;
}
.dt-meta{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.dt-chip{
  display:inline-flex; align-items:center; gap:5px;
  font-size:11.5px; color:var(--muted); line-height:1.2;
  padding:5px 9px; border-radius:9px;
  background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.05);
}
.dt-chip svg{ opacity:.7; flex-shrink:0; }
.dt-chip .sol-ic{ width:11px; height:9px; }
.dt-chip-time{ font-variant-numeric:tabular-nums; }
.dt-site{
  color:var(--accent-2); text-decoration:none; max-width:180px;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.dt-site:hover{ color:var(--ink); border-color:rgba(74,222,128,.28); background:rgba(74,222,128,.08); }

.dt-stats{
  display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:0;
  margin-left:8px; border-radius:14px; overflow:hidden;
  background:rgba(0,0,0,.32);
  border:1px solid rgba(255,255,255,.05);
}
.dt-stats > div{
  min-width:0; padding:12px 14px;
  border-right:1px solid rgba(255,255,255,.05);
}
.dt-stats > div:last-child{ border-right:0; }
.dt-stats span{
  display:block; font-size:10px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--muted); margin-bottom:5px; font-weight:600;
}
.dt-stats b{
  display:block; font-size:13.5px; font-weight:700; color:var(--ink); letter-spacing:-.01em;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}

.dt-actions{
  display:flex; align-items:center; gap:8px; flex-shrink:0; padding-top:2px;
}
.dt-actions .btn{ min-width:78px; justify-content:center; }
.dt-actions .dt-pay{
  box-shadow:0 8px 20px -10px rgba(74,222,128,.55);
}
.dt-actions-live{ min-height:34px; }
.dt-live-note{
  font-size:11.5px; font-weight:650; letter-spacing:.04em; text-transform:uppercase;
  color:var(--accent-2); padding:7px 10px; border-radius:9px;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.18);
}

.dt-status{
  display:inline-flex; align-items:center; gap:6px; flex-shrink:0;
  font-size:10.5px; font-weight:700; letter-spacing:.07em;
  text-transform:uppercase; padding:5px 10px 5px 8px; border-radius:100px; line-height:1.2;
}
.dt-status i{
  width:6px; height:6px; border-radius:50%; flex-shrink:0;
  background:currentColor; box-shadow:0 0 0 3px rgba(255,255,255,.06);
}
.dt-status.is-pending{
  color:#fde68a; background:rgba(250,204,21,.1); border:1px solid rgba(250,204,21,.28);
}
.dt-status.is-pending i{
  background:#fbbf24;
  box-shadow:0 0 0 3px rgba(251,191,36,.18);
  animation:dtPulse 1.6s ease-in-out infinite;
}
.dt-status.is-ok{
  color:var(--accent-2); background:rgba(74,222,128,.1); border:1px solid rgba(74,222,128,.28);
}
.dt-status.is-ok i{ background:var(--accent); }
@keyframes dtPulse{
  0%,100%{ opacity:1; transform:scale(1); }
  50%{ opacity:.45; transform:scale(.85); }
}

.dt-date{ font-size:11px; color:var(--muted); white-space:nowrap; }
.dt-link{
  color:var(--accent-2) !important; text-decoration:none;
  border-color:rgba(74,222,128,.22) !important;
}
.dt-link:hover{ background:rgba(74,222,128,.1); color:var(--ink) !important; }

.dash-form .field > label{ display:inline-flex; align-items:center; gap:8px; }
.dash-form .soc-ic{
  width:22px; height:22px; border-radius:7px; flex-shrink:0;
  display:grid; place-items:center; color:var(--accent);
  background:rgba(74,222,128,.10); border:1px solid rgba(74,222,128,.28);
}
.dash-form .soc-ic svg{ width:12px; height:12px; display:block; }
.dash-form .opt{ color:var(--muted); font-weight:500; font-size:11px; margin-left:2px; }
.dash-char-count{
  margin-top:6px; text-align:right; font-size:11px; color:var(--muted); letter-spacing:.04em;
}
.dash-step textarea{
  min-height:88px; border-radius:12px; color-scheme:dark;
}

.dash-empty{
  text-align:center; padding:52px 20px;
  border-radius:18px; border:1px dashed rgba(74,222,128,.2);
  background:rgba(74,222,128,.03);
}
.dash-empty-ic{
  width:52px; height:52px; margin:0 auto 14px; border-radius:14px;
  display:grid; place-items:center; color:var(--accent);
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.2);
}
.dash-empty-ic svg{ width:22px; height:22px; }
.dash-empty b{ display:block; margin-bottom:6px; font-size:15px; }
.dash-empty p{ margin:0 auto 16px; color:var(--muted); font-size:13.5px; max-width:32ch; }

.nav-user{ color:inherit; }

.confirm-modal{ max-width:400px; padding:26px 24px 22px; }
.confirm-modal h3{ margin:8px 0 10px; font-size:20px; letter-spacing:-.02em; }
.confirm-modal .pay-modal-sub{ margin-bottom:18px; }
.confirm-actions{
  display:flex; gap:8px; justify-content:flex-end; flex-wrap:wrap;
}
.confirm-actions .btn{ min-width:96px; justify-content:center; }
.confirm-modal.is-danger #confirmOk{
  background:linear-gradient(135deg,#f87171,#e85d5d);
  color:#fff;
  box-shadow:0 8px 22px -10px rgba(232,93,93,.55);
}
.confirm-modal.is-danger #confirmOk:hover{ filter:brightness(1.05); }

.toast{ position:fixed; left:50%; bottom:34px; transform:translate(-50%,140%);
  background:var(--surface-2); border:1px solid var(--line); border-radius:100px; padding:12px 22px;
  font-size:13.5px; color:var(--ink); z-index:120;
  box-shadow:0 20px 50px -20px rgba(0,0,0,.9),0 0 0 1px rgba(74,222,128,.14);
  transition:transform .5s var(--ease-out),opacity .4s; opacity:0; pointer-events:none;
  max-width:calc(100vw - 40px); text-align:center; }
.toast.show{ transform:translate(-50%,0); opacity:1; }

/* reveal */
.reveal{ opacity:0; transform:translateY(22px); }
.reveal.in{ opacity:1; transform:none;
  transition:opacity .7s var(--ease-out),transform .8s var(--ease-out);
  transition-delay:calc(var(--d,0) * 1ms); }

/* responsive */
@media (max-width:980px){
  .hero-grid{ grid-template-columns:1fr; gap:52px; }
  .hero{ padding-top:132px; }
  .launcher{ grid-template-columns:1fr; }
  .summary-wrap{ position:static; }
  .feature-grid,.steps,.price-grid{ grid-template-columns:1fr 1fr; }
  .card.wide,.card.feat-full{ grid-column:1 / -1; }
  .feat-hero-grid{ grid-template-columns:1fr; gap:18px; }
  .pipeline-stack{ grid-template-columns:1fr 1fr; }
  .feat-analytics{ grid-template-columns:1fr; }
  .footer-inner{ grid-template-columns:1fr 1fr; gap:32px; }
}
@media (max-width:1100px){
  .dash-create{ grid-template-columns:1fr; }
  .dash-create-aside{ position:static; }
  .dash-step-split{ grid-template-columns:1fr; }
  .dash-liq-row{ align-items:stretch; }
  .dash-liq-field{ flex:1 1 100%; }
  .dash-sec-grid{ grid-template-columns:1fr; }
  .dash-ref-body{ grid-template-columns:1fr; }
  .dash-token{ gap:12px; padding:16px; }
  .dt-main{ flex-direction:column; align-items:stretch; gap:12px; }
  .dt-actions{ width:100%; }
  .dt-actions .btn{ flex:1; }
  .dt-stats{ grid-template-columns:1fr 1fr; }
  .dt-stats > div:nth-child(2){ border-right:0; }
  .dt-stats > div:nth-child(1),
  .dt-stats > div:nth-child(2){ border-bottom:1px solid rgba(255,255,255,.05); }
}
.show-sm{ display:none; }
@media (max-width:720px){
  .nav{ padding:10px 12px 0; }
  .nav-shell{ gap:10px; padding:8px 10px 8px 12px; border-radius:16px; flex-wrap:nowrap; }
  .nav-links{
    position:absolute; left:12px; right:12px; top:calc(100% + 8px);
    flex-direction:column; align-items:stretch; gap:4px; margin-left:0;
    padding:10px; border-radius:16px;
    background:rgba(5,10,8,.96); backdrop-filter:blur(20px);
    border:1px solid rgba(74,222,128,.18);
    box-shadow:0 20px 50px -20px rgba(0,0,0,.9);
    transform:translateY(-8px); opacity:0; pointer-events:none;
    transition:transform .35s var(--ease-out), opacity .3s;
    max-height:min(70vh, 520px); overflow:auto; z-index:60;
  }
  .nav-links.open{ transform:translateY(0); opacity:1; pointer-events:auto; }
  .nav-links a, .nav-links .nav-drawer-btn{
    padding:12px 14px; font-size:14.5px; border-radius:10px;
    display:block; width:100%; text-align:left;
    border:0; background:transparent; color:inherit; font:inherit; cursor:pointer;
  }
  .nav-links a.on{ color:var(--accent-dark); }
  .nav-links .nav-drawer-cta{
    margin-top:6px; text-align:center; font-weight:650;
    color:var(--accent-dark);
    background:linear-gradient(135deg,#5eead4,var(--accent));
  }
  .nav-inner{ position:relative; }
  .burger{ display:flex; }
  .hide-sm{ display:none !important; }
  .show-sm{ display:block !important; }
  .brand-tag{ display:none; }
  .container{ padding-inline:16px; }
  .row, .socials-row, .dash-step .row, .dash-form .row{ grid-template-columns:1fr; }
  .section{ padding:76px 0; } .panel{ padding:22px; }
  .feature-grid,.steps,.price-grid{ grid-template-columns:1fr; }
  .card.wide,.card.feat-full{ grid-column:1 / -1; }
  .hero-stats{ gap:26px; flex-wrap:wrap; } .stat b{ font-size:22px; }
  .glass-steps{ grid-template-columns:1fr 1fr; gap:8px; }
  .glass-foot{ grid-template-columns:1fr; }
  .feat-metrics{ grid-template-columns:1fr; }
  .pipeline-stack{ grid-template-columns:1fr; }
  .footer-inner{ grid-template-columns:1fr; gap:28px; }
  .review{ width:min(300px, 82vw); } .cta{ padding:18px 16px; }
  .section.cta-section{ padding:20px 0 28px; }
  .price-card.featured{ transform:none; }
  .price-card.featured:hover{ transform:translateY(-4px); }
  .btn-lg{ padding:13px 20px; } .cta-row .btn{ flex:1; }
  .input-wrap{
    flex-direction:column; align-items:stretch; gap:8px;
  }
  .input-wrap input{
    padding-right:14px; width:100%; box-sizing:border-box;
    font-size:16px;
  }
  .mini-btn{
    position:static; width:100%;
    padding:12px 14px; font-size:13px;
    border-radius:12px; text-align:center;
  }
  #dashWallet, #wallet{ font-family:var(--font-mono, monospace); }
  .auth-modal, .pay-modal, .confirm-modal{ width:calc(100vw - 28px); max-width:440px; }
  .dash-app{ grid-template-columns:1fr; overflow-x:hidden; width:100%; max-width:100vw; }
  .dash-main{ width:100%; max-width:100vw; min-width:0; overflow-x:hidden; }
  .dash-sidebar{
    position:fixed; left:0; top:0; z-index:50;
    width:min(272px, 78vw);
    height:100%; height:100dvh;
    max-height:100dvh;
    padding-top:max(14px, env(safe-area-inset-top));
    padding-bottom:max(14px, env(safe-area-inset-bottom));
    transform:translateX(-105%); transition:transform .28s var(--ease-out);
    box-shadow:20px 0 50px -24px rgba(0,0,0,.8);
    overflow:auto; -webkit-overflow-scrolling:touch;
  }
  .dash-app.sidebar-open .dash-sidebar{ transform:translateX(0); }
  .dash-side-close{ display:inline-flex; }
  .dash-menu-btn{ display:flex; }
  .dash-menu-btn.is-open span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
  .dash-menu-btn.is-open span:nth-child(2){ opacity:0; }
  .dash-menu-btn.is-open span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }
  .dash-menu-btn span{ transition:transform .2s ease, opacity .2s ease; }
  .dash-stats{ grid-template-columns:1fr 1fr; }
  .dash-stats-5{ grid-template-columns:1fr 1fr; }
  .dash-wallet-stats{ grid-template-columns:1fr; }
  .dash-wallet-stats > div{ border-right:0; border-bottom:1px solid rgba(255,255,255,.05); }
  .dash-wallet-stats > div:last-child{ border-bottom:0; }
  .dash-quick,.dash-ref-grid,.dash-ref-body{ grid-template-columns:1fr; }
  .dash-ref-hero{ flex-direction:column; align-items:flex-start; }
  .dash-ref-hero-stat{
    width:100%; display:flex; align-items:baseline; justify-content:space-between;
    text-align:left; gap:12px;
  }
  .dash-ref-hero-stat b{ font-size:34px; }
  .dash-ref-hero-stat span{ margin-top:0; }
  .dash-create{ grid-template-columns:1fr; }
  .dash-create-aside{ position:static; }
  .dash-step-split,.dash-sec-grid,.dash-socials{ grid-template-columns:1fr; }
  .dash-sec-grid{ gap:8px; }
  .dash-sec-grid .toggle-row{
    padding:12px; gap:12px;
  }
  .dash-sec-grid .toggle-row b{ font-size:13.5px; }
  .dash-sec-grid .toggle-row small{ font-size:11px; }
  .dash-create, .dash-create-main, #panel-create{
    width:100%; max-width:100%; min-width:0; overflow-x:hidden;
  }
  .dash-step{ overflow:hidden; }
  .dash-liq-row{ flex-direction:column; align-items:stretch; }
  .dash-liq-field{ flex:1 1 auto; min-width:0; width:100%; }
  .dash-wallet-actions{ width:100%; }
  .dash-wallet-actions .btn{ flex:1; justify-content:center; }
  .dash-topbar{ padding:12px 14px; gap:10px; padding-top:max(12px, env(safe-area-inset-top)); }
  .dash-balance-chip{ padding:7px 10px; font-size:12px; }
  .dash-balance-chip em{ display:none; }
  .dash-top-label{ display:none; }
  .dash-content{ padding:16px; padding-bottom:max(16px, env(safe-area-inset-bottom)); overflow-x:hidden; }
  .dash-view, .dash-panel, .dash-step, .dash-trade, .dash-wallets{ max-width:100%; min-width:0; }
  .dash-token{ gap:12px; padding:14px; }
  .dt-stats{ grid-template-columns:1fr 1fr; margin-left:0; width:100%; }
  .dt-id b{ max-width:min(220px, 70vw); }
  .dt-meta{ gap:6px; }
  .dash-trade-steps{ grid-template-columns:1fr; }
  .dash-trade-menu{ grid-template-columns:1fr; }
  .dash-bundle-presets{ grid-template-columns:1fr 1fr; }
  .dash-settings-form .btn{ align-self:stretch; width:100%; }
  .dash-hero-actions{ width:100%; }
  .dash-hero-actions .btn{ flex:1; justify-content:center; }
  .confirm-actions{ flex-direction:column-reverse; }
  .confirm-actions .btn{ width:100%; }
  .dash-addr-line{ flex-direction:column; align-items:stretch; }
}
@media (max-width:480px){
  .container{ padding-inline:14px; }
  .nav{ padding:8px 10px 0; }
  .nav-shell{ padding:7px 8px 7px 10px; gap:8px; }
  .brand-name{ font-size:14.5px; }
  .hero{ padding-top:108px; }
  .hero-title{ font-size:clamp(32px, 11vw, 48px); }
  .section{ padding:64px 0; }
  .panel, .dash-panel, .dash-step, .dash-trade-card, .dash-trade-hero,
  .dash-wallet-hero, .dash-hero-card{ padding:16px; border-radius:16px; }
  .dash-content{ padding:14px 14px 28px; gap:12px; }
  .dash-wallet-hero, .dash-hero-card{ padding:14px; border-radius:16px; }
  .dash-topbar{ padding:10px 12px; }
  .dash-topbar-title h1{ font-size:16px; }
  .dash-topbar .btn-accent{ padding:9px 11px; }
  .dash-top-label{ display:none; }
  .dash-stats{ grid-template-columns:1fr; gap:8px; }
  .dash-stats-5{ grid-template-columns:1fr; }
  .dash-stat{ padding:14px; }
  .dash-stat b{ font-size:22px; }
  .glass-steps{ grid-template-columns:1fr 1fr; }
  .gs span{ font-size:10px; }
  .term{ height:140px; font-size:11px; }
  .toast{ bottom:18px; left:12px; right:12px; transform:translate(0,140%); max-width:none; width:auto; }
  .toast.show{ transform:translate(0,0); }
  .dw-act span{ display:none; }
  .dw-act{ padding:0 10px; min-width:36px; }
  .dash-fleet-row .dw-act span{ display:inline !important; }
  .dash-wallet-card .dw-act span{ display:inline; }
  .input-wrap input{ padding-right:14px; font-size:16px; }
  .field input, .field textarea, .field select{ font-size:16px; } /* prevent iOS zoom */
  .dt-stats{ grid-template-columns:1fr 1fr; }
  .dash-trade-hero-copy h2, .dash-wallet-hero-copy h2{ font-size:18px; }
  .dash-fund-banner, .dash-fund-toolbar{ padding:12px; border-radius:14px; }
  .dash-fleet-row{ padding:12px 10px; }
  .dash-fleet-row .dw-act span{ font-size:11.5px; }
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important;
    transition-duration:.001ms !important; scroll-behavior:auto !important; }
  .reveal{ opacity:1; transform:none; }
  .hero-title .up{ opacity:1; transform:none; }
  .dt-status.is-pending i{ animation:none !important; }
}

/* ---------- admin console ---------- */
.page-admin .admin-hero h2{ margin:0 0 8px; }
.admin-stats{ grid-template-columns:repeat(4,minmax(0,1fr)); }
.admin-grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.admin-toolbar{
  display:flex; align-items:flex-end; justify-content:space-between; gap:14px; flex-wrap:wrap;
  margin-bottom:14px;
}
.admin-toolbar h2{ margin:0 0 4px; font-size:22px; }
.admin-toolbar .dash-muted{ margin:0; }
.admin-toolbar-actions{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.admin-search{
  min-width:min(280px,70vw); height:42px; padding:0 12px; border-radius:12px;
  border:1px solid rgba(255,255,255,.08); background:rgba(0,0,0,.35); color:var(--ink); font:inherit;
}
.admin-table-wrap{ overflow:auto; }
.admin-table-card{
  padding:4px; border-radius:16px;
  background:rgba(0,0,0,.22); border:1px solid rgba(255,255,255,.05);
}
.admin-table{ width:100%; border-collapse:collapse; font-size:13px; }
.admin-table th,.admin-table td{
  text-align:left; padding:12px 14px; border-bottom:1px solid rgba(255,255,255,.05);
  vertical-align:middle;
}
.admin-table th{
  font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); font-weight:700;
}
.admin-table tr:last-child td{ border-bottom:0; }
.admin-table code{ font-size:12px; color:var(--accent-2); }
.admin-chip{
  display:inline-flex; align-items:center; padding:4px 8px; border-radius:999px;
  font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.04em;
  background:rgba(255,255,255,.06); color:var(--muted);
}
.admin-chip.status-pending{ color:#fbbf24; background:rgba(251,191,36,.12); }
.admin-chip.status-paid,.admin-chip.status-live,.admin-chip.status-confirmed,.admin-chip.status-ok{
  color:var(--accent-2); background:rgba(74,222,128,.12);
}
.admin-chip.status-cancelled,.admin-chip.status-rejected,.admin-chip.status-fail{
  color:#fecaca; background:rgba(248,113,113,.12);
}
.btn-xs{ padding:7px 10px; font-size:12px; border-radius:9px; }
.admin-row-actions{ display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
.admin-row-actions select{
  height:34px; border-radius:9px; border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.35); color:var(--ink); font:inherit; font-size:12px; padding:0 8px;
}
.admin-empty{ padding:28px 16px; }
.admin-modal{ max-width:720px; width:calc(100vw - 28px); padding:0; overflow:hidden; }
.admin-user-sheet{
  max-width:760px; display:flex; flex-direction:column; max-height:min(92vh, 900px);
  background:
    linear-gradient(165deg, rgba(14,22,17,.99), rgba(5,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.28), rgba(255,255,255,.05)) border-box;
  border:1px solid transparent;
  box-shadow:0 40px 100px -48px rgba(0,0,0,.95), 0 0 0 1px rgba(74,222,128,.08);
}
.admin-user-sheet > .modal-x{ top:16px; right:16px; z-index:3; }
.aus-hero{
  display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:14px; align-items:center;
  padding:22px 22px 16px; padding-right:52px;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:radial-gradient(120% 80% at 0% 0%, rgba(74,222,128,.1), transparent 55%);
}
.aus-avatar{
  width:56px; height:56px; border-radius:16px; flex-shrink:0;
  display:grid; place-items:center; font-weight:800; font-size:20px;
  color:var(--accent-dark);
  background:linear-gradient(145deg,#5eead4,var(--accent));
  box-shadow:0 12px 28px -14px rgba(74,222,128,.7);
}
.aus-hero-copy{ min-width:0; }
.aus-hero-copy .eyebrow{ margin-bottom:4px; }
.aus-hero-copy h3{ margin:0 0 4px; font-size:22px; letter-spacing:-.03em; }
.aus-email{ margin:0; font-size:12px; color:var(--muted); word-break:break-all; }
.aus-badges{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.aus-badges .admin-chip{ font-size:10px; }
.aus-balance-card{
  min-width:120px; padding:12px 14px; border-radius:14px; text-align:right;
  background:rgba(0,0,0,.35); border:1px solid rgba(74,222,128,.18);
}
.aus-balance-card span{
  display:block; font-size:10px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--muted); margin-bottom:4px; font-weight:700;
}
.aus-balance-card b{
  display:inline-flex; align-items:center; justify-content:flex-end; gap:6px;
  font-size:18px; color:var(--accent-2);
}
.aus-tabs{
  display:flex; gap:4px; padding:10px 14px 0; overflow:auto;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.aus-tab{
  appearance:none; border:0; cursor:pointer; font:inherit;
  padding:10px 14px; border-radius:10px 10px 0 0;
  background:transparent; color:var(--muted); font-size:13px; font-weight:650;
  border-bottom:2px solid transparent; white-space:nowrap;
  transition:color .15s, background .15s, border-color .15s;
}
.aus-tab:hover{ color:var(--ink); background:rgba(255,255,255,.03); }
.aus-tab.on{
  color:var(--accent-2); background:rgba(74,222,128,.06);
  border-bottom-color:var(--accent);
}
.aus-panels{ flex:1; min-height:0; overflow:auto; padding:16px 18px 8px; }
.aus-panel{ display:none; animation:ausIn .22s var(--ease-out); }
.aus-panel.on{ display:block; }
@keyframes ausIn{ from{ opacity:0; transform:translateY(6px);} to{ opacity:1; transform:none;} }
.aus-section{ display:flex; flex-direction:column; gap:14px; }
.aus-flags{ display:flex; flex-direction:column; gap:8px; }
.aus-flag{
  position:relative;
  display:flex; align-items:center; gap:14px; cursor:pointer;
  padding:12px 14px; border-radius:14px;
  background:rgba(255,255,255,.025); border:1px solid rgba(255,255,255,.06);
  transition:border-color .2s, background .2s;
}
.aus-flag:hover{ border-color:rgba(74,222,128,.25); background:rgba(74,222,128,.04); }
.aus-flag > div{ flex:1; min-width:0; }
.aus-flag b{ display:block; font-size:13.5px; }
.aus-flag small{ display:block; margin-top:2px; font-size:11.5px; color:var(--muted); line-height:1.35; }
.aus-flag .sw{ position:absolute; opacity:0; pointer-events:none; }
.aus-flag .sw:checked + .switch{
  background:var(--accent); border-color:var(--accent);
  box-shadow:0 0 14px -2px rgba(74,222,128,.55);
}
.aus-flag-danger:hover{ border-color:rgba(248,113,113,.3); background:rgba(248,113,113,.05); }
.aus-flag-danger .sw:checked + .switch{
  background:var(--red); border-color:var(--red);
  box-shadow:0 0 14px -2px var(--red-glow);
}
.field-hint{ display:block; margin-top:6px; font-size:12px; color:var(--muted); }
.aus-balance-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.aus-block-head{
  display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin-bottom:8px;
}
.aus-block-head h4{ margin:0; font-size:13px; letter-spacing:-.01em; }
.aus-ledger-block, .aus-asset-col{
  padding:12px; border-radius:14px;
  background:rgba(0,0,0,.22); border:1px solid rgba(255,255,255,.05);
}
.aus-assets{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.aus-foot{
  display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap;
  padding:14px 18px 16px; border-top:1px solid rgba(255,255,255,.06);
  background:rgba(0,0,0,.28);
}
.aus-foot-right{ display:flex; gap:8px; margin-left:auto; flex-wrap:wrap; }
.admin-inline{ display:flex; gap:8px; }
.admin-inline input{ flex:1; }
.admin-modal-actions{ display:flex; justify-content:flex-end; gap:8px; flex-wrap:wrap; }
.admin-mini-list{ display:flex; flex-direction:column; gap:6px; max-height:220px; overflow:auto; }
.admin-mini-row{
  display:flex; flex-wrap:wrap; gap:8px; align-items:center;
  padding:9px 10px; border-radius:11px; background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.04);
  font-size:12.5px;
}
.admin-mini-row small{ width:100%; color:var(--muted); }
.admin-mini-row .admin-row-actions{ margin-left:auto; width:100%; justify-content:flex-end; }
.admin-mini-row .btn-xs{ margin-left:0; }
@media (max-width:900px){
  .admin-stats{ grid-template-columns:1fr 1fr; }
  .admin-grid-2,.aus-balance-grid,.aus-assets{ grid-template-columns:1fr; }
}
@media (max-width:720px){
  .aus-hero{ grid-template-columns:auto minmax(0,1fr); }
  .aus-balance-card{ grid-column:1 / -1; text-align:left; }
  .aus-balance-card b{ justify-content:flex-start; }
  .aus-tabs{ padding-left:10px; padding-right:10px; }
  .aus-panels{ padding:14px 12px 8px; }
  .aus-foot{ padding:12px; }
}
@media (max-width:720px){
  .admin-stats{ grid-template-columns:1fr 1fr; }
  .admin-toolbar{ align-items:stretch; flex-direction:column; }
  .admin-search{ min-width:0; width:100%; }
}

/* ---------- admin login gate ---------- */
.admin-login-wrap{
  min-height:100vh; display:grid; place-items:center; padding:24px; position:relative; z-index:1;
}
.admin-login-card{
  width:100%; max-width:420px; padding:28px 26px;
  border-radius:20px;
  background:
    linear-gradient(165deg, rgba(14,20,17,.97), rgba(6,10,8,.99)) padding-box,
    linear-gradient(145deg, rgba(74,222,128,.3), rgba(255,255,255,.05)) border-box;
  border:1px solid transparent;
  box-shadow:0 30px 60px -36px rgba(0,0,0,.85);
}
.admin-login-brand{ display:flex; align-items:center; gap:12px; margin-bottom:18px; }
.admin-login-brand b{ display:block; font-size:16px; }
.admin-login-brand span{ display:block; font-size:11px; color:var(--accent-2); letter-spacing:.08em; text-transform:uppercase; }
.admin-login-card h1{ margin:0 0 6px; font-size:24px; letter-spacing:-.03em; }
.admin-login-card .dash-muted{ margin:0 0 18px; }
.admin-login-error{
  margin:0 0 14px; padding:10px 12px; border-radius:12px; font-size:13px;
  color:#fecaca; background:rgba(248,113,113,.12); border:1px solid rgba(248,113,113,.25);
}
.admin-login-back{
  display:inline-block; margin-top:14px; color:var(--muted); font-size:13px; text-decoration:none;
}
.admin-login-back:hover{ color:var(--accent-2); }
.btn-block{ width:100%; justify-content:center; }

.admin-pnl-layout{
  display:grid; grid-template-columns:minmax(260px,340px) minmax(0,1fr); gap:14px; align-items:start;
}
.admin-pnl-form .field{ margin-bottom:12px; }
.admin-pnl-auto{
  margin:4px 0 12px; padding:14px 16px; border-radius:14px;
  background:rgba(74,222,128,.08); border:1px solid rgba(74,222,128,.22);
  display:flex; flex-direction:column; gap:4px;
}
.admin-pnl-auto .eyebrow{ margin:0; }
.admin-pnl-auto b{
  font-size:28px; letter-spacing:-.03em; color:var(--accent-2);
  font-family:var(--font-display);
}
.admin-pnl-auto.is-loss{
  background:rgba(248,113,113,.08); border-color:rgba(248,113,113,.25);
}
.admin-pnl-auto.is-loss b{ color:#fca5a5; }
.admin-pnl-auto small{ color:var(--muted); font-size:13px; }
.admin-pnl-preview-wrap{ overflow:hidden; }
.admin-pnl-stage{
  border-radius:16px; overflow:hidden;
  background:rgba(0,0,0,.35); border:1px solid rgba(255,255,255,.06);
}
.admin-pnl-stage canvas{
  display:block; width:100%; height:auto; max-width:100%;
  vertical-align:top;
}
@media (max-width:980px){
  .admin-pnl-layout{ grid-template-columns:1fr; }
}
.admin-settings-layout{
  display:grid; grid-template-columns:220px minmax(0,1fr); gap:14px; align-items:start;
  max-width:980px;
}
.admin-settings-menu{
  display:flex; flex-direction:column; gap:8px;
  padding:10px; border-radius:16px;
  background:rgba(0,0,0,.28); border:1px solid rgba(255,255,255,.06);
  position:sticky; top:78px;
}
.admin-settings-item{
  appearance:none; border:0; cursor:pointer; font:inherit; text-align:left;
  display:flex; align-items:center; gap:12px; width:100%;
  padding:12px 12px; border-radius:12px;
  background:transparent; color:var(--muted);
  border:1px solid transparent;
  transition:background .18s, border-color .18s, color .18s;
}
.admin-settings-item:hover{
  color:var(--ink); background:rgba(255,255,255,.03);
}
.admin-settings-item.on{
  color:var(--ink);
  background:rgba(74,222,128,.08);
  border-color:rgba(74,222,128,.22);
}
.asm-num{
  width:28px; height:28px; border-radius:9px; flex-shrink:0;
  display:grid; place-items:center;
  font-size:12px; font-weight:800; letter-spacing:.02em;
  color:var(--muted); background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.06);
}
.admin-settings-item.on .asm-num{
  color:var(--accent-dark); background:var(--accent);
  border-color:transparent;
}
.asm-copy{ min-width:0; display:flex; flex-direction:column; gap:2px; }
.asm-copy b{ font-size:13.5px; font-weight:700; color:inherit; }
.asm-copy small{ font-size:11px; color:var(--muted); }
.admin-settings-panels{ min-width:0; }
.admin-settings-panel{ display:none; }
.admin-settings-panel.on{ display:block; animation:ausIn .22s var(--ease-out); }
.admin-settings-head{ margin-bottom:14px; }
.admin-settings-head h3{ margin:4px 0 6px; font-size:18px; }
.admin-settings-head .dash-muted{ margin:0; }
.admin-tg-card{ max-width:760px; }
@media (max-width:820px){
  .admin-settings-layout{ grid-template-columns:1fr; }
  .admin-settings-menu{
    position:static; flex-direction:row; overflow:auto; gap:8px;
  }
  .admin-settings-item{ min-width:160px; flex:1; }
}
.admin-tg-form .aus-flag{ margin-bottom:4px; }
.admin-tg-events{ margin-top:18px; padding-top:14px; border-top:1px solid rgba(255,255,255,.06); }
.admin-tg-events h4{ margin:0 0 10px; font-size:13px; }
.admin-tg-checks{
  display:grid; grid-template-columns:1fr 1fr; gap:8px 14px;
}
.admin-tg-checks label{
  display:flex; align-items:center; gap:8px; font-size:13.5px; color:var(--ink);
  padding:8px 10px; border-radius:10px; background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.05); cursor:pointer;
}
.admin-tg-checks input{ accent-color:var(--accent); width:16px; height:16px; }
.admin-tg-actions{
  display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end;
  margin-top:18px; padding-top:14px; border-top:1px solid rgba(255,255,255,.06);
}
@media (max-width:720px){
  .admin-tg-checks{ grid-template-columns:1fr; }
}
.admin-pk-box{
  display:block; padding:12px 14px; border-radius:12px; margin-top:6px;
  background:rgba(0,0,0,.4); border:1px solid rgba(255,255,255,.08);
  color:var(--accent-2); font-size:12px; line-height:1.5; word-break:break-all; white-space:pre-wrap;
}
.admin-pk-secret{ color:#fecaca; border-color:rgba(248,113,113,.25); }
