.chat-button{font-family:var(--font-first);cursor:pointer;color:inherit;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;gap:12px;padding:0;font-weight:700;text-decoration:none;transition:all .2s ease-in-out;display:inline-flex;position:relative}.chat-button--large{height:40px;padding:8px 12px;font-size:18px}.chat-button--large .chat-button__icon svg,.chat-button--large .chat-button__icon-right svg,.chat-button--large .icon__wrapper svg{width:24px;height:24px}.chat-button--small{gap:8px;height:30px;padding:2px 8px;font-size:16px}.chat-button--small .chat-button__icon{width:16px;height:16px}.chat-button--icon-only{gap:0}.chat-button--icon-only.chat-button--large{padding:8px}.chat-button--icon-only.chat-button--small{padding:4px}.chat-button--icon-only .chat-button__text{display:none}.chat-button--icon-only{color:var(--color-tangerine-ai,#bc3ebc)}.chat-button--icon-only svg path{fill:var(--color-tangerine-ai,#bc3ebc)!important}.chat-button--icon-only:active{color:var(--color-tangerine-ai-dark,#741571)}.chat-button--icon-only:active svg path{fill:var(--color-tangerine-ai-dark,#741571)!important}.chat-button--brand.chat-button--contained{color:#fff;background:var(--color-tangerine-ai-gradient,linear-gradient(111deg,#e14de3 12.58%,#8c2a89 100%))}.chat-button--brand.chat-button--contained:hover:not(:disabled){background:var(--color-tangerine-ai-gradient-reverse,linear-gradient(291deg,#e14de3 12.5%,#8c2a89 99.91%))}.chat-button--brand.chat-button--contained:active:not(:disabled){background:var(--color-tangerine-ai-dark,#741571)}.chat-button--brand.chat-button--contained.chat-button--has-shadow.chat-button--large{box-shadow:0 3px rgba(188,62,188,.3)}.chat-button--brand.chat-button--contained.chat-button--has-shadow.chat-button--large:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px rgba(188,62,188,.3)}.chat-button--brand.chat-button--contained.chat-button--has-shadow.chat-button--large:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 3px rgba(188,62,188,.3)}.chat-button--brand.chat-button--contained.chat-button--has-shadow.chat-button--small{box-shadow:0 3px rgba(188,62,188,.3)}.chat-button--brand.chat-button--contained.chat-button--has-shadow.chat-button--small:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px rgba(188,62,188,.3)}.chat-button--brand.chat-button--contained.chat-button--has-shadow.chat-button--small:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 3px rgba(188,62,188,.3)}.chat-button--brand.chat-button--outlined{color:var(--color-tangerine-ai,#bc3ebc);border:1px solid var(--color-tangerine-ai,#bc3ebc);background-color:#fff}.chat-button--brand.chat-button--outlined.chat-button--has-shadow.chat-button--large{box-shadow:0 3px rgba(188,62,188,.2)}.chat-button--brand.chat-button--outlined.chat-button--has-shadow.chat-button--large:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px rgba(188,62,188,.2)}.chat-button--brand.chat-button--outlined.chat-button--has-shadow.chat-button--large:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 3px rgba(188,62,188,.2)}.chat-button--brand.chat-button--outlined.chat-button--has-shadow.chat-button--small{box-shadow:0 3px rgba(188,62,188,.2)}.chat-button--brand.chat-button--outlined.chat-button--has-shadow.chat-button--small:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px rgba(188,62,188,.2)}.chat-button--brand.chat-button--outlined.chat-button--has-shadow.chat-button--small:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 3px rgba(188,62,188,.2)}.chat-button--brand.chat-button--outlined:hover:not(:disabled),.chat-button--brand.chat-button--outlined:active:not(:disabled){color:var(--color-tangerine-ai-dark,#741571);background-color:var(--color-tangerine-ai-alpha,rgba(188,62,188,.15));border-color:var(--color-tangerine-ai-dark,#741571)}.chat-button--brand.chat-button--outlined.chat-button--icon-right svg path{fill:var(--color-tangerine-ai,#bc3ebc)}.chat-button--brand.chat-button--text{color:var(--color-tangerine-ai,#bc3ebc);font-family:var(--font-first);background-color:transparent;border-radius:8px}.chat-button--brand.chat-button--text.chat-button--icon-right svg path{fill:var(--color-tangerine-ai,#bc3ebc)}.chat-button--brand.chat-button--text:hover:not(:disabled){color:var(--color-tangerine-ai-dark,#741571);background-color:var(--color-tangerine-ai-alpha,rgba(188,62,188,.15))}.chat-button--brand.chat-button--text:hover:not(:disabled).chat-button--icon-right svg path{fill:var(--color-tangerine-ai-dark,#741571)}.chat-button--brand.chat-button--text.chat-button--icon-only:hover:not(:disabled){background-color:var(--color-tangerine-ai-lighter,#d068d0)}.chat-button--brand.chat-button--text.chat-button--icon-only:hover:not(:disabled) svg path{fill:var(--color-tangerine-ai,#bc3ebc)!important}.chat-button--brand.chat-button--text.chat-button--icon-only:active:not(:disabled){background-color:var(--color-tangerine-ai-lighter,#d068d0)}.chat-button--brand.chat-button--text.chat-button--icon-only:active:not(:disabled) svg path{fill:var(--color-tangerine-ai-dark,#741571)!important}.chat-button--brand.chat-button--text:not(.chat-button--icon-only):hover:not(:disabled),.chat-button--brand.chat-button--text:not(.chat-button--icon-only):active:not(:disabled){color:var(--color-tangerine-ai-dark,#741571);background-color:var(--color-tangerine-ai-alpha,rgba(188,62,188,.15))}.chat-button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.chat-button__text{font-family:var(--font-first);font-weight:700;line-height:26px}.chat-button__icon{color:var(--color-tangerine-ai,#bc3ebc)}.chat-button__icon svg path{fill:var(--color-tangerine-ai,#bc3ebc)!important}.chat-header-container{background-color:#fff;border-bottom:1px solid #f2f2f2}.chat-header{background-color:#fff;justify-content:space-between;align-items:center;padding:14px 16px;display:flex;position:relative}.chat-header__left,.chat-header__right{flex:none;align-items:center;gap:8px;display:flex}.chat-header__left{justify-content:flex-start}.chat-header__center{flex:auto;justify-content:center;align-items:center;display:flex}.chat-header__right{justify-content:flex-end}.chat-header__button{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:8px;transition:background-color .2s;display:flex}.chat-header__button:hover{cursor:pointer}.chat-header__badge{background-color:var(--color-tangerine-ai,#bc3ebc);color:#fff;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:8px;padding:0 6px;font-size:12px;font-weight:700;display:flex}.chat-header__divider{background-color:#f2f2f2;width:1px;height:30px;margin:0 8px}.chatbot-mathField{align-items:center;line-height:1;transition:height .2s;display:none}.chatbot-mathField-show{z-index:4002;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.chatbot-mathField.chatbot-selected{border-color:var(--color-tangerine-ai,#bc3ebc)}.chatbot-mathField.chatbot-selected .chatbot-calc-button{fill:var(--color-tangerine-ai,#bc3ebc)}.chatbot-mathField-modal{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;width:90%;max-width:500px;padding:0;overflow:hidden}.chatbot-mathField-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;margin:0;padding:8px;display:flex}.chatbot-mathField-title{font-size:18px;line-height:24px;font-family:var(--font-second);color:#4e4e4e;margin:0;font-weight:600}.chatbot-mathField-close{cursor:pointer;background:0 0;border:none;padding:4px}.chatbot-mathField-close svg{fill:#333;width:20px;height:20px}.chatbot-mathField-close .icon--color-default.icon--lib-skin path{fill:#333}.chatbot-mathField-content{flex-direction:column;gap:15px;padding:8px 16px;display:flex}.chatbot-mathField-input{border:1px solid #ababab;border-radius:8px;flex-direction:column;flex:1;gap:8px;min-height:40px;padding:8px 12px;display:flex;position:relative}.chatbot-mathField-input:focus-within{border:1px solid var(--color-tangerine-ai,#bc3ebc)}.chatbot-mathField-submit{color:#fff;background:var(--color-tangerine-ai,#bc3ebc);cursor:pointer;font-family:var(--font-first);border:none;border-radius:8px;justify-content:center;align-self:flex-end;align-items:center;min-width:40px;height:40px;padding:8px 12px;font-size:18px;font-weight:700;transition:transform .2s;display:flex;position:relative;overflow:hidden}.chatbot-mathField-submit>*{z-index:1;position:relative}.chatbot-mathField-submit:before{content:"";background:var(--color-tangerine-ai-lighter,#d068d0);border-radius:inherit;opacity:0;z-index:0;transition:opacity .4s;position:absolute;top:0;bottom:0;left:0;right:0}.chatbot-mathField-submit:after{content:"";background:var(--color-tangerine-ai-dark,#741571);border-radius:inherit;opacity:0;z-index:0;transition:opacity .2s;position:absolute;top:0;bottom:0;left:0;right:0}.chatbot-mathField-submit:hover:before,.chatbot-mathField-submit:active:after{opacity:1}.chatbot-mathField.chatbot-with-focus{opacity:1;z-index:4002;background-color:#fff;border:none;border-radius:0;justify-content:center;align-items:center;height:calc(100vh - 320px);font-size:1.4em;display:flex;position:fixed;top:0;left:0;right:0}.chatbot-mathField.chatbot-disabled math-field>span{pointer-events:none}math-field::part(virtual-keyboard-toggle){display:none}math-field::part(virtual-keyboard-toggle):after{display:none}.chatbot-mathField__tooltip .react-tooltip{margin-top:4px!important}body .ML__keyboard{z-index:10001;--keyboard-zindex:10001;position:fixed}body .ML__keyboard .ML__keyboard--plate .rows ul:last-child li.action:last-child{background-color:var(--color-tangerine-ai,#bc3ebc)}body .ML__keyboard .MLK__rows .row .MLK__keycap{min-width:28px}@supports (-webkit-touch-callout:none){body .ML__keyboard .MLK__backdrop{height:calc(30px + var(--_keyboard-height))}}@media (pointer:coarse){.ML__keyboard .MLK__rows .row .MLK__keycap{min-width:28px}}@media (min-width:560px) and (pointer:coarse){.ML__keyboard .MLK__rows .row .MLK__keycap{min-width:50px}}.diagram-mermaid{width:100%;height:100%;position:relative}.diagram-mermaid svg{max-width:100%;height:auto;margin:0 auto;display:block}.diagram-mermaid__download-btn{position:absolute;top:8px;right:8px}.diagram-mermaid__download-btn svg path{fill:var(--color-tangerine-ai,#bc3ebc)}.diagram-mermaid-error__container{flex-direction:row;gap:8px;display:flex}.diagram-mermaid-error__icon{margin-bottom:.5rem;font-size:2rem}.diagram-mermaid-error__message{color:#333;font-size:18px}.diagram-mermaid-error__details{font-size:14px}.diagram-mermaid-error__code{color:#333;max-width:280px;overflow:auto}.typing-indicator{justify-content:center;align-items:center;gap:7px;margin-top:0;display:flex}.typing-indicator--inline{background-color:transparent;border:none;justify-content:flex-start;width:auto;margin-top:8px;padding:8px 0 0}.typing-indicator span{border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite typing-pulse;display:inline-block}.typing-indicator span:first-child{background-color:var(--color-tangerine-ai,#bc3ebc);animation-delay:0s}.typing-indicator span:nth-child(2){background-color:var(--color-tangerine-ai-dark,#741571);animation-delay:.2s}.typing-indicator span:nth-child(3){background-color:var(--color-tangerine-ai-light,#f0c0f0);animation-delay:.4s}@keyframes typing-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.6)}}.chat-message{margin-bottom:10px;display:block;position:relative}.chat-bubble{gap:8px;margin-bottom:0;display:flex}.chat-bubble__avatar{background-color:transparent;background-image:var(--tangerine-ai-bot);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:0%;flex-shrink:0;justify-content:center;align-self:flex-end;align-items:center;width:32px;height:32px;margin-bottom:0;display:flex;overflow:hidden}.chat-bubble__avatar--error{background-image:var(--tangerine-ai-bot-error)}.chat-bubble__content{flex-direction:column;flex:1;align-items:flex-start;gap:8px;display:flex}.chat-bubble__message{word-wrap:break-word;color:#333;border:1px solid #e0e0e0;border-radius:8px;flex:1;font-size:16px;line-height:24px}.chat-bubble__message-content{padding:8px}.chat-bubble__message .markdown-container p{margin-bottom:.5rem}.chat-bubble__message .markdown-container p:last-child{margin-bottom:0}.chat-bubble__message .chat-d3-card{width:100%}.chat-bubble__message .chat-d3-card:first-child{margin-top:0}.chat-bubble__message .chat-d3-card:last-child{margin-bottom:0}.chat-bubble__image{margin-bottom:8px;padding:0 8px}.chat-bubble__image img{cursor:pointer;border-radius:8px;max-width:100%;max-height:300px;display:block}.chat-bubble__attachments{flex-direction:column;gap:8px;display:flex}.chat-bubble__attachments .chat-bubble__image{margin-bottom:0}.chat-bubble--bot .chat-bubble__content{width:100%}.chat-bubble--bot .chat-bubble__message{background-color:#fff;border-radius:8px 8px 8px 0;width:100%}.chat-bubble--user{flex-direction:row-reverse}.chat-bubble--user .chat-bubble__content{flex-direction:column;align-items:flex-end;display:flex}.chat-bubble--user .chat-bubble__message{background-color:var(--color-tangerine-ai-lighter,#d068d0);border:1px solid var(--color-tangerine-ai-light,#f0c0f0);color:#333;border-radius:8px 8px 0;width:auto;max-width:80%}.chat-bubble--just-posted .chat-bubble__message{border-style:solid;border-width:1px;border-image:linear-gradient(111.12deg,var(--color-tangerine-ai,#bc3ebc)12.58%,var(--color-tangerine-ai-dark,#741571)100%)1}.chat-bubble__tool-indicators{flex-direction:column;gap:8px;width:100%;display:flex}.chat-message__bubble--error .chat-bubble__message{background:#fef0ef;border:1px solid #e04949}.chat-message--streaming .chat-bubble__content .typing-indicator{background-color:#fff;border:1px solid #f2f2f2;border-radius:8px 8px 8px 0;width:100%;padding:12px 16px}.chat-message__actions{align-items:center;gap:8px;margin-top:4px;margin-left:40px;display:flex}.chat-message__audio-button--loading{opacity:.6;cursor:wait}.chat-message__flag-button{transition:all .2s}.chat-message__flag-button--flagged{opacity:.7;cursor:default}.chat-message__flag-button--flagged:hover{opacity:.7}.ai-revision-loading{z-index:2147483647;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.ai-revision-loading__backdrop{background:var(--color-background);width:100%;height:100%;position:absolute;top:0;left:0}.ai-revision-loading__content{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:relative}.ai-revision-loading__bot-container{justify-content:center;align-items:center;display:flex;position:relative}.ai-revision-loading__bot{width:120px;height:auto;animation:2s ease-in-out infinite ai-revision-loading-bounce}.ai-revision-loading__stars{pointer-events:none;width:100%;height:100%;position:absolute}.ai-revision-loading__star{color:var(--color-first);font-size:28px;animation:1.5s ease-in-out infinite ai-revision-loading-sparkle;position:absolute}.ai-revision-loading__star--1{animation-delay:0s;top:-10px;right:-15px}.ai-revision-loading__star--2{animation-delay:.75s;bottom:10px;left:-20px}.ai-revision-loading__text{font-family:var(--font-first);color:#4e4e4e;text-align:center;max-width:300px;font-size:22px;animation:.3s ease-in-out ai-revision-loading-fade}@keyframes ai-revision-loading-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes ai-revision-loading-sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}@keyframes ai-revision-loading-fade{0%{opacity:0}to{opacity:1}}.teacher-analytics-view__loading{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:400px;display:flex}.teacher-analytics-view__loading p{color:#767676;font-size:14px}.teacher-analytics-view__error{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:400px;display:flex}.teacher-analytics-view__error p{color:#dc3545;max-width:500px;font-size:14px}.teacher-analytics-view__header-container{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.teacher-analytics-view__header-container .teacher-analytics-view__class-selector{min-width:200px;max-width:300px;margin-left:auto}.teacher-analytics-view__subject-selector{min-width:200px;max-width:300px}.teacher-analytics-view__units-grid{flex-direction:column;gap:16px;width:100%;display:flex}.teacher-analytics-view__sections-container{flex-direction:column;gap:16px;display:flex}.teacher-analytics-view__section-separator{border-bottom:1px solid #eee4dc;margin:16px 0}.teacher-analytics-view__recommendations{gap:var(--spacing-lg);flex-direction:column;width:100%;display:flex}.teacher-analytics-view__section{display:block}.teacher-analytics-view__section-title{color:#333;font-size:22px;font-weight:700;font-family:var(--font-first);margin:0 0 24px}.teacher-analytics-view__legend{justify-content:flex-end;gap:24px;margin-top:16px;display:flex}.teacher-analytics-view__legend-item{align-items:center;gap:8px;display:flex}.teacher-analytics-view__legend-color{border-radius:4px;flex-shrink:0;width:16px;height:16px}.teacher-analytics-view__legend-color--mastered{background-color:#0095a2}.teacher-analytics-view__legend-color--in-progress{background-color:#00b4c5}.teacher-analytics-view__legend-color--not-started{background-color:#d4fbff}.teacher-analytics-view__legend-text{font-size:14px;font-weight:500;font-family:var(--font-second);color:#4e4e4e;line-height:1}