.rag-visual{border-block:1px solid var(--color-border);padding-block:1.5rem;container-type:inline-size}.rag-toolbar{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;font-size:.9rem;display:flex}.rag-toolbar label{font-weight:600}.rag-toolbar select{border:1px solid var(--color-border);background:var(--color-panel-solid);max-width:100%;min-height:44px;color:var(--color-text);font:inherit;border-radius:.5rem;padding:.5rem 2rem .5rem .7rem}.article-content .rag-question{border-left:3px solid var(--color-accent);margin:1rem 0;padding:.5rem .8rem;font-size:1rem}.rag-funnel-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}.rag-funnel{justify-self:center;width:100%;max-width:430px;overflow:visible}.rag-flow-line{fill:none;stroke:var(--color-muted);stroke-width:1.5px;stroke-linejoin:round}.rag-flow-line.is-visited{stroke:var(--color-accent);stroke-width:2px}.article-content .rag-diagram-hint{color:var(--color-muted);margin:0 0 1rem;font-size:.8rem}.rag-stage{cursor:pointer;outline:none}.rag-stage path{fill:color-mix(in srgb, var(--color-accent) 7%, var(--color-panel-solid));stroke:var(--color-border);stroke-width:1px;transition:fill .18s}.rag-stage text{fill:var(--color-text);font:500 20px Inter,sans-serif}.rag-stage.is-bypassed path{stroke-dasharray:4 4;fill:var(--color-panel-solid)}.rag-stage.is-visited path{fill:color-mix(in srgb, var(--color-accent) 17%, var(--color-panel-solid))}.rag-stage.is-selected path,.rag-stage:focus-visible path{stroke:var(--color-accent);stroke-width:2.5px}.rag-stage:hover path{stroke:var(--color-accent)}.rag-stage:focus-visible{filter:drop-shadow(0 0 2px var(--color-accent))}.rag-flow-dot{fill:var(--color-accent)}[data-disposition=Block]{--rag-status:var(--red-9,#ce2c31);--rag-status-text:var(--red-11,#ce2c31);--rag-status-surface:var(--red-3,#feebec)}[data-disposition=Abstain]{--rag-status:var(--amber-9,#ffc53d);--rag-status-text:var(--amber-11,#915930);--rag-status-surface:var(--amber-3,#fff7c2)}[data-disposition=Redirect]{--rag-status:var(--blue-9,#0090ff);--rag-status-text:var(--blue-11,#0d74ce);--rag-status-surface:var(--blue-3,#e6f4fe)}.rag-stage[data-disposition]>path:not(.rag-stop-mark){stroke:var(--rag-status,var(--color-accent));fill:var(--rag-status-surface,color-mix(in srgb, var(--color-accent) 17%, var(--color-panel-solid)));stroke-width:2.5px}.rag-stage[data-disposition] .rag-stop-mark{fill:none;stroke:var(--rag-status);stroke-width:2.5px;stroke-linecap:round}.rag-stage[data-disposition] .rag-flow-dot{fill:var(--rag-status,var(--color-accent))}.article-content .rag-disposition{border:1px solid var(--rag-status,var(--color-accent));color:var(--rag-status-text,var(--color-accent));background:var(--rag-status-surface,var(--color-panel-solid));border-radius:.35rem;padding:.15rem .6rem;font-weight:650;display:inline-block}.rag-inspector{grid-area:1/2;font-size:.88rem;line-height:1.65}.article-content .rag-inspector p{margin:.8rem 0}.rag-eyebrow{color:var(--color-muted);font-size:.78rem}.article-content .rag-panel-title{margin-top:.4rem;font-size:1.15rem;font-weight:650}.rag-stage-result{border-top:1px solid var(--color-border);padding-top:.75rem}.rag-playback{flex-wrap:wrap;grid-area:2/1/auto/-1;gap:.5rem;margin:1rem 0;display:flex}.rag-playback button{border:1px solid var(--color-border);min-height:44px;color:var(--color-text);background:var(--color-panel-solid);font:inherit;cursor:pointer;border-radius:.4rem;padding:.5rem .8rem;font-size:.85rem}.rag-playback button:disabled{opacity:.5;cursor:default}.rag-visual :is(button,select,summary):focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.rag-outcome{border-top:1px solid var(--color-border);gap:1rem;padding-top:1rem;font-size:.9rem;display:flex}.rag-outcome strong{color:var(--rag-status-text,var(--color-accent))}.article-content .rag-fine-print{color:var(--color-muted);font-size:.8rem;line-height:1.6}.article-content .rag-route-note{border:1px dashed var(--color-border);padding:.75rem;font-size:.85rem}.rag-data-table{font-size:.85rem}.rag-data-table summary{cursor:pointer;min-height:44px;padding:.75rem 0}.rag-chart{min-width:0;margin-top:1rem}.rag-usecases{gap:1rem;display:grid}.rag-usecase{grid-template-columns:8rem 1.5rem 1fr;align-items:center;gap:1rem;display:grid}.rag-actor{align-items:center;gap:.6rem;font-size:.9rem;display:flex}.rag-actor span{color:var(--color-accent);font-size:1.6rem}.rag-usecase-goal{border:1px solid var(--color-border);border-radius:.75rem;padding:.9rem 1rem;font-size:.9rem}.article-content .rag-usecase p{margin:.4rem 0 0;font-size:.85rem;line-height:1.6}.rag-usecase-arrow,.rag-property-arrow{color:var(--color-accent)}.rag-properties{display:grid}.rag-property{border-bottom:1px solid var(--color-border);grid-template-columns:1fr 1rem 1.5fr;align-items:center;gap:1rem;padding:1rem 0;font-size:.9rem;display:grid}.rag-property:last-child{border:0}.article-content .rag-property p{color:var(--color-muted);margin:.3rem 0 0;font-size:.85rem;line-height:1.6}.rag-formulas{margin:0}.rag-formulas dt{margin-top:1.5rem;font-weight:650}.rag-formulas dd{margin-left:0}.rag-formula{overflow-wrap:anywhere;padding:.75rem 0;font-family:ui-serif,Georgia,serif;font-size:1.15rem;line-height:1.9}.article-content .rag-formulas p{margin:.25rem 0 1rem;font-size:.88rem}@container (width<=580px){.rag-funnel-layout{grid-template-columns:1fr;gap:1rem}.rag-funnel{max-width:390px}.rag-inspector{border-top:1px solid var(--color-border);grid-area:3/1;padding-top:1rem}.rag-usecase{grid-template-columns:1fr;gap:.4rem}.rag-usecase-arrow{display:none}.rag-property{grid-template-columns:1fr;gap:.3rem}.rag-property-arrow{display:none}.rag-outcome{flex-direction:column;gap:.3rem}}@media (prefers-reduced-motion:reduce){.rag-stage path{transition:none}}@media print{.rag-toolbar,.rag-playback{display:none}.rag-data-table>*{display:block}}.rag-current-route{background:color-mix(in srgb, var(--color-accent) 8%, var(--color-panel-solid));border-radius:.4rem;padding:.7rem}.rag-data-table table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.rag-data-table th,.rag-data-table td{border-bottom:1px solid var(--color-border);text-align:left;padding:.55rem .6rem}.rag-data-table th:first-child,.rag-data-table td:first-child{padding-left:0}.rag-data-table td:last-child{text-align:right;white-space:nowrap}
