.exprslots{line-height:2;display:block}.slot{vertical-align:middle;margin:2px;display:inline-block;position:relative}.slot__btn{border:1.5px dashed var(--border,#94a3b8);background:var(--social-bg,#f8fafc);color:var(--text,#64748b);font:inherit;cursor:pointer;border-radius:8px;padding:4px 10px;font-size:13px}.slot__btn:hover{border-color:var(--accent,#6366f1);color:var(--accent,#4f46e5);background:var(--accent-bg,#eef2ff)}.block{border:1.5px solid var(--accent-border,#c4b5fd);background:var(--accent-bg,#faf5ff);vertical-align:middle;border-radius:10px;margin:2px;padding:6px 9px;display:inline-block;position:relative}.block__head{align-items:center;gap:6px;margin-bottom:5px;display:flex}.block__label{color:var(--accent,#6d28d9);font-size:13px;font-weight:700}.leaf__x{color:var(--text,#cbd5e1);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:15px;line-height:1}.leaf__x:hover{color:#ef4444}.block__label--btn{cursor:pointer;font:inherit;background:0 0;border:none;padding:0;font-size:13px;font-weight:700}.block__label--btn:hover{text-decoration:underline}.wrapbtn{border:1px solid var(--border,#e2e8f0);background:var(--bg,#fff);color:var(--accent,#6366f1);cursor:pointer;border-radius:5px;padding:2px 5px;font-family:ui-monospace,monospace;font-size:11px;line-height:1}.wrapbtn:hover{border-color:var(--accent,#6366f1);background:var(--accent-bg,#eef2ff)}.block--infix{align-items:center;gap:5px;display:inline-flex}.grp{align-items:center;gap:2px;display:inline-flex}.grp__paren{color:var(--text,#94a3b8);font-family:ui-monospace,monospace;font-size:15px;font-weight:700}.op-sym{cursor:pointer;color:var(--text-h,#475569);background:0 0;border:none;padding:0 3px;font-family:ui-monospace,monospace;font-size:15px;font-weight:700}.op-sym:hover{color:var(--accent,#4f46e5)}.block__args{flex-direction:column;gap:5px;padding-left:4px;display:flex}.argrow{align-items:center;gap:6px;display:flex}.argrow__label{color:var(--text,#64748b);text-align:right;min-width:78px;font-size:12px}.leaf{cursor:pointer;border:none;border-radius:6px;padding:3px 8px;font-family:ui-monospace,monospace;font-size:13px;font-weight:600}.leaf--var{color:#1e40af;background:#dbeafe}.leaf--num{color:#166534;background:#dcfce7}.leaf--str{color:#92400e;background:#fef3c7}.leaf--loopvar{color:#1e40af;background:#dbeafe}.leaf--missing{color:#475569;background:#f1f5f9}.leaf--stale{outline-offset:1px;outline:2px solid #ef4444;text-decoration:line-through}.picker{z-index:20;background:var(--bg,#fff);border:1px solid var(--border,#cbd5e1);width:310px;box-shadow:var(--shadow,0 10px 28px #00000024);text-align:left;border-radius:10px;margin-top:5px;padding:11px;position:absolute;top:100%;left:0}.picker__sec{margin-bottom:11px}.picker__sec:last-child{margin-bottom:0}.picker__h{text-transform:uppercase;letter-spacing:.04em;color:var(--text,#94a3b8);margin-bottom:6px;font-size:11px}.picker__grp{margin-bottom:5px}.picker__grpname{font:inherit;color:var(--accent,#6366f1);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin-right:4px;padding:2px 4px;font-size:11px;display:inline-flex}.picker__grpname:hover{text-decoration:underline}.picker__grpcaret{flex:none;width:10px}.pick{border:1px solid var(--border,#e2e8f0);background:var(--social-bg,#f8fafc);color:var(--text-h,#0f172a);font:inherit;cursor:pointer;border-radius:6px;margin:2px 3px 2px 0;padding:3px 8px;font-size:12.5px}.pick:hover{border-color:var(--accent,#6366f1);background:var(--accent-bg,#eef2ff)}.pick em{color:var(--text,#94a3b8);font-size:11px;font-style:normal}.pick--op{background:var(--accent-bg,#f5f3ff);border-color:var(--accent-border,#ddd6fe)}.pick--loopvar{color:#1e40af;background:#dbeafe;border-color:#93c5fd;font-weight:600}.pick--missing{color:#475569;background:#f1f5f9;border-color:#cbd5e1;font-weight:600}.picker__lit{align-items:center;gap:5px;display:flex}.picker__lit input{border:1px solid var(--border,#cbd5e1);min-width:0;font:inherit;background:var(--bg,#fff);color:var(--text-h,#0f172a);border-radius:6px;flex:1;padding:4px 7px;font-size:13px}.picker__varselect{font:inherit;border:1px solid var(--border,#e2e8f0);background:var(--social-bg,#f8fafc);color:var(--text-h,#0f172a);border-radius:6px;max-width:100%;padding:4px 8px;font-size:13px}
