/* Scoped teaching interaction for the RL and task-memory story. */
.story-memory-visual{--memv-good:#17685f;--memv-good-bg:#e8f3ee;--memv-warn:#845005;--memv-warn-bg:#fff0cf;--memv-unknown:#5d5365;--memv-unknown-bg:#eeebf1;margin:32px 0;border:1px solid var(--line,#d7cdd8);border-top:4px solid var(--story-purple,var(--green,#80138b));background:var(--surface-soft,#f6eff7);color:var(--ink,#171219);padding:clamp(16px,3vw,28px);font-family:var(--sans,sans-serif);min-width:0}
.story-memory-visual *{box-sizing:border-box;min-width:0}
.story-memory-visual .memv-header h3{font:800 clamp(30px,3.5vw,43px)/1.08 var(--display,sans-serif);margin:13px 0 16px}
.story-memory-visual .memv-header>p{font:13px/1.85 var(--sans,sans-serif);margin:0;color:var(--muted,#615669)}
.memv-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:24px 0}
.memv-scenarios button{display:flex;gap:9px;align-items:center;text-align:left;cursor:pointer;padding:13px 10px;border:1px solid var(--line,#d7cdd8);background:var(--surface,#fff);color:var(--ink,#171219);font:700 11px/1.5 var(--sans,sans-serif)}
.memv-scenarios button>span{font:700 21px/1 var(--sans,sans-serif);flex:none}
.memv-scenarios button[aria-pressed="true"]{background:var(--story-purple,var(--green,#80138b));color:var(--story-on-purple,var(--on-accent,#fff));border-color:var(--story-purple,var(--green,#80138b))}
.story-memory-visual button:focus-visible{outline:3px solid var(--focus,#80138b);outline-offset:4px}
.memv-main{display:grid;grid-template-columns:1fr 1fr;gap:17px;align-items:start}
.memv-camera,.memv-ledger{padding:17px;background:var(--surface,#fff);border:1px solid var(--line,#d7cdd8)}
.memv-label{display:block;font:700 8px/1.7 var(--sans,sans-serif);letter-spacing:.085em;text-transform:uppercase;color:var(--green,#80138b)}
.story-memory-visual .memv-main h4{font:700 24px/1.15 var(--display,sans-serif);margin:9px 0 15px}
.memv-frames{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.memv-frames figure{margin:0}
.memv-frames svg{display:block;width:100%;height:auto}
.memv-frames figcaption{font:700 9px/1.6 var(--sans,sans-serif);text-align:center;margin-top:4px;color:var(--muted,#615669)}
.story-memory-visual .memv-camera>p{font:11px/1.8 var(--sans,sans-serif);margin:15px 0 12px}
.memv-constant{display:flex;gap:10px;align-items:center;border-top:1px solid var(--line,#d7cdd8);padding-top:11px;font:700 10px/1.6 var(--sans,sans-serif);color:var(--muted,#615669)}
.memv-constant>span:first-child{font-size:28px;color:var(--green,#80138b)}
.memv-patch{display:flex;align-items:flex-start;gap:10px;padding:12px;background:var(--memv-unknown-bg);color:var(--memv-unknown);border:1px solid currentColor;margin-bottom:10px}
.memv-patch.memv-status-verified,.memv-patch[data-status="verified"]{background:var(--memv-good-bg);color:var(--memv-good)}
.memv-patch[data-status="insufficient"]{background:var(--memv-warn-bg);color:var(--memv-warn)}
.memv-status-mark{font:700 23px/1.2 var(--sans,sans-serif);flex:none}
.memv-patch b{display:block;font:700 9px/1.6 var(--sans,sans-serif);text-transform:uppercase;letter-spacing:.055em}
.memv-patch strong{display:block;font:700 12px/1.5 var(--sans,sans-serif);margin:3px 0 7px}
.story-memory-visual .memv-patch p{font:11px/1.75 var(--sans,sans-serif);margin:0}
.story-memory-visual .memv-scope{font:9px/1.8 var(--sans,sans-serif);color:var(--muted,#615669);margin:12px 0 0}
.memv-confirmation{margin-top:22px}
.story-memory-visual .memv-confirmation h4{font:700 25px/1.2 var(--display,sans-serif);margin:0 0 8px}
.story-memory-visual .memv-confirmation>p{font:11px/1.8 var(--sans,sans-serif);margin:0 0 14px;color:var(--muted,#615669)}
.memv-confirmation ol{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;margin:0;gap:9px}
.memv-confirmation li{padding:12px;border-top:3px solid var(--memv-unknown);background:var(--surface,#fff)}
.memv-confirmation li[data-confirmed="true"]{border-color:var(--memv-good)}
.memv-phase-label{display:flex;gap:7px;align-items:center;font:700 11px/1.5 var(--sans,sans-serif)}
.memv-phase-label>span{display:inline-flex;width:20px;height:20px;flex:none;align-items:center;justify-content:center;background:var(--surface-soft,#f6eff7);border:1px solid var(--line,#d7cdd8);border-radius:50%;font:700 9px/1 var(--sans,sans-serif)}
.story-memory-visual .memv-confirmation li p{font:10px/1.75 var(--sans,sans-serif);margin:9px 0 0;color:var(--muted,#615669)}
.memv-outcome{margin-top:22px;padding:19px;background:var(--surface,#fff);border-left:4px solid var(--story-purple,var(--green,#80138b))}
.story-memory-visual .memv-outcome h4{font:700 27px/1.18 var(--display,sans-serif);margin:9px 0 12px}
.story-memory-visual .memv-outcome p{font:12px/1.85 var(--sans,sans-serif);margin:0 0 12px}
.story-memory-visual .memv-plan{margin:16px 0 18px}
.memv-plan svg{display:block;width:100%;height:auto}
.story-memory-visual .memv-plan figcaption{font:9px/1.7 var(--sans,sans-serif);margin-top:7px;color:var(--muted,#615669)}
.memv-outcome>b{font:700 11px/1.75 var(--sans,sans-serif);color:var(--green,#80138b)}
.memv-note{font:10px/1.8 var(--sans,sans-serif);color:var(--muted,#615669);border-top:1px solid var(--line,#d7cdd8);padding-top:14px;margin-top:20px}
.memv-note>b{color:var(--ink,#171219)}
@media(max-width:760px){.memv-main{grid-template-columns:1fr}.memv-frames{grid-template-columns:repeat(4,minmax(0,1fr))}.memv-camera,.memv-ledger{padding:16px}.memv-scenarios button{font-size:10px;padding:11px 9px}}
@media(max-width:470px){.story-memory-visual{padding:17px 12px}.memv-scenarios{grid-template-columns:1fr;gap:7px;margin:20px 0}.memv-scenarios button{padding:10px 12px;font-size:11px}.memv-scenarios button>span{width:20px;text-align:center}.memv-confirmation ol{grid-template-columns:1fr;gap:9px}.memv-confirmation li{padding:12px}.story-memory-visual .memv-confirmation li p{margin:7px 0 0;font-size:11px}.memv-frames{grid-template-columns:1fr 1fr}.memv-outcome{padding:17px 13px}.story-memory-visual .memv-outcome h4{font-size:25px}}
@media(prefers-reduced-motion:reduce){.story-memory-visual *{scroll-behavior:auto;transition:none;animation:none}}
