:root{--color-primary:#1d1d1f;--color-primary-text:#fff;--color-primary-on-dark:#fff;--color-primary-text-on-dark:#1d1d1f;--color-secondary-surface:#fff;--color-secondary-text:#1d1d1f;--color-secondary:#06c;--color-secondary-on-dark:#2997ff;--color-focus-ring:#0071e3;--color-surface-tile-1:#272729;--color-surface-tile-2:#2a2a2c;--color-surface-tile-3:#252527;--color-surface-black:#000;--color-surface-input-dark:#ffffff14;--color-surface-input-dark-focus:#ffffff1f;--color-body-on-dark:#fff;--color-body-muted:#ccc;--color-ink-muted-48:#7a7a7a;--color-error:#ff3b30;--color-border-on-dark:#ffffff1f;--font-display:"SF Pro Display", system-ui, -apple-system, BlinkMacSystemFont, "Inter", sans-serif;--font-text:"SF Pro Text", system-ui, -apple-system, BlinkMacSystemFont, "Inter", sans-serif;--space-xxs:4px;--space-xs:8px;--space-sm:12px;--space-md:17px;--space-lg:24px;--space-xl:32px;--space-xxl:48px;--space-section:80px;--radius-sm:8px;--radius-md:11px;--radius-lg:18px;--radius-pill:9999px;--shadow-product:#00000038 3px 5px 30px 0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--color-surface-tile-1);color:var(--color-body-on-dark);font-family:var(--font-text);-webkit-font-smoothing:antialiased;margin:0}button,input{font-family:inherit}.login-screen{background:var(--color-surface-tile-1);min-height:100dvh;padding:var(--space-lg);justify-content:center;align-items:center;display:flex}.login-card{align-items:stretch;gap:var(--space-lg);flex-direction:column;width:100%;max-width:360px;display:flex}.login-logo{width:180px;max-width:60%;height:auto;margin:0 auto var(--space-xs);display:block}.login-subtitle{font-family:var(--font-text);letter-spacing:-.374px;color:var(--color-body-muted);text-align:center;margin:calc(var(--space-lg) * -1) 0 0;font-size:17px;font-weight:400;line-height:1.47}.login-form{gap:var(--space-sm);flex-direction:column;display:flex}.login-input{border-radius:var(--radius-pill);border:1px solid var(--color-border-on-dark);background:var(--color-surface-input-dark);width:100%;height:44px;color:var(--color-body-on-dark);font-family:var(--font-text);letter-spacing:-.374px;outline:none;padding:12px 20px;font-size:17px;font-weight:400;transition:background .15s,border-color .15s}.login-input::placeholder{color:var(--color-ink-muted-48)}.login-input:focus{background:var(--color-surface-input-dark-focus);border-color:var(--color-focus-ring)}.login-button{border-radius:var(--radius-pill);background:var(--color-primary-on-dark);height:44px;color:var(--color-primary-text-on-dark);font-family:var(--font-text);letter-spacing:-.374px;cursor:pointer;margin-top:var(--space-xs);border:none;font-size:17px;font-weight:400;transition:transform .1s,opacity .15s}.login-button:active{transform:scale(.95)}.login-button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.login-button:disabled{opacity:.6;cursor:default}.login-error{font-family:var(--font-text);letter-spacing:-.224px;color:var(--color-error);text-align:center;margin:0;font-size:14px;font-weight:400;line-height:1.43}@media (width<=419px){.login-logo{width:140px}}.chat-sidebar{gap:var(--space-sm);width:280px;padding:var(--space-md);background:var(--color-surface-tile-2);flex-direction:column;flex-shrink:0;display:flex}.chat-sidebar-new{justify-content:center;align-items:center;gap:var(--space-xs);border-radius:var(--radius-md);background:var(--color-surface-input-dark);height:44px;color:var(--color-body-on-dark);font-family:var(--font-text);letter-spacing:-.224px;cursor:pointer;border:none;font-size:14px;font-weight:400;transition:transform .1s,background .15s;display:flex}.chat-sidebar-new:active{transform:scale(.95)}.chat-sidebar-new:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.chat-sidebar-list{flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.chat-sidebar-footer{padding-top:var(--space-sm);border-top:1px solid var(--color-border-on-dark);flex-shrink:0}.chat-sidebar-user{padding:0 var(--space-sm);font-family:var(--font-text);letter-spacing:-.224px;color:var(--color-body-on-dark);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:14px;font-weight:600;display:block;overflow:hidden}.chat-sidebar-logout{align-items:center;gap:var(--space-xs);border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--color-body-muted);font-family:var(--font-text);letter-spacing:-.224px;padding:0 var(--space-sm);cursor:pointer;background:0 0;border:none;font-size:14px;font-weight:400;transition:transform .1s,background .15s,color .15s;display:flex}.chat-sidebar-logout:hover{background:var(--color-surface-input-dark);color:var(--color-body-on-dark)}.chat-sidebar-logout:active{transform:scale(.95)}.chat-sidebar-logout:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.chat-sidebar-item-row{border-radius:var(--radius-sm);align-items:center;min-height:44px;transition:background .15s;display:flex}.chat-sidebar-item-row:hover,.chat-sidebar-item-row--active{background:var(--color-surface-input-dark)}.chat-sidebar-item{text-align:left;border-radius:var(--radius-sm);min-width:0;min-height:44px;color:var(--color-body-muted);font-family:var(--font-text);letter-spacing:-.224px;padding:0 var(--space-sm);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;flex:1;align-items:center;font-size:14px;font-weight:400;transition:color .15s;display:flex;overflow:hidden}.chat-sidebar-item-row--active .chat-sidebar-item{color:var(--color-body-on-dark);font-weight:600}.chat-sidebar-item:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.chat-sidebar-edit-btn{width:28px;height:28px;margin-right:var(--space-xs);border-radius:var(--radius-sm);color:var(--color-body-muted);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .15s,background .15s,color .15s;display:flex}.chat-sidebar-item-row:hover .chat-sidebar-edit-btn,.chat-sidebar-edit-btn:focus-visible{opacity:1}.chat-sidebar-edit-btn:hover{background:var(--color-surface-tile-2);color:var(--color-body-on-dark)}.chat-sidebar-edit-btn:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.chat-sidebar-edit-input{border:1px solid var(--color-focus-ring);border-radius:var(--radius-sm);background:var(--color-surface-input-dark);min-width:0;min-height:44px;color:var(--color-body-on-dark);font-family:var(--font-text);letter-spacing:-.224px;padding:0 var(--space-sm);margin:0 var(--space-xs);flex:1;font-size:14px;font-weight:400}.chat-sidebar-edit-input:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.chat-sidebar-delete-btn{width:28px;height:28px;margin-right:var(--space-xs);border-radius:var(--radius-sm);color:var(--color-body-muted);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .15s,background .15s,color .15s;display:flex}.chat-sidebar-item-row:hover .chat-sidebar-delete-btn,.chat-sidebar-delete-btn:focus-visible{opacity:1}.chat-sidebar-delete-btn:hover{background:var(--color-surface-tile-2);color:#ff3b30}.chat-sidebar-delete-btn:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}@media (width<=640px){.chat-sidebar-edit-btn,.chat-sidebar-delete-btn{opacity:1}}.chat-sidebar-backdrop{display:none}@media (width<=640px){.chat-sidebar{z-index:20;width:80%;max-width:280px;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.chat-sidebar--open{transform:translate(0)}.chat-sidebar-backdrop{z-index:19;opacity:0;pointer-events:none;background:#0006;transition:opacity .2s;display:block;position:fixed;inset:0}.chat-sidebar-backdrop--visible{opacity:1;pointer-events:auto}}.message-bubble-row{justify-content:flex-start;display:flex}.message-bubble-row--user{justify-content:flex-end}.message-bubble{max-width:min(640px,80%);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);font-family:var(--font-text);letter-spacing:-.374px;color:var(--color-body-on-dark);word-break:break-word;font-size:17px;font-weight:400;line-height:1.47}.message-bubble p{margin:0}.message-bubble p+p{margin-top:var(--space-sm)}.message-bubble strong{font-weight:600}.message-bubble ul,.message-bubble ol{margin:var(--space-sm) 0 0;padding-left:1.25em}.message-bubble li+li{margin-top:4px}.message-bubble a{color:inherit;text-decoration:underline}.message-bubble code{background:var(--color-surface-tile-1);border-radius:4px;padding:2px 5px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.9em}.message-bubble--user{background:var(--color-surface-tile-2)}.message-bubble--assistant{background:var(--color-surface-tile-3)}@media (width<=640px){.message-bubble{max-width:90%}}.message-bubble--pending{color:var(--color-body-muted);animation:1.4s ease-in-out infinite message-pending-pulse}@keyframes message-pending-pulse{0%,to{opacity:.45}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.message-bubble--pending{animation:none}}.typing-indicator{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);background:var(--color-surface-tile-3);align-items:center;gap:4px;display:flex}.typing-indicator-dot{border-radius:var(--radius-pill);background:var(--color-ink-muted-48);width:6px;height:6px;animation:1.2s ease-in-out infinite typing-bounce}.typing-indicator-dot:nth-child(2){animation-delay:.15s}.typing-indicator-dot:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.empty-state{padding:var(--space-section);background:var(--color-surface-tile-1);text-align:center;flex:1;justify-content:center;align-items:center;display:flex}.empty-state-greeting{font-family:var(--font-display);letter-spacing:-.374px;color:var(--color-body-on-dark);margin:0;font-size:34px;font-weight:600;line-height:1.1}.message-list{gap:var(--space-sm);padding:var(--space-lg);background:var(--color-surface-tile-1);flex-direction:column;flex:1;display:flex;overflow-y:auto}.composer{align-items:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);-webkit-backdrop-filter:saturate(180%)blur(20px);background:#272729cc;display:flex;position:sticky;bottom:0}.composer-input{resize:none;border-radius:var(--radius-lg);border:1px solid var(--color-border-on-dark);background:var(--color-surface-input-dark);min-height:44px;max-height:160px;color:var(--color-body-on-dark);font-family:var(--font-text);letter-spacing:-.374px;outline:none;flex:1;padding:12px 20px;font-size:17px;font-weight:400;line-height:1.47;transition:background .15s,border-color .15s}.composer-input::placeholder{color:var(--color-ink-muted-48)}.composer-input:focus{background:var(--color-surface-input-dark-focus);border-color:var(--color-focus-ring)}.composer-send{border-radius:var(--radius-pill);background:var(--color-primary-on-dark);width:44px;height:44px;color:var(--color-primary-text-on-dark);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:transform .1s,opacity .15s;display:flex}.composer-send:active{transform:scale(.95)}.composer-send:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.composer-send:disabled{opacity:.6;cursor:default}.composer-field{gap:var(--space-xs);flex-direction:column;flex:1;min-width:0;display:flex}.composer-error{color:var(--color-error);font-family:var(--font-text);letter-spacing:-.224px;margin:0;padding:0 20px;font-size:14px;line-height:1.43}.composer-icon-button{border:1px solid var(--color-border-on-dark);border-radius:var(--radius-pill);background:var(--color-surface-input-dark);width:44px;height:44px;color:var(--color-body-on-dark);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:transform .1s,opacity .15s;display:flex}.composer-icon-button:active{transform:scale(.95)}.composer-icon-button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.composer-icon-button:disabled{opacity:.6;cursor:default}.composer-recording{align-items:center}.composer-recording-status{align-items:center;gap:var(--space-sm);color:var(--color-body-on-dark);font-family:var(--font-text);letter-spacing:-.374px;font-variant-numeric:tabular-nums;flex:1;font-size:17px;display:flex}.composer-recording-dot{border-radius:var(--radius-pill);background:var(--color-error);width:10px;height:10px}.composer-waveform{flex:1;justify-content:flex-end;align-items:center;gap:3px;min-width:0;height:32px;display:flex;overflow:hidden}.composer-waveform-bar{border-radius:var(--radius-pill);background:var(--color-body-on-dark);flex-shrink:0;width:3px;height:100%;transition:transform 60ms linear;transform:scaleY(.12)}.composer-spinner{border:2px solid var(--color-border-on-dark);border-top-color:var(--color-body-on-dark);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite composer-spin}@keyframes composer-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.composer-spinner{animation-duration:2.4s}}.composer-input:disabled{opacity:.6;cursor:progress}.loading-overlay{z-index:1000;justify-content:center;align-items:center;gap:var(--space-sm);-webkit-backdrop-filter:saturate(180%)blur(20px);background:#27272980;flex-direction:column;display:flex;position:fixed;inset:0}.loading-overlay-spinner{border-radius:var(--radius-pill);border:3px solid var(--color-border-on-dark);border-top-color:var(--color-focus-ring);width:32px;height:32px;animation:.7s linear infinite loading-overlay-spin}.loading-overlay-label{font-family:var(--font-text);letter-spacing:-.224px;color:var(--color-body-muted);font-size:14px;font-weight:400}@keyframes loading-overlay-spin{to{transform:rotate(360deg)}}.chat-layout{background:var(--color-surface-tile-1);height:100dvh;display:flex}.chat-main{flex-direction:column;flex:1;min-width:0;display:flex}.chat-header{height:52px;padding:0 var(--space-lg);background:var(--color-surface-tile-1);border-bottom:1px solid var(--color-border-on-dark);flex-shrink:0;align-items:center;display:flex}.chat-sidebar-toggle{width:44px;height:44px;margin-left:calc(var(--space-md) * -1);border-radius:var(--radius-md);color:var(--color-body-on-dark);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:transform .1s,background .15s;display:none}.chat-sidebar-toggle:active{transform:scale(.95)}.chat-sidebar-toggle:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.chat-header-title{font-family:var(--font-text);letter-spacing:-.374px;color:var(--color-body-on-dark);white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:600;overflow:hidden}.chat-error-banner{padding:var(--space-xs) var(--space-lg);font-family:var(--font-text);letter-spacing:-.224px;color:#ff3b30;flex-shrink:0;font-size:14px}@media (width<=640px){.chat-header{padding:0 var(--space-md);gap:var(--space-xs)}.chat-sidebar-toggle{margin-left:0;display:flex}.chat-error-banner{padding:var(--space-xs) var(--space-md)}}
