.twin-avatar-container{display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative}.twin-avatar-container.clickable{cursor:pointer;transition:transform .2s ease}.twin-avatar-container.clickable:hover{transform:scale(1.05)}.twin-avatar-wrapper{position:relative;border-radius:50%;overflow:hidden;border:3px solid var(--border-color);background:var(--card-background);box-shadow:0 4px 12px rgba(0,0,0,.1);transition:all .3s ease}.twin-avatar-wrapper:hover{border-color:#667eea;box-shadow:0 6px 20px rgba(102,126,234,.3)}.twin-avatar-small .twin-avatar-wrapper{width:32px;height:32px;border-width:2px}.twin-avatar-medium .twin-avatar-wrapper{width:48px;height:48px;border-width:2px}.twin-avatar-large .twin-avatar-wrapper{width:80px;height:80px;border-width:3px}.twin-avatar-xlarge .twin-avatar-wrapper{width:120px;height:120px;border-width:4px}.twin-avatar-image{width:100%;height:100%;object-fit:cover;display:block}.twin-avatar-emoji{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:white}.twin-avatar-small .twin-avatar-emoji{font-size:16px}.twin-avatar-medium .twin-avatar-emoji{font-size:24px}.twin-avatar-large .twin-avatar-emoji{font-size:36px}.twin-avatar-xlarge .twin-avatar-emoji{font-size:48px}.twin-status-indicator{position:absolute;bottom:0;right:0;width:12px;height:12px;border-radius:50%;border:2px solid var(--card-background);display:flex;align-items:center;justify-content:center}.twin-avatar-large .twin-status-indicator,.twin-avatar-xlarge .twin-status-indicator{width:16px;height:16px;border-width:3px}.status-dot{width:6px;height:6px;border-radius:50%;animation:pulse 2s infinite}.twin-status-indicator.online .status-dot{background:#10b981}.twin-status-indicator.thinking .status-dot{background:#f59e0b;animation:thinking 1.5s infinite}.twin-status-indicator.offline .status-dot{background:#6b7280;animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes thinking{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.twin-avatar-wrapper.thinking{animation:thinking-pulse 1.5s ease-in-out infinite}.twin-avatar-wrapper.thinking:after{content:"💭";position:absolute;top:-10px;right:-10px;font-size:18px;animation:float 2s ease-in-out infinite;z-index:10}.twin-avatar-small .twin-avatar-wrapper.thinking:after{top:-8px;right:-8px;font-size:14px}.twin-avatar-large .twin-avatar-wrapper.thinking:after,.twin-avatar-xlarge .twin-avatar-wrapper.thinking:after{top:-15px;right:-15px;font-size:24px}@keyframes thinking-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.twin-name{font-size:.875rem;font-weight:600;color:var(--text-primary);text-align:center;margin-top:.25rem}.twin-avatar-large .twin-name,.twin-avatar-xlarge .twin-name{font-size:1rem;margin-top:.5rem}.twin-personality-badge{background:linear-gradient(45deg,rgba(102,126,234,.1),rgba(118,75,162,.1));color:#667eea;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;border:1px solid rgba(102,126,234,.2);margin-top:.5rem}.twin-avatar-placeholder.loading{background:var(--background-secondary);display:flex;align-items:center;justify-content:center}.loading-spinner{width:50%;height:50%;border:2px solid var(--border-color);border-top:2px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.twin-typing-container{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--card-background);border-radius:16px;border:1px solid var(--border-color);margin:.5rem 0;animation:fadeIn .3s ease-in-out}.twin-typing-content{display:flex;flex-direction:column;gap:.25rem}.twin-typing-name{font-size:.875rem;color:var(--text-secondary);font-weight:500}.twin-typing-dots{display:flex;gap:.25rem}.twin-typing-dots span{width:6px;height:6px;background:#667eea;border-radius:50%;animation:typing 1.4s infinite}.twin-typing-dots span:nth-child(2){animation-delay:.2s}.twin-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-10px);opacity:1}}.twin-intro-card{background:var(--card-background);border-radius:20px;padding:2rem;border:1px solid var(--border-color);box-shadow:0 8px 24px rgba(0,0,0,.1);max-width:500px;margin:2rem auto;text-align:center;animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.twin-intro-header{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin-bottom:2rem}.twin-intro-content h2{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.twin-description{font-size:1.1rem;color:var(--text-secondary);line-height:1.6;margin:0}.twin-intro-features{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1rem;gap:1rem;margin:2rem 0}.feature-item{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:var(--background-secondary);border-radius:12px;font-size:.9rem;color:var(--text-primary);border:1px solid var(--border-color)}.feature-icon{font-size:1.2rem}.start-chat-button{background:linear-gradient(45deg,#667eea,#764ba2);color:white;border:none;padding:1rem 2rem;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%;margin-top:1rem}.start-chat-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(102,126,234,.3)}.start-chat-button:active{transform:translateY(0)}@media (max-width:768px){.twin-intro-card{margin:1rem;padding:1.5rem}.twin-intro-header{gap:1rem;margin-bottom:1.5rem}.twin-intro-content h2{font-size:1.5rem}.twin-description{font-size:1rem}.twin-intro-features{grid-template-columns:1fr;gap:.75rem;margin:1.5rem 0}.feature-item{padding:.5rem}.start-chat-button{padding:.875rem 1.5rem;font-size:1rem}}[data-theme=dark] .twin-avatar-wrapper{border-color:var(--border-color);box-shadow:0 4px 12px rgba(0,0,0,.3)}[data-theme=dark] .twin-avatar-wrapper:hover{border-color:#667eea;box-shadow:0 6px 20px rgba(102,126,234,.4)}[data-theme=dark] .twin-intro-card{box-shadow:0 8px 24px rgba(0,0,0,.3)}.chatInterface_chatContainer__nBWi7{display:flex;flex-direction:column;height:100%;width:100%;background:var(--background-primary,#ffffff);position:relative;overflow:hidden}.chatInterface_messagesContainer__4GSDB{flex:1 1;overflow-y:auto;padding:20px;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;background:var(--background-primary,#ffffff)}.chatInterface_messagesWrapper__coypO{max-width:800px;margin:0 auto;padding:20px 0;display:flex;flex-direction:column;gap:16px}.chatInterface_typingIndicator__y4nh0{display:flex;flex-direction:column;gap:8px;padding:12px 16px;background:linear-gradient(135deg,rgba(214,51,132,.05),rgba(255,139,171,.05));border:1px solid rgba(214,51,132,.1);border-radius:16px;width:-moz-fit-content;width:fit-content;margin:8px 0;align-self:flex-start}.chatInterface_typingMessage__e3vGX{display:flex;align-items:center;gap:6px}.chatInterface_sakuraName__pIP9s{color:#d63384;font-size:.9rem;font-weight:600;font-style:italic}.chatInterface_typingDots__VDlmS{display:flex;gap:4px;justify-content:center}.chatInterface_typingDots__VDlmS span{width:6px;height:6px;background:#d63384;border-radius:50%;animation:chatInterface_sakura-typing__nrFuj 1.4s ease-in-out infinite}.chatInterface_typingDots__VDlmS span:first-child{animation-delay:0s}.chatInterface_typingDots__VDlmS span:nth-child(2){animation-delay:.2s}.chatInterface_typingDots__VDlmS span:nth-child(3){animation-delay:.4s}@keyframes chatInterface_sakura-typing__nrFuj{0%,60%,to{transform:translateY(0) scale(1);opacity:.7}30%{transform:translateY(-4px) scale(1.2);opacity:1}}.chatInterface_chatControls__4WXAM{background:var(--background-primary,#ffffff);border-top:1px solid var(--border-color,#e4e6eb);padding:16px;position:relative;z-index:10}.chatInterface_memoryControlsContainer__5Dac5{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:8px}.chatInterface_memoryToggleButton__4EMdl{background:linear-gradient(135deg,#667eea,#764ba2);color:white;border:none;border-radius:20px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px rgba(102,126,234,.3)}.chatInterface_memoryToggleButton__4EMdl:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,126,234,.4)}.chatInterface_memoryToggleButton__4EMdl.chatInterface_active__J3L5Y{background:linear-gradient(135deg,#764ba2,#667eea)}.chatInterface_mobileChatButton__NiyKv{background:linear-gradient(135deg,#10b981,#059669);color:white;text-decoration:none;border:none;border-radius:20px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px rgba(16,185,129,.3);display:inline-flex;align-items:center;gap:4px}.chatInterface_mobileChatButton__NiyKv:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(16,185,129,.4);text-decoration:none;color:white}.chatInterface_memoryInsightsPanel___NIQh{background:var(--background-secondary,#f8f9fa);border:1px solid var(--border-light,#e4e6ea);border-radius:12px;padding:16px;margin-bottom:12px;max-height:400px;overflow-y:auto;animation:chatInterface_slideDown__I8H2_ .3s ease-out}.chatInterface_memoryInsightsContainer__0Gdpo{width:100%}@keyframes chatInterface_slideDown__I8H2_{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:400px}}.chatInterface_settings___TpYL{display:flex;justify-content:flex-end;margin-bottom:12px}.chatInterface_enhancedChatToggle__0p8_C{display:flex;align-items:center;gap:8px;font-size:.875rem;color:var(--text-secondary,#65676b);cursor:pointer}.chatInterface_enhancedChatToggle__0p8_C input[type=checkbox]{width:16px;height:16px;cursor:pointer}.chatInterface_inputContainer__WfXb7{display:flex;gap:12px;max-width:800px;margin:0 auto}.chatInterface_input__hpCsj{flex:1 1;padding:12px 16px;border:1px solid var(--border-color,#e4e6eb);border-radius:24px;font-size:.95rem;background:var(--background-secondary,#f0f2f5);transition:all .2s ease;min-height:48px}.chatInterface_input__hpCsj:focus{outline:none;border-color:var(--primary-color,#0084ff);background:var(--background-primary,#ffffff);box-shadow:0 0 0 2px rgba(0,132,255,.1)}.chatInterface_textareaInput__2Qxn_{flex:1 1;padding:12px 16px;border:1px solid var(--border-color,#e4e6eb);border-radius:24px;font-size:.95rem;background:var(--background-secondary,#f0f2f5);transition:all .2s ease;min-height:48px;max-height:120px;resize:none;font-family:inherit;line-height:1.5;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#ccc transparent}.chatInterface_textareaInput__2Qxn_::-webkit-scrollbar{width:6px}.chatInterface_textareaInput__2Qxn_::-webkit-scrollbar-track{background:transparent}.chatInterface_textareaInput__2Qxn_::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.chatInterface_textareaInput__2Qxn_::-webkit-scrollbar-thumb:hover{background:#999}.chatInterface_textareaInput__2Qxn_:focus{outline:none;border-color:var(--primary-color,#0084ff);background:var(--background-primary,#ffffff);box-shadow:0 0 0 2px rgba(0,132,255,.1)}.chatInterface_sendButton__uwSK1{padding:8px 24px;background:var(--primary-color,#0084ff);color:white;border:none;border-radius:24px;font-weight:600;cursor:pointer;transition:all .2s ease;min-height:48px;min-width:80px}.chatInterface_sendButton__uwSK1:hover:not(:disabled){background:var(--primary-color-dark,#0066cc);transform:translateY(-1px)}.chatInterface_sendButton__uwSK1:disabled{background:var(--disabled-color,#cccccc);cursor:not-allowed}.chatInterface_hiddenFileInput__hWFBf{display:none}.chatInterface_imageUploadButton__D7MPM{padding:12px;background:var(--background-secondary,#f0f2f5);color:var(--text-primary,#1c1e21);border:1px solid var(--border-color,#e4e6eb);border-radius:50%;font-size:1.2rem;cursor:pointer;transition:all .2s ease;min-height:48px;min-width:48px;display:flex;align-items:center;justify-content:center}.chatInterface_imageUploadButton__D7MPM:hover{background:var(--primary-color,#0084ff);color:white;transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,132,255,.2)}.chatInterface_imagePreviewContainer__55yMQ{max-width:800px;margin:0 auto 12px;padding:12px;background:var(--background-secondary,#f0f2f5);border:1px solid var(--border-color,#e4e6eb);border-radius:12px}.chatInterface_imagePreview__lrHBS{display:flex;align-items:center;gap:12px;position:relative}.chatInterface_previewImage__XXf2R{width:80px;height:80px;object-fit:cover;border-radius:8px;border:1px solid var(--border-color,#e4e6eb)}.chatInterface_imageInfo__Vh0qK{flex:1 1;display:flex;flex-direction:column;gap:4px}.chatInterface_imageName__yehqn{font-weight:500;color:var(--text-primary,#1c1e21);font-size:.9rem}.chatInterface_imageSize___bPAz{color:var(--text-secondary,#65676b);font-size:.8rem}.chatInterface_removeImageButton__EXMFv{position:absolute;top:-8px;right:-8px;width:24px;height:24px;background:var(--error-color,#ff4757);color:white;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;transition:all .2s ease}.chatInterface_removeImageButton__EXMFv:hover{background:var(--error-color-dark,#e63946);transform:scale(1.1)}.chatInterface_imageHint__9KQXL{margin-top:8px;font-size:.8rem;color:var(--text-secondary,#65676b);text-align:center;padding:6px;background:var(--background-primary,#ffffff);border-radius:6px}.chatInterface_scrollToBottom__Cy0uJ{position:absolute;bottom:80px;right:20px;width:40px;height:40px;border-radius:50%;background:var(--primary-color,#0084ff);color:white;border:none;box-shadow:0 2px 5px rgba(0,0,0,.2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all .2s ease;opacity:0;transform:translateY(10px);animation:chatInterface_fadeIn__t8Jx_ .3s ease forwards;z-index:20}@keyframes chatInterface_fadeIn__t8Jx_{to{opacity:1;transform:translateY(0)}}.chatInterface_scrollToBottom__Cy0uJ:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.2)}[data-theme=dark] .chatInterface_chatContainer__nBWi7,[data-theme=dark] .chatInterface_messagesContainer__4GSDB{background:var(--background-primary)}[data-theme=dark] .chatInterface_typingIndicator__y4nh0{background:rgba(36,36,36,.95);border-color:rgba(95,99,104,.2)}[data-theme=dark] .chatInterface_sakuraName__pIP9s{color:#ff8ab9}[data-theme=dark] .chatInterface_typingDots__VDlmS span{background:#9aa0a6}[data-theme=dark] .chatInterface_chatControls__4WXAM{background:var(--background-primary);border-top-color:var(--border-color)}[data-theme=dark] .chatInterface_input__hpCsj,[data-theme=dark] .chatInterface_textareaInput__2Qxn_{background:var(--background-secondary);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .chatInterface_input__hpCsj:focus,[data-theme=dark] .chatInterface_textareaInput__2Qxn_:focus{background:var(--background-tertiary);border-color:var(--primary-color)}[data-theme=dark] .chatInterface_enhancedChatToggle__0p8_C{color:var(--text-secondary)}[data-theme=dark] .chatInterface_imagePreviewContainer__55yMQ{background:var(--background-secondary);border-color:var(--border-color)}[data-theme=dark] .chatInterface_imageName__yehqn{color:var(--text-primary)}[data-theme=dark] .chatInterface_imageHint__9KQXL,[data-theme=dark] .chatInterface_imageSize___bPAz{color:var(--text-secondary)}[data-theme=dark] .chatInterface_imageUploadButton__D7MPM{background:var(--background-secondary);color:var(--text-primary);border-color:var(--border-color)}[data-theme=dark] .chatInterface_imageHint__9KQXL{background:var(--background-secondary)}[data-theme=dark] .chatInterface_memoryInsightsPanel___NIQh{background:var(--background-secondary);border-color:var(--border-color)}@media (max-width:768px){.chatInterface_messagesContainer__4GSDB{padding:12px}.chatInterface_messagesWrapper__coypO{padding:12px 0}.chatInterface_inputContainer__WfXb7{gap:8px}.chatInterface_input__hpCsj{padding:10px 14px;font-size:.9rem}.chatInterface_sendButton__uwSK1{padding:8px 16px;min-width:60px}}.userMenu_userMenuContainer__9ntsd{position:relative}.userMenu_userButton__wGynl{background-color:var(--background-light,#f0f0f0);padding:6px 12px;border-radius:20px;font-size:.9rem;font-weight:500;border:none;cursor:pointer;transition:background-color .2s}.userMenu_userButton__wGynl:hover{background-color:var(--background-dark,#e0e0e0)}.userMenu_menuDropdown__OuDen{position:absolute;top:calc(100% + 8px);right:0;width:280px;background-color:white;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);padding:16px;z-index:1000;animation:userMenu_fadeIn__1TU3T .2s ease-out}.userMenu_switchUser___DTAD,.userMenu_userInfo__7oNYS{padding-bottom:16px}.userMenu_userInfo__7oNYS{border-bottom:1px solid #eee;margin-bottom:16px}.userMenu_switchUser___DTAD h3,.userMenu_userInfo__7oNYS h3{margin-top:0;margin-bottom:12px;font-size:1rem;color:#333}.userMenu_formGroup__hPFJH{margin-bottom:12px}.userMenu_formGroup__hPFJH label{display:block;margin-bottom:4px;font-size:.85rem;color:#555}.userMenu_formGroup__hPFJH input{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.userMenu_switchButton__7F6J_{width:100%;padding:10px;background-color:#0070f3;color:white;border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:background-color .2s}.userMenu_switchButton__7F6J_:hover{background-color:#0060df}@keyframes userMenu_fadeIn__1TU3T{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}