:root{--spring-bounce:cubic-bezier(.34,1.56,.64,1);--spring-smooth:cubic-bezier(.22,1,.36,1);--spring-snappy:cubic-bezier(.17,.89,.32,1.28);--ease-out-expo:cubic-bezier(.16,1,.3,1)}.bp-animation:where(.astro-yh22zcy2){width:100%;height:100%;font-family:SF Mono,Fira Code,monospace}.bp-animation:where(.astro-yh22zcy2)>:where(.astro-yh22zcy2)[data-step]{opacity:0;visibility:hidden;transition:opacity .4s var(--ease-out-expo)}.bp-animation:where(.astro-yh22zcy2)>:where(.astro-yh22zcy2)[data-step].visible{opacity:1;visibility:visible}.layer-label:where(.astro-yh22zcy2){fill:rgb(var(--color-text-muted));text-anchor:middle;font-size:11px;font-weight:600}.node:where(.astro-yh22zcy2){stroke-width:2px;transition:all .3s var(--spring-smooth)}.input-node:where(.astro-yh22zcy2){fill:#a5d8ff;stroke:#1971c2}.hidden-node:where(.astro-yh22zcy2){fill:#d0bfff;stroke:#7048e8}.output-node:where(.astro-yh22zcy2){fill:#99e9f2;stroke:#0c8599}.output-node:where(.astro-yh22zcy2).improved{fill:#b2f2bb;stroke:#2f9e44;animation:improvedPulse 1.5s var(--spring-smooth)infinite}@keyframes improvedPulse{0%,to{filter:drop-shadow(0 0 4px #2f9e4466)}50%{filter:drop-shadow(0 0 10px #2f9e44b3)}}.node:where(.astro-yh22zcy2).small{stroke-width:1.5px}.node:where(.astro-yh22zcy2).active{filter:drop-shadow(0 0 6px #1971c280)}.node:where(.astro-yh22zcy2).activating{animation:activatePulse .8s var(--spring-bounce)}@keyframes activatePulse{0%{transform:scale(1)}50%{filter:brightness(1.2);transform:scale(1.15)}to{transform:scale(1)}}.node:where(.astro-yh22zcy2).gradient-node{filter:drop-shadow(0 0 6px #f08c0080)}.node:where(.astro-yh22zcy2).gradient-target{animation:gradientPulse 1s var(--spring-smooth)infinite}@keyframes gradientPulse{0%,to{filter:drop-shadow(0 0 4px #f08c0066)}50%{filter:drop-shadow(0 0 10px #f08c00b3)}}.node-group:where(.astro-yh22zcy2){animation:nodePopIn .5s var(--spring-bounce)forwards;animation-delay:calc(var(--delay,0)*.1s);opacity:0}@keyframes nodePopIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.node-label:where(.astro-yh22zcy2){fill:#1e1e1e;text-anchor:middle;font-size:12px;font-weight:600}.node-label:where(.astro-yh22zcy2).small{font-size:10px}.value-small:where(.astro-yh22zcy2){fill:#495057;text-anchor:middle;font-size:9px}.value-improved:where(.astro-yh22zcy2){fill:#1e7b34;text-anchor:middle;font-size:10px;font-weight:700}.weight-line:where(.astro-yh22zcy2){stroke:#adb5bd;stroke-width:1.5px}.weight-line:where(.astro-yh22zcy2).faded{opacity:.4}.weight-line:where(.astro-yh22zcy2).updated{stroke:#2f9e44;stroke-width:2px}.weight-label:where(.astro-yh22zcy2){fill:#868e96;text-anchor:middle;font-size:9px}.connections:where(.astro-yh22zcy2){animation:fadeInConnections .5s var(--ease-out-expo)forwards;opacity:0;animation-delay:.5s}@keyframes fadeInConnections{to{opacity:1}}.forward-arrow:where(.astro-yh22zcy2){stroke:#1971c2;stroke-width:2px;stroke-dasharray:100;stroke-dashoffset:100px;animation:drawForward .6s var(--ease-out-expo)forwards}.a1:where(.astro-yh22zcy2){animation-delay:.1s}.a2:where(.astro-yh22zcy2){animation-delay:.2s}.a3:where(.astro-yh22zcy2){animation-delay:.3s}.a4:where(.astro-yh22zcy2){animation-delay:.4s}.a5:where(.astro-yh22zcy2){animation-delay:.6s}.a6:where(.astro-yh22zcy2){animation-delay:.7s}@keyframes drawForward{to{stroke-dashoffset:0}}.forward-badge:where(.astro-yh22zcy2){fill:#1971c2;opacity:.15}.forward-text:where(.astro-yh22zcy2){fill:#1864ab;text-anchor:middle;font-size:11px;font-weight:700}.backward-arrow:where(.astro-yh22zcy2){stroke:#f08c00;stroke-width:2.5px;stroke-dasharray:100;stroke-dashoffset:100px;animation:drawBackward .6s var(--ease-out-expo)forwards}.backward-arrow:where(.astro-yh22zcy2).main{stroke-width:3px;animation-delay:.2s}.b1:where(.astro-yh22zcy2){animation-delay:.1s}.b2:where(.astro-yh22zcy2){animation-delay:.2s}.b3:where(.astro-yh22zcy2){animation-delay:.4s}.b4:where(.astro-yh22zcy2){animation-delay:.5s}.b5:where(.astro-yh22zcy2){animation-delay:.6s}.b6:where(.astro-yh22zcy2){animation-delay:.7s}@keyframes drawBackward{to{stroke-dashoffset:0}}.backward-badge:where(.astro-yh22zcy2){fill:#f08c00;opacity:.15}.backward-text:where(.astro-yh22zcy2){fill:#e8590c;text-anchor:middle;font-size:11px;font-weight:700}.grad-label:where(.astro-yh22zcy2){fill:#f08c00;text-anchor:middle;font-size:10px;font-weight:600}.grad-label:where(.astro-yh22zcy2).small{font-size:8px}.loss-box:where(.astro-yh22zcy2){stroke-width:2px}.loss-box:where(.astro-yh22zcy2).neutral{fill:#e9ecef;stroke:#adb5bd}.loss-box:where(.astro-yh22zcy2).high{fill:#ffc9c9;stroke:#e03131;animation:1.5s ease-in-out infinite lossPulse}@keyframes lossPulse{0%,to{filter:drop-shadow(0 0 4px #e031314d)}50%{filter:drop-shadow(0 0 8px #e0313180)}}.loss-label:where(.astro-yh22zcy2){fill:#495057;text-anchor:middle;font-size:12px}.loss-value:where(.astro-yh22zcy2){fill:#c92a2a;text-anchor:middle;font-size:14px;font-weight:700}.loss-arrow:where(.astro-yh22zcy2){stroke:#1971c2;stroke-width:1.5px}.loss-calc-box:where(.astro-yh22zcy2){fill:#fff5f5;stroke:#ffc9c9;stroke-width:1.5px}.loss-title:where(.astro-yh22zcy2){fill:#c92a2a;text-anchor:middle;font-size:11px;font-weight:600}.loss-formula:where(.astro-yh22zcy2){fill:#495057;text-anchor:middle;font-size:12px}.loss-result:where(.astro-yh22zcy2){fill:#c92a2a;text-anchor:middle;font-size:14px;font-weight:700}.loss-bar-bg:where(.astro-yh22zcy2){fill:#e9ecef;stroke:#adb5bd;stroke-width:1px}.loss-bar-fill:where(.astro-yh22zcy2).high{fill:#e03131;animation:barFill .8s var(--ease-out-expo)forwards}@keyframes barFill{0%{width:0}}.loss-bar-label:where(.astro-yh22zcy2){fill:#c92a2a;text-anchor:middle;font-size:10px}.target-circle:where(.astro-yh22zcy2){fill:#b2f2bb;stroke:#2f9e44;stroke-width:2px}.target-label:where(.astro-yh22zcy2){fill:#1e7b34;text-anchor:middle;font-size:10px;font-weight:700}.target-text:where(.astro-yh22zcy2){fill:#2f9e44;text-anchor:middle;font-size:9px}.target-group:where(.astro-yh22zcy2){animation:targetPop .5s var(--spring-bounce)forwards;opacity:0}@keyframes targetPop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.gradient-annotation:where(.astro-yh22zcy2){fill:#fff4e6;stroke:#f08c00;stroke-width:1.5px}.gradient-formula:where(.astro-yh22zcy2){fill:#e8590c;text-anchor:middle;font-size:12px;font-weight:600}.gradient-value:where(.astro-yh22zcy2){fill:#d9480f;text-anchor:middle;font-size:14px;font-weight:700}.gradient-box:where(.astro-yh22zcy2){animation:gradBoxPop .5s var(--spring-bounce)forwards;opacity:0;animation-delay:.4s}@keyframes gradBoxPop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.chain-badge:where(.astro-yh22zcy2){fill:#f08c00;opacity:.15}.chain-text:where(.astro-yh22zcy2){fill:#e8590c;text-anchor:middle;font-size:11px;font-weight:700}.formula-box:where(.astro-yh22zcy2){fill:#fff4e6;stroke:#f08c00;stroke-width:1px}.formula-text:where(.astro-yh22zcy2){fill:#d9480f;text-anchor:middle;font-size:10px}.formula-small:where(.astro-yh22zcy2){fill:#868e96;text-anchor:middle;font-size:8px}.update-formula-box:where(.astro-yh22zcy2){fill:#d3f9d8;stroke:#2f9e44;stroke-width:1.5px}.update-formula:where(.astro-yh22zcy2){fill:#1e7b34;text-anchor:middle;font-size:12px;font-weight:600}.lr-label:where(.astro-yh22zcy2){fill:#7048e8;text-anchor:start;font-size:12px;font-weight:600}.update-indicator:where(.astro-yh22zcy2){fill:#2f9e44;animation:updateFlash .8s var(--spring-bounce)}@keyframes updateFlash{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.3)}to{opacity:1;transform:scale(1)}}.update-arrow:where(.astro-yh22zcy2){fill:#fff;text-anchor:middle;font-size:10px;font-weight:700}.weight-update:where(.astro-yh22zcy2){animation:weightUpdateFade .5s var(--spring-smooth)forwards;opacity:0}.w1:where(.astro-yh22zcy2){animation-delay:.1s}.w2:where(.astro-yh22zcy2){animation-delay:.2s}.w3:where(.astro-yh22zcy2){animation-delay:.3s}.w4:where(.astro-yh22zcy2){animation-delay:.4s}@keyframes weightUpdateFade{to{opacity:1}}.compare-label:where(.astro-yh22zcy2){fill:#868e96;text-anchor:middle;font-size:10px}.loss-before:where(.astro-yh22zcy2){fill:#ffc9c9;stroke:#e03131;stroke-width:1px}.loss-before-text:where(.astro-yh22zcy2){fill:#c92a2a;text-anchor:middle;font-size:11px}.loss-after:where(.astro-yh22zcy2){fill:#b2f2bb;stroke:#2f9e44;stroke-width:1px;animation:lossImprove .8s var(--spring-bounce)forwards;opacity:0;animation-delay:.5s}@keyframes lossImprove{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.loss-after-text:where(.astro-yh22zcy2){fill:#1e7b34;text-anchor:middle;font-size:11px;font-weight:700}.improvement:where(.astro-yh22zcy2){fill:#2f9e44;text-anchor:middle;animation:improvementPop .5s var(--spring-bounce)forwards;opacity:0;font-size:12px;font-weight:700;animation-delay:.8s}@keyframes improvementPop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.status-label:where(.astro-yh22zcy2){fill:rgb(var(--color-text-muted));text-anchor:middle;font-size:12px;font-weight:500}.dark .input-node:where(.astro-yh22zcy2){fill:#1864ab;stroke:#4dabf7}.dark .hidden-node:where(.astro-yh22zcy2){fill:#5f3dc4;stroke:#b197fc}.dark .output-node:where(.astro-yh22zcy2){fill:#0c8599;stroke:#66d9e8}.dark .output-node:where(.astro-yh22zcy2).improved{fill:#1e7b34;stroke:#69db7c}.dark .node-label:where(.astro-yh22zcy2){fill:#f8f9fa}.dark .loss-calc-box:where(.astro-yh22zcy2){fill:#2c2c2c;stroke:#e03131}.dark .gradient-annotation:where(.astro-yh22zcy2){fill:#2c2c2c;stroke:#f08c00}.dark .formula-box:where(.astro-yh22zcy2){fill:#2c2c2c}.dark .update-formula-box:where(.astro-yh22zcy2){fill:#1e3a1e;stroke:#69db7c}.dark .loss-before:where(.astro-yh22zcy2){fill:#5c2626}.dark .loss-after:where(.astro-yh22zcy2){fill:#1e3a1e}@media (prefers-reduced-motion:reduce){:where(.astro-yh22zcy2),:where(.astro-yh22zcy2):before,:where(.astro-yh22zcy2):after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.next-section:where(.astro-6em5qnh2){--tw-border-opacity:1;border-width:1px;border-color:rgba(var(--color-border),var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgba(var(--color-card),var(--tw-bg-opacity,1));border-radius:.75rem;margin-top:2rem;padding:1.5rem}.next-section:where(.astro-6em5qnh2) h2:where(.astro-6em5qnh2){--tw-text-opacity:1;color:rgba(var(--color-accent),var(--tw-text-opacity,1));margin-bottom:.5rem;font-size:1.125rem;font-weight:600;line-height:1.75rem}.next-section:where(.astro-6em5qnh2) p:where(.astro-6em5qnh2){color:rgba(var(--color-text-base),.7);font-size:.875rem;line-height:1.25rem}