:root{color:#17201d;background:#e6f3ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box;scrollbar-width:none}*::-webkit-scrollbar{width:0;height:0}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}button,textarea{font:inherit}button{border:0;cursor:pointer}.app-shell{position:relative;display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:18px;min-height:100vh;padding:22px;overflow:hidden auto;background:linear-gradient(120deg,#a5eaeeb8,#d4b8f6a8),url(/liquid-bg.jpg) center / cover fixed;background-size:112% 112%;animation:bgImageDrift 14s ease-in-out infinite alternate}.floating-banner{position:fixed;top:8px;left:50%;transform:translate(-50%);z-index:30;width:min(860px,calc(100vw - 22px));display:grid;grid-template-columns:1fr 28px;align-items:center;gap:8px;padding:6px 8px 6px 10px;border-radius:14px;background:#eefaffdb;border:1px solid rgba(255,255,255,.72);box-shadow:0 16px 50px #3e5c7e2e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#22334a;font-weight:900;font-size:.88rem}.floating-banner span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.banner-dismiss{width:28px;height:28px;border-radius:10px;background:#ffffffbf;color:#22334a;font-weight:950;line-height:1}.banner-dismiss:hover{background:#ffffffeb}.banner-dismiss:focus-visible{outline:3px solid rgba(49,198,255,.45);outline-offset:2px}@keyframes bgImageDrift{0%{background-position:45% 45%}to{background-position:55% 52%}}.ambient,.hero-glow{position:fixed;pointer-events:none}.site-loader{position:fixed;inset:0;z-index:20;display:grid;place-items:center;align-content:center;gap:16px;color:#1d241b;background:radial-gradient(circle,rgba(129,239,255,.38),transparent 26%),linear-gradient(135deg,#e7fbff,#dfd4ff);animation:loaderExit 2.8s ease forwards}.loader-logo{display:grid;width:92px;height:92px;place-items:center;border-radius:30px;background:#ffffffc7;box-shadow:0 24px 70px #526c8a42;animation:logoBeat 1s ease-in-out infinite}.loader-logo svg,.brand-mark svg,.model-loader-core svg{width:70%;height:70%}.loader-orbit{position:relative;width:98px;height:98px;border-radius:50%;border:1px solid rgba(255,255,255,.72);animation:orbitSpin 1.8s linear infinite}.loader-orbit span{position:absolute;width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,#83f5ff,#c9b9ff);box-shadow:0 0 22px #7bdcffb8}.loader-orbit span:nth-child(1){top:-8px;left:41px}.loader-orbit span:nth-child(2){right:4px;bottom:14px}.loader-orbit span:nth-child(3){left:4px;bottom:14px}.site-loader p{margin:0;font-weight:950}@keyframes loaderExit{0%,86%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes logoBeat{50%{transform:translateY(-6px) scale(1.04)}}@keyframes loaderSlide{50%{transform:translate(165%)}}@keyframes orbitSpin{to{transform:rotate(360deg)}}.skeleton-board{display:grid;grid-template-columns:110px 260px;gap:12px;width:min(430px,calc(100vw - 38px));padding:14px;border:1px solid rgba(255,255,255,.58);border-radius:28px;background:#ffffff9e;box-shadow:0 22px 60px #3e5c7e29}.skeleton-sidebar,.skeleton-main{display:grid;gap:9px}.skeleton-sidebar span,.skeleton-main span,.skeleton-cards span{display:block;height:13px;border-radius:999px;background:linear-gradient(90deg,#ffffff59,#9de1ff8c,#ffffff59 90%);background-size:220% 100%;animation:skeletonShimmer 1.05s ease-in-out infinite}.skeleton-sidebar span:first-child{width:52px;height:52px;border-radius:18px}.skeleton-sidebar span:nth-child(2){width:86px}.skeleton-sidebar span:nth-child(3){width:72px}.skeleton-sidebar span:nth-child(4){width:94px;height:42px;border-radius:18px}.skeleton-main .wide{width:100%;height:28px}.skeleton-main .short{width:62%}.skeleton-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.skeleton-cards span{height:58px;border-radius:18px}@keyframes skeletonShimmer{0%{background-position:140% 0}to{background-position:-80% 0}}.ambient{inset:0;background:radial-gradient(circle at 14% 16%,rgba(255,255,255,.38),transparent 18%),radial-gradient(circle at 92% 74%,rgba(248,130,224,.28),transparent 23%),linear-gradient(115deg,#ffffff38,#5ed9e21f);animation:breathe 7s ease-in-out infinite alternate}.hero-glow{right:-120px;top:-120px;width:430px;height:430px;border-radius:50%;background:#9ae6ff6b;filter:blur(28px);animation:floatGlow 9s ease-in-out infinite}@keyframes breathe{0%{opacity:.7;transform:scale(1)}to{opacity:1;transform:scale(1.025)}}@keyframes floatGlow{50%{transform:translate(-44px,38px) scale(.94)}}.sidebar,.workspace{position:relative;z-index:2;min-width:0}.sidebar,.chat-panel,.topbar{border:1px solid rgba(255,255,255,.58);border-radius:28px;background:#eefaff8a;box-shadow:0 24px 80px #5f84a63d;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.sidebar{display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 44px);padding:14px;overflow:hidden auto}.sidebar .new-chat,.sidebar .custom-open-button,.sidebar .feature-button{min-height:38px;padding:9px 10px;border-radius:18px}.sidebar .new-chat svg,.sidebar .custom-open-button svg,.sidebar .feature-button svg{width:16px;height:16px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;width:46px;height:46px;place-items:center;border-radius:50%;background:#ffffffd1;box-shadow:0 15px 30px #3ab4e938}.brand h1,.topbar h2,.empty-state h3{margin:0;letter-spacing:0}.brand h1{font-size:1.12rem;font-weight:950}.brand p,.empty-state p{margin:0;color:#66705c}.new-chat,.history-item,.upload-button,.send-button,.image-preview button{display:inline-flex;align-items:center;gap:9px;min-height:42px}.new-chat{justify-content:center;border-radius:22px;color:#18314a;background:linear-gradient(135deg,#c8fbff,#f1c8ff);font-weight:900;box-shadow:0 14px 30px #5f84a62e}.custom-open-button,.feature-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;border:1px solid rgba(255,255,255,.76);border-radius:22px;color:#203045;background:linear-gradient(135deg,#ffffffc7,#caf4fab8);font-weight:900;box-shadow:0 14px 30px #5f84a62e}.account-card{display:grid;gap:9px;padding:12px;border:1px solid rgba(255,255,255,.62);border-radius:20px;background:#ffffff70}.account-user,.google-login,.credit-row,.redeem-row{display:flex;align-items:center;gap:8px}.account-user img,.account-fallback{width:32px;height:32px;border-radius:50%}.account-fallback{display:grid;place-items:center;color:#18314a;background:linear-gradient(135deg,#a7f9ff,#d2bfff);font-weight:950}.account-user div{min-width:0;flex:1;display:grid;gap:1px}.account-user strong,.account-user small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-user strong{color:#21324a;font-size:.86rem}.account-user small,.credit-row span,.account-card p{color:#63748a;font-size:.76rem}.account-user button,.redeem-row button{display:grid;flex:0 0 32px;width:32px;height:32px;place-items:center;border-radius:50%;color:#203045;background:#ffffffbd}.google-login{min-height:38px;overflow:hidden}.credit-row{justify-content:space-between;padding:8px 10px;border-radius:14px;background:#ffffff8a}.credit-row strong{color:#1c6931}.redeem-row input{min-width:0;width:100%;min-height:34px;padding:8px 10px;color:#1c241f;border:1px solid rgba(64,75,54,.12);border-radius:14px;outline:none;background:#ffffffb8}.account-card p{margin:0;line-height:1.35}.section-label,.eyebrow,.group-title{color:#363d2c;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.history{display:flex;min-height:120px;flex:1;flex-direction:column;gap:8px}.history-list{display:flex;flex:1;min-height:0;flex-direction:column;gap:8px;overflow:auto}.history-item{width:100%;padding:9px 10px;color:#2c3428;border-radius:18px;background:#ffffff59;text-align:left}.history-item span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item.active,.history-item:hover{background:#c4ddff94}.custom-api-box{display:grid;gap:8px}.custom-api-box{padding:12px;border-radius:20px;background:#ffffff61}.custom-api-box label{display:grid;gap:4px}.custom-api-box label span{color:#5f6954;font-size:.74rem;font-weight:900}.custom-api-box input{width:100%;min-height:34px;padding:8px 10px;color:#1c241f;border:1px solid rgba(64,75,54,.12);border-radius:14px;outline:none;background:#ffffffad}.custom-actions{display:flex;align-items:center;gap:8px}.custom-actions button,.custom-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:0 11px;border-radius:999px;color:#1f281d;background:#c9b9ffb8;font-weight:900}.custom-actions button:disabled,.custom-toggle:has(input:disabled){cursor:not-allowed;opacity:.5}.custom-toggle{background:#ffffff9e}.custom-toggle input{width:auto;min-height:auto;accent-color:#d497ff}.custom-status{margin:0;color:#66705c;font-size:.78rem;line-height:1.35}.custom-status.online{color:#1c6931}.custom-status.offline{color:#9a2f21}.modal-backdrop{position:fixed;inset:0;z-index:15;display:grid;place-items:center;padding:18px;background:#50668857;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.custom-modal{display:grid;gap:12px;width:min(520px,100%);padding:22px;border:1px solid rgba(255,255,255,.76);border-radius:30px;color:#21324a;background:linear-gradient(135deg,#edfafff5,#f8e6fff0);box-shadow:0 28px 90px #4d638757}.info-modal{display:grid;gap:12px;width:min(460px,100%);padding:22px;border:1px solid rgba(255,255,255,.76);border-radius:28px;color:#21324a;background:linear-gradient(135deg,#edfafff5,#f8e6fff0);box-shadow:0 28px 90px #4d638757}.info-modal h3,.info-modal p,.info-modal ul{margin:0}.info-modal p,.info-modal li{color:#63748a;line-height:1.5}.info-modal ul{display:grid;gap:8px;padding-left:20px}.info-modal button{justify-self:end;min-height:40px;padding:0 15px;border-radius:999px;color:#203045;background:linear-gradient(135deg,#a7f9ff,#d2bfff);font-weight:950}.teacher-levels{display:grid;gap:10px;margin-top:8px}.teacher-level-btn{display:grid;grid-template-columns:34px 1fr 28px;grid-template-rows:auto auto;align-items:start;column-gap:12px;row-gap:4px;padding:14px 16px;border:2px solid rgba(119,156,186,.22);border-radius:16px;background:#fff9;text-align:left;transition:all .2s ease}.teacher-level-btn:hover{border-color:#31c6ff80;background:#ffffffe6}.teacher-level-btn:focus-visible{outline:3px solid rgba(49,198,255,.45);outline-offset:2px}.teacher-level-btn.active{border-color:#31c6ff;background:linear-gradient(135deg,#a7f9ff66,#d2bfff66)}.teacher-level-btn .level-num{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;background:linear-gradient(135deg,#31c6ff,#9b72ff);color:#fff;font-weight:900;font-size:16px}.teacher-level-btn .level-title{font-weight:700;color:#21324a;font-size:15px}.teacher-level-btn .level-desc{grid-column:2 / -1;grid-row:2;font-size:13px;color:#63748a}.teacher-level-btn .level-check{grid-column:3;grid-row:1 / 3;align-self:center;justify-self:end;display:grid;place-items:center;width:26px;height:26px;border-radius:10px;color:#161c15e6;background:#ffffffb3;border:1px solid rgba(49,198,255,.3)}.teacher-level-btn.active .level-check{background:#a7f9ff8c;border-color:#31c6ff8c}.teacher-badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;font-size:.72rem;font-weight:950;color:#161c15e6;background:#ffffffb3;border:1px solid rgba(49,198,255,.35)}.custom-modal h3,.custom-modal p{margin:0}.custom-modal p{color:#63748a;line-height:1.45}.custom-modal input{min-height:44px;padding:10px 13px;color:#21324a;border:1px solid rgba(119,156,186,.26);border-radius:18px;outline:none;background:#ffffffd1}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.modal-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 15px;border-radius:999px;color:#203045;background:linear-gradient(135deg,#a7f9ff,#f2b9ff);font-weight:950}.modal-actions .ghost-button{background:#ffffffb3}.dev-card{margin-top:10px;padding:12px 10px;border-radius:14px;background:linear-gradient(135deg,#e7fbff 80%,#dfd4ff);box-shadow:0 2px 12px #4d638714;display:grid;gap:4px;word-break:break-word;max-width:100%;overflow-wrap:anywhere;font-size:13px}.dev-card strong{font-size:15px;color:#21324a}.dev-card a{color:#0077b5;text-decoration:none;font-weight:600;word-break:break-all}.dev-card .section-label{margin-bottom:2px;font-size:12px;color:#63748a}.composer textarea{width:100%;resize:none;color:#1c241f;border:1px solid rgba(64,75,54,.12);outline:none;background:#ffffffb8;box-shadow:inset 0 1px #ffffffbf}.workspace{display:grid;grid-template-rows:auto minmax(430px,1fr);gap:12px;max-height:calc(100vh - 44px);min-height:0}.topbar{display:grid;grid-template-columns:minmax(180px,1fr) minmax(340px,440px);align-items:center;gap:8px 12px;padding:10px 12px}.topbar>div:first-child{min-width:0}.topbar h2{overflow:hidden;font-size:clamp(1.02rem,1.8vw,1.5rem);font-weight:950;text-overflow:ellipsis;white-space:nowrap}.top-actions{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;justify-content:end;justify-items:stretch;gap:8px}.topbar-account{justify-self:end;width:100%;max-width:440px;grid-template-columns:minmax(128px,1fr) minmax(112px,148px);align-items:center;gap:6px;min-height:52px;padding:7px;border-radius:999px;background:#ffffff6b;box-shadow:none}.topbar-account .section-label,.topbar-account .credit-row{display:none}.topbar-account .account-user img,.topbar-account .account-fallback{width:26px;height:26px}.topbar-account .account-user button,.topbar-account .redeem-row button{width:28px;height:28px;flex-basis:28px}.topbar-account .redeem-row input{min-height:30px;padding:5px 9px;border-radius:999px}.topbar-account p{grid-column:1 / -1}.segmented{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:4px;border-radius:999px;background:#ffffff8a;border:1px solid rgba(255,255,255,.42);min-height:42px}.segmented button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 10px;border-radius:999px;color:#34402e;background:transparent;font-weight:900;white-space:nowrap;text-align:center}.segmented button.active{color:#161c15;background:linear-gradient(135deg,#a7f9ff,#d2bfff)}.segmented .info-button{width:28px;padding:0;justify-content:center;color:#39536d;background:#ffffff94}.model-health.online{background:#5cbc7033;color:#1c6931}.model-health.offline{background:#de513c24;color:#9a2f21}.model-health.checking{background:#b1cdff6b;color:#345182}.pulse{width:8px;height:8px;border-radius:50%;background:#83f5ff;box-shadow:0 0 #83f5ffbf;animation:pulse 1.5s infinite}@keyframes pulse{70%{box-shadow:0 0 0 9px #83f5ff00}to{box-shadow:0 0 #83f5ff00}}.model-health{margin-top:auto;padding:3px 8px;border-radius:999px;background:#ffffffa6;color:#6b735d;font-size:.68rem;font-style:normal;font-weight:850}.chat-panel{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto auto;min-height:0;overflow:hidden}.model-loader{position:absolute;inset:0;z-index:5;display:grid;place-items:center;align-content:center;gap:12px;color:#1f281d;background:#ffffffc7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.model-loader-core{display:grid;width:76px;height:76px;place-items:center;border-radius:28px;background:#ffffffa8;box-shadow:0 18px 42px #3e5c7e2e;animation:logoBeat .95s ease-in-out infinite}.model-loader span{font-weight:950}.messages{display:flex;min-height:0;flex-direction:column;gap:14px;padding:20px;overflow:auto}.empty-state{display:grid;min-height:100%;place-items:center;align-content:center;gap:12px;text-align:center;color:#1f281d}.empty-state svg{color:#78efff;filter:drop-shadow(0 12px 16px rgba(82,160,210,.22))}.empty-state p{max-width:520px;line-height:1.55}.message{display:flex;gap:10px;align-items:flex-start}.message.user{flex-direction:row-reverse}.avatar{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:50%;color:#26301f;background:linear-gradient(145deg,#effcff,#d9d0ff);box-shadow:0 10px 22px #47553229}.message.assistant .avatar{background:linear-gradient(145deg,#a7f9ff,#d2bfff)}.bubble{position:relative;max-width:min(760px,84%);padding:17px 48px 30px 18px;border:1px solid rgba(255,255,255,.72);border-radius:24px 24px 24px 8px;color:#20281e;background:linear-gradient(145deg,#fcfefff5,#eef5ffe6);box-shadow:0 18px 38px #47638324,inset 0 1px #ffffffe6}.message.user .bubble{color:#17233a;border-color:#c5e1ffd6;border-radius:24px 24px 8px;background:linear-gradient(145deg,#b9f6fffa,#dbc5fff0);box-shadow:0 16px 34px #5578b42e,inset 0 1px #f5fcffd1}.bubble pre{margin:0;white-space:pre-wrap;word-break:break-word;line-height:1.6;font-family:inherit}.rich-response{display:grid;gap:10px;line-height:1.62}.rich-response p{margin:0;overflow-wrap:anywhere}.response-section{display:grid;gap:5px;padding:10px 12px;border:1px solid rgba(175,210,240,.32);border-radius:16px;background:#ffffff85}.response-section strong{color:#35577b;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.response-section span{overflow-wrap:anywhere}.response-point{padding-left:10px;border-left:3px solid rgba(167,249,255,.9)}.response-diagram{max-width:100%;margin:0;overflow:auto;padding:12px 14px;border:1px solid rgba(175,210,240,.42);border-radius:14px;color:#22334a;background:#ffffff9e;font-family:Cascadia Mono,Consolas,Courier New,monospace;font-size:.86rem;line-height:1.45;white-space:pre}.message-actions{position:absolute;top:8px;right:8px;display:inline-flex;gap:4px;opacity:0;transition:opacity .15s ease}.bubble:hover .message-actions,.message-actions:focus-within{opacity:1}.message-actions button{display:grid;width:28px;height:28px;place-items:center;color:#20281e;border-radius:50%;background:#ffffffa8;box-shadow:0 8px 18px #494c2e1f}.message.user .message-actions button{background:#f4fcffd1}.bubble time{position:absolute;right:16px;bottom:8px;color:#434d38b8;font-size:.72rem;font-weight:850}.message.user .bubble time{color:#2b3e5dbd}.typing-wrap{display:grid;gap:8px}.typing{display:inline-flex;min-width:92px;gap:8px;padding:18px}.typing-wrap small{color:#66705c;font-weight:850}.typing span{width:9px;height:9px;border-radius:50%;background:#83f5ff;animation:bounce .9s infinite ease-in-out}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes bounce{50%{transform:translateY(-7px);opacity:.55}}.image-preview{display:flex;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid rgba(59,68,49,.09);background:#ffffff59}.image-preview img{width:58px;height:58px;object-fit:cover;border-radius:18px}.image-preview button{padding:0 12px;border-radius:999px;color:#1f281d;background:#ffffffad}.composer{display:grid;grid-template-columns:176px 46px minmax(0,1fr) 50px;align-items:end;gap:10px;width:min(880px,calc(100% - 28px));margin:0 auto 12px;padding:14px;border:1px solid rgba(255,255,255,.76);border-radius:30px;background:linear-gradient(135deg,#eefafff0,#f9e8ffeb);box-shadow:0 18px 48px #5f84a638}.composer-model-menu{position:relative}.model-menu-button{display:inline-flex;align-items:center;gap:8px;width:100%;height:46px;padding:0 12px;border-radius:999px;color:#22334a;background:linear-gradient(135deg,#c9fbff,#f0c9ff);font-weight:950}.model-menu-button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-menu-popover{position:absolute;left:0;bottom:calc(100% + 12px);z-index:8;display:none;width:min(360px,88vw);max-height:390px;overflow:auto;padding:12px;border:1px solid rgba(255,255,255,.72);border-radius:24px;background:#edfaffeb;box-shadow:0 24px 70px #47638347;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.composer-model-menu:hover .model-menu-popover,.composer-model-menu:focus-within .model-menu-popover{display:grid;gap:10px}.model-menu-group{display:grid;gap:6px}.model-option{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;padding:8px 10px;border-radius:16px;color:#24364d;background:#ffffff94;text-align:left;overflow:hidden}.model-option:hover,.model-option.selected{background:linear-gradient(135deg,#c3f9fff2,#f1caffeb)}.model-option.router-option{border:1px solid rgba(92,188,112,.35);background:#ffffffad}.model-option.router-option:hover,.model-option.router-option.selected{background:linear-gradient(135deg,#b6ffd78c,#c3f9ffb3)}.model-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:900}.model-option b{color:#7c5a92;font-size:.72rem;justify-self:end;white-space:nowrap}.model-badge{align-self:center;justify-self:end;height:20px;padding:0 8px;border-radius:999px;font-size:.68rem;font-style:normal;font-weight:900;color:#161c15d9;background:#ffffffb3;border:1px solid rgba(49,198,255,.35);white-space:nowrap}.model-badge.online{background:#5cbc702e;border-color:#5cbc7073;color:#1c6931}.model-option.add-custom{margin-top:2px;background:#fffc}.upload-button,.send-button{justify-content:center;width:46px;height:46px;min-height:46px;border-radius:50%;color:#203045;background:#fff;box-shadow:0 10px 24px #5f84a629}.upload-button.disabled{cursor:not-allowed;opacity:.42}.upload-button input{display:none}.composer textarea{display:block;resize:none;min-height:52px;height:52px;max-height:160px;padding:15px 16px;border-radius:24px;background:#fff;overflow:hidden}.composer textarea::placeholder{color:#707866}.send-button{background:linear-gradient(135deg,#a7f9ff,#f2b9ff)}.send-button:disabled{cursor:not-allowed;opacity:.55}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:980px){.app-shell{grid-template-columns:1fr;overflow:visible}.topbar{grid-template-columns:minmax(180px,1fr) minmax(260px,420px)}.top-actions{grid-template-columns:minmax(0,1fr) max-content;justify-content:end;justify-items:stretch}.sidebar,.workspace{max-height:none}.history{max-height:160px}.workspace{grid-template-rows:auto minmax(620px,1fr);min-height:860px}}@media(max-width:820px){.app-shell{padding:14px;gap:14px}.sidebar{padding:14px}.workspace{min-height:780px}.floating-banner span{white-space:normal;line-height:1.25}}@media(max-width:620px){.app-shell{padding:12px;gap:12px}.sidebar,.chat-panel,.topbar{border-radius:22px}.topbar{align-items:flex-start;grid-template-columns:1fr}.topbar-account{justify-self:stretch;max-width:none;width:100%;grid-template-columns:1fr;border-radius:18px}.topbar-account .redeem-row{width:100%}.top-actions{justify-content:flex-start;justify-items:stretch;width:100%;grid-template-columns:1fr}.segmented{justify-content:flex-start}.messages{padding:14px}.bubble{max-width:88%}.composer{grid-template-columns:44px minmax(0,1fr) 44px;align-items:stretch;padding:10px;gap:10px}.composer-model-menu{grid-column:1 / -1}.upload-button{grid-column:1}.composer textarea{grid-column:2}.send-button{grid-column:3}.upload-button,.send-button{width:42px;height:42px;min-height:42px}.composer textarea{height:auto;min-height:86px;max-height:240px;padding:12px 13px;line-height:1.35;overflow:auto}.loader-logo{width:78px;height:78px}.segmented button{padding:0 8px}.top-actions{gap:6px}.segmented{flex-wrap:wrap;border-radius:18px}.segmented button{min-height:26px;font-size:.82rem}.teacher-badge{height:18px;padding:0 6px;font-size:.68rem}}
