.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.api-settings-modal{background:white;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.3)}.modal-header{border-bottom:1px solid #e0e0e0;background-color:#f8f9fa}.modal-header h2{font-size:18px;color:#1f1f1f}.close-btn:hover{background-color:#f0f0f0}.modal-body{max-height:calc(90vh - 140px)}.tip-box{background-color:#f0f2f5;border:1px solid #e0e0e0;border-radius:8px;padding:15px;margin-bottom:20px;font-size:14px;color:#666}.tip-box code{background-color:#e0e0e0;padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:13px}.form-group input,.form-group select{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px rgba(0,123,255,.1)}.field-hint{font-style:italic}.fetch-models-btn{width:100%;padding:12px;background-color:#007bff;color:white;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s;margin-bottom:20px}.fetch-models-btn:hover:not(:disabled){background-color:#0056b3}.fetch-models-btn:disabled{background-color:#6c757d;cursor:not-allowed}.divider{margin:20px 0;border:none;border-top:1px solid #e0e0e0;opacity:.3}.toggle-group{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.toggle-label{flex:1}.toggle-label label{margin-bottom:0}.warning-text{color:#ff6b6b}.info-text,.warning-text{font-size:12px;font-weight:400;margin-top:5px;margin-bottom:0}.info-text{color:#999}.toggle-group input[type=checkbox]{width:auto;height:20px;margin:0;flex-shrink:0}.number-input{width:80px!important;text-align:center;flex-shrink:0}.modal-footer{display:flex;gap:10px;padding:20px;border-top:1px solid #e0e0e0;background-color:#f8f9fa}.cancel-btn,.save-btn{padding:12px 20px;border-radius:8px;transition:background-color .2s}.cancel-btn{background-color:#f8f9fa;border:1px solid #ddd}.cancel-btn:hover{background-color:#e9ecef}.save-btn{background-color:#007bff}.save-btn:hover{background-color:#0056b3}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.modal-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.save-config-section{margin-bottom:20px;text-align:center}.save-config-btn{background:#4caf50;color:white;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease;margin-bottom:8px}.save-config-btn:hover:not(:disabled){background:#45a049}.save-config-btn:disabled{background:#ccc;cursor:not-allowed}.save-config-hint{display:block;font-size:12px;color:#666;line-height:1.4}.groupmember-platform-config-btn{background:#f3f4f6;color:#111827;border:1px solid #e5e7eb;padding:8px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.groupmember-platform-config-btn:hover:not(:disabled){background:#e5e7eb;border-color:#d1d5db}.groupmember-platform-config-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width:768px){.modal-overlay{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.api-settings-modal{width:95%;max-height:95vh}.modal-body,.modal-footer,.modal-header{padding:16px}}@media (max-width:480px){.modal-overlay{padding:0;align-items:stretch}.api-settings-modal{width:100%;height:100vh;max-height:100vh;border-radius:0;box-shadow:none;height:100dvh;max-height:100dvh}.modal-header{padding:max(12px,env(safe-area-inset-top)) 12px 12px}.modal-body{max-height:calc(100dvh - 140px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.modal-body,.modal-footer{padding:12px 12px calc(12px + env(safe-area-inset-bottom))}.toggle-group{flex-direction:column;gap:10px}.toggle-group input[type=checkbox]{align-self:flex-end}}@supports (height:100dvh){@media (max-width:480px){.api-settings-modal{height:100dvh;max-height:100dvh}.modal-body{max-height:calc(100dvh - 140px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}}}.api-config-selector{margin-bottom:20px;border:1px solid #e0e0e0;border-radius:8px;background:#fafafa}.selector-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f5f5f5;border-bottom:1px solid #e0e0e0;border-radius:8px 8px 0 0}.selector-header h3{margin:0;font-size:14px;font-weight:600;color:#333}.config-count{font-size:12px;color:#666;background:#e0e0e0;padding:2px 8px;border-radius:12px}.empty-message,.loading-message{padding:20px 16px;text-align:center;color:#666;font-size:14px}.empty-message .hint{font-size:12px;color:#999;margin-top:8px}.config-list{max-height:300px;overflow-y:auto}.config-item{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .2s ease}.config-item:last-child{border-bottom:none}.config-item:hover{background-color:#f8f8f8}.config-item.selected{background-color:#e3f2fd;border-left:3px solid #2196f3}.config-item.default{background-color:#f3e5f5}.config-item.default.selected{background-color:#e8eaf6}.config-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.config-row-1{gap:12px}.config-row-1,.config-row-2{display:flex;align-items:center;min-width:0}.config-name{font-weight:600;font-size:14px;color:#333;display:flex;align-items:center;gap:8px;flex-shrink:0}.default-badge{background:#9c27b0;color:white;font-size:10px;padding:2px 6px;border-radius:10px;font-weight:400}.config-url{color:#666;font-family:monospace;flex:1;min-width:0}.config-model,.config-url{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-model{color:#888;background:#f0f0f0;padding:2px 8px;border-radius:4px;display:inline-block;max-width:200px}.config-actions{display:flex;gap:8px;margin-left:12px}.set-default-btn{padding:4px 8px;border:none;border-radius:4px;font-size:11px;cursor:pointer;transition:background-color .2s ease;background:#4caf50;color:white}.set-default-btn:hover{background:#45a049}.api-delete-btn{width:24px;height:24px;border:none;border-radius:50%;background:#f44336;color:white;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1}.api-delete-btn:hover{background:#da190b;transform:scale(1.1)}.config-list::-webkit-scrollbar{width:6px}.config-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.config-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.config-list::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.save-config-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.save-config-dialog{background:white;border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.15);width:90%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e0e0e0;background:#f8f9fa}.dialog-header h3{margin:0;font-size:16px;font-weight:600;color:#333}.close-btn{width:24px;height:24px;border-radius:4px;transition:background-color .2s ease}.close-btn:hover{background:#e0e0e0}.dialog-body{padding:20px;flex:1;overflow-y:auto}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.form-group input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px rgba(33,150,243,.1)}.field-hint{display:block;margin-top:6px;font-size:12px;color:#666;line-height:1.4}.config-preview{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;padding:16px;margin-top:20px}.config-preview h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#333}.preview-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f0f0f0}.preview-item:last-child{border-bottom:none}.preview-label{font-size:13px;color:#666;font-weight:500;min-width:80px}.preview-value{font-size:13px;color:#333;font-family:monospace;background:#fff;padding:2px 6px;border-radius:4px;border:1px solid #e0e0e0;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-footer{display:flex;gap:12px;padding:16px 20px;border-top:1px solid #e0e0e0;background:#f8f9fa}.cancel-btn,.save-btn{flex:1;padding:10px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.cancel-btn{background:#f0f0f0;color:#666}.cancel-btn:hover{background:#e0e0e0}.save-btn{background:#2196f3}.save-btn:hover:not(:disabled){background:#1976d2}.save-btn:disabled{background:#ccc}.personal-settings-modal{background:white;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.3)}.personal-settings-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0;background-color:#f8f9fa}.personal-settings-modal .modal-header h2{margin:0;font-size:18px;font-weight:600;color:#1f1f1f}.personal-settings-modal .close-btn{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.personal-settings-modal .close-btn:hover{background-color:#f0f0f0}.personal-settings-modal .modal-body{padding:20px;max-height:calc(90vh - 160px);overflow-y:auto}.personal-settings-modal .form-group{margin-bottom:20px;position:relative}.personal-settings-modal .form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.personal-settings-modal .form-group input,.personal-settings-modal .form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:14px;font-family:inherit;transition:border-color .2s,box-shadow .2s;resize:vertical}.personal-settings-modal .form-group input:focus,.personal-settings-modal .form-group textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px rgba(0,123,255,.1)}.personal-settings-modal .char-count{position:absolute;bottom:-20px;right:0;font-size:12px;color:#666}.personal-settings-modal .tip-box{background-color:#f0f2f5;border:1px solid #e0e0e0;border-radius:8px;padding:15px;font-size:14px;color:#666;margin-top:10px}.personal-settings-modal .modal-footer{display:flex;flex-wrap:wrap;gap:8px;padding:16px 20px;border-top:1px solid #e0e0e0;background-color:#f8f9fa;position:sticky;bottom:0;z-index:10}.personal-settings-modal .cancel-btn,.personal-settings-modal .save-btn{flex:1;min-width:100px;padding:10px 16px;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .2s;text-align:center}.personal-settings-modal .cancel-btn{background-color:#f8f9fa;color:#666;border:1px solid #ddd}.personal-settings-modal .cancel-btn:hover{background-color:#e9ecef}.personal-settings-modal .save-btn{background-color:#007bff;color:white}.personal-settings-modal .save-btn:hover{background-color:#0056b3}.avatar-upload-container{display:flex;flex-direction:column;align-items:center;gap:12px}.avatar-preview{width:100px;height:100px;border-radius:50%;border:2px dashed #ddd;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;background-color:#f8f9fa}.avatar-preview:hover{border-color:#007bff;background-color:#f0f8ff;transform:scale(1.05)}.avatar-preview.uploading{pointer-events:none}.avatar-image{width:100%;height:100%;object-fit:cover}.avatar-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:#666;font-size:12px}.avatar-placeholder span:first-child{font-size:24px}.upload-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.7);display:flex;flex-direction:column;align-items:center;justify-content:center;color:white;font-size:12px;gap:8px}.upload-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:white;border-radius:50%;animation:spin 1s linear infinite}.avatar-tips{text-align:center;font-size:12px;color:#666;line-height:1.4}.avatar-tips p{margin:0}.mask-persona-toolbar{display:flex;justify-content:flex-end;margin:12px 0 8px}.mask-persona-toolbar-btn{padding:8px 14px;border-radius:8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:1px solid transparent;cursor:pointer;font-size:13px;font-weight:600;box-shadow:0 2px 4px rgba(99,102,241,.2)}.mask-persona-toolbar-btn:hover{background:linear-gradient(135deg,#5855eb,#7c3aed)}.mask-persona-list{display:flex;flex-direction:column;gap:12px;max-height:250px;overflow-y:auto;padding:4px}.mask-persona-list::-webkit-scrollbar{width:6px}.mask-persona-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.mask-persona-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.mask-persona-list::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.mask-persona-item{border:1px solid #e5e7eb;border-radius:12px;padding:12px 130px 12px 12px;background:#ffffff;box-shadow:0 1px 2px rgba(0,0,0,.06);transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;min-height:72px}.mask-persona-item:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#6366f1,#8b5cf6);opacity:0;transition:opacity .2s ease}.mask-persona-item:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.12),0 4px 10px rgba(0,0,0,.08);border-color:#d1d5db}.mask-persona-item:hover:before{opacity:1}.mask-persona-item.active{border-color:#6366f1;background:linear-gradient(135deg,#fafaff,#f8faff);box-shadow:0 0 0 3px rgba(99,102,241,.1),0 4px 12px rgba(99,102,241,.15)}.mask-persona-item.active:before{opacity:0}.mask-persona-item.selected{outline:2px solid #8b5cf6;outline-offset:0;box-shadow:0 0 0 3px rgba(139,92,246,.15)}.mask-persona-main{display:flex;gap:10px;align-items:center;margin-bottom:6px}.mask-persona-avatar{width:52px;height:50px;border-radius:12px;overflow:hidden;border:2px solid #f3f4f6;cursor:pointer;transition:all .2s ease;flex-shrink:0;position:relative}.mask-persona-avatar:after{content:"";position:absolute;inset:0;border-radius:10px;background:linear-gradient(45deg,rgba(99,102,241,.1),rgba(139,92,246,.1));opacity:0;transition:opacity .2s ease}.mask-persona-avatar:hover{border-color:#6366f1;transform:scale(1.05)}.mask-persona-avatar:hover:after{opacity:1}.mask-persona-info{flex:1;min-width:0}.mask-persona-title{display:flex;align-items:center;gap:10px;margin-bottom:6px}.mask-persona-name{font-weight:600;color:#111827;font-size:15px;line-height:1.3;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mask-persona-badge{font-size:11px;padding:3px 8px;border-radius:12px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#ffffff;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.1);box-shadow:0 1px 2px rgba(99,102,241,.2)}.mask-persona-bio{color:#6b7280;font-size:12px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:4px}.mask-persona-actions{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;gap:6px;align-items:center;justify-content:flex-end;width:118px;flex-wrap:wrap}.mask-persona-action{padding:10px 12px;border-radius:8px;font-size:12px;font-weight:500;border:1px solid transparent;cursor:pointer;transition:all .15s ease;position:relative;overflow:hidden;text-align:center;min-width:70px}.mask-persona-action:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .3s ease}.mask-persona-action:hover:before{left:100%}.mask-persona-action:active{transform:translateY(1px) scale(.98)}.mask-persona-action-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#ffffff;box-shadow:0 2px 4px rgba(99,102,241,.2)}.mask-persona-action-primary:hover{background:linear-gradient(135deg,#5855eb,#7c3aed);box-shadow:0 4px 8px rgba(99,102,241,.3)}.mask-persona-action-secondary{background:#f8fafc;color:#475569;border:1px solid #e2e8f0}.mask-persona-action-secondary:hover{background:#f1f5f9;border-color:#cbd5e1;color:#334155}.mask-persona-action-danger{background:linear-gradient(135deg,#fef2f2,#fce7e7);color:#dc2626;border:1px solid #fecaca}.mask-persona-action-danger:hover{background:linear-gradient(135deg,#fee2e2,#fca5a5);border-color:#f87171;color:#b91c1c;box-shadow:0 2px 4px rgba(220,38,38,.15)}.mask-persona-action-icon{width:32px;height:32px;min-width:32px;min-height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:15px;line-height:1}.empty-list{text-align:center;padding:40px 20px;color:#9ca3af;font-size:14px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:12px;border:2px dashed #e5e7eb}@media (max-width:480px){.personal-settings-modal{width:95%;max-width:none}.personal-settings-modal .modal-body,.personal-settings-modal .modal-footer,.personal-settings-modal .modal-header{padding:15px}.avatar-preview{width:80px;height:80px}.avatar-placeholder span:first-child{font-size:20px}.avatar-placeholder{font-size:11px}}.trimupload-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.trimupload-modal{background:#fff;border-radius:12px;width:420px;max-width:92vw;box-shadow:0 10px 30px rgba(0,0,0,.2);overflow:hidden}.trimupload-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.06)}.trimupload-close{background:transparent;border:none;font-size:20px;cursor:pointer}.trimupload-body{padding:16px}.trimupload-crop-area{position:relative;margin:0 auto;background:#111;border-radius:8px;overflow:hidden;touch-action:none}.trimupload-image{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);will-change:transform;user-select:none;pointer-events:none}.trimupload-square-mask:before{content:"";position:absolute;inset:0;box-shadow:0 0 0 9999px rgba(0,0,0,.5);pointer-events:none}.trimupload-square-mask{position:absolute;top:1px;left:1px;right:1px;bottom:1px;border:1px solid rgba(255,255,255,.35)}.trimupload-circle-preview{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.trimupload-circle{width:60%;height:60%;border-radius:50%;border:1px dashed rgba(255,255,255,.45)}.trimupload-tips{margin-top:10px;color:#666;font-size:12px;text-align:center}.trimupload-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid rgba(0,0,0,.06)}.trimupload-btn{padding:8px 14px;border-radius:8px;border:1px solid #ddd;background:#fff;cursor:pointer}.trimupload-btn.primary{background:#1677ff;border-color:#1677ff;color:#fff}.groupmember-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000;animation:groupmember-fadeIn .2s ease-out}.groupmember-container{background:white;border-radius:12px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 20px rgba(0,0,0,.15);animation:groupmember-slideIn .3s ease-out}.groupmember-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e0e0e0;flex-shrink:0;background:linear-gradient(135deg,#f8f9fa,#ffffff);border-radius:12px 12px 0 0}.groupmember-header-title{margin:0;font-size:18px;font-weight:600;color:#333;display:flex;align-items:center;gap:8px}.groupmember-header-title:before{content:"👥";font-size:20px}.groupmember-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#666;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.groupmember-close-btn:hover{background-color:#f0f0f0;color:#333;transform:scale(1.1)}.groupmember-content{flex:1;overflow-y:auto;padding:20px;background:#fafafa}.groupmember-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;background:white;border-radius:8px;border:1px solid #e0e0e0}.groupmember-list-title{margin:0;font-size:16px;color:#333;font-weight:600;display:flex;align-items:center;gap:8px}.groupmember-list-title:before{content:"📋";font-size:16px}.groupmember-add-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:white;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:6px}.groupmember-add-btn:before{content:"➕";font-size:12px}.groupmember-add-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,123,255,.3)}.groupmember-list{display:flex;flex-direction:column;gap:12px}.groupmember-item{display:flex;align-items:center;padding:16px;border:1px solid #e0e0e0;border-radius:12px;background:white;transition:all .2s ease;position:relative;overflow:hidden}.groupmember-item:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(135deg,#007bff,#0056b3);opacity:0;transition:opacity .2s ease}.groupmember-item:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.1);border-color:#007bff}.groupmember-item:hover:before{opacity:1}.groupmember-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;margin-right:16px;border:3px solid #f0f0f0;transition:border-color .2s ease}.groupmember-item:hover .groupmember-avatar{border-color:#007bff}.groupmember-info{flex:1;min-width:0}.groupmember-name{font-weight:600;font-size:16px;color:#333;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.groupmember-original-name{font-size:12px;color:#666;margin-bottom:4px;font-style:italic}.groupmember-persona{font-size:13px;color:#888;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.groupmember-actions{display:flex;gap:8px;flex-shrink:0}.groupmember-action-btn{padding:6px 12px;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:4px}.groupmember-edit-btn{background:linear-gradient(135deg,#17a2b8,#138496);color:white}.groupmember-edit-btn:before{content:"✏️";font-size:10px}.groupmember-edit-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(23,162,184,.3)}.groupmember-remove-btn{background:linear-gradient(135deg,#dc3545,#c82333);color:white}.groupmember-remove-btn:before{content:"🗑️";font-size:10px}.groupmember-remove-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(220,53,69,.3)}.groupmember-empty{text-align:center;padding:60px 20px;color:#666;background:white;border-radius:12px;border:2px dashed #e0e0e0}.groupmember-empty:before{content:"👥";font-size:48px;display:block;margin-bottom:16px;opacity:.5}.groupmember-empty-text{font-size:16px;font-weight:500;margin-bottom:8px}.groupmember-empty-hint{font-size:14px;color:#999}.groupmember-add-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px;background:white;border-radius:8px;border:1px solid #e0e0e0}.groupmember-add-title{margin:0;font-size:16px;color:#333;font-weight:600;display:flex;align-items:center;gap:8px}.groupmember-add-title:before{content:"➕";font-size:16px}.groupmember-back-btn{background:linear-gradient(135deg,#6c757d,#545b62);color:white;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:6px}.groupmember-back-btn:before{content:"←";font-size:12px}.groupmember-back-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(108,117,125,.3)}.groupmember-tabs{display:flex;border-bottom:1px solid #e0e0e0;margin-bottom:20px;background:white;border-radius:8px 8px 0 0;overflow:hidden}.groupmember-tab{background:none;padding:12px 20px;cursor:pointer;font-size:14px;color:#666;border:none;border-bottom:3px solid transparent;transition:all .2s ease;flex:1;text-align:center;font-weight:500}.groupmember-tab.active{border-bottom-color:#007bff}.groupmember-tab.active,.groupmember-tab:hover{color:#007bff;background:#f8f9ff}.groupmember-tab:before{content:"📋";margin-right:8px;font-size:12px}.groupmember-tab:nth-child(2):before{content:"✨"}.groupmember-contacts-section{background:white;border-radius:8px;padding:16px;border:1px solid #e0e0e0;margin-bottom:16px}.groupmember-contacts-title{font-size:14px;color:#333;margin-bottom:12px;font-weight:600;display:flex;align-items:center;gap:8px}.groupmember-contacts-title:before{content:"👤";font-size:14px}.groupmember-contacts-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.groupmember-contact-item{display:flex;align-items:center;padding:8px;border-radius:6px;transition:background-color .2s ease}.groupmember-contact-item:hover{background-color:#f8f9ff}.groupmember-contact-checkbox{margin-right:12px;width:18px;height:18px;accent-color:#007bff}.groupmember-contact-label{display:flex;align-items:center;cursor:pointer;flex:1;padding:4px;border-radius:4px;transition:background-color .2s ease}.groupmember-contact-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;margin-right:12px;border:2px solid #f0f0f0}.groupmember-contact-name{font-size:14px;color:#333;font-weight:500}.groupmember-confirm-btn{background:linear-gradient(135deg,#28a745,#218838);color:white;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;width:100%;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.groupmember-confirm-btn:before{content:"✅";font-size:12px}.groupmember-confirm-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(40,167,69,.3)}.groupmember-create-section{background:white;border-radius:8px;padding:16px;border:1px solid #e0e0e0}.groupmember-create-title{font-size:14px;color:#333;margin-bottom:16px;padding-top:16px;border-top:1px solid #e0e0e0;font-weight:600;display:flex;align-items:center;gap:8px}.groupmember-create-title:before{content:"✨";font-size:14px}.groupmember-form-group{margin-bottom:16px}.groupmember-form-label{display:block;font-size:14px;font-weight:600;color:#333;margin-bottom:8px}.groupmember-form-input,.groupmember-form-textarea{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;box-sizing:border-box;transition:all .2s ease;background:#fafafa}.groupmember-form-input:focus,.groupmember-form-textarea:focus{outline:none;border-color:#007bff;background:white;box-shadow:0 0 0 3px rgba(0,123,255,.1)}.groupmember-form-textarea{resize:vertical;min-height:80px;font-family:inherit}.groupmember-avatar-upload{display:flex;align-items:center;gap:16px;padding:16px;background:#f8f9fa;border-radius:8px;border:2px dashed #e0e0e0}.groupmember-avatar-preview{width:60px;height:60px;border-radius:50%;object-fit:cover;border:3px solid #e0e0e0;transition:border-color .2s ease}.groupmember-avatar-upload:hover .groupmember-avatar-preview{border-color:#007bff}.groupmember-avatar-upload-btn{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #dee2e6;padding:10px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:6px}.groupmember-avatar-upload-btn:before{content:"📷";font-size:12px}.groupmember-avatar-upload-btn:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6);border-color:#007bff;transform:translateY(-1px)}.groupmember-create-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:white;border:none;padding:14px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;width:100%;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.groupmember-create-btn:before{content:"✨";font-size:12px}.groupmember-create-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,123,255,.3)}.groupmember-edit-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px;background:white;border-radius:8px;border:1px solid #e0e0e0}.groupmember-edit-title{margin:0;font-size:16px;color:#333;font-weight:600;display:flex;align-items:center;gap:8px}.groupmember-edit-title:before{content:"✏️";font-size:16px}.groupmember-edit-actions{display:flex;gap:12px;margin-top:20px}.groupmember-save-btn{background:linear-gradient(135deg,#28a745,#218838);color:white;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;flex:1;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.groupmember-save-btn:before{content:"💾";font-size:12px}.groupmember-save-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(40,167,69,.3)}.groupmember-cancel-btn{background:linear-gradient(135deg,#6c757d,#545b62);color:white;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;flex:1;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.groupmember-cancel-btn:before{content:"❌";font-size:12px}.groupmember-cancel-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(108,117,125,.3)}@keyframes groupmember-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes groupmember-slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:768px){.groupmember-container{width:95%;max-height:90vh;margin:10px}.groupmember-content{padding:16px}.groupmember-item{flex-direction:column;align-items:flex-start;gap:12px;padding:12px}.groupmember-actions{align-self:flex-end;flex-wrap:wrap}.groupmember-edit-actions,.groupmember-tabs{flex-direction:column}.groupmember-tab{border-bottom:none;border-right:3px solid transparent}.groupmember-tab.active{border-bottom-color:transparent;border-right-color:#007bff}.groupmember-avatar-upload{flex-direction:column;text-align:center}}@media (max-width:480px){.groupmember-header{padding:12px 16px}.groupmember-header-title{font-size:16px}.groupmember-content{padding:12px}.groupmember-item{padding:10px}.groupmember-avatar{width:40px;height:40px;margin-right:12px}.groupmember-name{font-size:14px}.groupmember-action-btn{padding:4px 8px;font-size:11px}}.groupmember-content::-webkit-scrollbar{width:6px}.groupmember-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.groupmember-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.groupmember-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.groupmember-loading{display:flex;justify-content:center;align-items:center;padding:40px;color:#666}.groupmember-loading:before{content:"⏳";font-size:24px;margin-right:12px;animation:groupmember-spin 1s linear infinite}@keyframes groupmember-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.groupmember-error{text-align:center;padding:40px 20px;color:#dc3545;background:#fff5f5;border:1px solid #fecaca;border-radius:8px}.groupmember-error:before{content:"⚠️";font-size:24px;display:block;margin-bottom:12px}.groupmember-error-text{font-size:16px;font-weight:500;margin-bottom:8px}.groupmember-error-hint{font-size:14px;color:#999}.memory-manager-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:white;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.3);width:90%;max-width:600px;max-height:80vh;overflow:hidden;z-index:1001}.member-info{display:flex;align-items:center;flex:1;min-width:0}.member-avatar{border-radius:50%;margin-right:10px;flex-shrink:0}.member-details{flex:1;min-width:0}.member-name{font-weight:600;color:#333;margin-bottom:3px;font-size:13px}.member-persona{color:#666;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.memory-manager-modal .action-btn{padding:4px 8px!important;border:none!important;border-radius:0!important;background:transparent!important;color:#007bff!important;font-size:10px!important;cursor:pointer!important;transition:all .2s!important;white-space:nowrap!important;line-height:1.2!important;font-weight:400!important;text-transform:none!important;letter-spacing:normal!important;text-decoration:underline!important}.memory-manager-modal .action-btn:hover:not(:disabled){background:transparent!important;color:#0056b3!important;text-decoration:none!important}.memory-manager-modal .action-btn:disabled{opacity:.5!important;cursor:not-allowed!important}.memory-manager-modal .refresh-btn:hover{color:#9c27b0!important}.memory-manager-modal .unlink-btn:hover{color:#f44336!important}.memory-manager-modal .settings-btn:hover{color:#ff9800!important}.link-select{padding:5px 8px;border:1px solid #ddd;border-radius:5px;background:white;font-size:11px;cursor:pointer;min-width:110px}.link-select:focus{outline:none;border-color:#007bff}.link-select:disabled{opacity:.5;cursor:not-allowed}.no-memory{text-align:center;padding:40px 20px}@media (max-width:768px){.memory-manager-modal{width:95%;max-height:85vh}.memory-item{flex-direction:column;align-items:flex-start;gap:12px}.memory-status{align-items:flex-start;margin:0}.memory-actions{width:100%;flex-direction:row;justify-content:flex-end}.action-btn{flex:1;max-width:80px}.link-select{width:100%}}.single-chat-memory-manager-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:white;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.3);width:90%;max-width:600px;max-height:80vh;overflow:hidden;z-index:1001}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee;background:#f8f9fa}.modal-header h2{margin:0;font-size:16px;color:#333;font-weight:600}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.close-btn:hover{background-color:#eee}.modal-body{padding:20px;max-height:60vh;overflow-y:auto}.memory-info{margin-bottom:20px;padding:15px;background:#f0f8ff;border-radius:8px;border-left:4px solid #007bff}.memory-info p{margin:0;color:#555;font-size:12px;line-height:1.4}.memory-list{display:flex;flex-direction:column;gap:15px}.memory-item{display:flex;align-items:center;padding:12px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;transition:all .2s}.memory-item:hover{border-color:#007bff;box-shadow:0 2px 8px rgba(0,123,255,.1)}.group-info{display:flex;align-items:center;flex:1;min-width:0}.group-avatar{border-radius:50%;margin-right:10px;flex-shrink:0}.group-details{flex:1;min-width:0}.group-name{font-weight:600;color:#333;margin-bottom:3px;font-size:13px}.group-memory-info{color:#666;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.memory-stats{display:flex;flex-direction:column;gap:2px}.memory-count{color:#007bff;font-weight:500}.memory-breakdown{display:flex;gap:8px;font-size:10px}.normal-memory{color:#28a745}.story-memory{color:#6f42c1}.memory-limits{margin-top:4px}.limit-info{font-size:9px;color:#888;background:#f0f0f0;padding:2px 6px;border-radius:3px}.memory-status{margin:0 12px;min-width:110px}.linked-status,.memory-status,.unlinked-status{display:flex;flex-direction:column;align-items:flex-end}.linked-status,.unlinked-status{gap:4px}.status-badge{padding:3px 6px;border-radius:10px;font-size:10px;font-weight:500;text-transform:uppercase}.status-badge.linked{background:#d4edda;color:#155724}.status-badge.unlinked{background:#f8d7da;color:#721c24}.memory-count{font-size:11px;color:#666}.last-updated{font-size:10px;color:#999}.no-memory{font-size:11px;color:#999;font-style:italic}.memory-actions{display:flex;flex-direction:column;gap:4px;min-width:80px;padding:2px}.single-chat-memory-manager-modal .action-btn{padding:4px 8px!important;border:none!important;border-radius:0!important;background:transparent!important;color:#007bff!important;font-size:10px!important;cursor:pointer!important;transition:all .2s!important;white-space:nowrap!important;line-height:1.2!important;font-weight:400!important;text-transform:none!important;letter-spacing:normal!important;text-decoration:underline!important}.single-chat-memory-manager-modal .action-btn:hover:not(:disabled){background:transparent!important;color:#0056b3!important;text-decoration:none!important}.single-chat-memory-manager-modal .action-btn:disabled{opacity:.5!important;cursor:not-allowed!important}.single-chat-memory-manager-modal .refresh-btn:hover{color:#9c27b0!important}.single-chat-memory-manager-modal .unlink-btn:hover{color:#f44336!important}.single-chat-memory-manager-modal .link-btn:hover{color:#4caf50!important}.single-chat-memory-manager-modal .settings-btn:hover{color:#ff9800!important}.no-groups{text-align:center;color:#999;font-style:italic;padding:40px 20px}.memory-messages{display:flex;flex-direction:column;gap:12px}.memory-message{padding:10px;border-radius:8px;border-left:3px solid}.memory-message.user{background:#e3f2fd;border-left-color:#2196f3}.memory-message.assistant{background:#f3e5f5;border-left-color:#9c27b0}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3px}.message-sender{font-weight:600;font-size:11px;color:#666}.message-mode{font-size:9px;color:#999;background:#f5f5f5;padding:1px 4px;border-radius:3px}.message-content{font-size:12px;color:#333;line-height:1.3;margin-bottom:3px}.message-time{font-size:10px;color:#999;text-align:right}.memory-message.story-message{border-left-color:#6f42c1;background:#f8f5ff}.memory-message.normal-message{border-left-color:#28a745;background:#f0fff4}@media (max-width:768px){.single-chat-memory-manager-modal{width:95%;max-height:85vh}.memory-item{flex-direction:column;align-items:flex-start;gap:12px}.memory-status{align-items:flex-start;margin:0}.memory-actions{width:100%;flex-direction:row;justify-content:flex-end}.action-btn{flex:1;max-width:80px}}.limit-settings-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:white;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.3);width:90%;max-width:400px;max-height:80vh;overflow:hidden;z-index:1003}.limit-settings-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1002}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #eee;background:#f8f9fa}.settings-header h3{margin:0;font-size:16px;color:#333;font-weight:600}.settings-header .close-btn{background:none;border:none;font-size:20px;cursor:pointer;color:#666;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.settings-header .close-btn:hover{background-color:#eee;color:#333}.settings-content{padding:20px}.limit-input-group{margin-bottom:20px}.limit-input-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.limit-input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;margin-bottom:4px}.limit-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px rgba(0,123,255,.25)}.limit-hint{font-size:12px;color:#666}.settings-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.save-btn{background:#007bff;color:white;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;transition:background-color .2s}.save-btn:hover:not(:disabled){background:#0056b3}.save-btn:disabled{opacity:.6;cursor:not-allowed}.cancel-btn{background:#6c757d;color:white;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;transition:background-color .2s}.cancel-btn:hover{background:#545b62}.send-red-packet-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.send-red-packet-modal{background:#fff;border-radius:12px;width:100%;max-width:400px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px rgba(0,0,0,.3);animation:slideUp .3s ease-out}.red-packet-header{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);color:white;padding:16px 20px;border-radius:12px 12px 0 0;position:relative;text-align:center}.red-packet-header .redpacket-close-btn{position:absolute;left:16px;top:50%;transform:translateY(-50%);background:none;border:none;color:white;font-size:24px;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.red-packet-header .redpacket-close-btn:hover:not(:disabled){background:rgba(255,255,255,.2)}.red-packet-header .redpacket-close-btn:disabled{opacity:.5;cursor:not-allowed}.red-packet-header h3{margin:0;font-size:18px;font-weight:600}.recipient-info{margin-top:8px;font-size:14px;opacity:.9}.red-packet-preview{padding:20px;background:linear-gradient(135deg,#ff6b6b,#ff8e8e);display:flex;justify-content:center}.red-packet-bg{background:#d63031;border-radius:12px;padding:18px;text-align:center;color:white;box-shadow:0 4px 16px rgba(214,48,49,.3);min-width:200px}.red-packet-icon{font-size:48px;margin-bottom:12px}.red-packet-title{margin-bottom:8px;opacity:.9}.red-packet-amount{font-size:28px}.amount-input-section{padding:18px 20px;background:#f8f9fa}.balance-info{text-align:center;margin-bottom:16px;color:#666;font-size:14px}.amount-input-container{display:flex;align-items:center;background:white;border:2px solid #e9ecef;border-radius:8px;padding:12px 16px;margin-bottom:12px;transition:border-color .2s}.amount-input-container:focus-within{border-color:#ff6b6b}.currency-symbol{margin-right:8px}.amount-input,.currency-symbol{font-size:24px;font-weight:700;color:#333}.amount-input{flex:1;border:none;outline:none;background:transparent}.amount-input::placeholder{color:#adb5bd}.error-message{color:#dc3545;font-size:14px;margin-bottom:12px;text-align:center}.message-input-section{padding:16px 20px;border-top:1px solid #e9ecef}.message-input-section label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#333}.message-input{width:100%;padding:12px;border:2px solid #e9ecef;border-radius:6px;font-size:14px;outline:none;transition:border-color .2s;box-sizing:border-box}.message-input:focus{border-color:#ff6b6b}.message-input:disabled{background:#f8f9fa;opacity:.7}.message-length{text-align:right;font-size:12px;color:#6c757d;margin-top:4px}.send-button-section{padding:16px 20px;border-top:1px solid #e9ecef}.send-button{width:100%;background:linear-gradient(135deg,#ff6b6b,#ff8e8e);color:white;border:none;border-radius:8px;padding:16px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px rgba(255,107,107,.3)}.send-button:hover:not(:disabled){background:linear-gradient(135deg,#ff5252,#ff7979);box-shadow:0 4px 12px rgba(255,107,107,.4);transform:translateY(-1px)}.send-button:disabled{background:#adb5bd;cursor:not-allowed;box-shadow:none;transform:none}@media (max-width:480px){.send-red-packet-overlay{padding:10px}.send-red-packet-modal{max-height:85vh;margin:10px}.red-packet-preview{padding:20px 15px}.red-packet-bg{min-width:160px;padding:20px}.red-packet-icon{font-size:40px}.red-packet-amount{font-size:24px}.amount-input-section,.message-input-section,.send-button-section{padding:16px}.red-packet-header .redpacket-close-btn{width:44px;height:44px;font-size:20px}.amount-input-container,.send-button{min-height:48px}.message-input{min-height:44px}}@media (max-height:600px){.send-red-packet-modal{max-height:90vh;overflow-y:auto}.red-packet-preview{padding:15px}.red-packet-bg{padding:16px}.red-packet-icon{font-size:36px;margin-bottom:8px}.amount-input-section,.message-input-section,.send-button-section{padding:10px}}@media (max-width:360px){.send-red-packet-modal{max-height:80vh;margin:5px}.red-packet-header{padding:12px 16px}.red-packet-header h3{font-size:16px}.red-packet-preview{padding:15px 10px}.amount-input-section,.message-input-section,.send-button-section{padding:10px}}.receive-red-packet{position:relative;max-width:320px;margin:0 auto}.red-packet-cover{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(214,48,49,.3);transition:all .3s ease}.red-packet-cover.opened{box-shadow:0 4px 16px rgba(40,167,69,.3)}.red-packet-background{background:linear-gradient(135deg,#d63031,#e17055);padding:24px;position:relative;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:space-between}.red-packet-cover.opened .red-packet-background{background:linear-gradient(135deg,#28a745,#20c997)}.red-packet-pattern{position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 20%,rgba(255,255,255,.1) 2px,transparent 0),radial-gradient(circle at 80% 80%,rgba(255,255,255,.1) 2px,transparent 0),radial-gradient(circle at 40% 60%,rgba(255,255,255,.05) 1px,transparent 0);background-size:40px 40px,60px 60px,30px 30px;opacity:.6}.sender-info{text-align:center;color:white;z-index:2}.sender-avatar{margin-bottom:8px}.avatar-image{border-radius:50%;border:3px solid rgba(255,255,255,.3)}.sender-name{font-size:16px;font-weight:600;margin-bottom:8px}.red-packet-message{font-size:14px;opacity:.9;max-width:200px;line-height:1.4}.red-packet-icon-container{z-index:2;margin:20px 0}.red-packet-icon{font-size:80px;transition:transform .3s ease;cursor:pointer}.red-packet-icon.shaking{animation:shake .5s ease-in-out infinite}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px) rotate(-5deg)}75%{transform:translateX(5px) rotate(5deg)}}.amount-display{text-align:center;color:white;z-index:2}.amount-display.opened{color:white}.amount-value{font-size:32px;font-weight:700;margin-bottom:8px;color:#ffd700}.claim-status{font-size:14px;opacity:.9}.claim-time{font-size:12px;opacity:.7;margin-top:4px}.claim-hint{text-align:center;color:white;z-index:2}.hint-text{font-size:14px;opacity:.8;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.8}50%{opacity:1}}.click-area{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:flex-end;justify-content:center;padding-bottom:20px;cursor:pointer;z-index:3}.claim-button{background:rgba(255,255,255,.2);border:2px solid rgba(255,255,255,.3);border-radius:25px;padding:12px 24px;color:white;font-size:16px;font-weight:600;transition:all .3s ease;backdrop-filter:blur(10px)}.claim-button:hover{background:rgba(255,255,255,.3);border-color:rgba(255,255,255,.5);transform:translateY(-2px)}.claim-button.loading{pointer-events:none}.loading-spinner{display:flex;align-items:center;gap:8px}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.success-animation{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}.success-content{text-align:center;color:white;z-index:2}.success-icon{font-size:80px;margin-bottom:16px;animation:bounceIn .6s ease-out}@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}.success-text{font-size:20px;font-weight:600;margin-bottom:8px}.success-amount{font-size:36px;font-weight:700;color:#ffd700}.confetti{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.confetti-piece{position:absolute;width:8px;height:8px;animation:confetti-fall 3s ease-out forwards}.confetti-0{background:#ff6b6b;left:10%;animation-delay:0s}.confetti-1{background:#4ecdc4;left:30%;animation-delay:.2s}.confetti-2{background:#45b7d1;left:50%;animation-delay:.4s}.confetti-3{background:#f9ca24;left:70%;animation-delay:.6s}@keyframes confetti-fall{0%{top:-10px;transform:rotate(0deg);opacity:1}to{top:100vh;transform:rotate(2turn);opacity:0}}.red-packet-details{background:white;border-radius:8px;padding:16px;margin-top:16px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f0f0f0}.detail-item:last-child{border-bottom:none}.detail-label{font-size:14px;color:#666}.detail-value{font-size:14px;font-weight:500;color:#333}.detail-value.claimed{color:#28a745}.detail-value.unclaimed{color:#dc3545}@media (max-width:480px){.receive-red-packet{max-width:280px}.red-packet-background{padding:20px;min-height:240px}.red-packet-icon{font-size:60px}.amount-value{font-size:28px}.success-icon{font-size:60px}.success-amount{font-size:28px}}.red-packet-message{background:linear-gradient(135deg,#ff6b6b,#ff8e8e)!important;border-radius:8px!important;padding:12px!important;position:relative!important;border:1px solid rgba(255,255,255,.2)!important;max-width:280px!important;margin:8px 0!important;cursor:pointer!important;color:white!important;text-align:center!important}.red-packet-message.red_packet_send{background:linear-gradient(135deg,#4ecdc4,#44a08d)!important}.red-packet-message.red_packet_receive.claimed{background:linear-gradient(135deg,#95a5a6,#7f8c8d)!important}.red-packet-message.red_packet_request{background:linear-gradient(135deg,#f39c12,#e67e22)!important}.red-packet-icon{font-size:24px;margin-bottom:8px;text-align:center}.red-packet-content{color:white;text-align:center}.red-packet-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px}.red-packet-title{font-size:16px;font-weight:600}.red-packet-badge{background:rgba(255,255,255,.2);padding:2px 8px;border-radius:10px;font-size:12px;font-weight:500;border:1px solid rgba(255,255,255,.3)}.red-packet-badge.claimed{background:rgba(0,0,0,.2);border-color:rgba(0,0,0,.3)}.red-packet-badge.accepted{background:rgba(46,204,113,.8);border-color:rgba(46,204,113,1);color:white}.red-packet-badge.rejected{background:rgba(231,76,60,.8);border-color:rgba(231,76,60,1);color:white}.red-packet-badge.pending{background:rgba(241,196,15,.8);border-color:rgba(241,196,15,1);color:white}.red-packet-amount{font-size:24px;font-weight:700;color:#ffd700;margin-bottom:8px}.red-packet-message-text{font-size:14px;opacity:.9;margin-bottom:8px;line-height:1.4;max-width:200px;margin-left:auto;margin-right:auto}.red-packet-info{font-size:12px;opacity:.8;margin-bottom:4px}.info-text{background:rgba(255,255,255,.1);padding:2px 6px;border-radius:6px}.red-packet-time{font-size:11px;opacity:.7;margin-bottom:8px}.claim-time{margin-left:4px}.red-packet-action{position:absolute;bottom:8px;right:12px}.action-hint{background:rgba(255,255,255,.2);padding:4px 8px;border-radius:8px;font-size:11px;font-weight:500;border:1px solid rgba(255,255,255,.3);animation:pulse-hint 2s ease-in-out infinite}@keyframes pulse-hint{0%,to{opacity:.7}50%{opacity:1}}.red-packet-glow{position:absolute;top:-1px;left:-1px;right:-1px;bottom:-1px;background:rgba(255,107,107,.3);border-radius:9px;z-index:-1;animation:simple-glow 3s ease-in-out infinite}@keyframes simple-glow{0%,to{opacity:.3}50%{opacity:.6}}.red-packet-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.red-packet-modal-content{position:relative;max-width:400px;width:100%;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.redpacket-modal-close-btn{position:absolute;top:10px;right:50px;width:32px;height:32px;background:rgba(0,0,0,.6);color:white;border:none;border-radius:50%;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:background-color .2s}.redpacket-modal-close-btn:hover{background:rgba(0,0,0,.8)}.red-packet-message.user{background:linear-gradient(135deg,#007bff,#0056b3)!important}.red-packet-message.user.red_packet_send{background:linear-gradient(135deg,#28a745,#20c997)!important}@media (max-width:480px){.red-packet-message{max-width:240px;padding:14px!important}.red-packet-amount{font-size:20px}.red-packet-title{font-size:14px}.red-packet-message-text{font-size:13px;max-width:180px}.red-packet-modal-overlay{padding:10px}}.red-packet-message.red_packet_receive.unclaimed{animation:gentle-bounce 3s ease-in-out infinite}@keyframes gentle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.red-packet-message.red_packet_receive.claimed .red-packet-amount{color:#e9ecef;text-decoration:line-through;opacity:.7}.red-packet-message.red_packet_receive.claimed .action-hint{display:none}.red-packet-message.red_packet_request .red-packet-icon{animation:wiggle 2s ease-in-out infinite}@keyframes wiggle{0%,to{transform:rotate(0deg)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.ai-red-packet-response{position:relative;max-width:280px;margin:8px 0;cursor:default;background:none;border:none;box-shadow:none;padding:0}.ai-red-packet-response.ai{margin-right:auto}.response-container{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;padding:12px;position:relative;border:1px solid #dee2e6}.ai-red-packet-response.accepted .response-container{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-color:#28a745}.ai-red-packet-response.rejected .response-container{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border-color:#dc3545}.response-icon{font-size:24px;margin-bottom:8px;text-align:center}.response-content{color:#333;text-align:center}.response-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px}.response-title{font-size:16px;font-weight:600}.response-badge{padding:2px 8px;border-radius:10px;font-size:12px;font-weight:500;border:1px solid}.response-badge.accepted{background:rgba(40,167,69,.2);border-color:#28a745;color:#155724}.response-badge.rejected{background:rgba(220,53,69,.2);border-color:#dc3545;color:#721c24}.response-amount{font-size:24px;font-weight:700;margin-bottom:8px}.ai-red-packet-response.accepted .response-amount{color:#28a745}.ai-red-packet-response.rejected .response-amount{color:#dc3545}.response-message{font-size:14px;opacity:.9;margin-bottom:8px;line-height:1.4;max-width:200px;margin-left:auto;margin-right:auto}.response-time{font-size:11px;opacity:.7;margin-bottom:8px}@media (max-width:480px){.ai-red-packet-response{max-width:240px}.response-container{padding:14px}.response-amount{font-size:20px}.response-title{font-size:14px}.response-message{font-size:13px;max-width:180px}}.ai-red-packet-response{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-red-packet-response.accepted .response-container{box-shadow:0 2px 8px rgba(40,167,69,.2)}.ai-red-packet-response.rejected .response-container{box-shadow:0 2px 8px rgba(220,53,69,.2)}.chat-status-display{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#666;position:relative}.status-main{display:flex;align-items:center;gap:4px}.desktop-only{display:flex}.status-trigger{display:flex;align-items:center;gap:4px;cursor:pointer;padding:2px 6px;border-radius:4px;transition:background-color .2s ease;user-select:none}.status-trigger:hover{background-color:var(--theme-bg-tertiary,rgba(0,0,0,.05))}.status-arrow{font-size:8px;color:var(--theme-text-tertiary,#999);transition:transform .2s ease}.status-trigger:hover .status-arrow{transform:rotate(180deg)}.status-tooltip{background-color:var(--theme-bg-primary,#ffffff);border:1px solid var(--theme-border-color,#e0e0e0);border-radius:8px;box-shadow:0 4px 12px var(--theme-shadow-color,rgba(0,0,0,.15));padding:8px 12px;min-width:180px;max-width:250px;z-index:1000;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:var(--theme-tooltip-bg,var(--theme-bg-primary,#ffffff));color:var(--theme-tooltip-text,var(--theme-text-primary,#333333));border-color:var(--theme-tooltip-border,var(--theme-border-color,#e0e0e0))}.status-detail-item{display:flex;align-items:center;gap:6px;padding:4px 0;font-size:11px}.status-detail-item:not(:last-child){border-bottom:1px solid var(--theme-border-light,rgba(0,0,0,.05))}.status-label{font-weight:500;color:var(--theme-text-secondary,#666666);min-width:36px}.status-value{color:var(--theme-text-primary,#333333);flex:1;font-weight:400}.status-item{display:flex;align-items:center;gap:2px}.status-icon{font-size:10px;flex-shrink:0}.online-icon{font-size:8px}.status-text{font-size:13px;color:var(--theme-text-secondary,#666);font-weight:500}.status-separator{color:#999;font-size:10px;margin:0 2px}@media (max-width:767px){.chat-status-display{flex-direction:row;align-items:center;gap:8px;font-size:10px;flex-wrap:wrap}.status-main.desktop-only{display:none}.status-trigger{gap:3px;padding:2px 4px;border-radius:3px}.status-text{font-size:11px;font-weight:500}.status-arrow{font-size:7px}.status-tooltip{min-width:200px;max-width:280px;box-shadow:0 6px 20px var(--theme-shadow-color,rgba(0,0,0,.25));border-radius:12px;padding:12px 16px}.status-detail-item{font-size:12px;padding:6px 0}.status-label{min-width:40px}}@media (max-width:480px){.chat-status-display{font-size:9px;gap:4px}.status-text{font-size:10px;font-weight:500}.status-arrow{font-size:6px}.status-icon{font-size:8px}.status-tooltip{min-width:180px;max-width:250px;padding:10px 14px}.status-detail-item{font-size:11px;padding:5px 0}}@media (prefers-color-scheme:dark){.status-tooltip{--theme-tooltip-bg:var(--theme-bg-primary,#2d2d2d);--theme-tooltip-text:var(--theme-text-primary,#ffffff);--theme-tooltip-border:var(--theme-border-color,#444444);--theme-shadow-color:rgba(0,0,0,0.4)}.status-trigger:hover{background-color:var(--theme-bg-tertiary,rgba(255,255,255,.1))}}.extra-info-display{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;margin:16px 0;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1);position:relative}.extra-info-content{padding:16px;background:white;min-height:60px;line-height:1.6}.extra-info-content h1,.extra-info-content h2,.extra-info-content h3,.extra-info-content h4,.extra-info-content h5,.extra-info-content h6{margin:0 0 12px;color:#333}.extra-info-content p{margin:0 0 8px;color:#555}.extra-info-content ol,.extra-info-content ul{margin:8px 0;padding-left:20px}.extra-info-content li{margin:4px 0;color:#555}.extra-info-content blockquote{margin:12px 0;padding:8px 12px;border-left:4px solid #007bff;background:#f8f9fa;color:#666;font-style:italic}.extra-info-content code{background:#f1f3f4;padding:2px 6px;border-radius:4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;color:#d73a49}.extra-info-content pre{background:#f6f8fa;padding:12px;border-radius:6px;overflow-x:auto;border:1px solid #e1e4e8}.extra-info-content pre code{background:none;padding:0;color:#24292e}.extra-info-error{color:#dc3545;text-align:center;padding:20px;font-style:italic}@media (max-width:768px){.extra-info-display{margin:12px 0;border-radius:8px}.extra-info-content{padding:12px}}@media (prefers-color-scheme:dark){.extra-info-display{background:linear-gradient(135deg,#2d3748,#1a202c);border-color:#4a5568;box-shadow:0 2px 8px rgba(0,0,0,.3)}.extra-info-content{background:#2d3748;color:#e2e8f0}.extra-info-content h1,.extra-info-content h2,.extra-info-content h3,.extra-info-content h4,.extra-info-content h5,.extra-info-content h6{color:#f7fafc}.extra-info-content li,.extra-info-content p{color:#e2e8f0}.extra-info-content blockquote{background:#4a5568;color:#cbd5e0;border-left-color:#3182ce}.extra-info-content code{background:#4a5568;color:#fbb6ce}.extra-info-content pre{background:#4a5568;border-color:#718096}.extra-info-content pre code{color:#e2e8f0}}