@font-face{font-family:Work;src:url('work-sans.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html,body{margin:0;height:100%;color:#1b273c;background:#fff;font-family:Work,system-ui,sans-serif;font-size:14px}button,input,select,textarea{font:inherit;color:inherit}button,select{cursor:pointer}button{border:0;background:none}a{color:inherit}button:disabled{cursor:wait;opacity:.48}:focus-visible{outline:3px solid #79aaff;outline-offset:3px}[hidden]{display:none!important}.loading{height:100dvh;display:flex;gap:16px;align-items:center;justify-content:center;font-size:28px;font-weight:600}.dots{color:#738197}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;letter-spacing:-1px;font-size:25px}.brand img{width:33px;height:33px;object-fit:contain}.icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;font-size:21px;color:#758092}.icon:hover,.quiet:hover{background:#eaf0f7}.quiet{border-radius:9px;padding:8px 10px;font-size:13px;white-space:nowrap}.mobile-only{display:none}.login{display:grid;grid-template-columns:1fr 1fr;min-height:100dvh}.login-art{background:#ecf2fc;padding:40px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.login-orbit{width:min(400px,85%);aspect-ratio:1;border:1px solid #d5e2f6;border-radius:50%;margin:40px auto;display:grid;place-items:center;position:relative;box-shadow:0 0 0 48px #e7effb,0 0 0 49px #dce7f8}.login-orbit img{width:50%;filter:drop-shadow(0 20px 25px #8bacd84a)}.company{font-size:13px;color:#5d7390}.login-side{position:relative;display:grid;place-items:center;padding:40px}.login-side>.lang{position:absolute;top:32px;right:32px}.login-form{width:100%;max-width:340px;display:grid;gap:12px}.login-form h1{font-size:30px;font-weight:550;letter-spacing:-1px;margin:0 0 8px}.rule{font-size:12px;width:fit-content;border-radius:8px;background:#f2f5fa;color:#6a778b;padding:8px 10px;margin-bottom:22px}.login-form label{font-size:13px;font-weight:500}.login-form input{min-width:0;width:100%;border:1px solid #dce2eb;border-radius:11px;padding:13px;margin-bottom:10px;background:#fff}.primary{background:#122947;color:#fff;border-radius:11px;padding:14px;margin-top:4px;font-weight:500}.back{text-align:center;text-decoration:none;font-size:12px;color:#7c8795;padding-top:12px}.workspace{display:grid;grid-template-columns:238px minmax(0,1fr) 326px;height:100dvh;overflow:hidden}.sidebar{background:#f5f7fa;display:flex;flex-direction:column;padding:24px 16px 14px;min-width:0;border-right:1px solid #eef1f6}.side-top{display:flex;justify-content:space-between;align-items:center;padding:0 9px 25px}.new-chat{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e1e7ef;box-shadow:0 2px 3px #17233b04;border-radius:11px;padding:12px;font-weight:500;text-align:left}.new-chat span:first-child{font-size:21px;line-height:16px}.search{display:flex;align-items:center;gap:8px;padding:14px 9px;margin-top:6px;color:#8e99a9}.search>span{font-size:23px}.search input{width:100%;min-width:0;border:0;background:none;font-size:13px;outline-offset:3px}.search input::placeholder{color:#8994a5}.section-label{font-size:12px;color:#8c97a6;padding:22px 10px 10px}.sessions{flex:1;overflow:auto;min-height:0}.session{display:block;text-align:left;width:100%;border-radius:9px;padding:11px 10px;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.session:hover{background:#e9eef6}.session.selected{background:#e6edf7;color:#233f68}.account{display:flex;align-items:center;gap:9px;padding:14px 4px 0;border-top:1px solid #e6ebf2}.avatar{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#dfe8f7;color:#42628b;font-size:12px;font-weight:600;flex:none}.account-text{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;font-size:12px}.account-text b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-weight:500}.account-text>span{color:#8b95a4}.chat{display:flex;flex-direction:column;min-width:0;height:100dvh}.topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:17px 23px;height:72px;flex:none}.tier-wrap{display:flex;align-items:center;gap:7px}.tier-wrap label{font-size:12px;color:#8994a4}.tier-wrap select{border:0;background:#f1f5fb;padding:8px 24px 8px 12px;border-radius:8px;font-weight:600}.top-actions{display:flex;align-items:center;gap:5px}.usage{font-size:12px;color:#8894a5;white-space:nowrap;padding-right:8px}.notice{margin:0 24px 10px;padding:10px 14px;background:#fff7e6;color:#8a6428;border:1px solid #f2e5c9;border-radius:11px;font-size:12px}.conversation{flex:1;min-height:0;overflow:auto;padding:22px 28px 14px;scroll-behavior:auto}.welcome{max-width:670px;margin:clamp(24px,10vh,120px) auto 30px;text-align:center}.welcome>img{width:69px;height:69px;object-fit:contain}.welcome h1{font-size:clamp(25px,2.5vw,36px);font-weight:500;letter-spacing:-1.2px;margin:22px 0 30px}.suggestions{display:flex;gap:10px;max-width:540px;margin:auto}.suggestions button{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:17px;text-align:left;background:#fff;border:1px solid #e9edf3;border-radius:14px;padding:17px 13px;box-shadow:0 5px 15px #233d6504}.suggestions button:hover{border-color:#a7bfdf;background:#f9fbff}.suggestions span{color:#6e8eb8;font-size:23px}.suggestions b{font-weight:450;font-size:12px;line-height:1.4}.messages{max-width:730px;margin:auto}.message{margin-bottom:28px;overflow-wrap:anywhere;line-height:1.8;font-size:14px;white-space:pre-wrap}.message.user{background:#f1f5fa;border-radius:18px 18px 4px 18px;padding:13px 18px;margin-left:auto;width:fit-content;max-width:88%}.message.assistant{padding:2px 0}.speaker{display:flex;align-items:center;gap:9px;font-weight:600;font-size:12px;margin-bottom:12px;white-space:normal}.speaker img{width:25px;height:25px}.message-content{white-space:pre-wrap}.artifact-link{display:flex;gap:12px;align-items:center;width:100%;text-align:left;padding:15px;border:1px solid #dfe7f2;border-radius:12px;margin-top:17px;background:#f9fbfe;font-size:13px}.artifact-link>span{font-size:22px;color:#617eaa}.source-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:13px;white-space:normal}.source-chip{font-size:12px;border-radius:8px;padding:5px 9px;background:#f1f5fa;color:#5b769a;text-decoration:none}.pending{color:#7990af;font-size:13px;display:flex;gap:10px;align-items:center}.composer-wrap{padding:8px 26px 15px;max-width:850px;width:100%;margin:auto;flex:none}.composer{border:1px solid #dfe5ed;border-radius:19px;background:#fff;box-shadow:0 5px 25px #1c375710;padding:16px}.composer textarea{border:0;resize:none;min-height:57px;max-height:180px;width:100%;background:none;outline:none;line-height:1.6;display:block;font-size:14px}.composer textarea::placeholder{color:#93a0b2}.composer-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.composer-options{display:flex;gap:5px;min-width:0;flex-wrap:wrap}.composer select{max-width:210px;border:0;background:#f5f7fa;border-radius:8px;padding:7px 6px;font-size:12px;min-width:0}.send{background:#183856;color:white;width:35px;height:35px;border-radius:10px;font-size:23px;flex:none}.composer-note{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px;padding:10px 5px 0;font-size:12px;color:#8c99ab}.error{border-radius:10px;background:#fff1ee;color:#a84132;padding:11px 13px;font-size:12px;margin-bottom:10px}.artifacts{border-left:1px solid #e8edf4;background:#fbfcfe;display:flex;flex-direction:column;min-height:0;min-width:0}.artifact-head{display:flex;justify-content:space-between;align-items:center;padding:21px 19px 14px}.artifact-head h2{font-size:14px;font-weight:550;margin:0}.artifact-tabs{display:flex;gap:20px;margin:0 20px;border-bottom:1px solid #e6ecf4}.artifact-tabs button{padding:10px 0 12px;font-size:12px;color:#8e9aac;border-bottom:2px solid transparent}.artifact-tabs .active{border-color:#4d75a9;color:#26496f}.artifact-body{overflow:auto;padding:22px 19px;flex:1;min-height:0}.artifact-empty{margin:100px auto;width:60px;height:72px;border:1px solid #e3eaf4;border-radius:12px;display:grid;place-items:center;font-size:26px;color:#bdccdf;box-shadow:6px 6px 0 #f0f4fa}.artifact-body h3{font-size:17px;font-weight:500;line-height:1.5;margin:0 0 17px}.artifact-select{width:100%;border:1px solid #e1e7f0;border-radius:9px;background:white;font-size:12px;padding:9px;margin-bottom:18px}.flashcard{display:flex;flex-direction:column;justify-content:center;width:100%;min-height:245px;padding:22px;border:1px solid #dfe8f5;box-shadow:0 8px 24px #2c507b07;border-radius:17px;background:white;text-align:center;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.flashcard.flipped{background:#edf4ff;border-color:#cfdef1}.flashcard small{color:#8199b9;font-size:12px;margin-bottom:20px}.card-controls{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-size:12px;color:#8190a5}.download{width:100%;border:1px solid #dbe4f0;border-radius:10px;padding:10px;margin-top:24px;font-size:12px;background:white}.artifact-plan{font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.source{border:1px solid #e3e9f1;border-radius:12px;background:white;padding:13px;margin-bottom:10px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.source a{color:#456d9e;text-decoration:none}.source small{display:block;color:#92a0b2;font-size:12px;margin-top:8px}.workspace.artifacts-hidden{grid-template-columns:238px minmax(0,1fr)}.workspace.artifacts-hidden .artifacts{display:none}@media(min-width:1500px){.workspace{grid-template-columns:256px minmax(0,1fr) 360px}}@media(max-width:1150px){.workspace{grid-template-columns:215px minmax(0,1fr)}.artifacts{position:fixed;right:0;top:0;bottom:0;width:330px;z-index:6;box-shadow:-15px 0 50px #243b6220}.workspace.artifacts-hidden{grid-template-columns:215px minmax(0,1fr)}.usage{display:none}}@media(max-width:700px){.login{grid-template-columns:1fr}.login-art{display:none}.login-side{min-height:100dvh;padding:30px}.workspace,.workspace.artifacts-hidden{grid-template-columns:minmax(0,1fr)}.sidebar{display:none;position:fixed;left:0;top:0;bottom:0;width:270px;z-index:7;box-shadow:20px 0 60px #192d5333}.workspace.sidebar-open .sidebar{display:flex}.mobile-only{display:grid}.topbar{padding:14px 12px;height:64px}.tier-wrap{gap:4px}.tier-wrap label{display:none}.top-actions{gap:0}.artifacts{width:min(340px,100%)}.conversation{padding:14px 18px}.welcome{margin:45px auto 20px}.welcome h1{font-size:27px}.suggestions{gap:7px}.suggestions button{padding:13px 10px}.composer-wrap{padding:8px 12px 12px}.composer{padding:13px}.composer select{max-width:170px}.composer-note{font-size:12px}.message{font-size:14px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* BLU chat motion. Transforms and opacity keep animation off the layout path. */
body{overflow:hidden}
.login{height:100dvh;overflow:auto}
:root{--blu-ease:cubic-bezier(.22,1,.36,1);--blu-ink:#152d4b;--blu-shadow:0 8px 28px #233d6508}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,a,select{transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .25s ease,transform .22s var(--blu-ease)}
button:active:not(:disabled){transform:scale(.97)}
.blu-mascot{display:inline-block;width:33px;height:36px;flex:none;color:#10223f;line-height:0;vertical-align:middle}
.blu-mascot svg{width:100%;height:100%;overflow:visible}
.blu-eyes{transform-box:fill-box;transform-origin:center;animation:blu-blink 6.8s infinite}
.brand .blu-mascot{width:34px;height:37px;transition:transform .5s var(--blu-ease)}
.brand:hover .blu-mascot{transform:rotate(-9deg) translateY(-2px)}
.login-orbit>.blu-mascot{width:50%;height:auto;aspect-ratio:96/104;filter:drop-shadow(0 18px 20px #47659620);animation:blu-float 5.5s ease-in-out infinite}
.welcome>.blu-mascot{width:76px;height:83px;animation:blu-float 5.5s ease-in-out infinite;filter:drop-shadow(0 10px 12px #456ba216)}
.speaker .blu-mascot{width:25px;height:27px}
.pending .blu-mascot{width:29px;height:32px;animation:blu-think 2.4s ease-in-out infinite}
.is-thinking .side-top .blu-mascot{animation:blu-think 2.4s ease-in-out infinite}
@keyframes blu-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(3deg)}}
@keyframes blu-blink{0%,42%,46%,74%,78%,100%{transform:scaleY(1)}44%,76%{transform:scaleY(.12)}}
@keyframes blu-think{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-4px) rotate(7deg)}}
@keyframes blu-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes blu-panel-in{from{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}
@keyframes blu-dot{0%,70%,100%{opacity:.32;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}
@keyframes blu-caret{0%,100%{opacity:.35}50%{opacity:1}}
.workspace,.login-form{animation:blu-arrive .42s var(--blu-ease)}
.sidebar{background:linear-gradient(155deg,#f5f7fb,#f0f4f9);padding-top:25px}
.chat{background:radial-gradient(ellipse at 50% 25%,#f9fbff00 40%,#f9fbff80 100%)}
.topbar{border-bottom:1px solid #f2f5f9;background:#ffffffd9}
.top-actions .quiet{color:#69798f}
.tier-wrap select{border:1px solid #e8edf5;background:#f6f8fc;border-radius:11px;padding-block:7px}
.new-chat{border-radius:14px;box-shadow:0 2px 8px #20395705}
.new-chat:hover{background:#fff;border-color:#cbd9ea;box-shadow:0 6px 18px #20395709;transform:translateY(-1px)}
.session{border-radius:11px;padding-block:12px}
.session.selected{box-shadow:inset 0 0 0 1px #dce6f3;background:#e8eff9}
.welcome h1{font-weight:450;letter-spacing:-1.3px;margin-top:24px}
.suggestions{gap:12px}
.suggestions button{border-radius:18px;padding:18px 16px;background:#ffffffc9;box-shadow:var(--blu-shadow)}
.suggestions button:hover{transform:translateY(-3px);box-shadow:0 12px 24px #3457860c;border-color:#cedef2}
.suggestions button:active{transform:translateY(-1px) scale(.98)}
.message.user{background:#eef3fa;border:1px solid #e9eff7;border-radius:22px 22px 7px 22px;padding:14px 20px}
.message.assistant{line-height:1.85}
.message-extras:empty{display:none}
.message-content.is-typing::after{content:'';display:inline-block;width:5px;height:1em;background:#688eb9;border-radius:4px;margin-left:4px;vertical-align:-.1em;animation:blu-caret 1.1s ease-in-out infinite}
.reveal-skip{display:block;margin-top:12px;padding:5px 9px;border-radius:8px;color:#8192a9;font-size:12px;background:#f5f8fc}
.reveal-skip:hover{color:#294c78;background:#eaf1fa}
.pending{padding:6px 0 14px;gap:9px;color:#7186a2;animation:blu-arrive .28s var(--blu-ease)}
.blu-status-shimmer{color:#61748e}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
 .blu-status-shimmer{background-image:linear-gradient(110deg,#61748e 35%,#bacbe0 47%,#e3ecf8 50%,#bacbe0 53%,#61748e 65%);background-size:250% 100%;background-position:100% 0;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:blu-status-shimmer 2.6s linear infinite}
}
@keyframes blu-status-shimmer{to{background-position:-100% 0}}
@media(prefers-reduced-motion:reduce),(forced-colors:active){
 .blu-status-shimmer{background:none;color:inherit;-webkit-text-fill-color:currentColor;animation:none}
}
.thinking-dots{display:inline-flex;gap:4px;align-items:center;height:14px;margin-left:2px}
.thinking-dots i{display:block;width:4px;height:4px;border-radius:50%;background:#6a87ad;animation:blu-dot 1.35s ease-in-out infinite}
.thinking-dots i:nth-child(2){animation-delay:.15s}.thinking-dots i:nth-child(3){animation-delay:.3s}
.composer{border-radius:24px;border-color:#e0e7f1;box-shadow:0 5px 24px #263f6409,0 1px 3px #263f6405;transition:border-color .25s ease,box-shadow .3s ease;overflow:hidden}
.composer:focus-within{border-color:#adc4e2;box-shadow:0 0 0 4px #dce9fb5c,0 8px 32px #263f640d}
.composer textarea{min-height:63px;caret-color:#4c79ad}
.composer select{border-radius:10px;padding:8px;background:#f2f5f9;max-width:220px}
.send{width:37px;height:37px;border-radius:13px;background:var(--blu-ink);box-shadow:0 3px 8px #173b6020}
.send:hover:not(:disabled){background:#275174;transform:translateY(-1px);box-shadow:0 5px 14px #173b6026}
.artifacts{background:#f9fbfe;border-left-color:#e9eff6}
.artifact-link{border-radius:16px;background:#f7faff;border-color:#e1eaf5;padding:17px}
.artifact-link:hover{background:#eff5fe;border-color:#bfd2eb;box-shadow:var(--blu-shadow);transform:translateY(-1px)}
.artifact-link b{font-weight:500}.source-chip{border-radius:9px}
.flashcard{border-radius:22px;border-color:#e2eaf5;box-shadow:0 10px 30px #2c507b08;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}
.flashcard:hover{box-shadow:0 13px 35px #2c507b10;border-color:#cbdbee}
.flashcard.flipped{background:#ecf3fe}
.flashcard>span{animation:blu-arrive .22s var(--blu-ease)}
.download,.source{border-radius:13px}.download:hover{background:#edf4fe}
.source{animation:blu-arrive .25s var(--blu-ease)}
.login-form input{border-radius:13px;transition:box-shadow .2s ease,border-color .2s ease}
.login-form input:focus{border-color:#adc4e2;box-shadow:0 0 0 4px #eaf2fe;outline:none}
.login-form .primary{border-radius:13px;box-shadow:0 4px 13px #173b6015}
.login-form .primary:hover{background:#234465;transform:translateY(-1px)}
@media(max-width:700px){
 .workspace.sidebar-open .sidebar{animation:blu-panel-in .25s var(--blu-ease)}
 .welcome>.blu-mascot{width:70px;height:76px}
 .welcome h1{letter-spacing:-.9px}
 .suggestions{gap:8px}.suggestions button{padding:16px 12px;border-radius:16px}
 .composer{border-radius:21px}.composer select{max-width:170px}
 .topbar{background:#fff}.message.user{padding:12px 16px}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .message-content.is-typing::after{display:none}
}
