.context-slide .slide-body { justify-content: flex-start; }
.context-demo { width: 100%; flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 24px; padding-top: 16px; }
.context-meter-area { flex: none; }
.context-track { height: 66px; background: #edf1ed; border: 1px solid #d8e2d9; border-radius: 16px; position: relative; }
.context-visible { width: 100%; height: 100%; overflow: hidden; border-radius: 15px; }
.context-fill { width: 0; height: 100%; background: #10b981; transition: width .8s cubic-bezier(.2,.7,.2,1); }
.context-chat { flex: 1; min-height: 0; color: #302f2a; font-family: Arial, Helvetica, sans-serif; }
.context-messages { height: 100%; overflow-y: auto; padding: 24px 32px; display: flex; flex-direction: column; gap: 28px; scroll-behavior: auto; }
.context-message { transition: opacity .5s ease; max-height: 200px; overflow: hidden; transform-origin: top center; flex: none; font-size: 34px; line-height: 1.3; }
.context-demo .context-message.cc-user { align-self: flex-end; max-width: 88%; font-size: 34px; padding: 14px 22px; border-radius: 18px; }
.context-demo .context-message.cc-response { margin: 0; gap: 20px; }
.context-demo .context-message .context-message-text { margin: 0; font-size: 34px; line-height: 1.3; }
.context-message-who { flex: none; font-size: 28px; font-weight: 700; }
.context-summary { position: sticky; top: 0; z-index: 1; flex: none; display: flex; align-items: center; gap: 22px; border-radius: 18px; padding: 12px 22px; font-size: 30px; line-height: 1.3; color: #7a5a3f; background: #fbf1e6; border: 2px dashed #d8926e; }
.context-summary .context-message-who { color: #b0623a; width: 150px; }
.context-summary .context-message-text { font-style: italic; }
.context-message.collapsing { transition: opacity 1s ease, transform 1s cubic-bezier(.4,0,.6,1), max-height 1s cubic-bezier(.4,0,.6,1), padding 1s ease, margin-bottom 1s ease; opacity: 0 !important; transform: translateY(-24px) scaleY(.2); max-height: 0; padding-top: 0; padding-bottom: 0; margin-bottom: -28px; }
@keyframes context-summary-enter { from { opacity: 0; transform: translateY(-16px) scaleY(.6); } to { opacity: 1; transform: none; } }
@keyframes context-message-arrive { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
.context-summary.enter { animation: context-summary-enter .6s cubic-bezier(.2,.7,.2,1) both; transform-origin: top center; }
.context-message.arrive { animation: context-message-arrive .5s ease both; }
.context-chat-empty { margin: auto; color: #6e6a5e; font-size: 36px; }
.context-demo [hidden] { display: none !important; }
.context-instant .context-fill, .context-instant .context-message { transition: none; }
.context-instant .context-summary, .context-instant .context-message { animation: none; }
@media(prefers-reduced-motion:reduce) { .context-fill, .context-message { transition: none; } .context-summary, .context-message { animation: none; } }
