.explainer{--x-ink: #0D0F0A;--x-raised: #171A11;--x-raised-2: #222618;--x-volt: #D4FF4F;--x-volt-dim: rgba(212, 255, 79, .25);--x-volt-surface: #2A3312;--x-text: #E9EBE3;--x-text-2: rgba(233, 235, 227, .64);--x-text-3: rgba(233, 235, 227, .42);--x-rule: rgba(255, 255, 255, .1);--x-dot: rgba(255, 255, 255, .08);--x-warn: #FF6B57;--x-blue: #9BD4FF;--x-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--x-sans: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, sans-serif;--x-ease: cubic-bezier(.2, .9, .3, 1.1);--x-t: .38s;position:relative;margin:2rem 0;padding:16px 16px 14px;border-radius:20px;border:1px solid var(--x-rule);background:var(--x-ink);background-image:radial-gradient(var(--x-dot) 1px,transparent 1.2px);background-size:18px 18px;color:var(--x-text);font-family:var(--x-sans);font-size:15px;line-height:1.5;box-sizing:border-box;overflow:hidden}.explainer *,.explainer *:before,.explainer *:after{box-sizing:border-box}.explainer:focus-visible{outline:2px solid var(--x-volt);outline-offset:3px}.prose-topic .explainer h3,.prose-topic .explainer h4,.prose-topic .explainer p{margin:0;color:inherit;font-family:inherit;border:0;padding:0}.prose-topic .explainer p{line-height:1.5}.explainer .x-eyebrow{font:600 10px/1.4 var(--x-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--x-volt);margin:0 0 4px}.explainer .x-title{font:700 19px/1.25 var(--x-sans);letter-spacing:-.01em;margin:0 0 4px;color:var(--x-text)}.explainer .x-insight{font-size:13px;color:var(--x-text-2);margin:0 0 12px}.explainer .x-predict{border:1px solid var(--x-volt-dim);border-radius:14px;padding:12px;margin-bottom:12px;background:var(--x-raised)}.explainer .x-predict .x-eyebrow{color:var(--x-volt)}.explainer .x-predict .x-q{font-weight:600;font-size:14px;margin:0 0 10px}.explainer .x-options{display:flex;flex-wrap:wrap;gap:8px}.explainer .x-options button{text-align:left;flex:1 1 100%}@media(min-width:560px){.explainer .x-options button{flex:1 1 calc(50% - 4px)}}.explainer .x-guess{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.explainer .x-guess input[type=number]{font:700 22px var(--x-mono);width:92px;min-height:44px;text-align:center;background:var(--x-ink);color:var(--x-volt);border:1px solid var(--x-rule);border-radius:10px;padding:6px 10px}.explainer .x-reveal{display:none;margin-top:10px;padding-top:10px;border-top:1px dashed var(--x-rule)}.explainer .x-reveal.on{display:block;animation:x-pop var(--x-t) var(--x-ease) both}.explainer .x-reveal .x-big{font:700 24px/1.1 var(--x-mono);color:var(--x-volt)}.explainer .x-reveal .x-big small{font:500 13px var(--x-sans);color:var(--x-text-2);margin-left:8px}.explainer .x-reveal .x-working{font:12px/1.5 var(--x-mono);color:var(--x-text-2);margin-top:6px}.explainer .x-options button.picked{border-color:var(--x-volt)}.explainer .x-options button.right{background:var(--x-volt);color:var(--x-ink);border-color:var(--x-volt)}.explainer .x-options button.wrong{border-color:var(--x-warn);color:var(--x-text-2)}.explainer .x-stage{position:relative}.explainer .x-stage svg{width:100%;height:auto;display:block;overflow:visible}.explainer .x-stage svg text{font-family:var(--x-sans);fill:var(--x-text)}.explainer .x-stage svg .t2{fill:var(--x-text-2)}.explainer .x-stage svg .t3{fill:var(--x-text-3)}.explainer .x-stage svg .mono{font-family:var(--x-mono)}.explainer .x-node .shape{fill:var(--x-raised-2);stroke:var(--x-rule);stroke-width:1;transition:fill var(--x-t),stroke var(--x-t),opacity var(--x-t)}.explainer .x-node .mark{opacity:0;transition:opacity var(--x-t)}.explainer .x-node.is-down .shape{fill:#ff6b5738;stroke:var(--x-warn)}.explainer .x-node.is-down .mark{opacity:1}.explainer .x-node.is-removed .shape{fill:transparent;stroke:var(--x-text-3);stroke-dasharray:3 3}.explainer .x-node.is-removed text{fill:var(--x-text-3)}.explainer .x-node.is-hot .shape{stroke:var(--x-volt)}.explainer .x-edge{stroke:var(--x-text-3);stroke-width:1.2;fill:none;transition:stroke var(--x-t),opacity var(--x-t)}.explainer .x-edge.is-dim{opacity:.25}.explainer .x-edge.is-hot{stroke:var(--x-volt)}.explainer .x-pulse{fill:var(--x-volt);offset-rotate:0deg}.explainer .x-pulse.check{fill:none;stroke:var(--x-blue);stroke-width:1.5}.explainer .x-pulse.fail-end{fill:var(--x-warn)}.explainer .x-fx{fill:none;stroke:var(--x-warn);stroke-width:2;stroke-linecap:round;opacity:0}@keyframes x-travel{0%{offset-distance:0%;opacity:0}8%{opacity:1}92%{opacity:1}to{offset-distance:100%;opacity:0}}@keyframes x-travel-fail{0%{offset-distance:0%;opacity:0}8%{opacity:1}75%{fill:var(--x-volt)}80%{fill:var(--x-warn)}92%{opacity:1}to{offset-distance:100%;opacity:0}}@keyframes x-ring{0%{opacity:.9;transform:scale(.5)}to{opacity:0;transform:scale(1.8)}}@keyframes x-fx{0%{opacity:0}20%{opacity:1}to{opacity:0}}@keyframes x-pop{0%{opacity:0;transform:scale(.94) translateY(4px)}to{opacity:1;transform:none}}.explainer .x-caption{min-height:60px;margin-top:12px;padding:8px 12px;font-size:14px;border-left:3px solid var(--x-volt);border-radius:0 10px 10px 0;background:var(--x-volt-surface);transition:border-color var(--x-t),background var(--x-t),opacity .2s}.explainer .x-caption.warn{border-color:var(--x-warn);background:#ff6b571f}.explainer .x-caption.swap{opacity:0}.explainer .x-progress{height:2px;background:var(--x-rule);border-radius:2px;margin-top:10px;overflow:hidden}.explainer .x-progress i{display:block;height:100%;width:0;background:var(--x-volt)}.explainer .x-controls{display:flex;align-items:center;gap:6px;margin-top:10px;flex-wrap:wrap}.explainer button{appearance:none;border:1px solid var(--x-rule);background:var(--x-raised-2);color:var(--x-text);border-radius:999px;min-width:40px;min-height:38px;padding:0 14px;font:600 13px var(--x-sans);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:transform .12s var(--x-ease),background var(--x-t),border-color var(--x-t)}.explainer button:active{transform:scale(.95)}.explainer button:disabled{opacity:.4;cursor:default}.explainer button:focus-visible,.explainer input:focus-visible{outline:2px solid var(--x-volt);outline-offset:2px}.explainer .x-play{background:var(--x-volt);color:var(--x-ink);border-color:var(--x-volt);min-width:84px}.explainer .x-play .lbl-pause,.explainer.playing .x-play .lbl-play{display:none}.explainer.playing .x-play .lbl-pause{display:inline}.explainer .x-dots{display:flex;gap:6px;margin-left:auto}.explainer .x-dots button{min-width:26px;min-height:26px;padding:0;font:600 11px var(--x-mono);color:var(--x-text-3);background:transparent}.explainer .x-dots button[aria-current=true]{color:var(--x-ink);background:var(--x-volt);border-color:var(--x-volt)}.explainer .x-params{display:grid;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--x-rule)}@media(min-width:560px){.explainer .x-params{grid-template-columns:1fr 1fr}}.explainer .x-ctl label{display:flex;justify-content:space-between;align-items:center;font:600 11px var(--x-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--x-text-2);margin-bottom:4px;gap:8px}.explainer .x-ctl label output{color:var(--x-volt)}.explainer .x-ctl input[type=range]{width:100%;accent-color:var(--x-volt);height:28px;margin:0}.explainer .x-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;cursor:pointer;font:600 11px var(--x-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--x-text-2)}.explainer .x-toggle input{position:absolute;opacity:0;width:1px;height:1px}.explainer .x-toggle .sw{width:40px;height:24px;border-radius:999px;background:var(--x-raised-2);border:1px solid var(--x-rule);position:relative;flex:none;transition:background var(--x-t),border-color var(--x-t)}.explainer .x-toggle .sw:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--x-text-2);transition:transform var(--x-t) var(--x-ease),background var(--x-t)}.explainer .x-toggle input:checked+.sw{background:var(--x-volt);border-color:var(--x-volt)}.explainer .x-toggle input:checked+.sw:after{transform:translate(16px);background:var(--x-ink)}.explainer .x-toggle input:focus-visible+.sw{outline:2px solid var(--x-volt);outline-offset:2px}.explainer .x-note{margin:8px 0 0;font:11px var(--x-mono);color:var(--x-text-3)}.explainer .x-note:empty{display:none}.explainer .x-foot{margin-top:12px;font-size:12px;color:var(--x-text-3);line-height:1.5}.explainer .x-lanes{display:grid;gap:10px}@media(min-width:560px){.explainer .x-lanes{grid-template-columns:1fr 1fr}}.explainer .x-lane{background:var(--x-raised);border:1px solid var(--x-rule);border-radius:14px;padding:10px 12px;min-height:200px;display:flex;flex-direction:column}.explainer .x-lane-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.explainer .x-lane-head h4{font:700 13px var(--x-sans);margin:0}.explainer .x-pill{font:600 10px var(--x-mono);letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--x-raised-2);color:var(--x-text-2);border:1px solid var(--x-rule);transition:background var(--x-t),color var(--x-t)}.explainer .x-pill.live{background:var(--x-volt-surface);color:var(--x-volt);border-color:var(--x-volt-dim)}.explainer .x-pill.bad{background:#ff6b5724;color:var(--x-warn);border-color:#ff6b5766}.explainer .x-bubble{flex:1;font-size:13px;line-height:1.55;color:var(--x-text);min-height:120px}.explainer .x-bubble .w{opacity:0;transition:opacity .18s}.explainer .x-bubble .w.on{opacity:1}.explainer .x-bubble .x-spin{display:inline-flex;gap:4px;align-items:center;color:var(--x-text-3);font:12px var(--x-mono)}.explainer .x-bubble .x-spin i{width:6px;height:6px;border-radius:50%;background:var(--x-text-3);animation:x-blink 1s ease-in-out infinite}.explainer .x-bubble .x-spin i:nth-child(2){animation-delay:.2s}.explainer .x-bubble .x-spin i:nth-child(3){animation-delay:.4s}@keyframes x-blink{0%,to{opacity:.3}50%{opacity:1}}.explainer .x-bubble .x-cut{color:var(--x-warn);font:12px var(--x-mono)}.explainer .x-bubble .x-err{color:var(--x-warn);font:600 13px var(--x-sans)}.explainer .x-times{display:flex;gap:14px;margin-top:8px;font:11px var(--x-mono);color:var(--x-text-3)}.explainer .x-times b{color:var(--x-text);font-weight:600;font-variant-numeric:tabular-nums}.explainer .x-times b.accent{color:var(--x-volt)}.explainer.paused .x-stage *,.explainer.paused .x-stage *:before,.explainer.paused .x-stage *:after{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.explainer *,.explainer *:before,.explainer *:after{animation:none!important;transition:none!important}}.explainer.static *,.explainer.static *:before,.explainer.static *:after{animation:none!important;transition:none!important}.explainer.static .x-pulse,.explainer.static .x-fx{display:none}
