.dr-fig{--dr-card:var(--pr-wash)}.dr-fig[data-ground=surface]{--dr-card:var(--pr-bg)}.dr-svg{font-family:var(--font-sans)}.dr-mono{font-family:var(--font-mono)}.dr-label{font-weight:600}.dr-label,.dr-text{fill:var(--pr-fg)}.dr-head{font-weight:500;letter-spacing:.02em}.dr-head,.dr-note{fill:var(--pr-muted)}.dr-card{fill:var(--dr-card)}.dr-card,.dr-chip{stroke:var(--pr-rule-strong);stroke-width:1}.dr-chip{fill:var(--pr-bg)}.dr-core{fill:var(--pr-surface);stroke:var(--pr-accent);stroke-width:2}.dr-ring{fill:none;stroke:var(--pr-lift);stroke-width:2;opacity:0;transform-box:fill-box;transform-origin:center}.dr-bubble{fill:var(--pr-bg);stroke:var(--pr-lift);stroke-width:1.5}.dr-panel{fill:var(--pr-bg);stroke:var(--pr-rule-strong);stroke-width:1}.dr-edge{fill:none;stroke:var(--pr-accent);stroke-width:1.5}.dr-edge-soft{fill:none;stroke:var(--pr-rule-strong);stroke-width:1}.dr-arrowhead{fill:var(--pr-accent)}.dr-flow{fill:none;stroke:var(--pr-lift);stroke-width:3;stroke-dasharray:6 12;stroke-linecap:round;opacity:0}.dr-badge-rect{fill:var(--pr-surface);stroke:var(--pr-accent);stroke-width:1}.dr-badge-text{fill:var(--pr-accent);font-weight:600}.dr-bar{fill:var(--pr-rule-strong);transform-box:fill-box;transform-origin:left center}.dr-bar-head{fill:var(--pr-muted);opacity:.55}.dr-bar-sum{fill:var(--pr-lift);opacity:.6}.dr-fade{transition:opacity .4s ease-out,transform .4s ease-out;transition-delay:var(--i,0s)}.dr-draw{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset .6s ease-in-out;transition-delay:calc(.25s + var(--i, 0s))}.dr-group{transition:opacity .4s ease-out,transform .4s ease-out;transition-delay:var(--i,0s)}.dr-node{transform-origin:center;transition:transform .4s ease-out .5s,opacity .4s ease-out .5s}.dr-node,.dr-type{transform-box:fill-box}.dr-type{transform-origin:left center;transition:transform var(--dur,1s) steps(var(--n,30)) var(--i,0s)}.dr-q-edge{transition:stroke .3s ease-out}.dr-out{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset .4s ease-out,opacity .1s linear}.dr-answer{transition:opacity .35s ease-out .2s}.dr-answer .dr-bar{transition:transform .35s ease-out;transition-delay:calc(.45s + var(--i, 0s))}.dr-fig[data-phase=start] .dr-group{opacity:0;transform:translateY(8px)}.dr-fig[data-phase=start] .dr-edge-in{stroke-dashoffset:1}.dr-fig[data-phase=start] .dr-node{opacity:.4;transform:scale(.92)}.dr-fig:is([data-phase=start],[data-phase=connect]) .dr-type{transform:scaleX(0)}.dr-fig[data-phase=connect] .dr-flow{animation:dr-flow 1.3s linear .9s both;animation-delay:calc(.9s + var(--i, 0s))}@keyframes dr-flow{0%{opacity:0;stroke-dashoffset:0}20%,70%{opacity:1}to{opacity:0;stroke-dashoffset:-54}}.dr-fig[data-phase=ask] .dr-bubble{stroke:var(--pr-accent)}.dr-fig[data-phase=think] .dr-q-edge{stroke:var(--pr-lift);stroke-width:3}.dr-fig[data-phase=think] .dr-ring{animation:dr-pulse .9s ease-out both}@keyframes dr-pulse{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.18)}}.dr-fig:is([data-phase=start],[data-phase=connect],[data-phase=ask],[data-phase=think]) .dr-out{stroke-dashoffset:1;opacity:0}.dr-fig:is([data-phase=start],[data-phase=connect],[data-phase=ask],[data-phase=think]) .dr-answer{opacity:0}.dr-fig:is([data-phase=start],[data-phase=connect],[data-phase=ask],[data-phase=think]) .dr-answer .dr-bar{transform:scaleX(0)}.dr-axis{fill:none;stroke:var(--pr-muted);stroke-width:1}.dr-divider{fill:none;stroke:var(--pr-rule-strong);stroke-width:1;stroke-dasharray:3 4;transform-box:fill-box;transform-origin:top;transition:transform .3s ease-out .1s}.dr-history{fill:none;stroke:var(--pr-accent);stroke-width:2.5;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.2s ease-in-out}.dr-point{fill:var(--pr-accent)}.dr-line{fill:none;stroke:var(--pr-lift);stroke-width:2.5;stroke-dasharray:8 7;stroke-linecap:round}.dr-wipe{transform-box:fill-box;transform-origin:left center;transition:transform 1.1s ease-out}.dr-fc-forecast{transition:opacity .25s ease-out}.dr-fig[data-view=history] .dr-fc-forecast{opacity:0}.dr-fig[data-phase=start] .dr-history{stroke-dashoffset:1}.dr-fig:is([data-phase=start],[data-phase=history],[data-phase=ahead]) .dr-fc-label,.dr-fig[data-phase=start] .dr-point{opacity:0}.dr-fig:is([data-phase=start],[data-phase=history]) .dr-divider{transform:scaleY(0)}.dr-fig:is([data-phase=start],[data-phase=history]) .dr-wipe{transform:scaleX(0)}.dr-lane-rule{stroke:var(--pr-rule);stroke-width:1}.dr-track{fill:none;stroke:var(--pr-rule-strong);stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.6s linear;transition-delay:var(--i,0s)}.dr-tick-dot{fill:var(--pr-rule-strong)}.dr-signal{fill:var(--pr-accent)}.dr-signal-tick{stroke:var(--pr-accent);stroke-width:3;stroke-linecap:round}.dr-signal-label{fill:var(--pr-accent);font-weight:600}.dr-at{transition:opacity .3s ease-out;transition-delay:var(--t,0s)}.dr-ping{fill:none;stroke:var(--pr-lift);stroke-width:2;transform-box:fill-box;transform-origin:center}.dr-fig[data-phase=start] .dr-lane,.dr-ping{opacity:0}.dr-fig[data-phase=start] .dr-track{stroke-dashoffset:1}.dr-fig[data-phase=start] .dr-at{opacity:0}.dr-fig[data-phase=watch] .dr-ping{animation:dr-ping .8s ease-out var(--t,0s) both}@keyframes dr-ping{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}