@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#18212f;--muted:#748092;--line:#e8ebf0;--purple:#6558d3;--purple-dark:#5145bd;--surface:#fff;--background:#f7f8fb}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--background);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:DM Sans,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}.screen{background:radial-gradient(ellipse at 50% 4%, #7969e61c, transparent 34rem), var(--background);min-height:100vh}.centered{justify-content:center;align-items:center;padding:28px;display:flex}.login-card{background:var(--surface);border:1px solid #e2e5edd9;border-radius:18px;width:min(100%,420px);padding:40px;box-shadow:0 20px 60px #1d243514}.brand{color:#252b3b;letter-spacing:-.04em;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-size:16px;font-weight:800;display:inline-flex}.brand-mark,.assistant-avatar,.message-avatar{color:#fff;background:linear-gradient(145deg,#8378ed,#584bc5);flex:none;place-items:center;display:grid}.brand-mark{border-radius:9px;width:30px;height:30px;font-size:15px}.brand-light{color:#7973a5;font-weight:600}.login-card h1{letter-spacing:-.05em;margin:38px 0 7px;font-family:Manrope,sans-serif;font-size:25px}.muted,.login-card .setup-hint{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.login-form{flex-direction:column;margin-top:28px;display:flex}.login-form label{color:#3d4655;margin:0 0 8px;font-size:13px;font-weight:600}.login-form input{width:100%;height:46px;color:var(--ink);background:#fff;border:1px solid #dfe3eb;border-radius:8px;outline:none;margin-bottom:18px;padding:0 13px;transition:border-color .15s,box-shadow .15s}.login-form input:focus,.composer:focus-within{border-color:#9890e6;box-shadow:0 0 0 3px #6558d31a}.primary-button{color:#fff;background:var(--purple);border:0;border-radius:8px;font-weight:600;transition:background .15s,transform .15s}.primary-button:hover{background:var(--purple-dark)}.login-button{height:46px;margin-top:5px}.prototype-note{color:#9099a8;text-align:center;margin:23px 0 0;font-size:12px}.error-message{color:#b43d4b;margin:4px 0 12px;font-size:13px;line-height:1.5}.setup-hint{margin-top:18px!important;font-size:12px!important}.loading-mark{border:3px solid #e3e0fa;border-top-color:var(--purple);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);background:#ffffffe0;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(22px,5vw,76px);display:flex}.topbar-actions{align-items:center;gap:22px;display:flex}.prototype-badge{color:#665bbd;background:#f6f4ff;border:1px solid #e9e6fb;border-radius:20px;align-items:center;gap:7px;padding:6px 10px;font-size:11px;font-weight:600;display:inline-flex}.prototype-badge span{background:#8b7ee9;border-radius:50%;width:6px;height:6px}.text-button{color:#667184;background:0 0;border:0;padding:8px 0;font-size:13px;font-weight:600}.text-button:hover{color:var(--purple)}.chat-panel{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;flex:1;align-self:center;width:min(100% - 40px,900px);min-height:0;margin:34px 0 24px;display:flex;overflow:hidden;box-shadow:0 8px 32px #19203009}.chat-heading{border-bottom:1px solid var(--line);align-items:center;gap:15px;min-height:98px;padding:20px 28px;display:flex}.assistant-avatar{border-radius:13px;width:42px;height:42px;font-size:20px}.chat-heading h1{letter-spacing:-.035em;margin:0 0 5px;font-family:Manrope,sans-serif;font-size:17px;font-weight:700}.chat-heading p{color:var(--muted);margin:0;font-size:12px}.transcript{flex-direction:column;flex:1;gap:22px;min-height:330px;padding:28px;display:flex;overflow-y:auto}.message-row{align-items:flex-start;gap:10px;max-width:85%;display:flex}.message-row.user{align-self:flex-end}.message-avatar{border-radius:9px;width:28px;height:28px;margin-top:2px;font-size:13px}.message-bubble{background:#fbfbfd;border:1px solid #eceef3;border-radius:4px 12px 12px;min-width:90px;padding:12px 15px}.user .message-bubble{background:#f4f2ff;border-color:#e5e1fb;border-radius:12px 4px 12px 12px}.message-sender{color:#858e9d;margin-bottom:5px;font-size:10px;font-weight:600;display:block}.message-bubble p{color:#333c4b;overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.65}.typing{align-items:center;gap:4px;min-width:62px;padding:17px 15px;display:flex}.typing span{background:#8d86c7;border-radius:50%;width:5px;height:5px;animation:.9s ease-in-out infinite pulse}.typing span:nth-child(2){animation-delay:.12s}.typing span:nth-child(3){animation-delay:.24s}@keyframes pulse{50%{opacity:.35;transform:translateY(-3px)}}.composer-wrap{padding:0 28px 20px}.chat-error{margin:0 0 10px}.composer{background:#fff;border:1px solid #e0e4eb;border-radius:11px;align-items:flex-end;gap:10px;padding:10px;transition:border-color .15s,box-shadow .15s;display:flex}.composer textarea{resize:vertical;color:#303a4a;background:0 0;border:0;outline:0;width:100%;min-height:38px;max-height:140px;padding:10px 7px;font-size:13px;line-height:1.5}.composer textarea::placeholder{color:#a1a9b5}.send-button{color:#fff;background:var(--purple);border:0;border-radius:8px;flex:none;place-items:center;width:38px;height:38px;transition:background .15s,opacity .15s;display:grid}.send-button:hover:not(:disabled){background:var(--purple-dark)}.send-button:disabled{cursor:not-allowed;opacity:.45}.send-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:18px;height:18px}.composer-hint{color:#a0a8b4;text-align:center;margin:9px 0 0;font-size:10px}.app-footer{color:#929baa;text-align:center;padding:0 16px 22px;font-size:11px}@media (max-width:600px){.login-card{padding:30px 25px}.topbar{height:62px;padding:0 18px}.topbar-actions{gap:14px}.chat-panel{border-radius:11px;width:calc(100% - 20px);margin:10px 0 14px}.chat-heading{gap:11px;min-height:84px;padding:16px}.assistant-avatar{border-radius:11px;width:36px;height:36px;font-size:17px}.chat-heading h1{font-size:14px}.chat-heading p{font-size:11px;line-height:1.45}.transcript{min-height:260px;padding:20px 15px}.message-row{max-width:94%}.composer-wrap{padding:0 14px 14px}}
