.memory-chat-demo__error{color:#991b1b;background:#fff7f7;border:1px solid #fecaca;border-radius:10px;margin:.9rem 1.25rem 0;padding:.8rem .95rem;font-size:.9rem;line-height:1.5}.memory-chat-demo{color:#0f172a;font-family:var(--course-font-sans,Inter, system-ui, sans-serif);background:#fff;border:1px solid #cbd5e1;border-radius:20px;width:100%;overflow:hidden;box-shadow:0 10px 28px #0f172a12}.memory-chat-demo__header{background:#f4faff;border-bottom:1px solid #acd8fc;justify-content:space-between;align-items:flex-start;gap:1.25rem;padding:1.45rem 1.5rem 1.3rem;display:flex}.memory-chat-demo--history .memory-chat-demo__header{background:#f3fbf9;border-bottom-color:#a1ded2}.memory-chat-demo__eyebrow{color:#0d74ce;letter-spacing:.09em;margin-bottom:.38rem;font-size:.75rem;font-weight:800;display:block}.memory-chat-demo--history .memory-chat-demo__eyebrow{color:#008573}.memory-chat-demo__header h3{letter-spacing:-.02em;margin:0;font-size:1.32rem;line-height:1.25}.memory-chat-demo__header p{color:#475569;max-width:49rem;margin:.45rem 0 0;font-size:.95rem;line-height:1.55}.memory-chat-demo__header-actions{flex-direction:column;flex:none;align-items:flex-end;gap:.65rem;display:flex}.memory-chat-demo__mode-badge{color:#9a3412;letter-spacing:.055em;white-space:nowrap;background:#fff7ed;border:1px solid #ffc182;border-radius:999px;padding:.42rem .7rem;font-size:.72rem;font-weight:850}.memory-chat-demo--history .memory-chat-demo__mode-badge{color:#006b5d;background:#f3fbf9;border-color:#a1ded2}.memory-chat-demo__header-actions button{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:9px;padding:.5rem .78rem;font-size:.8rem;font-weight:700}.memory-chat-demo__header-actions button:hover:not(:disabled){color:#0f172a;border-color:#94a3b8}.memory-chat-demo__header-actions button:disabled{cursor:default;opacity:.42}.memory-chat-demo__experiment{background:#fff;grid-template-columns:minmax(0,1fr) 2.8rem minmax(0,1fr) 2.8rem minmax(0,1fr);align-items:center;gap:.7rem;padding:1rem 1.5rem;display:grid}.memory-chat-demo__experiment>div{color:#64748b;border:1px solid #0000;border-radius:12px;align-items:center;gap:.68rem;min-width:0;padding:.58rem .65rem;display:flex}.memory-chat-demo__experiment>div>strong{color:#64748b;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:50%;flex:0 0 1.8rem;justify-content:center;align-items:center;height:1.8rem;font-size:.8rem;display:inline-flex}.memory-chat-demo__experiment>div>span{flex-direction:column;min-width:0;display:flex}.memory-chat-demo__experiment b{color:#334155;font-size:.86rem}.memory-chat-demo__experiment small{color:#64748b;margin-top:.12rem;font-size:.76rem;line-height:1.35}.memory-chat-demo__experiment>i{background:#cbd5e1;height:2px;display:block;position:relative}.memory-chat-demo__experiment>i:after{content:"";border-top:2px solid #94a3b8;border-right:2px solid #94a3b8;width:.42rem;height:.42rem;position:absolute;top:50%;right:0;transform:translateY(-50%)rotate(45deg)}.memory-chat-demo__experiment>div.is-active{background:#f4faff;border-color:#acd8fc}.memory-chat-demo__experiment>div.is-active>strong{color:#fff;background:#0d74ce;border-color:#0d74ce}.memory-chat-demo__experiment>div.is-complete>strong{color:#fff;background:#008573;border-color:#008573}.memory-chat-demo__experiment>div.is-active b,.memory-chat-demo__experiment>div.is-complete b{color:#0f172a}.memory-chat-demo--code{box-shadow:none;border-color:#a1ded2}.memory-chat-demo--embedded{box-shadow:none;border:0;border-top:1px solid #dfe5ec;border-radius:0}.memory-chat-demo__implementation{background:#f8fafc;border-top:1px solid #e2e8f0;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:1px;display:grid}.memory-chat-demo__implementation>span{color:#64748b;align-items:center;gap:.5rem;padding:.75rem .9rem;font-size:.8rem;font-weight:700;display:flex}.memory-chat-demo__implementation>span+span{border-left:1px solid #e2e8f0}.memory-chat-demo__implementation strong{color:#475569;background:#e2e8f0;border-radius:50%;flex:0 0 1.45rem;justify-content:center;align-items:center;height:1.45rem;font-size:.72rem;display:inline-flex}.memory-chat-demo__implementation .is-ready{color:#006b5d;background:#f3fbf9}.memory-chat-demo__implementation .is-ready strong{color:#fff;background:#008573}.memory-chat-demo__body{border-top:1px solid #e2e8f0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:18rem;display:grid}.memory-chat-demo__conversation,.memory-chat-demo__context{min-width:0;padding:1.25rem}.memory-chat-demo__conversation{background:#fff}.memory-chat-demo__context{background:#f3fbf9;border-left:1px solid #a1ded2}.memory-chat-demo__section-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.memory-chat-demo__section-title{flex-direction:column;min-width:0;display:flex}.memory-chat-demo__section-title small{color:#0d74ce;letter-spacing:.07em;margin-bottom:.25rem;font-size:.7rem;font-weight:800;line-height:1.25}.memory-chat-demo__context .memory-chat-demo__section-title small{color:#008573}.memory-chat-demo__section-title span{color:#0f172a;font-size:1rem;font-weight:800;line-height:1.3}.memory-chat-demo__section-heading>small{color:#64748b;flex:none;margin-top:1.25rem;font-size:.75rem}.memory-chat-demo__context-summary{text-align:right;flex-direction:column;flex:none;align-items:flex-end;gap:.18rem;margin-top:.15rem;display:flex}.memory-chat-demo__context-summary strong{color:#006b5d;font-size:.76rem}.memory-chat-demo__context-summary small{color:#cc4e00;font-size:.72rem;font-weight:700}.memory-chat-demo__messages,.memory-chat-demo__context-list{flex-direction:column;gap:.75rem;display:flex}.memory-chat-demo__bubble{align-self:flex-start;max-width:88%}.memory-chat-demo__bubble--user{text-align:right;align-self:flex-end}.memory-chat-demo__bubble strong{color:#64748b;margin:0 .4rem .28rem;font-size:.75rem;display:block}.memory-chat-demo__bubble p{color:#1e293b;background:#fff;border:1px solid #a1ded2;border-radius:6px 15px 15px;margin:0;padding:.75rem .85rem;font-size:.94rem;line-height:1.5}.memory-chat-demo__bubble--user p{background:#f4faff;border-color:#acd8fc;border-radius:15px 6px 15px 15px}.memory-chat-demo__context-row{background:#fff;border:1px solid #d7e7e3;border-left:4px solid #94a3b8;border-radius:10px;padding:.72rem .78rem}.memory-chat-demo__context-row.is-system{border-left-color:#0d74ce}.memory-chat-demo__context-row.is-user{border-left-color:#008573}.memory-chat-demo__context-row.is-assistant{border-left-color:#cc4e00}.memory-chat-demo__context-row.is-tool-call{border-left-color:#0d74ce}.memory-chat-demo__context-row.is-tool-result{border-left-color:#cc4e00}.memory-chat-demo__context-row.is-running{border-left-color:#008573}.memory-chat-demo__context-row span{color:#475569;font-family:JetBrains Mono,Consolas,monospace;font-size:.75rem;font-weight:800}.memory-chat-demo__context-row.is-system span{color:#0d74ce}.memory-chat-demo__context-row.is-user span{color:#008573}.memory-chat-demo__context-row.is-assistant span{color:#cc4e00}.memory-chat-demo__context-row.is-tool-call span{color:#0d74ce}.memory-chat-demo__context-row.is-tool-result span{color:#cc4e00}.memory-chat-demo__context-row.is-running span{color:#008573}.memory-chat-demo__context-row p{color:#334155;margin:.3rem 0 0;font-size:.9rem;line-height:1.5}.memory-chat-demo__context-row code{color:#334155;overflow-wrap:anywhere;white-space:pre-wrap;margin-top:.35rem;font-family:JetBrains Mono,Consolas,monospace;font-size:.78rem;line-height:1.55;display:block}.memory-chat-demo__empty{color:#64748b;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:10rem;padding:1.2rem;display:flex}.memory-chat-demo__empty strong{color:#475569;font-size:.9rem}.memory-chat-demo__empty span{max-width:19rem;margin-top:.35rem;font-size:.82rem;line-height:1.5}.memory-chat-demo__quick-actions{background:#fff;border-top:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.8rem 1.25rem .35rem;display:flex}.memory-chat-demo__quick-actions>span{color:#475569;margin-right:.15rem;font-size:.76rem;font-weight:800}.memory-chat-demo__quick-actions button{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;padding:.42rem .7rem;font-size:.78rem;font-weight:700}.memory-chat-demo__quick-actions button:hover:not(:disabled){color:#0d74ce;background:#f4faff;border-color:#0d74ce}.memory-chat-demo__quick-actions button:disabled{cursor:default;opacity:.42}.memory-chat-demo__composer{background:#fff;padding:.65rem 1.25rem 1.15rem}.memory-chat-demo__composer-field{flex-direction:column;min-width:0;display:flex}.memory-chat-demo__composer-field>label{color:#475569;margin:0 0 .35rem .15rem;font-size:.76rem;font-weight:800}.memory-chat-demo__composer-field>small{color:#64748b;margin:.3rem 0 0 .15rem;font-size:.72rem}.memory-chat-demo__composer-row{align-items:stretch;gap:.75rem;display:flex}.memory-chat-demo__composer textarea{color:#0f172a;field-sizing:content;font:inherit;resize:none;background:#f8fafc;border:1px solid #cbd5e1;border-radius:14px;outline:0;flex:1;height:auto;min-height:3rem;max-height:none;padding:.75rem .9rem;font-size:.95rem;line-height:1.45;overflow-y:hidden}.memory-chat-demo__composer textarea:focus{background:#fff;border-color:#0d74ce;box-shadow:0 0 0 3px #0d74ce1f}.memory-chat-demo__composer button{color:#fff;cursor:pointer;background:#0d74ce;border:0;border-radius:12px;align-self:flex-end;min-width:6.8rem;min-height:3rem;padding:.75rem 1rem;font-size:.86rem;font-weight:800}.memory-chat-demo__composer button:hover:not(:disabled){background:#0969b9}.memory-chat-demo__composer button:disabled{cursor:not-allowed;opacity:.45}.memory-chat-demo--stateless .memory-chat-demo__eyebrow{font-size:.82rem}.memory-chat-demo--stateless .memory-chat-demo__mode-badge{font-size:.8rem}.memory-chat-demo--stateless .memory-chat-demo__header-actions button,.memory-chat-demo--stateless .memory-chat-demo__experiment>div>strong{font-size:.88rem}.memory-chat-demo--stateless .memory-chat-demo__experiment b{font-size:.95rem}.memory-chat-demo--stateless .memory-chat-demo__experiment small{font-size:.86rem}.memory-chat-demo--stateless .memory-chat-demo__section-title small{font-size:.8rem}.memory-chat-demo--stateless .memory-chat-demo__section-title span{font-size:1.08rem}.memory-chat-demo--stateless .memory-chat-demo__section-heading>small{font-size:.84rem}.memory-chat-demo--stateless .memory-chat-demo__context-summary strong{font-size:.86rem}.memory-chat-demo--stateless .memory-chat-demo__context-summary small{font-size:.82rem}.memory-chat-demo--stateless .memory-chat-demo__bubble strong,.memory-chat-demo--stateless .memory-chat-demo__context-row span{font-size:.84rem}.memory-chat-demo--stateless .memory-chat-demo__bubble p,.memory-chat-demo--stateless .memory-chat-demo__context-row p,.memory-chat-demo--stateless .memory-chat-demo__empty strong{font-size:1rem}.memory-chat-demo--stateless .memory-chat-demo__empty span{font-size:.92rem}.memory-chat-demo--stateless .memory-chat-demo__quick-actions>span,.memory-chat-demo--stateless .memory-chat-demo__composer-field>label{font-size:.84rem}.memory-chat-demo--stateless .memory-chat-demo__quick-actions button{font-size:.9rem}.memory-chat-demo--stateless .memory-chat-demo__composer-field>small{font-size:.8rem}.memory-chat-demo--stateless .memory-chat-demo__composer textarea{font-size:1rem}.memory-chat-demo--stateless .memory-chat-demo__composer button{font-size:.94rem}.memory-chat-demo{border-radius:var(--ai-radius-lg);color:var(--ai-ink)}.memory-chat-demo__eyebrow,.memory-chat-demo__mode-badge,.memory-chat-demo__section-title small,.memory-chat-demo__section-heading>small,.memory-chat-demo__context-summary small,.memory-chat-demo__bubble strong,.memory-chat-demo__context-row span,.memory-chat-demo__composer-field>small{font-size:var(--ai-text-xs)}.memory-chat-demo__header p,.memory-chat-demo__bubble p,.memory-chat-demo__context-row p,.memory-chat-demo__empty strong,.memory-chat-demo__composer textarea{font-size:var(--ai-text-md);line-height:1.65}.memory-chat-demo__header-actions button,.memory-chat-demo__experiment b,.memory-chat-demo__experiment small,.memory-chat-demo__context-summary strong,.memory-chat-demo__empty span,.memory-chat-demo__quick-actions>span,.memory-chat-demo__quick-actions button,.memory-chat-demo__composer-field>label,.memory-chat-demo__composer button{font-size:var(--ai-text-sm)}.memory-chat-demo__header-actions button,.memory-chat-demo__quick-actions button,.memory-chat-demo__composer button{min-height:var(--ai-control-md)}@media (width<=900px){.memory-chat-demo__experiment{grid-template-columns:minmax(0,1fr) 1.2rem minmax(0,1fr) 1.2rem minmax(0,1fr);gap:.4rem;padding-inline:1rem}.memory-chat-demo__experiment>div{align-items:flex-start}}@media (width<=760px){.memory-chat-demo__header{flex-direction:column}.memory-chat-demo__header-actions{flex-direction:row;justify-content:space-between;align-items:center;width:100%}.memory-chat-demo__experiment{grid-template-columns:minmax(0,1fr);align-items:stretch}.memory-chat-demo__experiment>i{display:none}.memory-chat-demo__implementation{grid-template-columns:minmax(0,1fr)}.memory-chat-demo__implementation>span+span{border-top:1px solid #e2e8f0;border-left:0}.memory-chat-demo__body{grid-template-columns:minmax(0,1fr)}.memory-chat-demo__context{border-top:1px solid #a1ded2;border-left:0}}@media (width<=480px){.memory-chat-demo__header,.memory-chat-demo__conversation,.memory-chat-demo__context{padding-left:1rem;padding-right:1rem}.memory-chat-demo__section-heading{flex-direction:column;gap:.45rem}.memory-chat-demo__section-heading>small,.memory-chat-demo__context-summary{text-align:left;align-items:flex-start;margin-top:0}.memory-chat-demo__quick-actions,.memory-chat-demo__composer{padding-left:1rem;padding-right:1rem}.memory-chat-demo__composer-row{flex-direction:column;align-items:stretch}.memory-chat-demo__composer button{align-self:stretch}}.course-execution-feedback{color:#475569;background:#f8fafc;border-top:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:.45rem .7rem;min-height:2.35rem;padding:.55rem .85rem;font-size:.72rem;line-height:1.4;display:flex}.course-execution-feedback strong{color:#0f172a;font-weight:800}.course-execution-feedback>span+span,.course-execution-feedback>strong+span{border-left:1px solid #cbd5e1;padding-left:.7rem}.course-execution-feedback.is-success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.course-execution-feedback.is-error{color:#991b1b;background:#fff7f7;border-color:#fecaca;flex-direction:column;align-items:flex-start;gap:.1rem}.course-execution-feedback.is-error strong{color:#b91c1c}.course-execution-feedback.is-error span{white-space:pre-line;border:0;padding:0}.course-execution-feedback__spinner{border:2px solid #cbd5e1;border-right-color:#0f766e;border-radius:999px;width:.85rem;height:.85rem;animation:.8s linear infinite course-execution-spin}@keyframes course-execution-spin{to{transform:rotate(360deg)}}.course-lab-review{color:#334155;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;margin-top:.8rem;padding:1rem;overflow:hidden}.course-lab-review.is-reviewing{align-items:center;gap:.8rem;display:flex}.course-lab-review.is-error{color:#991b1b;background:#fff7f7;border-color:#fecaca}.course-lab-review.is-passed{background:#f0fdf4;border-color:#86efac}.course-lab-review.is-retry{background:#fffbeb;border-color:#fcd34d}.course-lab-review p{margin:.25rem 0 0;line-height:1.55}.course-lab-review__header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.course-lab-review__header>div{gap:.15rem;display:grid}.course-lab-review__header strong{color:#0f172a;font-size:1rem}.course-lab-review__eyebrow{color:#64748b;letter-spacing:.08em;font-size:.65rem;font-weight:850}.course-lab-review__summary{color:#475569}.course-lab-review__section{margin-top:.8rem}.course-lab-review__section>span,.course-lab-review__priority>span{color:#166534;text-transform:uppercase;font-size:.7rem;font-weight:850}.course-lab-review__section ul{margin:.35rem 0 0;padding-left:1.1rem}.course-lab-review__section li{margin-top:.2rem}.course-lab-review__priority{background:#ffffffb8;border-left:3px solid #f59e0b;margin-top:.8rem;padding:.65rem .75rem}.course-lab-review__priority>span{color:#92400e}.course-lab-review__criteria{border-top:1px solid #94a3b873;margin-top:.85rem;padding-top:.7rem}.course-lab-review__criteria summary{color:#334155;cursor:pointer;font-size:.75rem;font-weight:750}.course-lab-review__criteria article{border-top:1px solid #e2e8f0;padding:.6rem 0}.course-lab-review__criteria article:first-child{border-top:0}.course-lab-review__criteria article header{justify-content:space-between;gap:.75rem;display:flex}.course-lab-review__criteria article p{color:#64748b;font-size:.75rem}.course-lab-review>footer{border-top:1px solid #94a3b861;margin-top:.8rem;padding-top:.65rem;font-size:.72rem;font-weight:650}.course-execution-feedback,.course-lab-review{font-family:var(--ai-font-sans)}.course-execution-feedback{font-size:var(--ai-text-sm);min-height:var(--ai-control-md)}.course-lab-review{border-radius:var(--ai-radius-md);padding:1.15rem}.course-lab-review p,.course-lab-review li{font-size:var(--ai-text-md);line-height:1.6}.course-lab-review__eyebrow,.course-lab-review__section>span,.course-lab-review__priority>span,.course-lab-review>footer{font-size:var(--ai-text-xs)}.course-lab-review__criteria summary,.course-lab-review__criteria article p{font-size:var(--ai-text-sm)}
