:root{--accent:#ff4f7b;--mint:#5ef2b5;--bg:#1a1b26;--fg:#c0caf5;--chrome:#242424;}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;font-family:'Bricolage Grotesque',sans-serif;color:#ddd;
background:radial-gradient(circle at 20% 10%,#3a1424 0,transparent 40%),radial-gradient(circle at 90% 90%,#0f2a2a 0,transparent 45%),#0d0d12;}
.mono{font-family:'JetBrains Mono',monospace}
.term ::selection{background:rgba(255,80,120,.35);color:inherit}
.term{outline:none}
.cursor{animation:blink 1s steps(1) infinite;background:var(--fg)}
@keyframes blink{50%{opacity:0}}
.pill-in{animation:pill .8s ease forwards}
@keyframes pill{0%{opacity:0;transform:translateY(6px)}20%{opacity:1;transform:none}80%{opacity:1}100%{opacity:0}}
.slideup{animation:su .3s cubic-bezier(.2,.9,.3,1.2)}
@keyframes su{from{transform:translateY(30px);opacity:0}}
.wiggle:active{animation:wg .3s}
@keyframes wg{25%{transform:rotate(20deg) scale(1.3)}75%{transform:rotate(-20deg)}}
.glass{background:rgba(30,30,40,.85);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08)}
.tok{background:#444;color:#aaa;border-radius:3px;padding:0 3px;font-size:.8em}
::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:#333;border-radius:4px}