*{box-sizing:border-box}
html,body{margin:0;padding:0;background:#000000;color:#e6e6ec;font-family:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace}
.panel{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:12px 16px;position:sticky;top:0;background:#13131a;border-bottom:1px solid #222;flex-wrap:wrap;z-index:10}
.panel .left,.panel .right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.panel button{background:#222533;color:#e6e6ec;border:1px solid #333;padding:8px 12px;border-radius:10px;cursor:pointer;font-weight:600}
.panel button.disabled{opacity:.45;cursor:not-allowed;filter:grayscale(40%)}
.panel input,.panel select{padding:8px 10px;border-radius:8px;border:1px solid #333;background:#181a24;color:#e6e6ec}
button,input,select,textarea,option{font-family:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace!important}
.seedEcho{opacity:.8}
#holder{display:flex;justify-content:center;padding:16px}



/* Tooltip */
.with-tip{position:relative;cursor:help;display:flex;align-items:center;gap:6px}
.with-tip .emoji{filter:grayscale(0%);opacity:.95}
.tip-bubble{position:absolute;left:0;top:110%;background:#11141a;color:#e6e6ec;border:1px solid #2a2a34;border-radius:12px;padding:12px 14px;width:min(560px,90vw);font-size:13px;line-height:1.5;box-shadow:0 10px 26px rgba(0,0,0,.45);transform:translateY(6px);opacity:0;pointer-events:none;transition:opacity .15s ease, transform .15s ease;z-index:50}
.with-tip:hover .tip-bubble{opacity:1;transform:translateY(0);pointer-events:auto}
.with-tip.show .tip-bubble{opacity:1;transform:translateY(0);pointer-events:auto}

/* Background trail canvas pinned behind UI & p5 */
#bgCanvas{position:fixed;inset:0;z-index:0;pointer-events:none}

@media (max-width:640px){ .panel{gap:10px} #holder{padding:10px} }

canvas{max-width:100%;height:auto;display:block;position:relative;z-index:1}

footer{position:relative;z-index:5;text-align:center;padding:10px;color:#aaa}
