:root{--green: #00ff41;--green-dim: #00cc33;--green-faint: #007a1e;--green-ghost: #003a0e;--black: #000000;--border: #004400;--bg-card: rgba(0, 14, 0, .35);--bg-section: rgba(0, 0, 0, .88)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{background:var(--black);color:var(--green);font-family:IBM Plex Mono,monospace;font-size:14px;line-height:1.5;min-height:100vh;overflow-x:hidden}#root:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.12) 2px,rgba(0,0,0,.12) 4px);pointer-events:none;z-index:9999}@keyframes flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.85}94%{opacity:1}96%{opacity:.92}97%{opacity:1}}#root{animation:flicker 10s infinite}.glow{text-shadow:0 0 8px var(--green),0 0 20px var(--green-faint)}.glow-strong{text-shadow:0 0 10px var(--green),0 0 30px var(--green-dim),0 0 60px var(--green-faint)}.creature-bg{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:0;pointer-events:none;will-change:transform}.creature-bg pre{font-size:8px;line-height:1.1;white-space:pre;color:var(--green);text-shadow:0 0 4px var(--green-faint);-webkit-user-select:none;user-select:none;opacity:.14;transition:opacity .15s ease}@media(min-width:768px){.creature-bg pre{font-size:10px}}@media(min-width:1200px){.creature-bg pre{font-size:12px}}.nav{position:fixed;top:0;left:0;right:0;z-index:100;background:#000000f0;border-bottom:1px solid var(--green-ghost);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:0 2rem;height:3rem;display:flex;align-items:center;justify-content:space-between;opacity:0;transform:translateY(-100%);transition:opacity .4s ease,transform .4s ease;pointer-events:none}.nav.visible{opacity:1;transform:translateY(0);pointer-events:auto}.nav-brand{font-size:.85rem;font-weight:700;letter-spacing:.5rem;color:var(--green);text-decoration:none}.nav-links{display:flex;gap:1.75rem;list-style:none}.nav-links a{color:var(--green-faint);text-decoration:none;font-size:.75rem;letter-spacing:.15rem;transition:color .2s}.nav-links a:hover{color:var(--green)}@media(max-width:600px){.nav-links{gap:1rem}.nav-links a{font-size:.65rem;letter-spacing:.08rem}}.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;position:relative;z-index:1}.hero-title{font-size:clamp(5rem,15vw,12rem);font-weight:700;letter-spacing:2rem;text-align:center;position:relative;z-index:2}.hero-mood{color:var(--green-dim);font-size:.9rem;letter-spacing:.3rem;margin-top:1.5rem;position:relative;z-index:2;opacity:.7;transition:opacity .4s}.hero-scroll-hint{position:absolute;bottom:3rem;color:var(--green-faint);font-size:.7rem;letter-spacing:.25rem;animation:pulse 3s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.2}50%{opacity:.6}}.site-section{position:relative;z-index:1;padding:6rem 2rem;max-width:1140px;margin:0 auto;background:var(--bg-section)}.site-section+.site-section{border-top:1px solid var(--green-ghost)}@media(max-width:768px){.site-section{padding:4rem 1.25rem}}.section-heading{font-size:clamp(2rem,6vw,4rem);font-weight:700;letter-spacing:.4rem;line-height:1;margin-bottom:.75rem;color:var(--green)}.section-subtitle{color:var(--green-dim);font-size:.85rem;letter-spacing:.2rem;margin-bottom:3rem}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.revealed{opacity:1;transform:translateY(0)}.reveal-stagger .reveal-child{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}.reveal-stagger.revealed .reveal-child{opacity:1;transform:translateY(0)}.reveal-stagger.revealed .reveal-child:nth-child(1){transition-delay:.05s}.reveal-stagger.revealed .reveal-child:nth-child(2){transition-delay:.1s}.reveal-stagger.revealed .reveal-child:nth-child(3){transition-delay:.15s}.reveal-stagger.revealed .reveal-child:nth-child(4){transition-delay:.2s}.reveal-stagger.revealed .reveal-child:nth-child(5){transition-delay:.25s}.reveal-stagger.revealed .reveal-child:nth-child(6){transition-delay:.3s}.reveal-stagger.revealed .reveal-child:nth-child(7){transition-delay:.35s}.reveal-stagger.revealed .reveal-child:nth-child(8){transition-delay:.4s}.stats-layout{display:flex;flex-direction:column;gap:1px;border:1px solid var(--border);background:var(--border)}.stat-box--wide{width:100%}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border)}@media(max-width:600px){.stats-grid{grid-template-columns:1fr 1fr}}.stat-box{padding:1.25rem 1.5rem;background:var(--bg-card);position:relative;transition:background .2s}.stat-box:hover{background:#00140080}.stat-label{color:var(--green-faint);font-size:.65rem;letter-spacing:.2rem;text-transform:lowercase;margin-bottom:.35rem}.stat-value{font-size:1.15rem;font-weight:700;color:var(--green);word-break:break-word;line-height:1.3}.traits-section{margin-top:2.5rem}.traits-label{color:var(--green-faint);font-size:.65rem;letter-spacing:.2rem;margin-bottom:.75rem}.traits-list{display:flex;flex-wrap:wrap;gap:.5rem}.trait-tag{border:1px solid var(--green-ghost);padding:.3rem .85rem;font-size:.72rem;color:var(--green-dim);letter-spacing:.08rem;transition:border-color .2s,color .2s,background .2s;background:transparent}.trait-tag:hover{border-color:var(--green-dim);color:var(--green);background:#00ff4108}.interact-layout{display:flex;flex-direction:column;gap:1.5rem}.wallet-bar{display:flex;align-items:center;gap:0;border:1px solid var(--border);background:var(--bg-card);overflow:hidden}.wallet-connected{display:flex;align-items:center;gap:.75rem;padding:.65rem 1.25rem;flex:1;min-width:0}.wallet-indicator{width:7px;height:7px;border-radius:50%;background:#1a1a00;flex-shrink:0;transition:all .3s}.wallet-indicator.active{background:var(--green);box-shadow:0 0 6px var(--green),0 0 12px var(--green-faint);animation:pulse-dot 2.5s ease-in-out infinite}@keyframes pulse-dot{0%,to{box-shadow:0 0 4px var(--green),0 0 10px var(--green-faint)}50%{box-shadow:0 0 8px var(--green),0 0 18px var(--green-faint)}}.wallet-label{font-size:.6rem;letter-spacing:.15rem;text-transform:uppercase;color:var(--green-faint)}.wallet-addr{font-size:.8rem;color:var(--green);font-family:IBM Plex Mono,monospace;letter-spacing:.04rem}.wallet-action{background:transparent;border:none;border-left:1px solid var(--border);color:var(--green-dim);font-family:IBM Plex Mono,monospace;font-size:.75rem;padding:.65rem 1.25rem;cursor:pointer;letter-spacing:.1rem;transition:all .2s;white-space:nowrap}.wallet-action:hover{background:var(--green-ghost);color:var(--green)}.wallet-action--connect{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;border-left:none;width:100%;justify-content:center;font-size:.8rem;letter-spacing:.15rem}.wallet-action--connect:hover .wallet-indicator{background:var(--green);box-shadow:0 0 6px var(--green)}.wallet-action--disconnect{font-size:1rem;padding:.65rem .9rem;color:var(--green-ghost)}.wallet-action--disconnect:hover{background:#28000080;color:#c33}.interact-log{border:1px solid var(--border);background:var(--black);padding:1rem 1.25rem;max-height:280px;overflow-y:auto;font-size:.82rem;line-height:1.7}.interact-log::-webkit-scrollbar{width:3px}.interact-log::-webkit-scrollbar-track{background:var(--black)}.interact-log::-webkit-scrollbar-thumb{background:var(--green-ghost)}.interact-log-line{padding:.15rem 0;animation:log-line-in .3s ease-out}@keyframes log-line-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.interact-log-line--user{color:var(--green-dim)}.interact-log-line--user .log-prefix,.interact-log-line--vera{color:var(--green)}.interact-log-line--vera .log-prefix{color:var(--green-faint)}.interact-log-line--system{color:var(--green-ghost);font-size:.72rem}.log-tx{color:var(--green-ghost)}.log-error{color:#933}.cursor-blink{animation:blink-cursor .6s step-end infinite;color:var(--green)}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}.interact-count{color:var(--green-faint);font-size:.75rem}.relationship-display{color:var(--green-dim);font-size:.8rem;padding:.75rem 1.25rem;border-left:2px solid var(--green-ghost);background:#000e0033}.interact-form{display:flex;gap:0;border:1px solid var(--border);overflow:hidden}@media(max-width:600px){.interact-form{flex-direction:column}}.interact-input{flex:1;background:var(--black);border:none;color:var(--green);font-family:IBM Plex Mono,monospace;font-size:.9rem;padding:.85rem 1.25rem;outline:none;transition:box-shadow .2s}.interact-input:focus{box-shadow:inset 0 0 20px #00ff4108}.interact-input::placeholder{color:var(--green-ghost)}.btn{background:var(--bg-card);border:none;border-left:1px solid var(--border);color:var(--green-dim);font-family:IBM Plex Mono,monospace;font-size:.8rem;padding:.85rem 1.75rem;cursor:pointer;letter-spacing:.15rem;transition:all .2s;white-space:nowrap}.btn:hover{background:var(--green-faint);color:var(--green)}.btn:disabled{opacity:.3;cursor:not-allowed}@media(max-width:600px){.btn{border-left:none;border-top:1px solid var(--border)}}.tx-result{margin-top:1rem;padding:.75rem 1.25rem;border:1px solid var(--green-ghost);background:var(--bg-card);font-size:.8rem}.tx-link{color:var(--green);text-decoration:none;border-bottom:1px solid var(--green-ghost);transition:border-color .2s}.tx-link:hover{border-color:var(--green)}.tx-error{color:#c33;margin-top:1rem;font-size:.8rem;padding:.75rem 1.25rem;border:1px solid #1a0000;background:#1400004d}.memory-grid{display:flex;flex-direction:column;gap:1px;max-height:520px;overflow-y:auto;border:1px solid var(--border);background:var(--border)}.memory-grid::-webkit-scrollbar{width:3px}.memory-grid::-webkit-scrollbar-track{background:var(--black)}.memory-grid::-webkit-scrollbar-thumb{background:var(--green-ghost)}.memory-grid::-webkit-scrollbar-thumb:hover{background:var(--green-faint)}.memory-card{padding:1.25rem 1.5rem;background:var(--bg-card);position:relative;transition:background .2s}.memory-card:hover{background:#00140073}.memory-card--new{animation:card-flash-in .6s ease-out}@keyframes card-flash-in{0%{opacity:0;transform:translateY(-8px);background:#00ff410f}to{opacity:1;transform:translateY(0);background:var(--bg-card)}}.memory-card-category{display:inline-block;color:var(--green-faint);font-size:.6rem;letter-spacing:.15rem;text-transform:uppercase;margin-bottom:.5rem;position:static;background:none;padding:0}.memory-card-content{font-size:.9rem;line-height:1.6;color:var(--green);margin-bottom:.75rem}.memory-card-meta{display:flex;justify-content:space-between;align-items:center;color:var(--green-ghost);font-size:.7rem}.memory-importance{display:flex;align-items:center;gap:.4rem}.memory-importance span{color:var(--green-ghost)}.importance-bar{display:flex;gap:2px}.importance-pip{width:3px;height:10px;background:#001e0080}.importance-pip.active{background:var(--green-faint)}.event-log-container{border:1px solid var(--border);padding:1rem 1.25rem;background:var(--bg-card);max-height:360px;overflow-y:auto;position:relative;font-size:.75rem}.event-log-container::-webkit-scrollbar{width:3px}.event-log-container::-webkit-scrollbar-track{background:var(--black)}.event-log-container::-webkit-scrollbar-thumb{background:var(--green-ghost)}.event-log-container::-webkit-scrollbar-thumb:hover{background:var(--green-faint)}.event-log-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(90deg,transparent,transparent 79px,rgba(0,40,0,.06) 79px,rgba(0,40,0,.06) 80px);pointer-events:none}.event-line{padding:.3rem 0;color:var(--green-faint);border-bottom:1px solid rgba(0,30,0,.2);position:relative;transition:background .3s;font-family:IBM Plex Mono,monospace}.event-line:hover{color:var(--green-dim)}.event-line--new{animation:event-flash-in .6s ease-out}@keyframes event-flash-in{0%{opacity:0;transform:translate(-6px);background:#00ff410f}to{opacity:1;transform:translate(0);background:transparent}}.event-line:last-child{border-bottom:none}.event-line .event-block{color:var(--green-ghost)}.event-line .event-name{color:var(--green-dim)}.footer{position:relative;z-index:1;padding:3rem 2rem;text-align:center;color:var(--green-faint);font-size:.8rem;letter-spacing:.25rem;border-top:1px solid var(--green-ghost);background:var(--bg-section)}.fallback-msg{color:var(--green-ghost);font-size:.8rem;padding:2rem 0;text-align:center}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--black)}::-webkit-scrollbar-thumb{background:var(--green-ghost)}::-webkit-scrollbar-thumb:hover{background:var(--green-faint)}
