:root {
  --bg:#0a0a0a; --bg2:#111111; --surface:#1a1a1a; --surface2:#202020;
  --border:#272727; --border-bright:#333333; --text:#e8e4de;
  --text-muted:#5a5650; --text-dim:#888278; --white:#f0ece6;
  --green:#FFB547; --green-dim:#d4922e;
  --green-glow:rgba(255,181,71,0.12); --green-glow-strong:rgba(255,181,71,0.22);
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{background:var(--bg);color:var(--text);font-family:'Funnel Display',sans-serif;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}
body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");opacity:.022;pointer-events:none;z-index:9999}

/* HERO */
.hero{padding:80px 32px 64px;max-width:960px;margin:0 auto;border-bottom:1px solid var(--border);position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:20px;left:-100px;width:600px;height:400px;background:radial-gradient(ellipse at center,rgba(255,181,71,.055) 0%,transparent 68%);pointer-events:none}
h1{font-family:'Bagel Fat One',cursive;font-size:clamp(58px,12vw,140px);line-height:.9;color:var(--white);letter-spacing:-3px;opacity:0;animation:fadeUp .7s cubic-bezier(.16,1,.3,1) forwards .1s}
h1 .slash{background:linear-gradient(135deg,var(--green),var(--green-dim));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 28px rgba(255,181,71,.4))}
.hero-tagline{margin-top:24px;font-size:clamp(14px,2.5vw,18px);font-weight:300;color:var(--text-dim);opacity:0;animation:fadeUp .7s cubic-bezier(.16,1,.3,1) forwards .25s}
.stats{display:flex;margin-top:48px;opacity:0;animation:fadeUp .7s cubic-bezier(.16,1,.3,1) forwards .4s}
.stat{display:flex;flex-direction:column;gap:5px;padding:18px 28px;border:1px solid var(--border);background:var(--surface);transition:border-color .2s,background .2s}
.stat:first-child{border-radius:8px 0 0 8px}.stat:last-child{border-radius:0 8px 8px 0}.stat+.stat{border-left:none}
.stat:hover{border-color:var(--border-bright);background:var(--surface2)}
.stat-val{font-family:'Bagel Fat One',cursive;font-size:30px;line-height:1;background:linear-gradient(135deg,var(--green),var(--green-dim));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.stat-label{font-size:9px;font-weight:700;color:var(--text-muted);letter-spacing:2.5px;text-transform:uppercase}

/* WRAPPER */
.wrapper{max-width:960px;margin:0 auto;padding:40px 32px 100px}

/* TABS */
.tabs{display:flex;margin-bottom:24px;border:1px solid var(--border);border-radius:10px;overflow:hidden;opacity:0;animation:fadeUp .6s cubic-bezier(.16,1,.3,1) forwards .45s}
.tab-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:14px 20px;background:var(--surface);border:none;cursor:pointer;font-family:'Funnel Display',sans-serif;transition:background .2s;position:relative}
.tab-btn+.tab-btn{border-left:1px solid var(--border)}
.tab-btn:hover{background:var(--surface2)}
.tab-btn.active{background:var(--bg2)}
.tab-btn.active::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--green),var(--green-dim));box-shadow:0 0 10px var(--green-glow-strong)}
.tab-label{font-size:13px;font-weight:700;color:var(--text-muted);transition:color .2s}
.tab-btn.active .tab-label{color:var(--white)}
.tab-count{font-size:10px;color:var(--text-muted);opacity:.6}
.tab-btn.active .tab-count{opacity:1;color:var(--green)}

/* TAB PANELS */
.tab-panel{display:none}.tab-panel.active{display:block}

/* SEARCH */
.search-wrap{position:relative;margin-bottom:14px;opacity:0;animation:fadeUp .6s cubic-bezier(.16,1,.3,1) forwards .5s}
.search-prefix{position:absolute;left:18px;top:50%;transform:translateY(-50%);font-size:17px;color:var(--text-muted);pointer-events:none;z-index:2;transition:color .2s}
.search-wrap:focus-within .search-prefix{color:var(--green)}
.search-input{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:15px 20px 15px 48px;font-family:'Funnel Display',sans-serif;font-size:15px;color:var(--text);outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.search-input:focus{border-color:var(--green);background:var(--bg2);box-shadow:0 0 0 3px var(--green-glow),0 0 24px var(--green-glow)}
.search-input::placeholder{color:var(--text-muted)}

/* FILTERS */
.filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:28px;opacity:0;animation:fadeUp .6s cubic-bezier(.16,1,.3,1) forwards .6s}
.filter-btn{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:6px 15px;font-family:'Funnel Display',sans-serif;font-size:10px;font-weight:800;color:var(--text-muted);cursor:pointer;text-transform:uppercase;letter-spacing:1.5px;transition:all .15s}
.filter-btn:hover{border-color:var(--border-bright);color:var(--text);background:var(--surface2)}
.filter-btn.active{background:var(--green);border-color:var(--green);color:#000;box-shadow:0 0 14px var(--green-glow-strong)}

/* TERM CARDS */
.glossary{display:flex;flex-direction:column;gap:3px}
.term-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;opacity:0;animation:fadeUp .4s cubic-bezier(.16,1,.3,1) forwards}
.term-card:hover{border-color:var(--border-bright);background:var(--bg2)}
.term-card.open{border-color:rgba(255,181,71,.4);background:var(--bg2);box-shadow:0 0 0 1px rgba(255,181,71,.08),0 4px 28px rgba(0,0,0,.5)}
.term-header{display:flex;align-items:center;padding:14px 18px;gap:12px;user-select:none}
.term-cat{font-size:8px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;padding:3px 8px;border-radius:4px;white-space:nowrap;flex-shrink:0}
.cat-mechanics{background:rgba(30,80,140,.3);color:#6aaeff;border:1px solid rgba(106,170,255,.18)}
.cat-risk{background:rgba(140,30,30,.3);color:#ff7070;border:1px solid rgba(255,112,112,.18)}
.cat-market{background:rgba(100,80,0,.3);color:#d4b84a;border:1px solid rgba(212,184,74,.18)}
.cat-protocol{background:rgba(80,35,140,.3);color:#b07aff;border:1px solid rgba(176,122,255,.18)}
.cat-orders{background:rgba(0,90,60,.3);color:#3dca96;border:1px solid rgba(61,202,150,.18)}
.cat-architecture{background:rgba(0,180,120,.18);color:var(--green);border:1px solid rgba(255,181,71,.2)}
.cat-trading{background:rgba(0,120,220,.18);color:#60b8ff;border:1px solid rgba(96,184,255,.2)}
.cat-consensus{background:rgba(180,100,0,.22);color:#ffb347;border:1px solid rgba(255,179,71,.22)}
.cat-storage{background:rgba(120,0,180,.22);color:#cc88ff;border:1px solid rgba(204,136,255,.22)}
.cat-security{background:rgba(180,30,60,.22);color:#ff6688;border:1px solid rgba(255,102,136,.22)}
.cat-incentives{background:rgba(0,140,140,.22);color:#44dddd;border:1px solid rgba(68,221,221,.22)}
.term-name{font-family:'Funnel Display',sans-serif;font-weight:700;font-size:15px;color:var(--white);flex:1}
.term-abbr{font-size:11px;color:var(--text-muted);font-style:italic}
.term-chevron{color:var(--text-muted);font-size:12px;transition:transform .25s cubic-bezier(.16,1,.3,1),color .2s;flex-shrink:0}
.term-card.open .term-chevron{transform:rotate(90deg);color:var(--green)}
.term-body{display:none;padding:0 18px 18px;border-top:1px solid var(--border)}
.term-card.open .term-body{display:block}
.term-def{font-size:14px;line-height:1.8;color:var(--text-dim);padding-top:16px}
.term-example{margin-top:14px;background:rgba(255,181,71,.04);border-left:2px solid var(--green);padding:12px 14px;font-size:13px;color:var(--text-dim);line-height:1.7;border-radius:0 6px 6px 0}
.term-example strong{color:var(--green);font-size:8px;letter-spacing:2px;text-transform:uppercase;display:block;margin-bottom:6px;font-weight:800;opacity:.8}
.term-related{margin-top:14px;display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.related-label{font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.5px;font-weight:700}
.related-tag{font-size:11px;font-weight:600;color:var(--text-dim);border:1px solid var(--border);border-radius:4px;padding:2px 9px;cursor:pointer;transition:all .15s;background:var(--surface2)}
.related-tag:hover{background:var(--green);color:#000;border-color:var(--green);box-shadow:0 0 10px var(--green-glow)}

/* NO RESULTS */
.no-results{display:none;text-align:center;padding:80px 20px;color:var(--text-muted);font-size:14px}
.no-results-icon{font-size:36px;margin-bottom:14px}

/* AI TAB */
.ai-panel{padding-top:8px}
.ai-intro{margin-bottom:28px;opacity:0;animation:fadeUp .5s cubic-bezier(.16,1,.3,1) forwards .1s}
.ai-intro-title{font-family:'Bagel Fat One',cursive;font-size:28px;color:var(--white);margin-bottom:8px}
.ai-intro-sub{font-size:14px;color:var(--text-dim);line-height:1.7}
.ai-input-row{display:flex;gap:8px;max-width:640px;margin-bottom:24px;opacity:0;animation:fadeUp .5s cubic-bezier(.16,1,.3,1) forwards .2s}
#ai-input{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:15px 18px;font-family:'Funnel Display',sans-serif;font-size:15px;color:var(--text);outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
#ai-input:focus{border-color:var(--green);background:var(--bg2);box-shadow:0 0 0 3px var(--green-glow),0 0 24px var(--green-glow)}
#ai-input::placeholder{color:var(--text-muted)}
#ai-submit{background:var(--green);border:none;border-radius:9px;padding:15px 22px;font-family:'Funnel Display',sans-serif;font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:#000;cursor:pointer;transition:opacity .2s,transform .1s,box-shadow .2s;white-space:nowrap;flex-shrink:0}
#ai-submit:hover{opacity:.88;box-shadow:0 0 18px var(--green-glow-strong)}
#ai-submit:active{transform:scale(.97)}
#ai-submit:disabled{opacity:.25;cursor:not-allowed}
.ai-status{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-muted);margin-bottom:20px;opacity:0;animation:fadeUp .5s cubic-bezier(.16,1,.3,1) forwards .3s}
.ai-dot{width:7px;height:7px;background:var(--green);border-radius:50%;animation:pulse 2s infinite;box-shadow:0 0 10px rgba(255,181,71,.6)}
.ai-status-text{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--text-muted)}
.ai-loading{display:none;align-items:center;gap:10px;margin:20px 0;font-size:12px;color:var(--text-muted)}
.ai-loading-dots span{display:inline-block;width:5px;height:5px;background:var(--green);border-radius:50%;margin:0 2px;animation:bounce 1.2s infinite;box-shadow:0 0 6px rgba(255,181,71,.4)}
.ai-loading-dots span:nth-child(2){animation-delay:.2s}
.ai-loading-dots span:nth-child(3){animation-delay:.4s}
.ai-result{display:none;max-width:640px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:24px;margin-top:4px}
.ai-result.visible{display:block}
.ai-result-term{font-family:'Bagel Fat One',cursive;font-size:28px;color:var(--white);margin-bottom:12px;background:linear-gradient(135deg,var(--white),var(--text-dim));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.ai-result-def{font-size:14px;line-height:1.8;color:var(--text-dim)}
.ai-result-example{margin-top:16px;background:rgba(255,181,71,.04);border-left:2px solid var(--green);padding:12px 14px;font-size:13px;color:var(--text-dim);line-height:1.7;border-radius:0 6px 6px 0}
.ai-result-example strong{color:var(--green);font-size:8px;letter-spacing:2px;text-transform:uppercase;display:block;margin-bottom:6px;font-weight:800;opacity:.8}

/* FOOTER */
.site-footer{display:flex;align-items:center;justify-content:center;gap:8px;padding:22px 32px 36px;font-family:'Funnel Display',sans-serif;font-size:13px;color:var(--text-muted);border-top:1px solid var(--border)}
.footer-person{display:inline-flex;align-items:center;gap:5px;color:var(--text-dim);font-weight:600;text-decoration:none;transition:color .15s}
.footer-person:hover{color:var(--green)}
.x-logo{width:12px;height:12px;opacity:.5;transition:opacity .15s}
.footer-person:hover .x-logo{opacity:1}

/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse{0%,100%{opacity:1;box-shadow:0 0 10px rgba(255,181,71,.6)}50%{opacity:.35;box-shadow:0 0 3px rgba(255,181,71,.15)}}
@keyframes bounce{0%,80%,100%{transform:translateY(0)}40%{transform:translateY(-5px)}}

/* RESPONSIVE */
@media(max-width:640px){
  h1{letter-spacing:-1.5px}.hero{padding:52px 20px 44px}.wrapper{padding:28px 20px 60px}
  .stats{flex-wrap:wrap}.stat{flex:1 1 calc(50%)}
  .stat:first-child{border-radius:8px 0 0 0}.stat:nth-child(2){border-radius:0 8px 0 0}
  .stat:nth-child(3){border-left:1px solid var(--border);border-top:none;border-radius:0 0 0 8px}
  .stat:last-child{border-top:none;border-left:none;border-radius:0 0 8px 0}
  .term-name{font-size:14px}.ai-input-row{flex-direction:column}
  .tab-count{display:none}
}