.viz{position:absolute;left:50%;top:50%;width:440px;height:220px;margin:0;transform:translate(-50%,-50%) scale(var(--viz-s,1));transform-origin:center;font-family:var(--font-mono);pointer-events:none;z-index:2}.viz,.viz *{box-sizing:border-box}.vz-node{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid color-mix(in srgb,var(--theme) 26%,var(--line-2));border-radius:10px;background:color-mix(in srgb,var(--theme) 6%,rgba(19,18,16,.88));box-shadow:0 8px 26px -14px rgba(0,0,0,.75)}.vz-node.vz-glow{animation:vzGlowPulse 3.6s var(--ease) infinite}@keyframes vzGlowPulse{0%,to{box-shadow:0 8px 26px -14px rgba(0,0,0,.75)}50%{box-shadow:0 0 22px -4px color-mix(in srgb,var(--theme) 45%,transparent)}}.vz-name{font-size:10.5px;font-weight:600;letter-spacing:.13em;color:color-mix(in srgb,var(--theme) 55%,var(--text-dim))}.vz-label,.vz-name{text-transform:uppercase}.vz-label{position:absolute;font-size:10px;letter-spacing:.14em;color:var(--text-mute);white-space:nowrap}.vz-label.code{text-transform:none;letter-spacing:.04em;font-size:10.5px}.vz-line{position:absolute;background:color-mix(in srgb,var(--theme) 30%,var(--line-2))}.vz-line.h{height:1px}.vz-line.v{width:1px}.vz-svg{position:absolute;inset:0;width:100%;height:100%}.vz-svg path{fill:none;stroke:color-mix(in srgb,var(--theme) 30%,var(--line-2));stroke-width:1}.vz-flow{position:absolute;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;background:var(--theme);box-shadow:0 0 9px var(--theme);opacity:0}@keyframes vzTravelX{0%{left:var(--x0);opacity:0}10%{opacity:1}88%{opacity:1}to{left:var(--x1);opacity:0}}@keyframes vzTravelY{0%{top:var(--y0);opacity:0}10%{opacity:1}88%{opacity:1}to{top:var(--y1);opacity:0}}@keyframes vzTravelXFade{0%{left:var(--x0);opacity:0}8%{opacity:1}62%{left:var(--x1);opacity:1}74%{left:var(--x1);opacity:0}to{left:var(--x1);opacity:0}}.vz-pdot{position:absolute;left:0;top:0;width:5px;height:5px;border-radius:50%;background:var(--theme);box-shadow:0 0 9px var(--theme);opacity:0}.vz-pdot.ret{background:var(--text);box-shadow:0 0 8px rgba(255,255,255,.45)}@keyframes vzPathGo{0%{offset-distance:0;opacity:0}3%{opacity:1}13%{opacity:1}16%{offset-distance:100%;opacity:0}to{offset-distance:100%;opacity:0}}@keyframes vzPathBack{0%,18%{offset-distance:100%;opacity:0}21%{opacity:1}31%{opacity:1}34%{offset-distance:0;opacity:0}to{offset-distance:0;opacity:0}}@keyframes vzPulse{0%,to{opacity:.35}50%{opacity:1}}.vz-rows{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.vz-rows i{display:block;height:3px;border-radius:2px;background:color-mix(in srgb,var(--text-dim) 38%,transparent)}.vz-chips{display:flex;gap:5px}.vz-chips i{width:11px;height:14px;border-radius:3px;border:1px solid color-mix(in srgb,var(--theme) 55%,transparent);background:color-mix(in srgb,var(--theme) 14%,transparent);animation:vzPulse 2.4s infinite}.vz-chips i:nth-child(2){animation-delay:.4s}.vz-chips i:nth-child(3){animation-delay:.8s}.vz-dotgrid{display:grid;grid-template-columns:repeat(4,auto);grid-gap:5px;gap:5px}.vz-dotgrid i{width:3.5px;height:3.5px;border-radius:50%;background:color-mix(in srgb,var(--theme) 70%,transparent);animation:vzPulse 3s infinite}.vz-dotgrid i:nth-child(2n){animation-delay:.7s}.vz-dotgrid i:nth-child(3n){animation-delay:1.4s}.vz-dotgrid i:nth-child(5n){animation-delay:2.1s}.vz-vbars{display:flex;gap:4px;align-items:flex-end;height:20px}.vz-vbars i{width:4px;border-radius:2px;background:color-mix(in srgb,var(--text-dim) 35%,transparent)}.vz-vbars i.hot{background:var(--theme);box-shadow:0 0 7px color-mix(in srgb,var(--theme) 70%,transparent);animation:vzPulse 2s infinite}.vz-big{font-size:14px;font-weight:700;letter-spacing:.08em;color:color-mix(in srgb,var(--theme) 70%,#fff);text-shadow:0 0 14px color-mix(in srgb,var(--theme) 55%,transparent)}.vz-check{color:#58c08a}.vz-check,.vz-x{font-size:11px;font-weight:700}.vz-x{color:#e07a72}.vz-ansrow{display:flex;align-items:center;gap:7px}.vz-fn{font-size:11.5px;color:var(--text-dim)}.vz-type{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.vz-type i{display:block;height:3.5px;border-radius:2px;background:color-mix(in srgb,var(--theme) 45%,var(--text-mute));transform-origin:left;animation:vzType 5s var(--ease) infinite}.vz-type i:nth-child(2){animation-delay:.5s}.vz-type i:nth-child(3){animation-delay:1s}@keyframes vzType{0%{transform:scaleX(0);opacity:1}30%{transform:scaleX(1)}86%{transform:scaleX(1);opacity:1}to{transform:scaleX(1);opacity:0}}.vz-pblock{position:absolute;width:148px;height:42px;padding:0 12px;display:flex;flex-direction:column;justify-content:center;gap:4px;border:1px solid color-mix(in srgb,var(--theme) 22%,var(--line-2));border-radius:9px;background:color-mix(in srgb,var(--theme) 5%,rgba(19,18,16,.88));animation:vzBlockActive 6s infinite}.vz-pblock b{font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--theme) 60%,var(--text-dim))}@keyframes vzBlockActive{0%,to{border-color:color-mix(in srgb,var(--theme) 22%,var(--line-2))}22%,6%{border-color:color-mix(in srgb,var(--theme) 65%,var(--line-2));box-shadow:0 0 14px -4px color-mix(in srgb,var(--theme) 50%,transparent)}34%{border-color:color-mix(in srgb,var(--theme) 22%,var(--line-2))}}.vz-tree{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.vz-tree i{display:block;height:4px;border-radius:2px;background:color-mix(in srgb,var(--text-dim) 36%,transparent)}.vz-tree i.hot{background:color-mix(in srgb,var(--theme) 75%,transparent);box-shadow:0 0 6px color-mix(in srgb,var(--theme) 55%,transparent);animation:vzPulse 2.6s infinite}.vz-chrome{position:absolute;top:9px;left:11px;display:flex;gap:4px}.vz-chrome i{width:5px;height:5px;border-radius:50%;background:color-mix(in srgb,var(--text-dim) 40%,transparent)}.vz-fill{display:flex;flex-direction:column;gap:5px;align-items:flex-start;margin-top:10px}.vz-fill i{display:block;border-radius:3px;background:color-mix(in srgb,var(--theme) 26%,var(--bg-3));animation:vzBuild 4.2s infinite}.vz-fill .cols{display:flex;gap:5px}.vz-fill i:first-child{animation-delay:.2s}.vz-fill .cols i:first-child{animation-delay:.9s}.vz-fill .cols i:nth-child(2){animation-delay:1.3s}.vz-fill>i:last-child{animation-delay:1.8s}@keyframes vzBuild{0%{opacity:.15}28%,78%{opacity:.95}to{opacity:.15}}.vz-chip{position:absolute;transform:translate(-50%,-50%);padding:2px 6px;border-radius:5px;font-size:9.5px;color:color-mix(in srgb,var(--theme) 70%,#fff);white-space:nowrap;border:1px solid color-mix(in srgb,var(--theme) 45%,var(--line-2));background:color-mix(in srgb,var(--theme) 12%,rgba(19,18,16,.94));opacity:0}.vz-code{font-size:11px;line-height:2;color:var(--text-dim);display:flex;flex-direction:column;align-items:flex-start}.vz-code .kw{color:color-mix(in srgb,var(--theme) 75%,#fff)}.vz-code .row{display:flex;align-items:center;gap:7px}.vz-slot{width:8px;height:8px;border-radius:50%;border:1px solid color-mix(in srgb,var(--theme) 45%,var(--line-2));animation:vzSlotOk 4.8s infinite}@keyframes vzSlotOk{0%,84%{background:transparent;box-shadow:none}90%,to{background:var(--theme);box-shadow:0 0 8px var(--theme)}}.vz-flash{position:absolute;opacity:0;animation:vzFlash 4.8s infinite}@keyframes vzFlash{0%,to{opacity:0;transform:translateY(3px)}22%,8%{opacity:1;transform:translateY(0)}34%{opacity:0}}.vz-gate{position:absolute;width:30px;height:78px;border-radius:8px;border:1px solid color-mix(in srgb,var(--theme) 30%,var(--line-2));background:color-mix(in srgb,var(--theme) 5%,rgba(19,18,16,.88));display:grid;place-items:center}.vz-gate:before{content:"";width:1px;height:46px;background:color-mix(in srgb,var(--theme) 40%,var(--line-2))}.vz-gate .vz-check{position:absolute;top:-18px;opacity:0;animation:vzGateFlash 3.6s infinite}@keyframes vzGateFlash{0%,to{opacity:0;transform:translateY(3px)}18%,6%{opacity:1;transform:translateY(0)}30%{opacity:0}}.vz-wf{position:absolute;height:10px;border-radius:3px;background:color-mix(in srgb,var(--theme) 50%,transparent);transform-origin:left;animation:vzGrow 5.5s var(--ease) infinite}@keyframes vzGrow{0%{transform:scaleX(0);opacity:0}8%{opacity:1}38%{transform:scaleX(1)}88%{transform:scaleX(1);opacity:1}to{transform:scaleX(1);opacity:0}}.vz-phead{position:absolute;width:1px;background:color-mix(in srgb,var(--theme) 55%,transparent);box-shadow:0 0 8px color-mix(in srgb,var(--theme) 45%,transparent);opacity:0}.vz-metric{position:absolute;display:flex;align-items:center;gap:8px;padding:0 11px;height:34px;border:1px solid var(--line-2);border-radius:8px;background:rgba(19,18,16,.85);font-size:10px;letter-spacing:.06em;color:var(--text-dim)}.vz-metric b{margin-left:auto;color:var(--text);font-weight:600;font-size:11px;letter-spacing:0}.vz-metric .led{width:6px;height:6px;border-radius:50%;background:#46c98a;box-shadow:0 0 7px #46c98a;animation:vzPulse 2.2s infinite}.vz-token{position:absolute;display:flex;align-items:center;gap:9px;padding:0 11px;height:34px;border:1px solid var(--line-2);border-radius:8px;background:rgba(19,18,16,.85);font-size:10.5px;color:var(--text-dim)}.vz-token .sw{width:12px;height:12px;border-radius:4px;background:var(--theme);box-shadow:0 0 7px color-mix(in srgb,var(--theme) 55%,transparent)}.vz-token .aa{font-size:11px;font-weight:700;color:var(--text);font-style:normal}.vz-token .sq{width:11px;height:11px;border:1px dashed color-mix(in srgb,var(--text-dim) 55%,transparent);border-radius:3px}.vz-mini{position:absolute;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:8px;font-size:10.5px;color:var(--text-dim)}.vz-mini.btn{border:1px solid color-mix(in srgb,var(--theme) 45%,var(--line-2));background:color-mix(in srgb,var(--theme) 18%,transparent);color:color-mix(in srgb,var(--theme) 70%,#fff);font-weight:600}.vz-mini.input{border:1px solid var(--line-2);background:rgba(19,18,16,.85);justify-content:flex-start;padding:0 10px}.vz-mini.input .caret{width:1.5px;height:14px;background:var(--theme);animation:vzBlink 1.1s steps(1) infinite}@keyframes vzBlink{50%{opacity:0}}.vz-mini.card{border:1px solid var(--line-2);background:rgba(19,18,16,.85)}.vz-frame{position:absolute;border:1px solid color-mix(in srgb,var(--theme) 26%,var(--line-2));border-radius:10px;background:color-mix(in srgb,var(--theme) 4%,rgba(19,18,16,.88));display:flex;flex-direction:column;gap:6px;padding:11px;align-items:flex-start}.vz-frame i{display:block;border-radius:3px;background:color-mix(in srgb,var(--theme) 24%,var(--bg-3));animation:vzBuild 4.6s infinite}.vz-frame .cols{display:flex;gap:5px}.vz-frame>i:first-child{animation-delay:.3s}.vz-frame>i:nth-child(2){animation-delay:1s}.vz-frame .cols i:first-child{animation-delay:1.7s}.vz-frame .cols i:nth-child(2){animation-delay:2.1s}.vz-frame>i:last-child{animation-delay:2.7s}.bcard-visual:has(.viz) .glow,.featured-visual:has(.viz) .glow{width:300px;height:300px;opacity:.2}.bcard:hover .bcard-visual:has(.viz) .glow,.featured:hover .featured-visual:has(.viz) .glow{opacity:.38}.post-emblem:has(.viz) .glow{opacity:.3}.bcard-visual{aspect-ratio:16/9}[data-viz=func] .fnc-line{stroke-dasharray:3 4;opacity:.6}[data-viz=func] .fnc-node{border-color:color-mix(in srgb,var(--theme) 24%,var(--line-2));box-shadow:0 8px 26px -14px rgba(0,0,0,.75)}[data-viz=func] .fnc-user{animation:fncUser 8.5s var(--ease) infinite}[data-viz=func] .fnc-llm{animation:fncLLM 8.5s var(--ease) infinite}[data-viz=func] .fnc-njs{animation:fncNode 8.5s var(--ease) infinite}[data-viz=func] .fnc-ans{animation:fncAns 8.5s var(--ease) infinite}[data-viz=func] .fnc-check{opacity:0;transform:scale(.4);animation:fncCheck 8.5s var(--ease) infinite}@keyframes fncUser{0%,12%{border-color:color-mix(in srgb,var(--theme) 72%,var(--line-2));box-shadow:0 0 20px -3px color-mix(in srgb,var(--theme) 55%,transparent)}18%,to{border-color:color-mix(in srgb,var(--theme) 24%,var(--line-2));box-shadow:0 8px 26px -14px rgba(0,0,0,.75)}}@keyframes fncLLM{0%,20%{border-color:color-mix(in srgb,var(--theme) 24%,var(--line-2));box-shadow:0 8px 26px -14px rgba(0,0,0,.75)}25%,33%{border-color:color-mix(in srgb,var(--theme) 78%,var(--line-2));box-shadow:0 0 26px -2px color-mix(in srgb,var(--theme) 60%,transparent)}40%,72%{border-color:color-mix(in srgb,var(--theme) 24%,var(--line-2));box-shadow:0 8px 26px -14px rgba(0,0,0,.75)}77%,85%{border-color:color-mix(in srgb,var(--theme) 78%,var(--line-2));box-shadow:0 0 26px -2px color-mix(in srgb,var(--theme) 60%,transparent)}92%,to{border-color:color-mix(in srgb,var(--theme) 24%,var(--line-2));box-shadow:0 8px 26px -14px rgba(0,0,0,.75)}}@keyframes fncNode{0%,47%{border-color:color-mix(in srgb,var(--theme) 24%,var(--line-2));box-shadow:0 8px 26px -14px rgba(0,0,0,.75)}52%,61%{border-color:color-mix(in srgb,var(--theme) 78%,var(--line-2));box-shadow:0 0 24px -2px color-mix(in srgb,var(--theme) 60%,transparent)}68%,to{border-color:color-mix(in srgb,var(--theme) 24%,var(--line-2));box-shadow:0 8px 26px -14px rgba(0,0,0,.75)}}@keyframes fncAns{0%,90%{border-color:color-mix(in srgb,var(--theme) 24%,var(--line-2));box-shadow:0 8px 26px -14px rgba(0,0,0,.75)}95%,to{border-color:color-mix(in srgb,var(--theme) 78%,var(--line-2));box-shadow:0 0 24px -2px color-mix(in srgb,var(--theme) 60%,transparent)}}@keyframes fncCheck{0%,90%{opacity:0;transform:scale(.4)}96%,to{opacity:1;transform:scale(1)}}[data-viz=func] .fnc-dot{position:absolute;left:0;top:0;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--theme);box-shadow:0 0 11px var(--theme);opacity:0}[data-viz=func] .fnc-dot1{animation:fncDot1 8.5s linear infinite}[data-viz=func] .fnc-dot4{animation:fncDot4 8.5s linear infinite}@keyframes fncDot1{0%,11%{offset-distance:0;opacity:0}13%{opacity:1}19%{offset-distance:100%;opacity:1}21%,to{offset-distance:100%;opacity:0}}@keyframes fncDot4{0%,80%{offset-distance:0;opacity:0}82%{opacity:1}89%{offset-distance:100%;opacity:1}91%,to{offset-distance:100%;opacity:0}}[data-viz=func] .fnc-card{position:absolute;white-space:nowrap;padding:5px 9px;border-radius:7px;font-family:var(--font-mono);font-size:8.5px;letter-spacing:.01em;line-height:1;color:color-mix(in srgb,var(--theme) 82%,#fff);border:1px solid color-mix(in srgb,var(--theme) 48%,var(--line-2));background:color-mix(in srgb,var(--theme) 16%,rgba(19,18,16,.96));box-shadow:0 0 14px -4px color-mix(in srgb,var(--theme) 50%,transparent);opacity:0;z-index:3}[data-viz=func] .fnc-callcard{left:222px;top:36px;animation:fncCallCard 8.5s var(--ease) infinite}[data-viz=func] .fnc-rescard{left:222px;top:100px;animation:fncResCard 8.5s var(--ease) infinite}@keyframes fncCallCard{0%,33%{opacity:0;transform:translateX(-16px)}39%{opacity:1;transform:translateX(-16px)}49%{opacity:1;transform:translateX(20px)}56%{opacity:0;transform:translateX(20px)}to{opacity:0;transform:translateX(20px)}}@keyframes fncResCard{0%,60%{opacity:0;transform:translateX(22px)}65%{opacity:1;transform:translateX(22px)}76%{opacity:1;transform:translateX(-16px)}82%{opacity:0;transform:translateX(-16px)}to{opacity:0;transform:translateX(-16px)}}[data-viz=func] .fnc-lab{font-size:10.5px!important;letter-spacing:.03em;color:color-mix(in srgb,var(--theme) 62%,var(--text-dim))!important}[data-viz=stream] .stm-row{display:flex;align-items:center;gap:3px;height:10px}[data-viz=stream] .stm-row i{display:block;width:30px;height:3.5px;border-radius:2px;background:color-mix(in srgb,var(--theme) 55%,var(--text-mute));transform-origin:left;animation:vzType 4.4s var(--ease) infinite}[data-viz=stream] .stm-caret{font-size:10px;line-height:1;font-style:normal;font-weight:400;color:color-mix(in srgb,var(--theme) 80%,#fff);text-shadow:0 0 8px color-mix(in srgb,var(--theme) 60%,transparent);animation:vzBlink 1.05s steps(1) infinite}[data-viz=stream] .vz-arrh{position:absolute;width:0;height:0;border:4px solid transparent}[data-viz=stream] .vz-arrh.r{border-left:6px solid color-mix(in srgb,var(--theme) 75%,var(--line-2));border-right-width:0;margin-top:-4px}[data-viz=stream] .vz-arrh.u{border-bottom:6px solid color-mix(in srgb,var(--theme) 75%,var(--line-2));border-top-width:0;margin-left:-4px}[data-viz=fastapi] .vz-arrh{position:absolute;width:0;height:0;border:4px solid transparent}[data-viz=fastapi] .vz-arrh.r{border-left:6px solid color-mix(in srgb,var(--theme) 75%,var(--line-2));border-right-width:0;margin-top:-4px}[data-viz=stream] .stm-lab{color:color-mix(in srgb,var(--theme) 58%,var(--text-mute))!important}[data-viz=stream] .vz-line{background:color-mix(in srgb,var(--theme) 38%,var(--line-2))}@media (prefers-reduced-motion:reduce){.viz *{animation:none!important}.vz-chip,.vz-flash,.vz-flow,.vz-gate .vz-check,.vz-pdot,.vz-phead{opacity:0!important}.vz-type i,.vz-wf{transform:scaleX(1);opacity:1!important}.vz-fill i,.vz-frame i{opacity:.9!important}[data-viz=func] .fnc-card{opacity:1!important;transform:none!important}[data-viz=func] .fnc-rescard{opacity:0!important}[data-viz=func] .fnc-check{opacity:1!important;transform:none!important}[data-viz=stream] .stm-row i{transform:scaleX(1);opacity:1!important}}