.base-chatbot{transition:grid-template-columns var(--chatbot-transition-duration)cubic-bezier(.19,1,.22,1);grid-template-rows:100vh;grid-template-columns:1fr 0;width:100%;height:100vh;display:grid;position:relative;overflow:hidden}.base-chatbot.base-chatbot--resizing,.base-chatbot.base-chatbot--resizing .base-chatbot__container>*{transition:none}.base-chatbot__container{grid-column:1;width:100%;min-width:0;position:relative;overflow-x:hidden;overflow-y:auto}.base-chatbot__container>*{transition:width var(--chatbot-transition-duration)cubic-bezier(.19,1,.22,1);width:100%}.base-chatbot__chatbot{width:var(--chatbot-width);max-width:var(--chatbot-width);background-color:var(--chatbot-background);color:var(--chatbot-text-color);box-shadow:var(--chatbot-box-shadow);opacity:0;transition:transform var(--chatbot-transition-duration)cubic-bezier(.19,1,.22,1),opacity var(--chatbot-transition-duration)cubic-bezier(.19,1,.22,1),width 0s;will-change:transform,opacity;z-index:100;flex-direction:column;grid-column:2;min-width:0;height:100%;display:flex;position:relative;overflow:hidden;transform:translate(100%)}.base-chatbot__chatbot>*{flex-direction:column;height:100%;display:flex}.base-chatbot__chatbot>* .chatbot__content{flex-direction:column;flex:1;display:flex;overflow:hidden}.base-chatbot__chatbot>* .chatbot__content .chat-messages{flex:1;overflow-y:auto}.base-chatbot__chatbot>* .chatbot__content .chatbot__input-container{flex-shrink:0;margin-top:auto}.base-chatbot__button-container{z-index:101;bottom:var(--chatbot-button-bottom);right:var(--chatbot-button-right);opacity:1;transition:opacity .3s ease-in-out,right var(--chatbot-transition-duration)cubic-bezier(.19,1,.22,1);position:fixed}.base-chatbot__button-container--hidden{opacity:0;pointer-events:none}.base-chatbot--enabled{grid-template-columns:1fr var(--chatbot-width)}.base-chatbot--enabled .base-chatbot__chatbot{opacity:1;transform:translate(0)}.base-chatbot--enabled .base-chatbot__button-container:not(.base-chatbot__button-container--hidden){right:calc(var(--chatbot-width) + var(--chatbot-button-right))}.base-chatbot.chatbot-closing{grid-template-columns:1fr 0}.base-chatbot.chatbot-closing .base-chatbot__chatbot{opacity:0;transform:translate(100%)}.base-chatbot.chatbot-closing .base-chatbot__button-container:not(.base-chatbot__button-container--hidden){right:var(--chatbot-button-right)}.base-chatbot__chatbot:focus-within{outline:none}.base-chatbot__chatbot{contain:layout style}.base-chatbot--enabled{--chatbot-is-open:1}.base-chatbot__resize-overlay{z-index:9999;cursor:col-resize;-webkit-user-select:none;user-select:none;background-color:transparent;position:fixed;top:0;bottom:0;left:0;right:0}.chat-link{color:var(--ui-color-brand-fod-primary-a);cursor:pointer;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.chat-link:hover{color:var(--ui-color-brand-fod-primary-a);text-decoration:underline}.chat-link:active{color:var(--ui-color-brand-fod-dark);text-decoration:underline}.chat-link:focus{outline:2px solid var(--ui-color-brand-fod-primary-a);outline-offset:2px;border-radius:2px}.chat-link:focus-visible{outline:2px solid var(--ui-color-brand-fod-primary-a);outline-offset:2px;border-radius:2px}.chat-link:focus:not(:focus-visible){outline:none}.chat-link--disabled{color:var(--ui-color-brand-fod-primary-a);opacity:.5;cursor:not-allowed;pointer-events:none;text-decoration:none}.chat-link--disabled:hover{text-decoration:none}.chat-messages{flex-direction:column;flex:1;min-height:0;max-height:100%;padding:16px;display:flex;position:relative;overflow-x:hidden;overflow-y:auto}.chat-messages__container{overflow-y:unset;flex-direction:column;flex:1;gap:10px;display:flex}.chat-messages__container::-webkit-scrollbar{width:8px;height:8px}.chat-messages__container::-webkit-scrollbar-track{background:#f2f2f2}.chat-messages__container::-webkit-scrollbar-thumb{background-color:#ababab;border-radius:20px}.chat-messages__container{scrollbar-width:thin;scrollbar-color:#ababab #f2f2f2}.chat-messages__empty-state{text-align:center;color:#767676;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:32px 16px;display:flex}.chat-messages__empty-state-content{max-width:320px}.chat-messages__empty-state-content h3{color:#333;margin-bottom:12px;font-size:32px}.chat-messages__empty-state-content p{margin:0;font-size:16px;line-height:1.5}.chat-messages__toast{color:#fff;background-color:#333;border-radius:20px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;animation:.3s ease-in-out fadeIn;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.chat-messages--loading{justify-content:center;align-items:center;min-height:200px;display:flex}.chat-messages__loading{padding:16px}.chat-message-container{flex-direction:column;display:flex;position:relative}.chat-message-container:hover .chat-message__debug-actions{opacity:1}.chat-message__debug-actions{opacity:0;gap:4px;transition:opacity .2s;display:flex;position:absolute;top:-8px;right:-8px}.chat-message__context-view{color:#333;background-color:#f2f2f2;border-radius:8px;margin-top:8px;padding:8px;font-size:14px}.chat-message__context-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.chat-message__context-title{color:#767676;margin:0;font-size:14px}.chat-message__debug-button{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}.chat-message__debug-button:hover{background-color:#e0e0e0}.chat-message__context-data{font-family:var(--font-first);white-space:pre-wrap;background-color:#fff;border-radius:4px;max-height:200px;margin:0;padding:8px;font-size:14px;overflow-y:auto}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.conversation-history{--conversation-history-row-padding:var(--ui-space-xs)var(--ui-space-md);--conversation-history-title-font-size:var(--ui-font-size-16);--conversation-history-title-line-height:var(--ui-line-height-24);--conversation-history-date-font-size:var(--ui-font-size-14);--conversation-history-date-line-height:var(--ui-line-height-20);overflow:hidden}.conversation-history .chat-dropdown__content{padding:0}.conversation-history__list{margin:0;padding:0;list-style:none}.conversation-history__item{position:relative}.conversation-history__item:not(:last-child):after{content:"";height:var(--ui-stroke-1);background-color:var(--ui-color-neutral-grey-200);position:absolute;bottom:0;left:0;right:0}.conversation-history__item-wrapper{align-items:center;gap:var(--ui-space-xs);padding:var(--conversation-history-row-padding);transition:background-color .2s;display:flex}.conversation-history__item-wrapper:hover{background-color:var(--ui-color-neutral-grey-100)}.conversation-history__button{cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;min-width:0;padding:0;display:flex}.conversation-history__info{flex:1;min-width:0}.conversation-history__item-title{font-size:var(--conversation-history-title-font-size);font-weight:var(--ui-font-weight-medium);line-height:var(--conversation-history-title-line-height);color:var(--ui-color-neutral-grey-900);margin-bottom:var(--ui-space-xxxs);white-space:nowrap;text-overflow:ellipsis;font-family:var(--ui-font-family-body);letter-spacing:normal;overflow:hidden}.conversation-history__metadata{font-size:var(--conversation-history-date-font-size);font-weight:var(--ui-font-weight-medium);line-height:var(--conversation-history-date-line-height);color:var(--ui-color-neutral-grey-700);font-family:var(--ui-font-family-body);letter-spacing:normal}.conversation-history__empty{text-align:center;color:#767676;padding:40px 16px;font-size:14px}.conversation-history__loading{text-align:center;color:#767676;flex-direction:column;align-items:center;gap:12px;padding:40px 16px;font-size:14px;display:flex}.conversation-history__spinner{border:2px solid #f2f2f2;border-top-color:var(--ui-color-brand-fod-primary-a);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}.conversation-history__error{text-align:center;color:#f66868;flex-direction:column;align-items:center;gap:8px;padding:40px 16px;font-size:14px;display:flex}.conversation-history__error .icon__wrapper{width:24px;height:24px}.conversation-history__delete-button{cursor:pointer;opacity:1;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:2px;transition:background-color .2s;display:flex}.conversation-history__delete-button:hover{color:#f66868;background-color:rgba(246,104,104,.1)}.conversation-history__delete-button .icon__wrapper{width:20px;height:20px}.conversation-history__new-chat-button{width:100%}.conversation-history__end{text-align:center;color:#767676;font-size:14px;font-family:var(--font-second);padding:16px;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chatbot{border-left:var(--ui-stroke-1)solid var(--ui-color-brand-fod-primary-b,var(--ui-color-brand-fod-primary-a));background-color:#fff;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.chatbot__header{background-color:#fff;border-bottom:1px solid #e0e0e0;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.chatbot__header-left{position:relative}.chatbot__header-wrapper{flex-shrink:0;position:relative}.chatbot__history-button{color:#4e4e4e;cursor:pointer;background:0 0;border:none;border-radius:16px;align-items:center;gap:6px;padding:6px 12px;font-size:16px;transition:background-color .2s;display:flex}.chatbot__history-button:hover,.chatbot__history-button.active{color:#333;background-color:#f2f2f2}.chatbot__close-button{cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:background-color .2s;display:flex}.chatbot__close-button:hover{background-color:#f2f2f2}.chatbot__content{flex-direction:column;flex:1;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.chatbot__drag-overlay{border:2px dashed var(--ui-color-brand-fod-primary-a);z-index:20;pointer-events:none;background-color:rgba(51,51,51,.25);position:absolute;top:0;bottom:0;left:0;right:0}.chatbot__drag-overlay--invalid{background-color:rgba(224,73,73,.05);border-color:#ba1f33}.chatbot__drag-overlay-text{font-family:var(--font-second-bold);color:#fff;pointer-events:none;white-space:nowrap;text-align:center;background-color:#333;border-radius:8px;padding:8px 16px;font-size:14px;position:absolute;transform:translate(-50%,24px);box-shadow:0 2px 8px rgba(51,51,51,.15)}.chatbot__drag-overlay-text--invalid{color:#333;background-color:#fff;border:1px solid #e04949;align-items:center;gap:8px;padding:4px 8px;display:flex;box-shadow:0 5px 20px rgba(169,155,144,.2)}.chatbot__input-container{z-index:10;background-color:#fff;border-top:1px solid #e0e0e0;flex-direction:column;flex-shrink:0;gap:8px;width:100%;min-height:72px;margin-top:auto;padding:16px 8px;display:flex;position:-webkit-sticky;position:sticky;bottom:0}.chatbot__disclaimer{font-family:var(--font-second);color:#767676;margin:0;padding-left:4px;font-size:12px;line-height:18px}.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{--ai-revision-loading-bot-width:7.5rem;--ai-revision-loading-bot-height:8.75rem;width:var(--ai-revision-loading-bot-width);height:var(--ai-revision-loading-bot-height);background-image:var(--tangerine-ai-bot-search);background-position:50%;background-repeat:no-repeat;background-size:contain;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}}.chat-badge{border-radius:16px;align-items:center;gap:4px;padding:4px 8px;font-size:14px;display:inline-flex}.chat-badge__emoji{font-size:inherit}.chat-badge__text{font-family:var(--font-second);color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:600;line-height:26px}.chat-badge--practice{background-color:#d6f6ff}.chat-badge--practice .chat-badge__text{color:#0a3366}.chat-badge--study{background-color:#ffe8ff}.chat-badge--study .chat-badge__text{color:#6b0a6b}.chat-badge--revision{background-color:#fff3e0}.chat-badge--revision .chat-badge__text{color:#e65100}.analytics-filter-bar{align-items:center;gap:16px;display:flex}.analytics-filter-bar__filter{min-width:200px}.alert-detail-drawer__header{background-color:var(--ui-color-neutral-grey-100);flex-direction:column;display:flex}.alert-detail-drawer__navigation{padding:var(--ui-space-xxs)var(--ui-space-xs);justify-content:space-between;align-items:center;display:flex}.alert-detail-drawer__navigation-controls{align-items:center;gap:var(--ui-space-xxxs);display:flex}.alert-detail-drawer__navigation-button{cursor:pointer;border-radius:var(--ui-radius-md-lg);color:#767676;background:0 0;border:none;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:flex}.alert-detail-drawer__navigation-button:hover{background-color:var(--ui-color-neutral-grey-100);color:var(--ui-color-text-default)}.alert-detail-drawer__navigation-button:disabled{opacity:.3;cursor:default;color:#767676}.alert-detail-drawer__navigation-button:disabled:hover{color:#767676;background-color:transparent}.alert-detail-drawer__navigation-counter{font-family:var(--ui-font-family-body);font-size:var(--ui-font-size-14);color:var(--ui-color-text-secondary);text-align:center;min-width:32px}.alert-detail-drawer__student-info{padding:var(--ui-space-xs)var(--ui-space-xs)var(--ui-space-xs)var(--ui-space-md);align-items:center;gap:var(--ui-space-xs);background-color:var(--ui-color-neutral-white);display:flex}.alert-detail-drawer__student-trigger{align-items:center;gap:var(--ui-space-xs);cursor:pointer;text-align:left;background:0 0;border:none;min-width:0;padding:0;display:flex}.alert-detail-drawer__student-trigger:focus-visible{outline:2px solid var(--ui-color-brand-fod-primary-a);outline-offset:2px;border-radius:var(--ui-radius-xl)}.alert-detail-drawer__avatar{font-family:var(--ui-font-family-heading);font-size:var(--ui-font-size-16);font-weight:var(--ui-font-weight-semibold);color:var(--ui-color-text-secondary);background-color:#f2f2f2;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.alert-detail-drawer__avatar--group{background-color:#04d5e8}.alert-detail-drawer__avatar--group .icon__wrapper{justify-content:center;align-items:center;display:flex}.alert-detail-drawer__avatar--group .icon__wrapper svg{fill:var(--ui-color-icon-inverse)}.alert-detail-drawer__avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.alert-detail-drawer__student-name{font-family:var(--ui-font-family-body);font-size:var(--ui-font-size-14);line-height:var(--ui-line-height-20);color:var(--ui-color-text-default);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.alert-detail-drawer__group-name{font-family:var(--ui-font-family-body);font-size:var(--ui-font-size-12);line-height:var(--ui-line-height-20);color:var(--ui-color-text-secondary);white-space:nowrap;text-align:center;flex:1}.alert-detail-drawer__date{font-family:var(--ui-font-family-body);font-size:var(--ui-font-size-12);line-height:var(--ui-line-height-20);color:var(--ui-color-text-secondary);white-space:nowrap;flex-shrink:0;margin-left:auto}.alert-detail-drawer__close-button{cursor:pointer;border-radius:var(--ui-radius-xl);color:#767676;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:flex}.alert-detail-drawer__close-button:hover{background-color:var(--ui-color-neutral-grey-100);color:var(--ui-color-text-default)}.alert-detail-drawer .drawer__footer{padding:var(--ui-space-xs)var(--ui-space-md);background-color:var(--ui-color-neutral-grey-100)}.alert-detail-drawer .drawer__footer .button svg{width:24px;height:24px}.alert-detail-drawer__footer{align-items:stretch;gap:var(--ui-space-xs);background-color:var(--ui-color-neutral-grey-100);flex-direction:column;display:flex}.alert-detail-drawer__footer-actions{justify-content:flex-end;align-items:stretch;gap:var(--ui-space-sm);display:flex}.alert-detail-drawer__loading,.alert-detail-drawer__error,.alert-detail-drawer__empty{padding:var(--ui-space-3xl);justify-content:center;align-items:center;height:100%;display:flex}.alert-detail-drawer__error,.alert-detail-drawer__empty{font-family:var(--ui-font-family-body);font-size:var(--ui-font-size-16);color:#767676;text-align:center}.alert-detail-drawer__messages{padding:var(--ui-space-md)}.alert-detail-drawer__messages .chat-messages{height:auto;overflow:visible}