/* Training runtime diagrams: the narrow layouts use their own geometry. */
.te-figure{--te-purple:#c4b4fb;--te-teal:#83c9c2;--te-blue:#8baee8;--te-amber:#d6af85;--te-gray:#67666d;margin:38px 0 40px;padding:0;background:#080808;scroll-margin-top:125px}

.te-controls{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 22px;padding:0}
.te-controls button{appearance:none;border:1px solid #353239;border-radius:3px;background:transparent;color:#9d98a5;padding:6px 12px;font-family:inherit;font-size:12px;line-height:1.4;cursor:pointer;transition:color .18s,border-color .18s,background .18s}
.te-controls button:hover{color:#e0d8ec;border-color:#78688c}
.te-controls button[aria-pressed="true"]{color:#dacef2;border-color:#8876a3;background:#18131e}
.te-controls button:focus-visible{outline:2px solid #c4b4fb;outline-offset:4px}
.te-scene{display:block;width:100%;height:auto;overflow:visible;fill:none;font-family:var(--font,system-ui,sans-serif)}
.te-scene text{stroke:none}
.te-label{font-size:14px;fill:#d5cfdf;font-weight:400}
.te-small{font-size:12px;fill:#aaa3b4}
.te-label.te-purple,.te-small.te-purple{fill:var(--te-purple)}
.te-label.te-teal,.te-small.te-teal{fill:var(--te-teal)}
.te-label.te-blue,.te-small.te-blue{fill:var(--te-blue)}
.te-label.te-amber,.te-small.te-amber{fill:var(--te-amber)}
.te-line{stroke:var(--te-gray);stroke-width:1;fill:none;stroke-linecap:round;stroke-linejoin:round}
.te-purple{--te-ink:var(--te-purple);stroke:var(--te-purple)}
.te-teal{--te-ink:var(--te-teal);stroke:var(--te-teal)}
.te-blue{--te-ink:var(--te-blue);stroke:var(--te-blue)}
.te-amber{--te-ink:var(--te-amber);stroke:var(--te-amber)}
.te-gray{--te-ink:var(--te-gray);stroke:var(--te-gray)}
.te-dashed{stroke-dasharray:3 5}
.te-divider{stroke:#302c35;stroke-width:.7}
.te-node{fill:#080808;stroke:#53485f;stroke-width:.8}
.te-gpu{fill:#080808;stroke-width:1}
.te-bar{fill:var(--te-ink,#8baee8);fill-opacity:.14;stroke-width:.9}
.te-pending{fill:#080808;stroke-dasharray:3 4;stroke-width:1}
.te-dot{fill:var(--te-ink,#c4b4fb);stroke-width:.8}
.te-stop{stroke:#d6af85;stroke-width:1.4;fill:none}
.te-capabilities{display:grid;grid-template-columns:90px 1fr;gap:7px 15px;margin:15px 0 0;padding:16px 0 0;border-top:1px solid #302c35;font-size:12px;line-height:1.85;letter-spacing:0}
.te-capabilities dt{margin:0;color:#81788e;font-weight:400}
.te-capabilities dd{margin:0;color:#c2bbce}
.article-section .te-figure .te-sr-only,.te-figure .te-sr-only{position:absolute;width:1px;height:1px;min-height:0;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.te-checkpoint{margin-top:28px;margin-bottom:30px}
@media(max-width:620px){
 .te-figure{margin-top:28px;margin-bottom:32px}

 .te-controls{gap:5px;margin-bottom:18px}
 .te-controls button{padding:7px 10px;font-size:12px}
 .te-capabilities{grid-template-columns:1fr;gap:2px;margin-top:14px;padding-top:14px;font-size:12px}
 .te-capabilities dd+dt{margin-top:7px}
}
@media(prefers-reduced-motion:reduce){.te-controls button{transition:none}}
@media print{
 .te-figure{--te-purple:#655174;--te-teal:#2f6d66;--te-blue:#425f88;--te-amber:#8b6339;--te-gray:#777;background:transparent;break-inside:avoid}
 .te-controls button{display:none}
 .te-controls button[aria-pressed="true"]{display:block;color:#333;border-color:#aaa;background:none;padding:3px 8px}
 .te-label{fill:#222}.te-small{fill:#555}
 .te-node,.te-gpu,.te-pending{fill:#fff}
 .te-divider{stroke:#ccc}
 .te-capabilities{border-color:#ccc}
 .te-capabilities dd{color:#333}
 .te-capabilities dt{color:#666}
}
