.app-layout{display:flex;height:100vh;width:100%}.sidebar{width:260px;background:#0a0a0a;border-right:1px solid #222;display:flex;flex-direction:column;flex-shrink:0}.sidebar-header{padding:1rem;border-bottom:1px solid #222}.new-chat-btn{width:100%;background:#1a1a1a;color:#fafafa;border:1px solid #333;padding:.75rem 1rem;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;transition:background .15s}.new-chat-btn:hover{background:#252525}.conversation-list{flex:1;overflow-y:auto;padding:.5rem}.sidebar-loading,.sidebar-empty{padding:1rem;color:#666;font-size:.875rem;text-align:center}.conversation-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-radius:8px;cursor:pointer;margin-bottom:.25rem;transition:background .15s}.conversation-item:hover{background:#1a1a1a}.conversation-item.active{background:#1a3a5c}.conversation-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem}.delete-btn{background:transparent;border:none;color:#666;font-size:1.25rem;cursor:pointer;padding:0 .25rem;line-height:1;opacity:0;transition:opacity .15s,color .15s}.conversation-item:hover .delete-btn{opacity:1}.delete-btn:hover{color:#ff6b6b}.chat-container{display:flex;flex-direction:column;flex:1;min-width:0}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #222}.chat-header h1{font-size:1.25rem;font-weight:600}.header-controls{display:flex;align-items:center;gap:1rem}.model-select{background:#1a1a1a;color:#fafafa;border:1px solid #333;padding:.5rem .75rem;border-radius:6px;font-size:.875rem}.user-email{font-size:.875rem;color:#888}.sign-out-btn{background:transparent;color:#888;border:1px solid #333;padding:.5rem .75rem;border-radius:6px;cursor:pointer;font-size:.875rem}.sign-out-btn:hover{background:#1a1a1a;color:#fafafa}.chat-messages{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:#666}.message{padding:1rem;border-radius:8px;max-width:85%}.message.user{background:#1a3a5c;align-self:flex-end}.message.assistant{background:#1a1a1a;align-self:flex-start}.message-role{font-size:.75rem;color:#888;margin-bottom:.5rem;text-transform:capitalize}.message-content{line-height:1.6;white-space:pre-wrap}.message-content.typing{color:#888}.error-message{background:#3a1a1a;color:#ff6b6b;padding:1rem;border-radius:8px}.chat-input-form{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #222}.chat-input{flex:1;background:#1a1a1a;color:#fafafa;border:1px solid #333;padding:.75rem 1rem;border-radius:8px;font-size:1rem}.chat-input:focus{outline:none;border-color:#555}.chat-input:disabled{opacity:.6}.send-btn{background:#2563eb;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500}.send-btn:hover:not(:disabled){background:#1d4ed8}.send-btn:disabled{opacity:.6;cursor:not-allowed}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.auth-card{background:#111;border:1px solid #222;border-radius:12px;padding:2rem;width:100%;max-width:400px}.auth-card h1{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;text-align:center}.auth-subtitle{color:#888;text-align:center;margin-bottom:1.5rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-input{background:#1a1a1a;color:#fafafa;border:1px solid #333;padding:.75rem 1rem;border-radius:8px;font-size:1rem}.auth-input:focus{outline:none;border-color:#555}.auth-error{background:#3a1a1a;color:#ff6b6b;padding:.75rem 1rem;border-radius:8px;font-size:.875rem}.auth-submit{background:#2563eb;color:#fff;border:none;padding:.75rem 1rem;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;margin-top:.5rem}.auth-submit:hover:not(:disabled){background:#1d4ed8}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-toggle{background:transparent;color:#888;border:none;cursor:pointer;font-size:.875rem;margin-top:1.5rem;width:100%;text-align:center}.auth-toggle:hover{color:#fafafa}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:#0a0a0a;color:#fafafa;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}
