:root{--color-void:#08090a;--color-carbon:#0f1011;--color-obsidian:#161718;--color-slate:#23252a;--color-graphite:#23252a;--color-smoke:#383b3f;--color-ash:#62666d;--color-fog:#8a8f98;--color-mist:#d0d6e0;--color-paper:#fff;--color-accent:#d45bb6;--color-accent-hover:#de78c4;--color-accent-muted:#d45bb61f;--color-on-accent:#08090a;--color-good:#27a644;--color-bad:#f0653a;--color-warn:#e3b341;--syntax-text:#a9b7c6;--syntax-keyword:#cc7832;--syntax-string:#6a8759;--syntax-number:#6897bb;--syntax-comment:gray;--syntax-fn:#ffc66d;--syntax-builtin:#8888c6;--syntax-self:#94558d;--syntax-decorator:#bbb529;--syntax-key:#9876aa;--font-ui:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--weight-regular:400;--weight-medium:510;--weight-strong:590;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-24:96px;--radius-badge:4px;--radius-button:6px;--radius-input:6px;--radius-card:12px;--radius-pill:9999px;--border:1px solid var(--color-graphite);--border-hover:1px solid var(--color-accent)}
*,:before,:after{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--color-void);color:var(--color-mist);font-family:var(--font-ui);font-feature-settings:"cv01", "ss03", "zero";letter-spacing:-.011em;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}code,.mono{font-family:var(--font-mono);letter-spacing:0;font-size:13px}.muted{color:var(--color-fog)}.container{width:100%;max-width:1200px;padding:0 var(--space-6);margin:0 auto}:focus-visible{outline:1px solid var(--color-accent);outline-offset:2px}.btn{align-items:center;gap:var(--space-2);border-radius:var(--radius-button);font:inherit;cursor:pointer;border:1px solid #0000;transition:border-color .12s,background-color .12s,color .12s;display:inline-flex}.btn--primary{padding:10px var(--space-4);background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent);font-size:14px;font-weight:var(--weight-medium)}.btn--primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn--ghost{padding:var(--space-2) var(--space-3);border-color:var(--color-graphite);color:var(--color-mist);background:0 0;font-size:13px}.btn--ghost:hover{border-color:var(--color-accent);color:var(--color-paper);background:#ffffff0a}.nav{z-index:10;background:var(--color-void);border-bottom:var(--border);position:sticky;top:0}.nav__inner{justify-content:space-between;align-items:center;height:64px;display:flex}.nav__links{align-items:center;gap:var(--space-4);height:100%;display:flex}.nav__link{height:100%;color:var(--color-mist);align-items:center;font-size:13px;transition:color .12s;display:inline-flex}.nav__link:hover{color:var(--color-paper)}.nav__link--active{color:var(--color-paper);box-shadow:inset 0 -2px 0 var(--color-accent)}.nav__cta{padding:6px var(--space-3);border:1px solid var(--color-accent);border-radius:var(--radius-button);background:var(--color-accent-muted);color:var(--color-paper);font-size:13px;font-weight:var(--weight-medium);align-items:center;gap:6px;transition:background-color .12s,color .12s;display:inline-flex}.nav__cta span{transition:transform .12s}.nav__cta:hover,.nav__cta:focus-visible,.nav__cta--active{background:var(--color-accent);color:var(--color-on-accent);outline:none}.nav__cta:hover span{transform:translate(2px)}.nav__brand{align-items:center;gap:var(--space-2);color:var(--color-paper);font-weight:var(--weight-medium);display:inline-flex}.hero{padding-top:var(--space-24)}.pill{align-items:center;gap:var(--space-2);margin:0 0 var(--space-6);padding:var(--space-1) var(--space-3);border:var(--border);border-radius:var(--radius-pill);background:var(--color-carbon);color:var(--color-fog);font-size:12px;display:inline-flex}.pill__dot{border-radius:var(--radius-pill);background:var(--color-accent);width:6px;height:6px}.hero__title{text-wrap:balance;max-width:20ch;color:var(--color-paper);font-size:clamp(40px,7vw,64px);font-weight:var(--weight-medium);letter-spacing:-.022em;margin:0;line-height:1.05}.hero__title-muted{color:var(--color-ash)}.hero__sub{margin:var(--space-6) 0 0;max-width:56ch;color:var(--color-fog);font-size:17px;line-height:1.6}.hero__actions{align-items:center;gap:var(--space-3);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.command{align-items:center;gap:var(--space-3);padding:9px var(--space-3);border:1px solid var(--color-smoke);border-radius:var(--radius-button);color:var(--color-mist);font:inherit;cursor:pointer;background:#ffffff05;transition:border-color .12s;display:inline-flex}.command:hover{border-color:var(--color-accent)}.command__prompt{color:var(--color-ash);font-family:var(--font-mono);font-size:13px}.command__hint{padding-left:var(--space-3);border-left:var(--border);color:var(--color-fog);font-size:12px}.preview{margin:var(--space-16) 0 0;border:var(--border);border-radius:var(--radius-card);background:var(--color-carbon);overflow:hidden}.preview__bar{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:var(--border);display:flex}.preview__title{color:var(--color-paper);font-size:13px;font-weight:var(--weight-medium)}.preview__tabs{gap:var(--space-1);display:flex}.preview__tab{padding:2px var(--space-2);border-radius:var(--radius-badge);color:var(--color-fog);font-size:12px}.preview__tab--active{color:var(--color-paper);background:#ffffff0d}.preview__scroll{overflow-x:auto}.preview__caption{padding:var(--space-2) var(--space-4);border-top:var(--border);color:var(--color-ash);font-size:12px}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{padding:var(--space-2) var(--space-4);border-bottom:var(--border);color:var(--color-fog);font-size:12px;font-weight:var(--weight-regular);text-align:left;white-space:nowrap}.table td{height:40px;padding:0 var(--space-4);border-bottom:var(--border);white-space:nowrap}.table tbody tr:last-child td{border-bottom:none}.table tbody tr{transition:background-color .12s}.table tbody tr:hover{background:var(--color-obsidian)}.table tbody tr td:first-child{transition:box-shadow .12s;box-shadow:inset 2px 0 #0000}.table tbody tr:hover td:first-child{box-shadow:inset 2px 0 0 var(--color-accent)}.badge{border-radius:var(--radius-badge);color:var(--color-fog);background:#ffffff0d;padding:0 6px;font-size:12px;line-height:20px;display:inline-block}.badge--good{color:var(--color-good);background:#27a6441f}.badge--bad{color:var(--color-bad);background:#f0653a1f}.confidence{align-items:center;gap:var(--space-2);display:inline-flex}.confidence__track{border-radius:var(--radius-pill);background:var(--color-smoke);width:64px;height:4px;overflow:hidden}.confidence__fill{background:var(--color-mist);height:100%;display:block}.section{padding-top:var(--space-24)}.eyebrow{margin:0 0 var(--space-3);color:var(--color-fog);font-family:var(--font-mono);font-size:12px}.section__title{max-width:24ch;color:var(--color-paper);font-size:clamp(28px,4vw,40px);font-weight:var(--weight-medium);letter-spacing:-.022em;text-wrap:balance;margin:0;line-height:1.1}.section__body{margin:var(--space-4) 0 0;max-width:52ch;color:var(--color-fog);line-height:1.6}.split{align-items:center;gap:var(--space-12);grid-template-columns:1fr 1fr;display:grid}.flow{margin-top:var(--space-12);isolation:isolate;grid-template-columns:minmax(0,1fr) 140px minmax(0,1fr) 140px minmax(0,1fr);grid-template-areas:". .in. ."". .up. .""app to-sdk sdk to-jev jev"". .down. ."". .out. .";align-items:center;display:grid}.flow__frame{z-index:-1;border:1px solid var(--color-smoke);border-radius:var(--radius-card);grid-area:3/1/auto/4;align-self:stretch;margin:-36px -16px -16px;position:relative}.flow--nested .flow__link--copy,.flow--joined .flow__link--copy{height:104px}.flow__frame-label{top:var(--space-2);left:var(--space-3);color:var(--color-fog);font-family:var(--font-mono);font-size:11px;position:absolute}.flow__node{gap:var(--space-1);padding:var(--space-4);border:var(--border);border-radius:var(--radius-card);background:var(--color-carbon);color:var(--color-mist);font-family:var(--font-mono);text-align:center;flex-direction:column;font-size:13px;display:flex}.flow__node small{color:var(--color-ash);font-size:11px}.flow__node--app{grid-area:app}.flow__node--sdk{grid-area:sdk}.flow__node--jev{grid-area:jev}.flow__node--in{grid-area:in}.flow__node--out{grid-area:out}.flow__node--sdk small{color:var(--color-accent)}.flow__node--in,.flow__node--out{border-color:var(--color-accent);color:var(--color-paper)}.flow__link--to-sdk{grid-area:to-sdk}.flow__link--to-jev{grid-area:to-jev}.flow__link--up{grid-area:up}.flow__link--down{grid-area:down}.flow__link--main{gap:var(--space-4);padding:0 var(--space-2);flex-direction:column;display:flex}.flow__link--copy{justify-content:center;height:64px;display:flex}.flow__line{justify-content:center;align-items:center;display:flex;position:relative}.flow__line:before{content:"";position:absolute}.flow__link--main .flow__line{height:20px}.flow__link--main .flow__line:before{border-top:1px solid var(--color-smoke);top:50%;left:0;right:0}.flow__link--main .flow__pulse{top:50%}.flow__link--copy .flow__line{width:100%}.flow__link--copy .flow__line:before{border-left:1px dashed var(--color-smoke);top:0;bottom:0;left:50%}.flow__link--copy .flow__pulse{left:50%}.flow__label{padding:0 var(--space-2);background:var(--color-void);color:var(--color-ash);font-family:var(--font-mono);white-space:nowrap;font-size:11px;position:relative}.flow__pulse{z-index:1;background:var(--color-accent);width:8px;height:8px;box-shadow:0 0 10px 2px var(--color-accent);opacity:0;animation:4.8s linear var(--delay,0s) infinite;border-radius:50%;margin:-4px 0 0 -4px;position:absolute}.flow__pulse--fwd{animation-name:move-right}.flow__pulse--back{animation-name:move-left}.flow__pulse--copy-in{animation-name:move-up}.flow__pulse--copy-out{animation-name:move-down}@keyframes move-right{0%{opacity:0;left:0}3%,16%{opacity:1}16.67%,to{opacity:0;left:100%}}@keyframes move-left{0%{opacity:0;left:100%}3%,16%{opacity:1}16.67%,to{opacity:0;left:0}}@keyframes move-down{0%{opacity:0;top:0}3%,16%{opacity:1}16.67%,to{opacity:0;top:100%}}@keyframes move-up{0%{opacity:0;top:100%}3%,16%{opacity:1}16.67%,to{opacity:0;top:0}}@media (prefers-reduced-motion:reduce){.flow__pulse{display:none}}.flow__brand{justify-content:center;align-items:center;gap:8px;display:inline-flex}.flow__jev-logo{object-fit:cover;border-radius:50%;flex:none}.flow__node--in,.flow__node--out,.flow__node--jev{animation:node-hit 4.8s ease-out var(--ping,0s) infinite}.flow__node--in,.flow__node--jev{--ping:1.6s}.flow__node--out{--ping:3.6s}.flow--joined .flow__node--in,.flow--joined .flow__node--jev,.flow--wrapped .flow__node--in,.flow--wrapped .flow__node--jev{--ping:.8s}.flow--joined .flow__node--out,.flow--wrapped .flow__node--out{--ping:2.8s}@keyframes node-hit{0%{box-shadow:0 0 0 1px var(--color-paper), 0 0 18px 2px #ffffff73}10%,to{box-shadow:0 0 0 1px #fff0,0 0 18px 2px #fff0}}.flow--joined{grid-template-columns:248px 124px 140px 200px;grid-template-areas:".in. ."".up. .""app sdk to-jev jev"".down. ."".out. .";justify-content:center}.flow--joined .flow__frame{grid-column:1/3}.flow--joined .flow__node--in,.flow--joined .flow__node--out{justify-self:unsafe center;width:200px}.flow--joined .flow__node--app,.flow--joined .flow__node--sdk{justify-content:center;align-self:stretch}.flow--joined .flow__node--app{border-radius:var(--radius-card) 0 0 var(--radius-card);border-right:none}.flow--joined .flow__node--sdk{border-radius:0 var(--radius-card) var(--radius-card) 0;background:var(--color-obsidian);color:var(--color-paper);position:relative}.flow--one-db{grid-template-columns:248px 124px 140px 200px;grid-template-areas:"app sdk to-jev jev"".db-link. ."".db. ."}.flow--one-db .flow__frame{grid-area:1/1/auto/3}.flow--one-db .flow__link--db{height:112px}.flow--one-db .flow__pulse,.flow--one-db .flow__burst-text,.flow--one-db .flow__spark,.flow--one-db .flow__stub,.flow--one-db .flow__node--jev,.flow--one-db .flow__hit{animation-duration:var(--loop)}.flow--one-db .flow__pulse--fwd{animation-name:od-right}.flow--one-db .flow__pulse--back{animation-name:od-left}.flow--one-db .flow__pulse--copy-out{animation-name:od-down}.flow--one-db .flow__burst-text{animation-name:od-pop}.flow--one-db .flow__spark{animation-name:od-spark}.flow--one-db .flow__stub{animation-name:od-stub}.flow--one-db .flow__node--jev{animation-name:od-hit}.flow--one-db .flow__hit{animation-name:od-flash}@keyframes od-right{0%{opacity:0;left:0}4.2%,22.6%{opacity:1}23.53%,to{opacity:0;left:100%}}@keyframes od-left{0%{opacity:0;left:100%}4.2%,22.6%{opacity:1}23.53%,to{opacity:0;left:0}}@keyframes od-down{0%{opacity:0;top:0}4.2%,22.6%{opacity:1}23.53%,to{opacity:0;top:100%}}@keyframes od-up{0%{opacity:0;top:100%}4.2%,22.6%{opacity:1}23.53%,to{opacity:0;top:0}}@keyframes od-pop{0%{opacity:0;transform:translateX(var(--bx,-50%)) scale(.6)}4.2%{opacity:1;transform:translateX(var(--bx,-50%)) scale(1.15)}8.5%,18.4%{opacity:1;transform:translateX(var(--bx,-50%)) scale(1)}23.53%,to{opacity:0;transform:translateX(var(--bx,-50%)) scale(1)}}@keyframes od-spark{0%{opacity:0;transform:rotate(var(--a)) translateY(3px) scaleY(.3)}2.8%{opacity:1}15.5%,to{opacity:0;transform:rotate(var(--a)) translateY(22px) scaleY(1)}}@keyframes od-stub{0%{opacity:0}2.8%{opacity:1}12.7%{opacity:1}15.5%,to{opacity:0}}@keyframes od-hit{0%{box-shadow:0 0 0 1px var(--color-paper), 0 0 18px 2px #ffffff73}14%,to{box-shadow:0 0 0 1px #fff0,0 0 18px 2px #fff0}}@keyframes od-flash{0%{opacity:1}14%,to{opacity:0}}.flow--one-db .flow__node--jev{--ping:inherit}.flow--wrapped{grid-template-columns:minmax(0,1.6fr) 140px minmax(0,1fr);grid-template-areas:"in. .""up. .""app to-jev jev""down. .""out. ."}.flow--wrapped .flow__node--in,.flow--wrapped .flow__node--out{justify-self:center;width:min(100%,240px)}.flow__app{padding:32px var(--space-4) var(--space-4);border:1px solid var(--color-smoke);border-radius:var(--radius-card);grid-area:app;position:relative}.flow__shell{padding:28px var(--space-3) var(--space-3);border:1px dashed var(--color-accent);background:var(--color-accent-muted);border-radius:10px;position:relative}.flow__shell-label{color:var(--color-accent);font-family:var(--font-mono);font-size:11px;position:absolute;top:6px;left:10px}.flow__code{padding:var(--space-4);border:var(--border);background:var(--color-carbon);color:var(--color-mist);font-family:var(--font-mono);text-align:center;border-radius:8px;font-size:13px;position:relative}.flow__burst{z-index:2;pointer-events:none;width:0;height:0;position:absolute;top:50%;left:0}.flow__code .flow__burst{left:100%}.flow__burst-text{border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-on-accent);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-strong);white-space:nowrap;opacity:0;animation:burst-pop 4.8s ease-out var(--delay,0s) infinite;padding:2px 8px;position:absolute;bottom:12px;left:0}.flow__spark{background:var(--color-accent);transform-origin:50% 0;opacity:0;width:2px;height:9px;animation:spark 4.8s ease-out var(--delay,0s) infinite;border-radius:1px;position:absolute;top:0;left:-1px}.flow__stub{fill:none;width:14px;height:10px;stroke:var(--color-accent);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;opacity:0;animation:stub 4.8s ease-out var(--delay,0s) infinite;position:absolute;top:-5px;left:-7px;overflow:visible}.flow__stub--left{--flip:180deg}.flow__stub{transform:rotate(var(--flip,0deg))}@keyframes stub{0%{opacity:0}2%{opacity:1}9%{opacity:1}11%,to{opacity:0}}.flow--rag .flow__stub{animation-name:rag-stub;animation-duration:var(--loop)}.flow--rag2 .flow__stub{animation-name:r2-stub;animation-duration:var(--loop)}.flow--one-db .flow__stub{animation-duration:var(--loop)}@keyframes rag-stub{0%{opacity:0}1%{opacity:1}4.5%{opacity:1}5.5%,to{opacity:0}}@keyframes r2-stub{0%{opacity:0}.8%{opacity:1}3.6%{opacity:1}4.4%,to{opacity:0}}@keyframes burst-pop{0%{opacity:0;transform:translateX(var(--bx,-50%)) scale(.6)}3%{opacity:1;transform:translateX(var(--bx,-50%)) scale(1.15)}6%,13%{opacity:1;transform:translateX(var(--bx,-50%)) scale(1)}16.67%,to{opacity:0;transform:translateX(var(--bx,-50%)) scale(1)}}@keyframes spark{0%{opacity:0;transform:rotate(var(--a)) translateY(3px) scaleY(.3)}2%{opacity:1}11%,to{opacity:0;transform:rotate(var(--a)) translateY(22px) scaleY(1)}}@media (prefers-reduced-motion:reduce){.flow__node--in,.flow__node--out,.flow__node--jev,.flow__burst{animation:none}.flow__burst{display:none}}.flow--rag{grid-template-columns:repeat(4,124px) 140px 180px;grid-template-areas:".code code sdk to-jev jev"". . .db-link. .""grader grader score db. .";justify-content:center}.flow__frame--top{grid-area:1/2/auto/5}.flow__frame--grader{grid-area:3/1/auto/3}.flow--rag .flow__node--app{border-radius:var(--radius-card) 0 0 var(--radius-card);border-right:none;grid-area:code;justify-content:center;align-self:stretch}.flow--rag .flow__node--sdk{border-radius:0 var(--radius-card) var(--radius-card) 0;background:var(--color-obsidian);color:var(--color-paper);grid-area:sdk;justify-content:center;align-self:stretch;position:relative}.flow--rag .flow__node--jev,.flow__node--db{position:relative}.flow__node--db{border-color:var(--color-accent);width:172px;color:var(--color-paper);grid-area:db;justify-self:unsafe center}.flow__pair{display:flex}.flow__pair--grader{grid-area:grader}.flow__pair>.flow__node:first-child{border-radius:var(--radius-card) 0 0 var(--radius-card);border-right:none;flex:2}.flow__node--sdk-sm{border-radius:0 var(--radius-card) var(--radius-card) 0;background:var(--color-obsidian);color:var(--color-paper);flex:1}.flow__link--score{grid-area:score;padding-right:32px}.flow__link--db{grid-area:db-link;height:128px;display:flex}.flow__link--db .flow__line{width:50%}.flow__link--db .flow__line:before{border-left:1px solid var(--color-smoke);top:0;bottom:0;left:50%}.flow__link--db .flow__line--async:before{border-left-style:dashed}.flow__link--db .flow__pulse{left:50%}.flow__label--left,.flow__label--right{padding:0;position:absolute;top:50%;transform:translateY(-50%)}.flow__label--left{right:calc(50% + var(--space-2))}.flow__label--right{left:calc(50% + var(--space-2))}.flow__cache{z-index:2;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border:1px solid var(--color-smoke);border-radius:var(--radius-pill);background:var(--color-carbon);color:var(--color-fog);font-family:var(--font-mono);white-space:nowrap;font-size:11px;display:inline-flex;position:absolute;bottom:0;left:75%;transform:translate(-50%,50%)}.flow__status{padding:2px var(--space-2);border-radius:var(--radius-pill);color:var(--color-on-accent);font-weight:var(--weight-strong);white-space:nowrap;opacity:0;animation:rag-status var(--loop) ease-out var(--delay,0s) infinite;position:absolute;top:calc(50% + 6px);left:calc(100% + 6px)}.flow__status--good{background:var(--color-good)}.flow__status--bad{background:var(--color-bad)}.flow__status--accent{background:var(--color-accent)}.flow__hit{border-radius:inherit;box-shadow:0 0 0 1px var(--color-paper), 0 0 18px 2px #ffffff73;opacity:0;pointer-events:none;animation:rag-hit var(--loop) ease-out var(--delay,0s) infinite;position:absolute;inset:-1px}.flow--rag .flow__node--jev{animation:none}.flow--rag .flow__pulse{animation-duration:var(--loop)}.flow--rag .flow__pulse--fwd{animation-name:rag-right}.flow--rag .flow__pulse--back{animation-name:rag-left}.flow--rag .flow__pulse--copy-in{animation-name:rag-up}.flow--rag .flow__pulse--copy-out{animation-name:rag-down}.flow--rag .flow__burst-text{animation-name:rag-pop;animation-duration:var(--loop)}.flow--rag .flow__spark{animation-name:rag-spark;animation-duration:var(--loop)}@keyframes rag-right{0%{opacity:0;left:0}1.5%,8%{opacity:1}8.33%,to{opacity:0;left:100%}}@keyframes rag-left{0%{opacity:0;left:100%}1.5%,8%{opacity:1}8.33%,to{opacity:0;left:0}}@keyframes rag-down{0%{opacity:0;top:0}1.5%,8%{opacity:1}8.33%,to{opacity:0;top:100%}}@keyframes rag-up{0%{opacity:0;top:100%}1.5%,8%{opacity:1}8.33%,to{opacity:0;top:0}}@keyframes rag-pop{0%{opacity:0;transform:translateX(var(--bx,-50%)) scale(.6)}1.5%{opacity:1;transform:translateX(var(--bx,-50%)) scale(1.15)}3%,6.5%{opacity:1;transform:translateX(var(--bx,-50%)) scale(1)}8.33%,to{opacity:0;transform:translateX(var(--bx,-50%)) scale(1)}}@keyframes rag-spark{0%{opacity:0;transform:rotate(var(--a)) translateY(3px) scaleY(.3)}1%{opacity:1}5.5%,to{opacity:0;transform:rotate(var(--a)) translateY(22px) scaleY(1)}}@keyframes rag-status{0%{opacity:0;transform:scale(.6)}1.5%{opacity:1;transform:scale(1.1)}3%,7%{opacity:1;transform:scale(1)}8.33%,to{opacity:0;transform:scale(1)}}@keyframes rag-hit{0%{opacity:1}5%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.flow__hit,.flow__status{display:none}.flow__sun-rays{animation:none}}.flow--rag2{grid-template-columns:repeat(4,124px) 140px 180px;grid-template-areas:".code code sdk to-jev jev"". . .db-link. .""grader grader score db. .";justify-content:center;min-width:848px}.flow--rag2 .flow__frame--top{grid-area:1/2/3/6;margin:-36px -16px 34px}.flow--rag-stack .flow__frame--top{grid-column:2/5;margin-bottom:38px}.flow--rag2 .flow__frame--grader{grid-area:3/1/auto/3;margin:-30px -12px -12px}.flow--rag2 .flow__node--app,.flow--rag2 .flow__node--sdk{justify-content:center;align-self:stretch}.flow--rag2 .flow__node--sdk{background:var(--color-obsidian)}.flow--rag-side .flow__node--app,.flow--rag-side .flow__node--sdk{min-height:96px}.flow--rag2 .flow__node--app{border-radius:var(--radius-card) 0 0 var(--radius-card);border-right:none;grid-area:code}.flow--rag2 .flow__node--sdk{border-radius:0 var(--radius-card) var(--radius-card) 0;color:var(--color-paper);position:relative}.flow--rag2 .flow__node--jev{animation:none;position:relative}.flow--rag2 .flow__node--db{justify-content:center;justify-self:unsafe center;width:172px;min-height:72px}.flow--rag-side .flow__link--to-jev{align-self:start;padding-top:14px}.flow--rag-side .flow__link--db{padding:0 30% 0 15%}.flow--rag-stack .flow__link--db{padding:0 55% 0 5%}.flow__cyl{z-index:1;width:76px;height:58px;position:absolute}.flow--rag-side .flow__cyl{top:calc(100% + 28px);left:calc(100% + 30px)}.flow--rag-stack .flow__cyl{top:calc(100% + 22px);left:72%;transform:translate(-50%)}.flow__cyl-shape{width:100%;height:100%;fill:var(--color-obsidian);stroke:var(--color-fog);stroke-width:1.2px;vector-effect:non-scaling-stroke;position:absolute;inset:0}.flow__cyl-label{color:var(--color-mist);font-family:var(--font-mono);text-align:center;font-size:11px;position:absolute;bottom:12px;left:0;right:0}.flow__elbow{border:0 solid var(--color-smoke);position:absolute}.flow__elbow--lookup{border-top-width:1px;border-right-width:1px;border-top-right-radius:10px;width:68px;height:calc(15% + 28px);top:85%;left:100%}.flow__elbow--return{border-bottom-width:1px;border-left-width:1px;border-bottom-left-radius:10px;width:52px;height:57px;top:100%;left:calc(100% - 22px)}.flow__elbow--fetch{border-bottom-width:1px;border-right-width:1px;border-bottom-right-radius:10px;width:44px;height:78px;top:calc(100% + 86px);left:calc(100% + 24px)}.flow__seg{border-left:1px solid var(--color-smoke);width:0;position:absolute;left:72%}.flow__seg--lookup{height:22px;top:100%}.flow__seg--fetch{height:48px;top:calc(100% + 80px)}.flow__seg .flow__pulse{left:0}.flow__elbow-label{top:6px;left:var(--space-2);color:var(--color-ash);font-family:var(--font-mono);white-space:nowrap;font-size:11px;position:absolute}.flow__elbow-label--fetch{top:30%;left:calc(100% + var(--space-2))}.flow__elbow-label--seg{top:50%;left:var(--space-2);transform:translateY(-50%)}.flow--rag2 .flow__status{animation-name:r2-status;animation-duration:var(--loop);top:calc(50% + 6px);left:calc(100% + 6px);right:auto}.flow__dot--ctx{width:20px;height:20px;box-shadow:none;background:0 0;margin:-10px 0 0 -10px}.flow__sun{width:100%;height:100%;filter:drop-shadow(0 0 2px var(--color-accent));display:block;overflow:visible}.flow__sun circle{fill:var(--color-accent)}.flow__sun-rays{stroke:var(--color-accent);stroke-width:1.1px;stroke-linecap:round;opacity:.6;animation:4s linear infinite sun-spin}@keyframes sun-spin{to{transform:rotate(360deg)}}.flow-legend{justify-content:center;gap:var(--space-2) var(--space-6);margin-top:var(--space-6);color:var(--color-fog);flex-wrap:wrap;font-size:13px;display:flex}.flow-legend__item{align-items:center;gap:var(--space-2);display:inline-flex}.flow-legend__dot{background:var(--color-accent);width:8px;height:8px;box-shadow:0 0 10px 2px var(--color-accent);border-radius:50%}.flow-legend__sun{width:20px;height:20px}.flow--rag2 .flow__dot{animation-duration:var(--loop)}.flow--rag2 .flow__dot--right{animation-name:r2-right}.flow--rag2 .flow__dot--left{animation-name:r2-left}.flow--rag2 .flow__dot--down{animation-name:r2-down}.flow--rag2 .flow__dot--up{animation-name:r2-up}.flow--rag2 .flow__dot--fdown{animation-name:r2-fdown}.flow--rag2 .flow__dot--fup{animation-name:r2-fup}.flow--rag2 .flow__dot--frd{animation-name:r2-frd}.flow--rag2 .flow__dot--flu{animation-name:r2-flu}.flow--rag2 .flow__dot--dl{animation-name:r2-dl}.flow--rag2 .flow__dot--ru{animation-name:r2-ru}.flow--rag2 .flow__burst-text{animation-name:r2-pop;animation-duration:var(--loop)}.flow--rag2 .flow__spark{animation-name:r2-spark;animation-duration:var(--loop)}.flow--rag2 .flow__hit{animation-name:r2-hit;animation-duration:var(--loop)}@keyframes r2-right{0%{opacity:0;left:0}1%,7.4%{opacity:1}7.69%,to{opacity:0;left:100%}}@keyframes r2-left{0%{opacity:0;left:100%}1%,7.4%{opacity:1}7.69%,to{opacity:0;left:0}}@keyframes r2-down{0%{opacity:0;top:0}1%,7.4%{opacity:1}7.69%,to{opacity:0;top:100%}}@keyframes r2-up{0%{opacity:0;top:100%}1%,7.4%{opacity:1}7.69%,to{opacity:0;top:0}}@keyframes r2-dl{0%{opacity:0;top:0;left:100%}1%{opacity:1}3.85%{top:100%;left:100%}7.4%{opacity:1}7.69%,to{opacity:0;top:100%;left:0}}@keyframes r2-ru{0%{opacity:0;top:100%;left:0}1%{opacity:1}3.85%{top:100%;left:100%}7.4%{opacity:1}7.69%,to{opacity:0;top:0;left:100%}}@keyframes r2-fdown{0%{opacity:0;top:0}.4%,2.7%{opacity:1}2.88%,to{opacity:0;top:100%}}@keyframes r2-fup{0%{opacity:0;top:100%}.4%,2.7%{opacity:1}2.88%,to{opacity:0;top:0}}@keyframes r2-frd{0%{opacity:0;top:0;left:0}.4%{opacity:1}1.44%{top:0;left:100%}2.7%{opacity:1}2.88%,to{opacity:0;top:100%;left:100%}}@keyframes r2-flu{0%{opacity:0;top:100%;left:100%}.4%{opacity:1}1.44%{top:100%;left:0}2.7%{opacity:1}2.88%,to{opacity:0;top:0;left:0}}@keyframes r2-pop{0%{opacity:0;transform:translateX(var(--bx,-50%)) scale(.6)}1.2%{opacity:1;transform:translateX(var(--bx,-50%)) scale(1.15)}2.4%,5.2%{opacity:1;transform:translateX(var(--bx,-50%)) scale(1)}6.67%,to{opacity:0;transform:translateX(var(--bx,-50%)) scale(1)}}@keyframes r2-spark{0%{opacity:0;transform:rotate(var(--a)) translateY(3px) scaleY(.3)}.8%{opacity:1}4.4%,to{opacity:0;transform:rotate(var(--a)) translateY(22px) scaleY(1)}}@keyframes r2-status{0%{opacity:0;transform:scale(.6)}1.2%{opacity:1;transform:scale(1.1)}2.4%,5.6%{opacity:1;transform:scale(1)}6.67%,to{opacity:0;transform:scale(1)}}@keyframes r2-hit{0%{opacity:1}4%,to{opacity:0}}.walkthrough{margin-top:var(--space-5);justify-content:center;display:flex}.walkthrough__toggle{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border);border-radius:var(--radius-button);color:var(--color-mist);font:inherit;cursor:pointer;background:0 0;font-size:13px;transition:border-color .12s,background-color .12s,color .12s;display:inline-flex}.walkthrough__toggle:hover,.walkthrough__toggle:focus-visible{border-color:var(--color-accent);color:var(--color-paper);background:#ffffff0a;outline:none}.walkthrough__toggle--open{border-color:var(--color-accent);color:var(--color-paper)}.walkthrough__chevron{transition:transform .2s}.walkthrough__toggle--open .walkthrough__chevron{transform:rotate(180deg)}.player{max-width:720px;margin:var(--space-3) auto 0;padding:var(--space-4) var(--space-5);border:var(--border);border-radius:var(--radius-card);background:var(--color-carbon);animation:.22s ease-out player-open}.player__row{align-items:center;gap:var(--space-4);display:flex}.player__icon-btn{border:var(--border);border-radius:var(--radius-button);width:32px;height:32px;color:var(--color-paper);cursor:pointer;background:0 0;flex:none;place-items:center;transition:border-color .12s,background-color .12s;display:grid}.player__icon-btn:hover,.player__reset:hover{border-color:var(--color-accent);background:#ffffff0a}.player__icon-btn:focus-visible,.player__reset:focus-visible{border-color:var(--color-accent);outline:none}.player__timeline{flex:1;min-width:0;padding-top:18px;position:relative}.player__segments{height:14px;position:absolute;top:0;left:0;right:0}.player__segment{border-left:1px solid var(--color-smoke);color:var(--color-ash);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;padding-left:6px;font-size:10px;line-height:14px;transition:color .2s,border-color .2s;position:absolute;top:0;overflow:hidden}.player__segment--active{border-left-color:var(--color-accent);color:var(--color-accent)}.player__track{background:var(--color-graphite);border-radius:1px;height:2px;margin:7px 0;position:relative}.player__fill{background:var(--color-accent);border-radius:1px;width:0;position:absolute;top:0;bottom:0;left:0}.player__tick{border:1px solid var(--color-smoke);background:var(--color-carbon);border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px;transition:background-color .2s,border-color .2s,transform .2s;position:absolute;top:50%}.player__tick--passed{border-color:var(--color-accent);background:var(--color-accent)}.player__tick--current{transform:scale(1.5)}.player__head{border:2px solid var(--color-accent);background:var(--color-void);pointer-events:none;border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px;position:absolute;top:50%;left:0}.player__head:after{content:"";border:1px solid var(--color-accent);opacity:0;border-radius:50%;position:absolute;inset:-2px}.player--playing .player__head:after{animation:1.6s ease-out infinite player-ping}@keyframes player-ping{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}.player__input{opacity:0;cursor:pointer;width:100%;height:32px;margin:0;position:absolute;bottom:-8px;left:0;right:0}.player__input:focus-visible~.player__track .player__head{outline:1px solid var(--color-accent);outline-offset:3px}.player__timeline:has(.player__input:focus-visible) .player__head{outline:1px solid var(--color-accent);outline-offset:3px}.player__reset{padding:var(--space-2) var(--space-3);border:var(--border);border-radius:var(--radius-button);color:var(--color-mist);font:inherit;cursor:pointer;background:0 0;flex:none;align-items:center;gap:6px;font-size:13px;transition:border-color .12s,background-color .12s;display:inline-flex}.player__caption{align-items:baseline;gap:var(--space-3);min-height:3em;margin:var(--space-4) 0 0;padding-top:var(--space-3);border-top:var(--border);color:var(--color-mist);font-size:14px;line-height:1.5;animation:.24s ease-out player-caption-in;display:flex}.player__count{border-radius:var(--radius-badge);color:var(--color-accent);font-family:var(--font-mono);background:#ffffff0d;flex:none;padding:0 6px;font-size:12px}@keyframes player-open{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes player-caption-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (max-width:640px){.player{padding:var(--space-3) var(--space-4)}.player__row{gap:var(--space-3)}.player__reset{padding:var(--space-2);gap:0;font-size:0}}@media (prefers-reduced-motion:reduce){.player--playing .player__head:after,.player__caption,.player{animation:none}}.flow-reset{margin-top:var(--space-4);justify-content:center;display:flex}.flow__caption{margin:var(--space-6) 0 0;color:var(--color-ash);text-align:center;font-size:13px}.checks{gap:var(--space-2);margin:var(--space-6) 0 0;padding:0;font-size:14px;list-style:none;display:grid}.checks li{gap:var(--space-3);display:flex}.checks li:before{content:"";border-radius:var(--radius-pill);background:var(--color-smoke);flex:none;width:6px;height:6px;margin-top:8px}.code{border:var(--border);border-radius:var(--radius-card);background:var(--color-carbon);min-width:0;margin:0;overflow:hidden}.code__bar{padding:var(--space-2) var(--space-4);border-bottom:var(--border);color:var(--color-fog);justify-content:space-between;align-items:center;font-size:12px;display:flex}.code__copy{padding:2px var(--space-2);border-radius:var(--radius-badge);color:var(--color-fog);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;transition:border-color .12s,color .12s}.code__copy:hover{border-color:var(--color-accent);color:var(--color-paper)}.code__body{padding:var(--space-4);color:var(--color-mist);margin:0;font-size:13px;line-height:1.7;overflow-x:auto}.code__body code{color:var(--syntax-text)}.tok--keyword{color:var(--syntax-keyword)}.tok--string{color:var(--syntax-string)}.tok--number{color:var(--syntax-number)}.tok--comment{color:var(--syntax-comment);font-style:italic}.tok--fn{color:var(--syntax-fn)}.tok--builtin{color:var(--syntax-builtin)}.tok--self{color:var(--syntax-self)}.tok--decorator{color:var(--syntax-decorator)}.tok--key{color:var(--syntax-key)}.tok--prompt{color:var(--syntax-comment);-webkit-user-select:none;user-select:none}.tag{padding:0 var(--space-2);border-radius:var(--radius-pill);font-size:11px;font-weight:var(--weight-regular);vertical-align:middle;line-height:20px;display:inline-block}.tag--warn{color:var(--color-warn);background:#e3b3411f}.principles{margin-top:var(--space-12);border-top:var(--border);grid-template-columns:repeat(3,1fr);display:grid}.principles__item{padding:var(--space-6) var(--space-6) 0 0}.principles__item+.principles__item{padding-left:var(--space-6);border-left:var(--border)}.principles__item h3{color:var(--color-paper);font-size:16px;font-weight:var(--weight-medium);margin:0}.principles__item p{margin:var(--space-2) 0 0;color:var(--color-fog);font-size:14px;line-height:1.6}.cta{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-24);padding:var(--space-8);border:var(--border);border-radius:var(--radius-card);background:var(--color-carbon);flex-wrap:wrap;display:flex}.cta__text{color:var(--color-paper);font-size:20px;font-weight:var(--weight-medium);letter-spacing:-.012em;margin:0}.footer{margin-top:var(--space-24);border-top:var(--border)}.footer__inner{justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-6);padding-bottom:var(--space-6);color:var(--color-ash);flex-wrap:wrap;font-size:13px;display:flex}.footer__brand{align-items:center;gap:var(--space-2);display:inline-flex}.footer__links{gap:var(--space-4);display:flex}.footer__links a:hover{color:var(--color-paper)}@media (max-width:900px){.split,.principles{grid-template-columns:1fr}.principles__item,.principles__item+.principles__item{padding:var(--space-6) 0;border-left:none}.principles__item+.principles__item{border-top:var(--border)}.flow{grid-template-columns:minmax(0,1fr) 32px minmax(0,1.2fr) 32px minmax(0,1fr);grid-template-areas:". .app. ."". .to-sdk. .""in up sdk down out"". .to-jev. ."". .jev. ."}.flow--nested .flow__link--copy,.flow--joined .flow__link--copy{height:auto}.flow__frame{grid-area:1/3/4;margin:-36px -8px -12px}.flow__node{padding:var(--space-3) var(--space-2)}.flow__link--main{flex-direction:row;gap:0;padding:0}.flow__link--main .flow__line{width:50%;height:64px}.flow__link--main .flow__line:before{border-top:none;border-left:1px solid var(--color-smoke);inset:0 auto 0 50%}.flow__link--main .flow__pulse{top:0;left:50%}.flow__link--copy{height:auto}.flow__link--copy .flow__line{height:20px}.flow__link--copy .flow__line:before{border-left:none;border-top:1px dashed var(--color-smoke);inset:50% 0 auto}.flow__link--copy .flow__pulse{top:50%;left:0}.flow__label{display:none}.flow__pulse--fwd{animation-name:move-down}.flow__pulse--back{animation-name:move-up}.flow__pulse--copy-in{animation-name:move-left}.flow__pulse--copy-out{animation-name:move-right}}@media (max-width:640px){.container{padding:0 var(--space-4)}.hero{padding-top:var(--space-16);padding-bottom:0}.section{padding-top:var(--space-16)}.cta{margin-top:var(--space-16);padding:var(--space-6)}.hide-sm,.preview__tabs{display:none}}@media (max-width:900px){.flow--joined{grid-template-columns:minmax(0,1fr) 32px minmax(0,1.2fr) 32px minmax(0,1fr);grid-template-areas:". .app. .""in up sdk down out"". .to-jev. ."". .jev. ."}.flow--joined .flow__frame{grid-area:1/3/3}.flow--joined .flow__node--app{border-right:var(--border);border-radius:var(--radius-card) var(--radius-card) 0 0;border-bottom:none}.flow--joined .flow__node--sdk{border-radius:0 0 var(--radius-card) var(--radius-card);padding-block:var(--space-2)}.flow--joined .flow__node--app{padding-block:var(--space-6)}.flow--joined .flow__node--in,.flow--joined .flow__node--out{justify-self:stretch;width:auto}.flow--joined .flow__burst{top:0;left:50%}.flow--wrapped{grid-template-columns:minmax(0,1fr) 24px minmax(0,1.5fr) 24px minmax(0,1fr);grid-template-areas:"in up app down out"". .to-jev. ."". .jev. ."}.flow--wrapped .flow__node--in,.flow--wrapped .flow__node--out{justify-self:stretch;width:auto}.flow__app{padding:28px var(--space-2) var(--space-2)}.flow__shell{padding:24px 6px 6px}.flow__code{padding:var(--space-3) var(--space-1);font-size:12px}.flow__burst-text{--bx:0;bottom:-10px;left:20px}.flow__code .flow__burst{top:100%;left:50%}.flow--rag{grid-template-columns:minmax(0,1.3fr) 40px minmax(0,1fr);grid-template-areas:"code. .""sdk db-link db""to-jev.score""jev.grader"}.flow__frame--top{grid-area:1/1/3}.flow__frame--grader{grid-area:4/3;margin-top:-30px}.flow--rag .flow__link--main .flow__line{height:88px}.flow--rag .flow__node--app{border-right:var(--border);border-radius:var(--radius-card) var(--radius-card) 0 0;border-bottom:none}.flow--rag .flow__node--sdk{border-radius:0 0 var(--radius-card) var(--radius-card)}.flow--rag .flow__burst{top:0;left:50%}.flow__node--db{justify-self:stretch;width:auto}.flow__link--db{flex-direction:column;align-self:stretch;height:auto}.flow__link--db .flow__line{width:100%;height:50%}.flow__link--db .flow__line:before{border-left:none;border-top:1px solid var(--color-smoke);inset:50% 0 auto}.flow__link--db .flow__line--async:before{border-top-style:dashed}.flow__link--db .flow__pulse{top:50%;left:0}.flow--rag .flow__link--db .flow__pulse--copy-out{animation-name:rag-right}.flow--rag .flow__link--db .flow__pulse--copy-in{animation-name:rag-left}.flow--rag .flow__link--to-jev .flow__pulse--fwd{animation-name:rag-down}.flow--rag .flow__link--to-jev .flow__pulse--back,.flow--rag .flow__link--score .flow__pulse--fwd{animation-name:rag-up}.flow--rag .flow__link--score{justify-content:center}.flow__cache{top:75%;bottom:auto;left:100%;transform:translate(-50%,-50%)}.flow__status{top:calc(100% + 4px);left:auto;right:0}.flow__pair>.flow__node{padding-inline:var(--space-1);font-size:12px}.flow-scroll{margin-inline:calc(-1 * var(--space-4));padding:0 var(--space-4) var(--space-6);overflow-x:auto}.flow--rag2{grid-template-columns:repeat(4,124px) 140px 180px;grid-template-areas:".code code sdk to-jev jev"". . .db-link. .""grader grader score db. ."}.flow--rag2 .flow__node{padding:var(--space-4)}.flow--rag2 .flow__node--app{border-right:none;border-bottom:var(--border);border-radius:var(--radius-card) 0 0 var(--radius-card)}.flow--rag2 .flow__node--sdk{border-radius:0 var(--radius-card) var(--radius-card) 0}.flow--rag2 .flow__link--main{gap:var(--space-4);padding:0 var(--space-2);flex-direction:column}.flow--rag2 .flow__link--main .flow__line{width:auto;height:20px}.flow--rag2 .flow__link--main .flow__line:before{border-left:none;border-top:1px solid var(--color-smoke);inset:50% 0 auto}.flow--rag2 .flow__link--main .flow__line--async:before{border-top-style:dashed}.flow--rag2 .flow__link--main .flow__pulse{top:50%}.flow--rag2 .flow__label{display:inline}.flow--rag2 .flow__burst{top:50%;left:0}.flow--rag2 .flow__burst-text{--bx:-50%;bottom:12px;left:0}.flow--rag2 .flow__node--db{justify-self:unsafe center;width:172px}.flow--rag2 .flow__link--db{flex-direction:row;align-self:auto;height:128px}.flow--rag2 .flow__link--db .flow__line{width:50%;height:auto}.flow--rag2 .flow__link--db .flow__line:before{border-top:none;border-left:1px dashed var(--color-smoke);inset:0 auto 0 50%}.flow--rag2 .flow__link--db .flow__pulse{top:0;left:50%}.flow--rag2 .flow__pair>.flow__node{padding-inline:var(--space-4);font-size:13px}.flow--one-db{grid-template-columns:minmax(0,1.2fr) 40px minmax(0,1fr);grid-template-areas:"app. .""sdk db-link db""to-jev. .""jev. ."}.flow--one-db .flow__frame{grid-area:1/1/3}.flow--one-db .flow__node--db{justify-self:stretch;width:auto}.flow--one-db .flow__link--db{flex-direction:column;align-self:stretch;height:auto}.flow--one-db .flow__link--db .flow__line{width:100%;height:50%}.flow--one-db .flow__link--db .flow__line:before{border-left:none;border-top:1px dashed var(--color-smoke);inset:50% 0 auto}.flow--one-db .flow__link--db .flow__pulse{top:50%;left:0}.flow--one-db .flow__link--db .flow__pulse--copy-out{animation-name:od-right}}.j2t{margin-top:var(--space-8)}.j2t__stage,.j2t--flow{gap:var(--space-6);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;display:grid;position:relative}.j2t__label{margin:0 0 var(--space-2);color:var(--color-ash);font-family:var(--font-mono);font-size:11px}.j2t__json{padding:var(--space-4);border:var(--border);border-radius:var(--radius-card);background:var(--color-carbon);margin:0;position:sticky;top:88px}.j2t__json pre{font-family:var(--font-mono);margin:0;font-size:12px;line-height:1.7;overflow-x:auto}.j2t__line{margin:0 calc(-1 * var(--space-2));padding:0 var(--space-2);color:var(--color-ash);border-left:2px solid #0000;transition:color .25s,background-color .25s,border-color .25s;display:block}.j2t__line--on{border-left-color:var(--color-accent);background:var(--color-accent-muted);color:var(--color-paper)}.j2t__tables{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.j2t__table{padding:var(--space-3);border:var(--border);border-radius:var(--radius-card);background:var(--color-carbon);transition:border-color .25s}.j2t__table--wide{grid-column:1/-1}.j2t__table--on{border-color:var(--color-accent)}.j2t__table--on .j2t__label{color:var(--color-accent)}.j2t__table table{border-collapse:collapse;width:100%;font-family:var(--font-mono);font-size:11px}.j2t__table th{padding:0 var(--space-2) var(--space-1) 0;border-bottom:var(--border);color:var(--color-fog);font-weight:var(--weight-regular);text-align:left;white-space:nowrap}.j2t__table td{max-width:140px;padding:var(--space-1) var(--space-2) var(--space-1) 0;color:var(--color-mist);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.j2t__row{transition:opacity .25s}.j2t__row--pending{opacity:0}.j2t__row--new td{color:var(--color-paper);animation:.7s ease-out j2t-row-in}@keyframes j2t-row-in{0%{background:var(--color-accent-muted);opacity:0;transform:translate(-6px)}40%{opacity:1;transform:none}to{background:0 0}}.j2t__chip{z-index:2;padding:2px var(--space-2);border-radius:var(--radius-badge);background:var(--color-accent);color:var(--color-on-accent);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-medium);white-space:nowrap;opacity:0;pointer-events:none;position:absolute;top:0;left:0}.j2t__controls{gap:var(--space-3);max-width:720px;margin:var(--space-6) auto 0;padding:var(--space-4) var(--space-5);border:var(--border);border-radius:var(--radius-card);background:var(--color-carbon);flex-direction:column;display:flex}.j2t__caption{align-items:baseline;gap:var(--space-3);min-height:3em;color:var(--color-mist);margin:0;font-size:14px;line-height:1.5;animation:.24s ease-out player-caption-in;display:flex}.j2t__buttons{align-items:center;gap:var(--space-2);display:flex}.j2t__buttons .player__icon-btn{font-size:12px}.j2t__dots{margin-left:var(--space-3);gap:6px;display:flex}.j2t__dot{border:1px solid var(--color-smoke);cursor:pointer;background:0 0;border-radius:50%;width:8px;height:8px;padding:0;transition:background-color .2s,border-color .2s,transform .2s}.j2t__dot:hover,.j2t__dot:focus-visible{border-color:var(--color-accent);outline:none}.j2t__dot--done{border-color:var(--color-accent);background:var(--color-accent)}.j2t__dot--current{border-color:var(--color-accent);transform:scale(1.4)}@media (max-width:900px){.j2t__stage,.j2t--flow{grid-template-columns:1fr}.j2t__json{position:static}}@media (max-width:640px){.j2t__tables{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.j2t__row--new td,.j2t__caption{animation:none}}.j2t--flow .j2t__row{opacity:0}.j2t--flow .j2t__json{position:static}@media (max-width:900px){.flow--joined .flow__stub,.flow--rag .flow__stub{--flip:90deg}.flow--joined .flow__stub--left,.flow--rag .flow__stub--left{--flip:270deg}}@media (prefers-reduced-motion:reduce){.flow__stub{display:none}}.review-page{padding-bottom:40vh}.j2t--flow .j2t__json pre{overflow-x:hidden}
