:root{--bg:#fff;--panel:#f4f4f6;--text:#16161a;--muted:#6b6b76;--border:#e2e2e8;--accent:#2f6fed;--user:#2f6fed;--user-text:#fff;--assistant:#efeff3;--danger:#d93025;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#111113;--panel:#1a1a1e;--text:#ececf1;--muted:#9a9aa5;--border:#2a2a31;--assistant:#222228;--accent:#3b7bff;--user:#3b7bff}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);overscroll-behavior:none;-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.45;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}.center{height:var(--app-h,100dvh);color:var(--muted);place-items:center;display:grid}.login-wrap{height:var(--app-h,100dvh);padding:calc(env(safe-area-inset-top) + 16px) 16px calc(env(safe-area-inset-bottom) + 16px);place-items:center;display:grid}.login{flex-direction:column;gap:12px;width:100%;max-width:360px;display:flex}.login h1{text-align:center;margin:0 0 8px}.login input{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:12px;outline:none;padding:12px 14px;font-size:16px}.login input:focus{border-color:var(--accent)}.login button{background:var(--accent);color:#fff;border:0;border-radius:12px;min-height:44px;padding:12px;font-weight:600}.login button:disabled{opacity:.6}.error{color:var(--danger);margin:0;font-size:14px}.app{height:var(--app-h,100dvh);width:100%;display:flex;position:relative;overflow:hidden}.sidebar{background:var(--panel);border-right:1px solid var(--border);z-index:30;width:min(82vw,300px);padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;transition:transform .2s;display:flex;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.sidebar.open{transform:none}.backdrop{opacity:0;pointer-events:none;z-index:20;background:#00000073;transition:opacity .2s;position:fixed;inset:0}.backdrop.show{opacity:1;pointer-events:auto}.new{border:1px solid var(--border);background:var(--bg);text-align:left;border-radius:12px;min-height:44px;margin:10px;padding:12px;font-weight:600}.list{flex-direction:column;flex:1;gap:2px;padding:0 10px;display:flex;overflow-y:auto}.item{text-align:left;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;border-radius:10px;min-height:44px;padding:10px 12px;overflow:hidden}.item.active,.item:hover{background:var(--border)}.sidebar-foot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.sidebar-foot .email{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sidebar-foot button{border:1px solid var(--border);background:var(--bg);border-radius:10px;min-height:40px;padding:8px 12px}.main{flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.topbar{padding:calc(env(safe-area-inset-top) + 6px) calc(env(safe-area-inset-right) + 8px) 6px calc(env(safe-area-inset-left) + 8px);border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;gap:8px;display:flex}.icon{background:0 0;border:0;border-radius:10px;width:44px;height:44px;font-size:22px}.icon:active{background:var(--panel)}.title{font-weight:600}.messages{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:12px calc(env(safe-area-inset-right) + 12px) 12px calc(env(safe-area-inset-left) + 12px);flex:1;overflow-y:auto}.messages-inner{flex-direction:column;gap:10px;max-width:820px;margin:0 auto;display:flex}.msg{display:flex}.msg.user{justify-content:flex-end}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;border-radius:18px;max-width:min(85%,640px);padding:10px 14px}.msg.user .bubble{background:var(--user);color:var(--user-text);border-bottom-right-radius:6px}.msg.assistant .bubble{background:var(--assistant);border-bottom-left-radius:6px}.typing{color:var(--muted)}.empty{color:var(--muted);text-align:center;margin:20vh auto 0}.error-banner{color:var(--danger);border:1px solid var(--danger);background:#d930251f;border-radius:12px;padding:10px 12px}.composer{background:var(--bg);border-top:1px solid var(--border);padding:8px calc(env(safe-area-inset-right) + 12px) calc(env(safe-area-inset-bottom) + 8px) calc(env(safe-area-inset-left) + 12px);flex:none}.composer-inner{align-items:flex-end;gap:8px;max-width:820px;margin:0 auto;display:flex}.composer textarea{resize:none;border:1px solid var(--border);background:var(--panel);min-height:44px;max-height:160px;color:var(--text);font:inherit;border-radius:22px;outline:none;flex:1;padding:10px 14px;font-size:16px}.composer textarea:focus{border-color:var(--accent)}.send{background:var(--accent);color:#fff;border:0;border-radius:50%;flex:none;width:44px;height:44px;font-size:20px}.send:disabled{opacity:.4;cursor:default}.mic{border:1px solid var(--border);background:var(--panel);border-radius:50%;flex:none;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;transition:all .2s;display:flex}.mic:hover{background:var(--border)}.mic.listening{background:var(--danger);color:#fff;border-color:var(--danger);animation:1.5s infinite pulse}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #d93025b3}70%{transform:scale(1.05);box-shadow:0 0 0 10px #d9302500}to{transform:scale(1);box-shadow:0 0 #d9302500}}@media (width>=768px){.sidebar{z-index:auto;flex:none;width:280px;position:static;transform:none}.backdrop,.menu{display:none}.topbar{justify-content:center}.topbar .icon:last-child{display:none}}
