.course-assistant-entry{position:fixed;right:max(var(--spacing-lg),env(safe-area-inset-right));bottom:calc(max(var(--spacing-lg),env(safe-area-inset-bottom)) + var(--cookie-banner-offset, 0px));z-index:2147483000;display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-sm);--assistant-on-brand: var(--color-white)}.course-assistant-bubble.ui-btn{order:2;border-radius:var(--radius-round);width:3.5rem;height:3.5rem;min-height:3.5rem;padding:0;color:var(--assistant-on-brand);background:var(--primary-500);box-shadow:var(--shadow-lg);-webkit-tap-highlight-color:transparent}.course-assistant-bubble.ui-btn:focus{outline:none}.course-assistant-bubble.ui-btn:focus-visible{outline:2px solid var(--primary-300);outline-offset:3px}.course-assistant-bubble.ui-btn svg{transform:translate(-2px)}.course-assistant-panel{width:min(26rem,calc(100vw - 2 * var(--spacing-lg)));height:min(42rem,calc(100dvh - 7rem - env(safe-area-inset-top) - env(safe-area-inset-bottom) - var(--cookie-banner-offset, 0px)));display:flex;flex-direction:column;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);overflow:hidden;font-family:var(--font-body);font-size:.875rem}.course-assistant-panel[hidden]{display:none}.course-assistant-header{display:flex;flex-shrink:0;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg) var(--spacing-md);border-bottom:1px solid var(--border-default)}.course-assistant-avatar{display:grid;place-items:center;width:2.75rem;height:2.75rem;flex-shrink:0;color:var(--assistant-on-brand);background:var(--primary-500);border:1px solid var(--primary-500);border-radius:var(--radius-lg)}.course-assistant-avatar .flask-icon{color:inherit}.course-assistant-heading{flex:1;min-width:0}.course-assistant-heading strong{font-size:.9375rem}.course-assistant-header p{color:var(--text-secondary);font-size:.75rem;margin:var(--spacing-xs) 0 0}.course-assistant-close.ui-btn{padding:var(--spacing-xs);min-height:2rem;width:2rem;border:0;background:transparent}.course-assistant-history{display:flex;flex-shrink:0;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);border-bottom:1px solid var(--border-default)}.course-assistant-history .course-assistant-history-action{flex:0 0 32px;width:32px;height:32px;padding:0;border-radius:var(--radius-3xl)}.course-assistant-conversation.ui-btn{display:flex;flex-direction:column;flex-shrink:0;align-items:flex-start;gap:2px;height:auto;min-height:3rem;width:100%;text-align:left;white-space:normal;overflow-wrap:anywhere;border-radius:var(--radius-lg)}.course-assistant-conversation[aria-current=true]{border-color:var(--primary-500)}.course-assistant-conversation span{font-size:.75rem;color:var(--text-secondary)}.course-assistant-messages{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:var(--spacing-lg);padding:var(--spacing-lg) var(--spacing-md)}.course-assistant-message{overflow-wrap:anywhere;min-width:0}.course-assistant-message-user{align-self:flex-end;max-width:88%}.course-assistant-message-assistant{align-self:flex-start;width:100%}.course-assistant-bubble-text{background:var(--bg-secondary);border:1px solid var(--border-subtle);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--radius-sm)}.course-assistant-message-user .course-assistant-bubble-text{background:var(--primary-500);color:var(--assistant-on-brand);border-color:transparent;border-radius:var(--radius-lg) var(--radius-lg) var(--radius-sm) var(--radius-lg)}.course-assistant-text{line-height:1.6}.course-assistant-text .mde-root{color:inherit;font-size:inherit}.course-assistant-text .mde-root>:first-child{margin-top:0}.course-assistant-text .mde-root>:last-child{margin-bottom:0}.course-assistant-text .mde-root .tiptap .mde-codeblock pre{padding-top:var(--spacing-2xl)}.course-assistant-message-user .course-assistant-text{white-space:pre-wrap}.course-assistant-hint{color:var(--text-secondary);font-size:.875rem;margin:auto;padding:var(--spacing-xl) var(--spacing-md);text-align:center}.course-assistant-activity{display:flex;align-items:center;gap:var(--spacing-xs);width:fit-content;max-width:100%;padding:var(--spacing-xs) var(--spacing-sm);margin-bottom:var(--spacing-sm);background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-3xl);font-size:.6875rem;overflow-wrap:anywhere}.course-assistant-activity svg{flex-shrink:0}.course-assistant-sources{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.course-assistant-source.ui-btn{display:flex;align-items:center;justify-content:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm);height:auto;min-height:3.5rem;border:1px solid var(--border-default);background:var(--bg-primary);border-radius:var(--radius-md);white-space:normal;text-align:left;color:var(--text-primary)}.course-assistant-source.ui-btn:hover{border-color:var(--primary-400);background:var(--primary-50)}.course-assistant-play{display:grid;place-items:center;flex-shrink:0;width:2rem;height:2rem;border-radius:var(--radius-round);background:var(--primary-100);color:var(--primary-500);font-size:.6875rem}.course-assistant-source-copy{display:flex;flex-direction:column;gap:var(--spacing-xs);font-size:.75rem}.course-assistant-source-copy>span{color:var(--text-secondary);font-size:.6875rem}.course-assistant-avatar.is-running>svg{animation:assistant-brew 1.6s ease-in-out infinite}@keyframes assistant-brew{0%,to{transform:rotate(-8deg);opacity:.65}50%{transform:rotate(8deg);opacity:1}}@media(prefers-reduced-motion:reduce){.course-assistant-avatar.is-running>svg{animation:none}}.course-assistant-error{color:var(--text-primary);border-left:3px solid var(--error);padding-left:var(--spacing-sm);margin:var(--spacing-sm);overflow-wrap:anywhere}.course-assistant-form{display:flex;align-items:flex-end;gap:var(--spacing-sm);margin:var(--spacing-sm) var(--spacing-md) var(--spacing-md);padding:var(--spacing-xs);border:1px solid var(--border-default);border-radius:var(--radius-3xl);background:var(--bg-secondary)}.course-assistant-form:focus-within{border-color:var(--primary-500);box-shadow:0 0 0 2px var(--primary-100)}.course-assistant-form .ui-input-container{flex:1;min-width:0}.course-assistant-form .ui-textarea{resize:none;min-height:2.5rem;max-height:7rem;field-sizing:content;border:0;border-radius:var(--radius-3xl);background:transparent;box-shadow:none;font-size:.875rem;padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) var(--spacing-md)}.course-assistant-actions{flex-shrink:0}.course-assistant-send.ui-btn{width:2.5rem;height:2.5rem;min-height:2.5rem;border-radius:var(--radius-round);padding:0;font-size:1.375rem;color:var(--assistant-on-brand);background:var(--primary-500)}.course-assistant-login.ui-btn{align-self:flex-start;margin:0 var(--spacing-md);font-size:.75rem}@media(max-width:767px){html:has(.course-assistant-panel:not([hidden])),body:has(.course-assistant-panel:not([hidden])){overflow:hidden!important;overscroll-behavior:none}.course-assistant-entry.is-open .course-assistant-bubble{display:none}.course-assistant-panel{position:fixed;inset:0;bottom:var(--cookie-banner-offset, 0);width:auto;height:auto;max-height:none;overscroll-behavior:contain;box-sizing:border-box;border:0;border-radius:0;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}}@media(pointer:coarse){.course-assistant-history .course-assistant-history-action{flex-basis:44px;width:44px;height:44px}.course-assistant-close.ui-btn,.course-assistant-send.ui-btn{min-height:2.75rem;height:2.75rem;width:2.75rem}}[data-mode=light] .course-assistant-text .mde-root .tiptap pre code [class*=hljs-]{color:var(--text-primary)}[data-mode=light] .course-assistant-text .mde-root .tiptap pre code .hljs-keyword{color:var(--primary-700)}[data-mode=light] .course-assistant-text .mde-root .tiptap pre code .hljs-string{color:var(--success-strong)}[data-mode=light] .course-assistant-text .mde-root .tiptap pre code .hljs-number{color:var(--warning-strong)}[data-mode=light] .course-assistant-text .mde-root .tiptap pre code .hljs-comment{color:var(--text-secondary)}
