/* Vyld — 3jane-inspired layout. Dark navy + green accent. Geist font. */
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700;800&display=swap');

:root {
  --green:       #CCFF00;
  --green-bright:#DDFF33;
  --green-glow:  rgba(204,255,0,.18);
  --green-glass: rgba(204,255,0,.06);
  --bg:          #06060A;
  --bg-card:     #0C0C14;
  --bg-elevated: #12121C;
  --text:        #EAEAEF;
  --text-dim:    #8888A0;
  --text-muted:  #555570;
  --line:        rgba(255,255,255,.04);
  --line-strong: rgba(255,255,255,.08);
  --radius:      4px;
  --mono:        'JetBrains Mono','Courier New',monospace;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;background:var(--bg)}
body{font-family:var(--mono);font-size:14px;line-height:1.6;color:var(--text);background:var(--bg);overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{cursor:pointer;font-family:inherit;border:none;background:none}
code{font-family:var(--mono);font-size:.88em;color:var(--green)}
input{font-family:var(--mono);background:transparent;color:var(--text);border:none;outline:none}

.wrap{max-width:1100px;margin:0 auto;padding:0 32px}

/* ── TOP BANNER ── */
.top-banner{display:flex;align-items:center;justify-content:center;height:34px;background:var(--green);color:#000;font-size:11px;font-weight:700;letter-spacing:.02em}
.top-banner .dot{display:inline-block;width:6px;height:6px;background:#000;border-radius:50%;margin-right:8px;animation:pulse2 2s infinite}
@keyframes pulse2{0%,100%{opacity:1}50%{opacity:.3}}

/* ── NAV ── */
header{position:sticky;top:0;z-index:100;background:rgba(6,6,10,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:56px;gap:20px}
.brand{font-size:15px;font-weight:800;color:var(--green);letter-spacing:-.01em}
.brand small{font-weight:400;color:var(--text-dim)}
.nav-links{display:flex;align-items:center;gap:6px;font-size:12px}
.nav-links a{padding:6px 10px;color:var(--text-dim);font-weight:500;transition:.15s;border-radius:var(--radius)}
.nav-links a:hover{color:var(--text);background:var(--bg-elevated)}
.nav-status{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green-glow);animation:pulse2 2.5s infinite}

/* ── HERO ── */
.hero-section{position:relative;padding:72px 32px 96px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--bg) 0%,var(--bg-card) 100%)}
.hero-content{display:flex;align-items:center;gap:56px;max-width:1100px;margin:0 auto;flex-wrap:wrap}
.hero-main{flex:1;min-width:300px;display:flex;flex-direction:column;gap:24px}
.hero-img{flex:1;min-width:300px}
.hero-img img{width:100%;border-radius:6px;border:1px solid var(--line)}
.hero-main h1{font-family:var(--mono);font-size:48px;font-weight:800;line-height:1.1;letter-spacing:-.03em;color:var(--text)}
.hero-main h1 .green{color:var(--green)}
.hero-sub{font-size:16px;color:var(--text-dim);line-height:1.6;max-width:540px}
.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.hero-note{font-size:11px;color:var(--text-muted)}

@media(max-width:767px){
  .hero-main h1{font-size:34px}
}

/* ── SECTIONS ── */
.section{padding:80px 32px;border-bottom:1px solid var(--line)}
.section:nth-child(odd){background:var(--bg)}
.section:nth-child(even){background:var(--bg-card)}
.section-head{text-align:center;margin-bottom:56px;display:flex;flex-direction:column;gap:12px;align-items:center}
.section-eyebrow{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}
.section-title{font-family:var(--mono);font-size:36px;font-weight:800;color:var(--text);line-height:1.2;letter-spacing:-.025em;max-width:600px}
.section-desc{font-size:15px;color:var(--text-dim);line-height:1.6;max-width:560px}

/* ── HOW IT WORKS FLOW ── */
.how-flow{display:flex;align-items:flex-start;justify-content:center;gap:24px;max-width:800px;margin:0 auto;flex-wrap:wrap}
.how-step{flex:1;min-width:180px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:8px}
.how-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line-strong);border-radius:50%;font-family:var(--mono);font-size:13px;font-weight:800;color:var(--green)}
.how-step h4{font-size:15px;font-weight:700;color:var(--text)}
.how-step p{font-size:12px;color:var(--text-dim);line-height:1.55}
.how-arrow{font-size:20px;color:var(--text-muted);padding-top:20px;display:none}
@media(min-width:768px){.how-arrow{display:block}}

/* ── YIELD COMPARISON ── */
.yield-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;max-width:680px;margin:0 auto}
.yield-card{border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px;display:flex;flex-direction:column;gap:14px;background:var(--bg-elevated)}
.yield-card.highlight{border-color:var(--green);background:var(--green-glass)}
.yc-type{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}
.yc-type.green{color:var(--green)}
.yc-name{font-size:13px;font-weight:700;color:var(--text)}
.yc-apy{font-family:var(--mono);font-size:24px;font-weight:800;color:var(--text-dim)}
.yc-apy.green{color:var(--green)}
.yc-bar{height:4px;background:var(--line);border-radius:2px;overflow:hidden}
.yc-bar span{display:block;height:100%;background:var(--green);border-radius:2px}
@media(max-width:767px){.yield-grid{grid-template-columns:1fr}}

/* ── GRID 3 ── */
.grid-3{display:grid;grid-template-columns:1fr;gap:20px}
@media(min-width:768px){.grid-3{grid-template-columns:1fr 1fr 1fr}}

/* ── CARDS ── */
.card{border:1px solid var(--line);background:var(--bg-elevated);border-radius:var(--radius);padding:28px 24px;display:flex;flex-direction:column;gap:10px;transition:.15s}
.card:hover{border-color:var(--green-glow)}
.card-idx{font-size:9px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}
.card-idx.green{color:var(--green)}
.card h4{font-size:15px;font-weight:700;color:var(--text)}
.card p{font-size:12px;color:var(--text-dim);line-height:1.6}

/* ── CHATBOX DARK ── */
.chatbox-dark{width:100%;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-elevated);display:flex;flex-direction:column;overflow:hidden}
.chat-head{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--line);background:rgba(0,0,0,.3)}
.ch-title{font-size:11px;font-weight:700;color:var(--green)}
.ch-badge{font-size:9px;font-weight:700;color:var(--green);padding:2px 8px;border:1px solid var(--green-glow);border-radius:10px;text-transform:uppercase}
.chat-messages{flex:1;padding:18px;display:flex;flex-direction:column;gap:10px;min-height:240px;max-height:360px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}
.msg{display:flex}.msg.agent{justify-content:flex-start}.msg.user{justify-content:flex-end}
.bubble{max-width:88%;padding:10px 14px;border-radius:var(--radius);font-size:11px;line-height:1.6;color:var(--text-dim)}
.msg.agent .bubble{background:rgba(255,255,255,.03);border:1px solid var(--line)}
.msg.user .bubble{background:rgba(0,200,5,.1);border:1px solid var(--green-glow);color:var(--text)}
.bubble .green{color:var(--green);font-weight:700}
.quick-cmds{display:flex;flex-wrap:wrap;gap:6px}
.cmd{padding:6px 14px;font-size:11px;font-weight:700;font-family:var(--mono);border:1px solid var(--line-strong);border-radius:20px;background:transparent;color:var(--text-dim);cursor:pointer;transition:.15s}
.cmd:hover{background:var(--green-glow);color:var(--green);border-color:var(--green)}
/* Inline buttons inside chat bubbles */
.bubble button,.bubble .qa,.confirm-row button{padding:6px 14px;font-size:11px;font-weight:700;font-family:var(--mono);border:1px solid var(--line-strong);border-radius:20px;background:var(--bg-elevated);color:var(--text);cursor:pointer;transition:.15s}
.bubble button:hover,.bubble .qa:hover,.confirm-row button:hover{background:var(--green-glow);color:var(--green);border-color:var(--green)}
.btn-confirm{color:var(--green)!important;border-color:var(--green)!important}
.btn-confirm:hover{background:var(--green)!important;color:#000!important}
.btn-cancel{color:var(--text-muted)!important}
.confirm-row{display:flex;gap:6px;margin-top:8px}
.chat-position{margin:0 18px 10px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.02)}
.cp-head{font-size:9px;font-weight:700;text-transform:uppercase;color:var(--text-dim);margin-bottom:10px}
.cp-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.cp-k{font-size:8px;color:var(--text-muted);text-transform:uppercase;font-weight:700}
.cp-v{font-size:18px;font-weight:800;font-family:var(--mono)}.cp-v.green{color:var(--green)}
.cp-u{font-size:9px;color:var(--text-dim);margin-top:2px}
.cp-actions{display:flex;gap:8px}
.chat-input-dark{display:flex;align-items:center;padding:10px 14px;gap:8px;border-top:1px solid var(--line)}
.ci-left{display:flex;align-items:center;gap:6px}.ci-left[hidden]{display:none}
.ci-left input{width:90px;padding:7px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);font-size:11px}
.ci-left input:focus{border-color:var(--green)}
.prompt{color:var(--green);font-weight:700;font-size:13px}
.ci-text-dark{flex:1;padding:7px 0;font-size:12px;color:var(--text)}
.ci-text-dark::placeholder{color:var(--text-muted)}
.ci-send-dark{width:32px;height:32px;border-radius:var(--radius);background:var(--green);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;color:#000;font-weight:800;transition:.15s;flex-shrink:0}
.ci-send-dark:hover{background:var(--green-bright)}
.maxbtn-dark{font-size:9px;font-weight:700;color:var(--green);text-transform:uppercase;padding:5px 8px;border:1px solid var(--green-glass);border-radius:var(--radius);background:var(--green-glass);cursor:pointer;transition:.15s;font-family:var(--mono)}
.maxbtn-dark:hover{background:var(--green-glow)}

/* ── TOKEN STATS ── */
.token-stats{display:flex;justify-content:center;gap:64px;padding:40px 0}
.token-stats .ts{display:flex;flex-direction:column;align-items:center;gap:6px}
.token-stats .ts .val{font-family:var(--mono);font-size:36px;font-weight:800;color:var(--green);line-height:1}
.token-stats .ts .lbl{font-size:9px;color:var(--text-muted);text-transform:uppercase;font-weight:700;letter-spacing:.06em}

/* ── CONTRACTS ── */
.addr-grid{display:flex;flex-direction:column;gap:14px;margin-bottom:28px}
.addr-card-dark{border:1px solid var(--line);padding:16px 20px;background:var(--bg-elevated);border-radius:var(--radius);display:flex;flex-direction:column;gap:8px}
.addr-card-dark .lbl{font-size:11px;font-weight:700;color:var(--text)}
.addr-card-dark .lbl small{font-weight:400;color:var(--text-dim);margin-left:8px}
.addr-card-dark code{font-size:10px;color:var(--text-dim);word-break:break-all}
.addr-card-dark .actions{display:flex;gap:10px;margin-top:6px}
.addr-card-dark .actions a,.addr-card-dark .actions button{font-size:10px;padding:4px 12px;border:1px solid var(--line);border-radius:20px;background:transparent;color:var(--text-dim);font-weight:700;text-transform:uppercase;transition:.15s;font-family:var(--mono);cursor:pointer}
.addr-card-dark .actions a:hover,.addr-card-dark .actions button:hover{color:var(--green);border-color:var(--green);background:var(--green-glass)}
.code-block-dark{background:var(--bg);border:1px solid var(--line);padding:18px 22px;border-radius:var(--radius);font-size:11px;font-family:var(--mono);overflow-x:auto;white-space:pre;margin:16px 0;line-height:1.8;color:var(--text-dim)}
.code-block-dark .comment{color:var(--text-muted)}
.code-block-dark .fn{color:var(--green)}
.code-block-dark .prompt-line{color:var(--green);font-weight:700;user-select:none}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;gap:6px;padding:12px 24px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius);transition:.15s;font-family:var(--mono)}
.btn-green{background:var(--green);color:#000;border:none}
.btn-green:hover{background:var(--green-bright)}
.btn-ghost{background:transparent;color:var(--text-dim);border:1px solid var(--line-strong)}
.btn-ghost:hover{border-color:var(--green);color:var(--green)}
.btn-sm{font-size:10px;padding:5px 10px}

/* ── CTA ── */
.cta-section{background:var(--bg-card);padding:80px 32px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px;border-top:1px solid var(--line)}
.cta-prompt{font-size:14px;color:var(--green);font-weight:700;font-family:var(--mono)}
.cta-section h2{font-family:var(--mono);font-size:32px;font-weight:800;color:var(--text)}
.cta-section p{font-size:15px;color:var(--text-dim)}

/* ── FOOTER ── */
footer{background:var(--bg);padding:60px 32px 36px;font-size:11px;border-top:1px solid var(--line)}
.foot{display:flex;flex-direction:column;gap:32px}
.foot-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}
@media(min-width:768px){.foot-grid{grid-template-columns:1fr 1fr 1fr 1fr}}
.foot-grid .col{display:flex;flex-direction:column;gap:6px}
.foot-grid .col .hdr{font-weight:700;color:var(--text);font-size:10px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.foot-grid .col a{color:var(--text-muted);transition:.15s;font-size:12px;padding:2px 0}
.foot-grid .col a:hover{color:var(--green)}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid var(--line);flex-wrap:wrap;gap:12px;font-size:10px;color:var(--text-muted)}
.disclaimer{font-size:9px;color:var(--text-muted);line-height:1.7;max-width:680px;margin-top:28px;opacity:.5}

/* ── TOAST ── */
.toast{position:fixed;bottom:28px;right:28px;z-index:200;padding:14px 22px;background:var(--bg-elevated);color:var(--text);border:1px solid var(--line-strong);border-radius:var(--radius);font-size:12px;font-family:var(--mono);animation:fadeUp .3s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

.blink{animation:blink 1s step-end infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}

/* ── MOBILE ── */
@media(max-width:767px){
  .nav-links{display:none}
  .section{padding:56px 18px}
  .section-title{font-size:26px}
  .hero-section{padding:48px 18px 72px}
  .hero-content{flex-direction:column;gap:36px}
  .token-stats{flex-direction:column;gap:28px;align-items:center}
  .how-flow{flex-direction:column;align-items:center}
  .how-arrow{display:block;transform:rotate(90deg)}
  .cta-section{padding:56px 18px}
}
