
@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');
:root{--bg:#050505;--panel:#0b0b0b;--panel2:#111;--line:#252525;--text:#f5f5f2;--muted:#8b8b87;--dim:#555550;--lime:#ccff00;--serif:"Playfair Display",Georgia,serif;--sans:Inter,Arial,sans-serif;--mono:"DM Mono",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}::selection{background:var(--lime);color:#000}.container{width:min(1400px,calc(100% - 64px));margin:auto}
.topbar{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;z-index:100;background:rgba(5,5,5,.82);backdrop-filter:blur(20px)}.nav-shell{display:flex;align-items:center;width:100%}
.brand{display:flex;align-items:center;gap:9px;font-weight:700;font-size:18px;letter-spacing:-.04em;white-space:nowrap}.brand-mark{width:28px;height:28px;display:grid;place-items:center;color:#000;background:var(--lime);border-radius:7px;font-weight:900;transform:skew(-12deg)}.brand span:last-child{color:#777}
.nav{display:flex;gap:3px;margin-left:55px}.nav a{padding:11px 13px;border-radius:999px;color:#777;font-size:12px}.nav a:hover,.nav a.active{background:#111;color:#fff}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:8px}.pill,.wallet-btn,.ghost,.lime-btn{border:1px solid var(--line);border-radius:999px;padding:11px 16px;background:#0c0c0c;color:#ddd;font-size:11px}.lime-btn{background:var(--lime);border-color:var(--lime);color:#000;font-weight:700}.wallet-btn{background:#101010;color:#fff}.wallet-btn.connected{background:var(--lime);color:#000;border-color:var(--lime)}.mobile-menu{display:none}
.kicker{font:8px var(--mono);color:var(--lime);letter-spacing:.16em;text-transform:uppercase}.mono{font-family:var(--mono)}.green{color:var(--lime)!important}.red{color:#ff7b7b!important}.muted{color:var(--muted)}.dim{color:var(--dim)}
.page-hero{min-height:660px;display:flex;align-items:center;position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(circle at 72% 45%,rgba(204,255,0,.075),transparent 28%),#050505}.page-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.024) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.024) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(#000,transparent 95%)}.page-hero .container{position:relative;z-index:3}.page-hero h1{font:500 clamp(72px,8vw,126px)/.82 var(--serif);letter-spacing:-.07em;margin:20px 0;max-width:900px}.page-hero h1 em{font-style:normal;color:var(--lime)}.page-hero p{max-width:650px;color:#858581;line-height:1.75;font-size:13px}
.hero3d-bg{position:absolute;right:-5%;top:50%;transform:translateY(-50%);width:55vw;height:650px;z-index:1;opacity:.85}.hero3d-bg canvas{width:100%;height:100%}
.section{padding:105px 0;border-bottom:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:40px}.section-head h2{font:500 clamp(48px,5vw,78px)/.9 var(--serif);letter-spacing:-.06em;margin:12px 0 0}.section-head h2 em{font-style:normal;color:var(--lime)}.section-head>p{max-width:470px;color:#777;font-size:11px;line-height:1.8}
.grid2{display:grid;grid-template-columns:1.35fr .9fr;gap:12px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.panel,.card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#0e0e0e,#080808);padding:24px;position:relative;overflow:hidden}.panel:after,.card:after{content:"";position:absolute;right:-90px;bottom:-120px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(204,255,0,.075),transparent 68%);pointer-events:none}.stat-card{min-height:180px}.stat-card .num{font:8px var(--mono);color:#555}.stat-card h3{font:31px var(--mono);margin:30px 0 8px}.stat-card p{font-size:9px;color:#555}
.table{border:1px solid var(--line);border-radius:18px;overflow:hidden}.table-head,.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr .7fr;align-items:center}.table-head{min-height:48px;padding:0 20px;background:#0b0b0b;color:#555;font:8px var(--mono)}.table-row{min-height:82px;padding:0 20px;border-top:1px solid #181818}.table-row:hover{background:#0c0c0c}.symbol{display:flex;align-items:center;gap:12px}.token{width:34px;height:34px;border:1px solid #333;border-radius:50%;display:grid;place-items:center;font:8px var(--mono);color:#aaa}.symbol b{font:12px var(--mono)}.symbol .muted{font-size:9px;margin-top:3px}.badge{font:7px var(--mono);border:1px solid #303030;padding:6px 8px;border-radius:999px;color:#777;width:max-content}.badge.live{color:var(--lime);border-color:#384700}.searchbar{display:flex;gap:9px;margin-bottom:12px}.searchbar input{flex:1;background:#0b0b0b;border:1px solid var(--line);border-radius:999px;color:#fff;padding:14px 18px;outline:none}.tabs{display:flex;gap:7px;margin-bottom:18px}.tab{border:1px solid var(--line);border-radius:999px;padding:8px 12px;background:#090909;color:#777;font-size:9px}.tab.active,.tab:hover{color:#000;background:var(--lime);border-color:var(--lime)}
.balance{font:500 48px var(--mono);letter-spacing:-.05em}.chart{height:300px;margin-top:20px;border:1px solid #181818;border-radius:14px;background:linear-gradient(180deg,rgba(204,255,0,.025),transparent),repeating-linear-gradient(90deg,#111 0,#111 1px,transparent 1px,transparent 90px);overflow:hidden}.chart svg{width:100%;height:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field label{display:block;font:8px var(--mono);color:#555;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;background:#080808;border:1px solid #242424;color:#ddd;border-radius:10px;padding:12px;outline:none}.notice{border:1px solid #263000;background:#0b1000;color:#777;border-radius:10px;padding:12px;font-size:9px;line-height:1.6}
.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.action{border:1px solid #242424;padding:17px;border-radius:12px;background:#0a0a0a;display:flex;justify-content:space-between;align-items:center}.action:hover{border-color:#4a5900;transform:translateY(-2px)}.action b{font:12px var(--mono)}.action span{font-size:8px;color:#555}
.docs-layout{display:grid;grid-template-columns:230px 1fr;gap:60px}.docs-side{position:sticky;top:110px;height:max-content;display:flex;flex-direction:column;gap:3px}.docs-side a{padding:12px;border-radius:8px;color:#666;font-size:10px}.docs-side a.active,.docs-side a:hover{background:#111;color:#fff}.doc{max-width:800px}.doc h2{font:38px var(--serif);margin-top:0}.doc h3{font:24px var(--serif);margin-top:55px}.doc p{color:#888;font-size:11px;line-height:1.9}.code{background:#080808;border:1px solid #222;border-radius:12px;padding:18px;font:10px/1.9 var(--mono);color:#aaa;overflow:auto}
.dash-head{padding:80px 0 35px;display:flex;justify-content:space-between;align-items:end}.dash-head h1{font:500 72px/.88 var(--serif);letter-spacing:-.06em;margin:16px 0}.dashboard-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:12px;padding-bottom:100px}.dashboard-grid .panel{min-height:280px}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px;border-top:1px solid #222}.mini-stat{padding:15px;border-right:1px solid #222}.mini-stat span{display:block;color:#555;font:7px var(--mono)}.mini-stat b{display:block;margin-top:9px;font:12px var(--mono)}
.footer{padding:70px 0 25px;background:#070707}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:35px}.footer h4{font:8px var(--mono);color:#555;margin:0 0 15px}.footer-grid>a,.footer-grid>div>a:not(.brand){display:block;color:#777;font-size:10px;margin:10px 0}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #202020;margin-top:60px;padding-top:18px;color:#444;font:7px var(--mono)}
.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#e9e9e6;color:#000;padding:12px 17px;border-radius:999px;font:10px var(--mono);z-index:999;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
.big-card{min-height:330px}.feature-icon{width:44px;height:44px;border:1px solid #333;border-radius:50%;display:grid;place-items:center;color:var(--lime);font:10px var(--mono)}.big-card h3{font:30px/.95 var(--serif);margin:55px 0 12px}.big-card p{color:#777;font-size:10px;line-height:1.7}.timeline{position:relative}.timeline:before{content:"";position:absolute;left:16px;top:20px;bottom:20px;width:1px;background:#2a2a2a}.timeline-item{display:grid;grid-template-columns:40px 1fr;gap:18px;padding:25px 0}.timeline-dot{width:33px;height:33px;border:1px solid #3b4500;border-radius:50%;background:#0b0e00;z-index:2;display:grid;place-items:center;color:var(--lime);font:8px var(--mono)}
@media(max-width:900px){.container{width:min(100% - 34px,700px)}.nav{display:none}.mobile-menu{display:block;margin-left:auto}.nav-right .lang{display:none}.page-hero{min-height:570px}.hero3d-bg{opacity:.35;width:100%;right:-25%;}.grid2,.grid3,.grid4,.dashboard-grid{grid-template-columns:1fr}.table-head,.table-row{grid-template-columns:2fr 1fr 1fr}.table-head span:nth-child(4),.table-head span:nth-child(5),.table-row>*:nth-child(4),.table-row>*:nth-child(5){display:none}.section-head{display:block}.section-head>p{margin-top:25px}.docs-layout{grid-template-columns:1fr}.docs-side{position:static;flex-direction:row;overflow:auto}.dash-head{display:block}.dash-head .actions{margin-top:20px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.container{width:calc(100% - 24px)}.page-hero h1{font-size:64px}.section{padding:75px 0}.form-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.hero3d-bg{height:500px}.topbar{height:66px}.brand{font-size:15px}}

/* V8 visual polish */
.page-hero{min-height:600px}
.hero3d-bg{pointer-events:none}
.webgl-panel{height:540px!important;position:relative;overflow:hidden;background:
radial-gradient(circle at 65% 48%,rgba(204,255,0,.055),transparent 25%),
linear-gradient(180deg,#0a0a0a,#060606)}
.webgl-panel:before{content:"LIVE VISUAL ENGINE";position:absolute;left:24px;top:22px;z-index:5;color:#565650;font:8px var(--mono);letter-spacing:.14em}
.webgl-panel:after{content:"WEBGL / MARKET CORE / POINTER REACTIVE";position:absolute;right:24px;bottom:22px;z-index:5;color:#41413d;font:8px var(--mono);letter-spacing:.1em}
.webgl-panel .hero3d-bg{inset:0!important;width:100%!important;height:100%!important;right:auto!important;top:0!important;transform:none!important;opacity:1!important}
.market-universe{min-height:520px}
.market-universe .universe-art{position:absolute;inset:0;opacity:.8}
.market-universe h3{position:relative;z-index:2}
.market-universe p{position:relative;z-index:2}
.feature-grid .card{min-height:290px}
@media(max-width:900px){.webgl-panel{height:420px!important}.market-universe{min-height:360px}}

.webgl-fallback{position:absolute;inset:0;display:grid;place-items:center;color:#3f3f3b;font:8px var(--mono);letter-spacing:.12em;z-index:1}
.webgl-panel .hero3d-bg{z-index:2}

/* IPOFinance Cloud Header + Footer refresh */
.topbar{
  height:78px;
  border-bottom:1px solid rgba(255,255,255,.075);
  background:rgba(4,5,4,.68);
  backdrop-filter:blur(24px) saturate(135%);
  -webkit-backdrop-filter:blur(24px) saturate(135%);
  box-shadow:0 10px 40px rgba(0,0,0,.18);
}
.topbar:before{
  content:"";position:absolute;left:8%;right:8%;top:-42px;height:80px;
  background:radial-gradient(ellipse,rgba(204,255,0,.10),transparent 68%);
  filter:blur(22px);pointer-events:none;
}
.nav-shell{position:relative}
.brand{font-size:18px}
.brand-mark{
  width:30px;height:30px;border-radius:9px;
  box-shadow:0 0 24px rgba(204,255,0,.20);
}
.nav{
  margin-left:42px;padding:4px;border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.025);border-radius:999px;
}
.nav a{padding:10px 14px;color:#777}
.nav a:hover,.nav a.active{background:rgba(255,255,255,.075);color:#fff}
.nav-right{gap:9px}
.x-link{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-width:38px;height:38px;padding:0 11px;border:1px solid #292929;
  border-radius:999px;background:rgba(255,255,255,.025);color:#eee;
  font-size:12px;font-weight:700;transition:.2s ease;
}
.x-link:hover{background:#fff;color:#000;border-color:#fff;transform:translateY(-1px)}
.x-link svg{width:14px;height:14px;fill:currentColor}
.wallet-btn{min-height:40px;padding:11px 17px;box-shadow:0 0 0 1px rgba(255,255,255,.015) inset}
.wallet-btn.connected{box-shadow:0 0 26px rgba(204,255,0,.13)}
.footer{
  position:relative;overflow:hidden;
  background:#040404;border-top:1px solid rgba(255,255,255,.08);
  padding:80px 0 28px;
}
.footer:before{
  content:"";position:absolute;width:720px;height:300px;right:-260px;top:-150px;
  background:radial-gradient(ellipse,rgba(204,255,0,.08),transparent 70%);
  filter:blur(18px);pointer-events:none;
}
.footer-grid{
  position:relative;display:grid;grid-template-columns:2.2fr repeat(4,1fr);
  gap:42px;padding-bottom:64px;
}
.footer-brand-copy{max-width:330px;color:#6e6e6a;font-size:11px;line-height:1.8;margin-top:18px}
.footer h4{font:8px var(--mono);letter-spacing:.18em;color:#555;margin:5px 0 18px}
.footer-grid a:not(.brand){display:block;color:#888;font-size:11px;margin:0 0 12px;transition:.18s}
.footer-grid a:not(.brand):hover{color:#ccff00;transform:translateX(2px)}
.footer-social{
  display:flex!important;align-items:center;gap:8px;margin-top:22px!important;
  width:max-content;padding:9px 12px;border:1px solid #252525;border-radius:999px;
}
.footer-social:hover{background:#fff;color:#000!important}
.footer-bottom{
  position:relative;display:flex;justify-content:space-between;gap:20px;
  padding-top:22px;border-top:1px solid #181818;color:#444;font:8px var(--mono);
  letter-spacing:.08em;
}
.cloud-badge{
  display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);
  color:#777;font:8px var(--mono);letter-spacing:.1em;margin-top:16px;
}
.cloud-badge i{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px var(--lime)}
@media(max-width:900px){
  .nav{display:none}.nav-right .x-link{display:none}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid>div:first-child{grid-column:1/-1}
}
@media(max-width:560px){
  .container{width:min(100% - 28px,1400px)}
  .topbar{height:68px}.brand{font-size:16px}.brand-mark{width:27px;height:27px}
  .nav-right .lang{display:none}.wallet-btn{font-size:10px;padding:10px 13px}
  .footer{padding:58px 0 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 18px}
  .footer-bottom{flex-direction:column;gap:10px}
}

/* Minimal IPOFinance CA + GMGN addition */
.ipof-token-strip{max-width:1400px;margin:18px auto 0;padding:12px 16px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.025);display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px}
.ipof-token-strip>div:first-child{min-width:0;display:flex;align-items:center;gap:12px}
.ipof-token-label{font:8px var(--mono,ui-monospace,monospace);letter-spacing:.12em;color:#777;white-space:nowrap}
.ipof-token-strip code{color:#aaa;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ipof-token-actions{display:flex;gap:7px;flex-shrink:0}
.ipof-token-actions button,.ipof-token-actions a{border:1px solid #303030;background:#101010;color:#eee;border-radius:8px;padding:8px 11px;cursor:pointer;text-decoration:none;font:10px ui-monospace,monospace}
.ipof-token-actions button:hover,.ipof-token-actions a:hover{background:#ccff00;color:#000;border-color:#ccff00}
@media(max-width:700px){.ipof-token-strip{margin:12px 14px 0;align-items:flex-start;flex-direction:column}.ipof-token-strip>div:first-child{width:100%;align-items:flex-start;flex-direction:column;gap:6px}.ipof-token-strip code{width:100%}}
