:root{--bg:#070b16;--lime:#b6ff3b;--mag:#ff3bcb;--cyan:#3be8ff;--amber:#ffb03b;--glass:rgba(255,255,255,.04);--line:rgba(182,255,59,.18)}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:#e6f2d8;font-family:'IBM Plex Mono',monospace;min-height:100vh;
background-image:linear-gradient(rgba(182,255,59,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(182,255,59,.04) 1px,transparent 1px),radial-gradient(ellipse at 20% 0%,rgba(255,59,203,.14),transparent 50%),radial-gradient(ellipse at 90% 100%,rgba(59,232,255,.12),transparent 50%);
background-size:32px 32px,32px 32px,100% 100%,100% 100%;background-attachment:fixed}
body::after{content:'';position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px);z-index:100}
.disp{font-family:'Bungee',cursive;letter-spacing:.02em}
.glass{background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(8px);border-radius:1.25rem}
.pod{border-radius:2.5rem 2.5rem 1.25rem 1.25rem;position:relative;overflow:hidden}
.glow-lime{box-shadow:0 0 0 1px var(--lime),0 0 24px -6px var(--lime)}
.glow-mag{box-shadow:0 0 0 1px var(--mag),0 0 24px -6px var(--mag)}
.glow-cyan{box-shadow:0 0 0 1px var(--cyan),0 0 24px -6px var(--cyan)}
.glow-amber{box-shadow:0 0 0 1px var(--amber),0 0 24px -6px var(--amber)}
.bubble{position:absolute;bottom:-10px;border-radius:50%;border:1px solid rgba(255,255,255,.5);animation:rise linear infinite;pointer-events:none}
@keyframes rise{to{transform:translateY(-260px);opacity:0}}
.breed{background:var(--lime);color:#071000;animation:pulse 1.8s ease-in-out infinite}
.breed:disabled{opacity:.4;animation:none}
@keyframes pulse{50%{box-shadow:0 0 0 10px rgba(182,255,59,0),0 0 40px var(--lime)}0%{box-shadow:0 0 0 0 rgba(182,255,59,.6)}}
.vat{width:140px;height:140px;border-radius:50%;background:conic-gradient(var(--lime),var(--mag),var(--cyan),var(--lime));animation:spin 1.4s linear infinite;filter:blur(2px)}
@keyframes spin{to{transform:rotate(360deg)}}
.helix{animation:spin 6s linear infinite;display:inline-block}
.fade-in{animation:fade .5s ease both}
@keyframes fade{from{opacity:0;transform:translateY(10px)}}
input[type=range]{width:100%;accent-color:var(--lime)}
.jar{border-radius:3rem 3rem 1.5rem 1.5rem;border:2px solid rgba(182,255,59,.5);box-shadow:inset 0 0 40px rgba(182,255,59,.15),0 0 50px -10px var(--lime)}
.scroll-x{overflow-x:auto;scrollbar-width:thin}
.btn{border:1px solid var(--line);border-radius:.8rem;padding:.45rem .8rem;font-size:.75rem;transition:.15s}
.btn:hover{border-color:var(--lime);color:var(--lime)}
select,textarea,input[type=text]{background:#0d1324;border:1px solid var(--line);border-radius:.6rem;padding:.4rem .6rem;color:#e6f2d8}