*{box-sizing:border-box}body{color:#eceff3;background:#0b0d10;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}.app{height:100vh;display:flex}aside{background:#111418;border-right:1px solid #252a31;flex-direction:column;width:260px;padding:14px;display:flex}.brand{padding:12px 10px 20px;font-weight:700}.new,aside button{color:#e8ebef;text-align:left;background:#171b20;border:1px solid #2b3139;border-radius:10px;padding:10px}.history{gap:4px;margin-top:14px;display:grid;overflow:auto}.history button{background:0 0;border:0}.history .active,.history button:hover{background:#20252c}.sidebottom{margin-top:auto}.main{flex-direction:column;flex:1;min-width:0;display:flex}header{border-bottom:1px solid #252a31;align-items:center;gap:10px;height:58px;padding:0 18px;display:flex}header span{margin-right:auto;font-weight:600}header select{color:#ddd;background:#171b20;border:1px solid #2b3139;border-radius:8px;max-width:260px;padding:7px}.messages{flex:1;padding:32px max(18px,50% - 425px);overflow:auto}.welcome{text-align:center;color:#9aa2ad;margin-top:18vh}.welcome h2{color:#eee;font-size:30px}.messages article{margin:18px 0;display:flex}.messages article.user{justify-content:flex-end}.bubble{white-space:pre-wrap;border-radius:15px;max-width:78%;padding:12px 15px;line-height:1.6}.assistant .bubble{background:#15191e}.user .bubble{background:#2a3038}.composer{border-top:1px solid #252a31;padding:14px max(18px,50% - 425px)}.inputrow{background:#15191e;border:1px solid #343a43;border-radius:16px;align-items:end;gap:8px;padding:8px;display:flex}.inputrow textarea{resize:none;color:#fff;background:0 0;border:0;outline:0;flex:1;min-height:42px;max-height:180px;padding:10px}.inputrow>button{color:#111;background:#eee;border:0;border-radius:12px;width:40px;height:40px;font-size:20px}.attach{cursor:pointer;padding:10px}.attach input{display:none}.attachments{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.attachments span{background:#1d2228;border:1px solid #303640;border-radius:8px;padding:5px 8px;font-size:12px}.login,.center{place-items:center;height:100vh;display:grid}.login form{text-align:center;background:#13171c;border:1px solid #292f37;border-radius:18px;width:330px;padding:32px}.logo{font-size:36px}.login input{color:#fff;background:#0d1014;border:1px solid #303640;border-radius:10px;width:100%;margin:18px 0 10px;padding:12px}.login button{border:0;border-radius:10px;width:100%;padding:12px}@media (width<=700px){aside{display:none}.messages{padding:20px 12px}.composer{padding:10px 12px}.bubble{max-width:90%}}
