*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.auth-page,body{min-height:100vh}.auth-page{overflow:hidden;position:relative}.login-top-announcement{align-items:center;background:linear-gradient(90deg,#f96,#ff5e62);box-shadow:0 2px 10px #ff5e624d;color:#fff;display:flex;font-size:13px;font-weight:500;gap:8px;justify-content:center;left:0;line-height:1.4;padding:8px 16px;position:fixed;right:0;text-align:center;top:0;word-break:keep-all;z-index:100}.login-top-announcement .announcement-icon{flex-shrink:0;font-size:14px}.login-top-announcement .announcement-text{white-space:normal}.auth-background{height:100%;left:0;position:fixed;top:0;width:100%;z-index:0}.bg-gradient{animation:gradientMove 15s ease infinite;border-radius:50%;filter:blur(80px);height:600px;opacity:.6;position:absolute;width:600px}.bg-gradient:first-child{background:linear-gradient(135deg,#667eea,#764ba2);left:-100px;top:-100px}.bg-gradient:nth-child(2){animation-delay:5s;background:linear-gradient(135deg,#f093fb,#f5576c);right:-150px;top:20%}.bg-gradient:nth-child(3){animation-delay:10s;background:linear-gradient(135deg,#4facfe,#00f2fe);bottom:-100px;left:30%}@keyframes gradientMove{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}}.auth-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px;position:relative;z-index:1}.auth-card{animation:cardFadeIn .6s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-radius:24px;box-shadow:0 25px 50px -12px #00000040;max-width:400px;padding:40px;width:100%}.auth-header{margin-bottom:32px;text-align:center}.auth-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 10px 30px #667eea4d;color:#fff;display:flex;font-size:28px;height:64px;justify-content:center;margin:0 auto 16px;width:64px}.auth-icon.admin-icon{background:linear-gradient(135deg,#f5576c,#f093fb);box-shadow:0 10px 30px #f5576c4d}.auth-icon.error-icon{background:linear-gradient(135deg,#ef4444,#f97316);box-shadow:0 10px 30px #ef44444d}.auth-title{color:#1a1a2e;font-size:28px;font-weight:700;margin-bottom:8px}.auth-subtitle{color:#6b7280;font-size:14px}.auth-form{gap:20px}.auth-form,.form-input-wrapper{display:flex;flex-direction:column}.form-input-wrapper{gap:8px}.form-label{color:#374151;font-size:14px;font-weight:500}.form-input-container{background:#f3f4f6;border:2px solid #0000;border-radius:12px;position:relative;transition:all .3s ease}.form-input-container.focused{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-input-container.error{background:#fef2f2;border-color:#ef4444}.form-input-container.focused.error{box-shadow:0 0 0 3px #ef44441a}.input-icon{color:#9ca3af;height:20px;left:14px;position:absolute;top:50%;transform:translateY(-50%);width:20px}.form-input{background:#0000;border:none;border-radius:12px;color:#1f2937;font-size:15px;outline:none;padding:14px 14px 14px 48px;width:100%}.form-input::placeholder{color:#9ca3af}.form-input:disabled{cursor:not-allowed;opacity:.6}.form-error{font-size:12px}.form-hint{color:#9ca3af;font-size:11px}.form-error-container{text-align:center}.submit-error{font-size:13px;font-weight:500}.captcha-wrapper{gap:10px}.captcha-container{align-items:center;flex-direction:row;gap:12px}.captcha-input{flex:1 1;padding:14px}.captcha-image-wrapper{align-items:center;display:flex;gap:8px}.captcha-image{border-radius:8px;cursor:pointer;height:44px;transition:transform .2s ease;width:100px}.captcha-image:hover{transform:scale(1.02)}.refresh-captcha-btn{align-items:center;background:#f3f4f6;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .2s ease;width:44px}.refresh-captcha-btn:hover:not(:disabled){background:#e5e7eb;color:#374151}.refresh-captcha-btn:active:not(:disabled){transform:rotate(180deg)}.refresh-captcha-btn:disabled{cursor:not-allowed;opacity:.5}.refresh-captcha-btn svg{height:20px;width:20px}.auth-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:14px 24px;transition:all .3s ease}.auth-btn:hover:not(:disabled){box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.auth-btn:active:not(:disabled){transform:translateY(0)}.auth-btn:disabled{cursor:not-allowed;opacity:.7}.auth-btn.admin-btn{background:linear-gradient(135deg,#f5576c,#f093fb);box-shadow:0 4px 15px #f5576c66}.auth-btn.admin-btn:hover:not(:disabled){box-shadow:0 6px 20px #f5576c80}.btn-loading{align-items:center;display:flex;gap:8px}.loading-spinner{animation:spin 1s linear infinite;height:20px;width:20px}.spinner-path{stroke-linecap:round;animation:spinnerDash 1.5s ease-in-out infinite}@keyframes spinnerDash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.auth-footer{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:8px;justify-content:center;margin-top:24px}.auth-link{background:none;border:none;color:#667eea;cursor:pointer;font-weight:500;transition:color .2s ease}.auth-link:hover{color:#764ba2;text-decoration:underline}.toast{animation:toastSlideIn .3s ease-out;border-radius:12px;box-shadow:0 10px 40px #00000026;padding:16px 24px;position:fixed;right:24px;top:24px;z-index:1000}@keyframes toastSlideIn{0%{opacity:0;transform:translateX(100px)}to{opacity:1;transform:translateX(0)}}.toast-error{background:#fef2f2;border:1px solid #fecaca}.toast-success{background:#ecfdf5;border:1px solid #a7f3d0}.toast-content{align-items:center;display:flex;font-size:14px;font-weight:500;gap:12px}.toast-error .toast-content{color:#dc2626}.toast-success .toast-content{color:#059669}.toast-icon{height:20px;width:20px}@media (max-width:768px){.auth-card{border-radius:20px;padding:32px 24px}.auth-icon,.auth-title{font-size:24px}.auth-icon{height:56px;width:56px}.form-input{font-size:16px;padding:16px 14px 16px 48px}.captcha-image{height:48px;width:90px}.refresh-captcha-btn{height:48px;width:48px}.auth-btn{font-size:17px;padding:16px 24px}.bg-gradient{filter:blur(60px);height:400px;width:400px}.toast{left:16px;right:16px;top:16px}}@media (max-width:480px){.auth-container{padding:16px}.auth-card{padding:24px 20px}.auth-header{margin-bottom:24px}.auth-title{font-size:22px}.auth-subtitle{font-size:13px}.auth-form{gap:16px}.captcha-image{height:44px;width:80px}}@media (max-width:768px){.announcement,.chat-area,.chat-input,.main-page,.message-list,.sidebar,.top-menu{display:none}.add-friend-overlay,.admin-panel-overlay,.confirm-modal-overlay,.points-center-overlay,.settings-overlay{z-index:1000}.add-friend-modal,.admin-panel,.confirm-modal,.points-center,.settings-modal{border-radius:20px;max-height:90vh;padding:20px;width:95%}.modal-header{padding:16px 20px}.modal-title{font-size:16px}.modal-content{padding:16px}.modal-input{font-size:15px;padding:12px 14px}.modal-btn{font-size:15px;padding:14px}}.main-page{animation:pageFadeIn .5s ease-out;background:#f5f7fa;display:flex;height:100vh;overflow:hidden}@keyframes pageFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.sidebar{animation:sidebarSlideIn .4s ease-out;background:linear-gradient(180deg,#1a1a2e,#16213e);box-shadow:4px 0 20px #00000026;display:flex;flex-direction:column;min-width:280px;width:300px}@keyframes sidebarSlideIn{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}.sidebar-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden;padding:20px}.user-info{align-items:center;background:#ffffff0d;border-radius:16px;display:flex;gap:16px;margin-bottom:20px;padding:16px}.user-avatar{flex-shrink:0;height:56px;overflow:hidden;width:56px}.user-avatar svg{height:28px;width:28px}.user-avatar img{border-radius:50%;height:100%;object-fit:cover;width:100%}.user-details{flex:1 1;min-width:0}.user-name{color:#1f2937;font-size:18px;font-weight:600;margin-bottom:4px}.sidebar .user-name,.user-info .user-name{color:#fff!important;text-shadow:0 1px 3px #0000004d}.user-chat-id{color:#6b7280;font-size:12px}.sidebar .user-chat-id,.user-info .user-chat-id{color:#ffffffa6!important}.user-level{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.level-badge{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:20px;display:flex;gap:4px}.level-icon,.level-text{font-size:12px}.level-text{color:#fff;font-weight:600}.points{align-items:center;color:#ffffffb3;display:flex;gap:4px}.points-icon,.points-text{font-size:14px}.points-text{font-weight:500}.sidebar-tabs{display:flex;gap:8px;margin-bottom:16px}.sidebar-tab{align-items:center;background:#ffffff0d;border:none;border-radius:10px;color:#ffffffb3;cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:500;gap:6px;justify-content:center;padding:10px 16px;transition:all .3s ease}.sidebar-tab svg{height:16px;width:16px}.sidebar-tab:hover{background:#ffffff1a;color:#fff}.sidebar-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea4d;color:#fff}.tab-content{flex:1 1;overflow:hidden}.public-channel-info{align-items:center;background:#ffffff0d;border-radius:12px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .3s ease}.public-channel-info:hover{background:#ffffff1a}.channel-avatar{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;color:#fff;display:flex;height:44px;justify-content:center;width:44px}.channel-avatar svg{height:22px;width:22px}.channel-info{flex:1 1}.channel-info .channel-name{color:#fff;font-size:15px;font-weight:600;margin-bottom:4px}.channel-online{align-items:center;color:#ffffff80;display:flex;font-size:12px;gap:6px}.online-dot{background:#10b981;border-radius:50%;height:8px;width:8px}.friend-list{display:flex;flex-direction:column;height:100%}.friend-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.friend-list-title{color:#ffffffb3;font-size:14px;font-weight:600}.friend-request-btn{align-items:center;background:#ffffff0d;border:none;border-radius:8px;color:#ffffffb3;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:6px 12px;transition:all .3s ease}.friend-request-btn svg{height:14px;width:14px}.friend-request-btn:hover{background:#ffffff1a;color:#fff}.friend-requests{background:#ffffff08;border-radius:10px}.request-empty{color:#fff6;font-size:12px}.friend-scroll-container{display:flex;flex:1 1;flex-direction:column;gap:8px;overflow-y:auto}.friend-scroll-container::-webkit-scrollbar{width:4px}.friend-scroll-container::-webkit-scrollbar-track{background:#0000}.friend-scroll-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.friend-item{align-items:center;background:#ffffff08;border-radius:12px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .3s ease}.friend-item:hover{background:#ffffff14;transform:translateX(4px)}.friend-item.active{background:linear-gradient(135deg,#667eea33,#764ba233);border-left:3px solid #667eea}.friend-avatar{align-items:center;background:#ffffff1a;border-radius:50%;color:#ffffffb3;display:flex;flex-shrink:0;height:40px;justify-content:center;max-height:40px;max-width:40px;overflow:hidden;width:40px}.friend-avatar img{border-radius:50%;display:block;height:100%;object-fit:cover;width:100%}.friend-avatar svg{height:20px;width:20px}.friend-info{flex:1 1;min-width:0}.friend-name{color:#fff;font-size:14px;font-weight:500;margin-bottom:2px}.friend-chat-id{color:#fff6;font-size:11px}.friend-status{border-radius:50%;height:8px;width:8px}.friend-status.online{background:#10b981;box-shadow:0 0 6px #10b981}.friend-status.offline{background:#ffffff4d}.sidebar-divider{background:#ffffff1a;height:1px;margin:16px 0}.function-buttons{display:flex;flex-direction:column;gap:8px}.function-btn{align-items:center;background:#ffffff0d;border:none;border-radius:10px;color:#ffffffb3;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .3s ease}.function-btn svg{height:18px;width:18px}.function-btn:hover{background:#ffffff1a;color:#fff;transform:translateX(4px)}.function-btn.logout-btn{background:#ef444426;color:#ef4444}.function-btn.logout-btn:hover{background:#ef444440;color:#f87171}.chat-area{animation:chatAreaSlideIn .4s ease-out .1s both;background:#f5f7fa;display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}@keyframes chatAreaSlideIn{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.top-menu{background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000a;flex-shrink:0;height:50px;justify-content:space-between;padding:0 20px;position:relative;z-index:10}.menu-left,.top-menu{align-items:center;display:flex}.menu-left{gap:20px}.channel-name{color:#1f2937;font-size:16px;font-weight:600}.online-count{align-items:center;background:#f3f4f6;border-radius:20px;color:#6b7280;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:6px 12px;position:relative;transition:all .3s ease}.online-icon{font-size:14px}.online-number{background:#667eea;border-radius:10px;color:#1f2937;color:#fff;font-size:12px;font-weight:600;padding:2px 8px}.dropdown-arrow{height:14px;transition:transform .3s ease;width:14px}.online-count:hover{background:#e5e7eb}.online-count:hover .dropdown-arrow{transform:rotate(180deg)}.online-dropdown{animation:dropdownFadeIn .2s ease-out;background:#fff;border-radius:10px;box-shadow:0 10px 40px #00000026;left:0;margin-top:8px;min-width:200px;overflow:hidden;position:absolute;top:100%}.dropdown-header{border-bottom:1px solid #e5e7eb;color:#374151;font-size:13px;font-weight:600;padding:12px 16px}.dropdown-content{max-height:200px;overflow-y:auto}.dropdown-item{align-items:center;color:#1f2937;cursor:pointer;display:flex;gap:10px;padding:10px 16px;transition:background .2s ease}.dropdown-item:hover{background:#f3f4f6}.dropdown-item .user-avatar{align-items:center;background:#e5e7eb;border-radius:50%;color:#6b7280;display:flex;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.dropdown-item .user-info{flex:1 1}.dropdown-item .user-name{color:#1f2937;display:block;font-size:14px;font-weight:500}.dropdown-item .user-chat-id{color:#9ca3af;display:block;font-size:12px}.dropdown-empty{color:#9ca3af;font-size:13px;padding:20px;text-align:center}.menu-right{gap:8px}.menu-btn,.menu-right{align-items:center;display:flex}.menu-btn{background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;font-size:13px;gap:6px;padding:8px 14px;transition:all .3s ease}.btn-icon{font-size:14px}.menu-btn:hover{background:#f3f4f6;color:#374151}.menu-btn.admin-btn{background:linear-gradient(135deg,#f5576c1a,#f093fb1a);color:#f5576c}.menu-btn.admin-btn:hover{background:linear-gradient(135deg,#f5576c26,#f093fb26)}.announcement{background:linear-gradient(90deg,#fef3c7,#fde68a);border-bottom:1px solid #fcd34d;flex-shrink:0;padding:12px 20px}.announcement-content{display:flex;flex-direction:column;gap:8px}.announcement-header{align-items:center;display:flex;justify-content:space-between}.announcement-title{color:#92400e;font-size:14px;font-weight:600}.announcement-close{background:#0000;border:none;border-radius:6px;color:#92400e;cursor:pointer;padding:4px;transition:all .2s ease}.announcement-close svg{height:16px;width:16px}.announcement-close:hover{background:#92400e1a}.announcement-text{color:#b45309;font-size:13px;line-height:1.5}.announcement-toggle{align-items:center;background:#0000;border:none;color:#92400e;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 0;transition:all .2s ease}.announcement-toggle svg{height:16px;transition:transform .3s ease;width:16px}.announcement-toggle:hover svg{transform:rotate(90deg)}.message-list{background:#f5f7fa;flex:1 1;overflow:hidden}.message-container{height:100%;overflow-y:auto;padding:20px}.message-container::-webkit-scrollbar{width:6px}.message-container::-webkit-scrollbar-track{background:#f1f1f1}.message-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.empty-state{height:100%;min-height:300px}.empty-icon{align-items:center;background:#e5e7eb;border-radius:50%;color:#9ca3af;display:flex;height:80px;justify-content:center;margin-bottom:20px;width:80px}.empty-icon svg{height:40px;width:40px}.empty-title{color:#374151;font-size:18px;font-weight:600;margin-bottom:8px}.empty-subtitle,.loading-state{color:#9ca3af;font-size:14px}.loading-state{align-items:center;display:flex;flex-direction:column;gap:12px;height:100%;justify-content:center}.loading-spinner{animation:spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#667eea;height:32px;width:32px}.loading-spinner.small{border-width:2px;height:16px;width:16px}.load-more-tip{align-items:center;color:#9ca3af;display:flex;font-size:13px;gap:8px;justify-content:center;padding:12px}.no-more-tip{color:#9ca3af;font-size:12px}.error-tip,.no-more-tip{padding:12px;text-align:center}.error-tip{background:#fef2f2;border-radius:8px;color:#ef4444;font-size:13px;margin-bottom:12px}.message-item{animation:messageFadeIn .3s ease-out;display:flex;gap:10px;margin-bottom:20px}@keyframes messageFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-item.own{flex-direction:row-reverse}.message-item.other{flex-direction:row}.message-avatar{align-items:center;border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:600;height:40px;justify-content:center;overflow:hidden;width:40px}.message-avatar img{border-radius:50%;height:100%;object-fit:cover;width:100%}.message-content{display:flex;flex-direction:column;max-width:70%}.message-item.own .message-content{align-items:flex-end}.message-meta{align-items:center;display:flex;gap:8px;margin-bottom:4px;padding:0 4px}.message-sender{color:#6b7280;font-size:12px;font-weight:500}.message-time{color:#9ca3af;font-size:11px}.message-bubble{border-radius:16px;box-shadow:0 1px 2px #0000000d;font-size:14px;line-height:1.5;padding:10px 14px;position:relative;transition:all .2s ease;word-break:break-word}.message-bubble.other{background:#fff;border-top-left-radius:4px;color:#1f2937}.message-bubble.own{background:linear-gradient(135deg,#667eea,#764ba2);border-top-right-radius:4px;color:#fff}.message-text{display:block;white-space:pre-wrap}.message-item.failed{opacity:.7}.message-bubble.failed{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.ai-message-actions{display:flex;margin-top:6px;padding:0 4px}.ai-message-actions.own{justify-content:flex-end}.ai-message-actions.other{justify-content:flex-start}.ai-delete-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;display:inline-flex;font-size:11px;gap:3px;padding:3px 8px;transition:all .15s ease}.ai-delete-btn svg{height:12px;width:12px}.ai-delete-btn:hover{background:#fef2f2;color:#ef4444}.ai-delete-confirm-modal{align-items:center;animation:fadeIn .2s ease-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.ai-delete-confirm-box{animation:popIn .25s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;max-width:340px;padding:24px;width:90%}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.ai-delete-confirm-title{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:8px;text-align:center}.ai-delete-confirm-desc{color:#6b7280;font-size:13px;line-height:1.5;margin-bottom:20px;text-align:center}.ai-delete-confirm-buttons{display:flex;gap:12px;justify-content:center}.ai-delete-cancel-btn{background:#fff;border:1px solid #e5e7eb;border-radius:10px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;min-width:100px;padding:10px 20px;transition:all .15s ease}.ai-delete-cancel-btn:hover{background:#f9fafb;border-color:#d1d5db}.ai-delete-cancel-btn:disabled{cursor:not-allowed;opacity:.5}.ai-delete-confirm-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:10px;box-shadow:0 2px 8px #ef44444d;color:#fff;cursor:pointer;font-size:14px;font-weight:500;min-width:100px;padding:10px 20px;transition:all .15s ease}.ai-delete-confirm-btn:hover{box-shadow:0 4px 12px #ef444466;transform:translateY(-1px)}.ai-delete-confirm-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.feedback-history-overlay,.feedback-overlay{animation:modalFadeIn .2s ease-out;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);background:#0000008c;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.feedback-history-modal,.feedback-modal{animation:modalPopIn .28s cubic-bezier(.34,1.56,.64,1);background:#fff;border-radius:20px;box-shadow:0 30px 80px #00000040,inset 0 0 0 1px #ffffff1a;display:flex;flex-direction:column;left:50%;max-height:88vh;max-width:520px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:92%;z-index:1001}.feedback-close-btn{align-items:center;background:#f3f4f6;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s ease;width:36px}.feedback-close-btn svg{height:18px;width:18px}.feedback-close-btn:hover{background:#fee2e2;color:#ef4444;transform:rotate(90deg)}.feedback-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:6px;justify-content:center;min-width:110px;padding:11px 22px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.feedback-btn.full{width:100%}.feedback-btn.cancel{background:#f3f4f6;color:#4b5563}.feedback-btn.cancel:hover{background:#e5e7eb}.feedback-btn.confirm{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 14px #667eea59;color:#fff}.feedback-btn.confirm:hover{box-shadow:0 6px 20px #667eea73;transform:translateY(-1px)}.feedback-btn:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.feedback-btn-spinner{animation:spinner .7s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.feedback-header{background:linear-gradient(135deg,#f5f7ff,#fdf4ff);border-bottom:1px solid #f1f5f9;padding:22px 24px}.feedback-title-wrap{align-items:center;display:flex;gap:10px}.feedback-title-icon{font-size:26px;line-height:1}.feedback-title{font-size:20px;font-weight:700;letter-spacing:.3px;margin:0}.feedback-body{flex:1 1;overflow-y:auto;padding:22px 24px}.feedback-intro{background:linear-gradient(135deg,#eef2ff,#fdf4ff);border-left:4px solid #667eea;border-radius:12px;margin-bottom:20px;padding:12px 16px}.feedback-intro p{color:#4b5563;font-size:13px;line-height:1.6;margin:0}.feedback-field{margin-bottom:20px}.feedback-label{align-items:center;color:#374151;display:flex;font-size:14px;font-weight:600;gap:4px;margin-bottom:8px}.feedback-label-required{color:#ef4444;font-weight:700}.feedback-input,.feedback-textarea{background:#fafafa;border:1.5px solid #e5e7eb;border-radius:12px;box-sizing:border-box;color:#1f2937;font-family:inherit;font-size:14px;line-height:1.5;padding:13px 16px;resize:vertical;transition:all .2s ease;width:100%}.feedback-input::placeholder,.feedback-textarea::placeholder{color:#9ca3af}.feedback-input:focus,.feedback-textarea:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 4px #667eea1f;outline:none}.feedback-textarea{max-height:260px;min-height:130px}.feedback-field-hint{color:#9ca3af;font-size:12px;margin-top:6px}.feedback-field-footer{align-items:center;display:flex;justify-content:space-between;margin-top:6px}.feedback-char-count{color:#9ca3af;font-size:12px;font-weight:500}.feedback-char-count.warning{color:#f59e0b}.feedback-alert{align-items:flex-start;animation:alertPopIn .25s ease-out;border-radius:10px;display:flex;font-size:13px;gap:10px;margin-top:12px;padding:12px 14px}@keyframes alertPopIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.feedback-alert.error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.feedback-alert.success{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.feedback-footer{background:#fafafa;border-top:1px solid #f1f5f9;display:flex;gap:12px;justify-content:flex-end;padding:18px 24px}.fh-header{background:linear-gradient(135deg,#eff6ff,#ecfeff);border-bottom:1px solid #f1f5f9;justify-content:space-between;padding:20px 24px}.fh-header,.fh-title-wrap{align-items:center;display:flex}.fh-title-wrap{flex:1 1;gap:10px;min-width:0}.fh-title-icon{flex-shrink:0;font-size:24px;line-height:1}.fh-title{color:#1f2937;flex-shrink:0;font-size:19px;font-weight:700;margin:0}.fh-count-badge{background:#e0e7ff;border-radius:999px;color:#4338ca;flex-shrink:0;font-size:12px;font-weight:600;padding:3px 10px}.fh-back-btn{align-items:center;background:#fff;border:none;border-radius:50%;box-shadow:0 1px 3px #0000001a;color:#4b5563;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all .2s ease;width:32px}.fh-back-btn svg{height:16px;width:16px}.fh-back-btn:hover{background:#667eea;color:#fff;transform:translateX(-2px)}.fh-body{flex:1 1;overflow-y:auto;padding:18px 20px}.fh-detail-body{padding:22px 24px}.fh-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;gap:14px;justify-content:center;padding:60px 20px}.fh-loading-spinner{animation:spinner .8s linear infinite;border:3px solid #e0e7ff;border-radius:50%;border-top-color:#667eea;height:36px;width:36px}.fh-empty{align-items:center;display:flex;flex-direction:column;padding:60px 20px;text-align:center}.fh-empty-icon{font-size:60px;margin-bottom:16px}.fh-empty-title{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:6px}.fh-empty-hint{color:#9ca3af;font-size:13px;line-height:1.6}.fh-list{display:flex;flex-direction:column;gap:12px}.fh-list-item{background:#fff;border:1px solid #e5e7eb;border-radius:14px;cursor:pointer;overflow:hidden;padding:16px 40px 16px 16px;position:relative;transition:all .2s ease}.fh-list-item:before{background:linear-gradient(180deg,#667eea,#764ba2);bottom:0;content:"";left:0;opacity:0;position:absolute;top:0;transition:opacity .2s ease;width:4px}.fh-list-item:hover{background:#fafbff;border-color:#c7d2fe;box-shadow:0 4px 12px #667eea14;transform:translateX(2px)}.fh-list-item:hover:before{opacity:1}.fh-item-top{align-items:flex-start;display:flex;gap:10px;justify-content:space-between;margin-bottom:8px}.fh-item-title{color:#1f2937;flex:1 1;font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fh-item-preview{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:#6b7280;display:-webkit-box;font-size:13px;line-height:1.5;margin-bottom:10px;overflow:hidden}.fh-item-bottom{align-items:center;display:flex;font-size:12px;justify-content:space-between}.fh-item-time{color:#9ca3af}.fh-item-reply-tag{color:#059669;font-weight:600}.fh-item-no-reply{color:#d97706}.fh-item-arrow{color:#c7d2fe;position:absolute;right:14px;top:50%;transform:translateY(-50%);transition:all .2s ease}.fh-item-arrow svg{height:18px;width:18px}.fh-list-item:hover .fh-item-arrow{color:#667eea;transform:translate(3px,-50%)}.fh-status-tag{align-items:center;border-radius:999px;display:inline-flex;flex-shrink:0;font-size:12px;font-weight:600;padding:3px 10px}.fh-status-pending{background:#fef3c7;color:#b45309}.fh-status-processing{background:#dbeafe;color:#1d4ed8}.fh-status-resolved{background:#d1fae5;color:#047857}.fh-detail-block{margin-bottom:22px}.fh-detail-label{align-items:center;color:#6b7280;display:flex;flex-wrap:wrap;font-size:13px;font-weight:600;gap:4px;margin-bottom:10px}.fh-reply-time{color:#9ca3af;font-size:12px;font-weight:500}.fh-detail-title{background:#fafafa;border-left:4px solid #667eea;color:#1f2937;font-size:18px;font-weight:700;line-height:1.4}.fh-detail-meta,.fh-detail-title{border-radius:12px;padding:14px 16px}.fh-detail-meta{background:#f8fafc;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:22px}.fh-detail-meta-item{align-items:center;display:flex;gap:8px}.fh-detail-value{color:#374151;font-size:13px;font-weight:500}.fh-detail-content{background:#fff;border:1px solid #e5e7eb;border-radius:12px;color:#374151;font-size:14px;line-height:1.75;padding:16px 18px;white-space:pre-wrap;word-break:break-word}.fh-reply-content,.reply-block .fh-detail-content{background:linear-gradient(135deg,#ecfdf5,#f0fdfa);border-color:#a7f3d0;color:#065f46}.fh-waiting-tip{align-items:flex-start;background:#fffbeb;border:1px dashed #fcd34d;border-radius:12px;color:#92400e;display:flex;font-size:13px;gap:10px;line-height:1.6;padding:16px 18px}.fh-waiting-tip span:first-child{flex-shrink:0;font-size:20px;line-height:1}.fh-waiting-tip p{flex:1 1;margin:0}.fh-footer{background:#fafafa;border-top:1px solid #f1f5f9;padding:16px 20px}@media (max-width:640px){.feedback-history-modal,.feedback-modal{animation:sheetUp .3s cubic-bezier(.34,1.56,.64,1);border-radius:18px 18px 0 0;bottom:0;left:0;max-height:92vh;max-width:none;right:0;top:auto;transform:none;width:100%}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.feedback-header,.fh-header{padding:18px 18px 16px}.feedback-body{padding:18px}.fh-body{padding:14px}.fh-detail-body{padding:18px}.feedback-title{font-size:18px}.fh-title{font-size:17px}.feedback-intro p{font-size:12px}.feedback-input,.feedback-textarea{font-size:15px;padding:12px 14px}.feedback-footer{gap:10px;padding:14px 16px}.feedback-btn{font-size:15px;min-width:100px;padding:12px 18px}.fh-detail-title{font-size:16px;padding:12px 14px}.fh-list-item{padding:14px 38px 14px 14px}.fh-empty{padding:50px 16px}.fh-empty-icon{font-size:50px}.feedback-history-overlay,.feedback-overlay{background:#00000073}}.status-active{background:#d1fae5;color:#047857}.status-active,.status-banned{border-radius:999px;display:inline-block;font-size:12px;font-weight:600;padding:2px 10px}.status-banned{background:#fee2e2;color:#b91c1c}.user-detail-avatar-wrap{align-items:center;background:linear-gradient(135deg,#f5f7ff,#fdf4ff);border-radius:12px;display:flex;gap:14px;margin-bottom:16px;padding:14px}.user-detail-avatar{border:3px solid #fff;border-radius:50%;box-shadow:0 4px 12px #00000026;flex-shrink:0;height:80px;object-fit:cover;width:80px}.avatar-status-tag{border-radius:999px;font-size:12px;font-weight:600;padding:4px 12px}.avatar-status-tag.approved{background:#d1fae5;color:#047857}.avatar-status-tag.pending{background:#fef3c7;color:#b45309}.avatar-status-tag.rejected{background:#fee2e2;color:#b91c1c}.user-detail-modal .modal-body p{border-bottom:1px solid #f3f4f6;margin:0;padding:8px 0}.user-detail-modal .modal-body p:last-child{border-bottom:none}.user-detail-modal .modal-body strong{color:#6b7280;display:inline-block;font-weight:600;min-width:90px}.user-detail-password-section{border-top:2px dashed #e5e7eb;margin-top:16px;padding-top:16px}.password-security-notice{background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;color:#92400e;font-size:13px;line-height:1.6;margin-bottom:12px;padding:12px 14px}.admin-btn.warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.admin-btn.warning:hover{opacity:.9}.admin-btn.cancel{background:#f3f4f6;color:#4b5563}.admin-btn.confirm{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.reset-password-tip{background:#eef2ff;border-radius:10px;color:#3730a3;font-size:13px;line-height:1.6;margin-bottom:14px;padding:12px 14px}.reset-password-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}.temp-password-modal{animation:tempPasswordSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 25px 60px #00000040;left:50%;max-height:90vh;max-width:480px;overflow-y:auto;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1001}@keyframes tempPasswordSlideIn{0%{opacity:0;transform:translate(-50%,-45%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.temp-password-modal .modal-header{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:space-between;padding:18px 24px}.temp-password-modal .modal-header h4{font-size:18px;font-weight:600;margin:0}.temp-password-modal .modal-header button{background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;height:32px;transition:background .2s ease;width:32px}.temp-password-modal .modal-header button:hover{background:#ffffff59}.temp-password-modal .modal-body{padding:24px}.temp-password-warning{background:#fffbeb;border:1px solid #fcd34d;border-left:4px solid #f59e0b;border-radius:10px;color:#92400e;font-size:13px;line-height:1.6;margin-bottom:18px;padding:14px 16px}.temp-password-warning ul{margin:8px 0 0;padding-left:20px}.temp-password-warning li{margin:4px 0}.temp-password-warning strong{color:#b45309}.temp-password-display{margin-bottom:14px}.temp-password-display label{color:#374151;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.temp-password-value-box{align-items:center;background:#f8fafc;border:2px dashed #667eea;border-radius:10px;display:flex;gap:10px;padding:12px 14px}.temp-password-value{color:#1e40af;flex:1 1;font-family:Courier New,Consolas,monospace;font-size:20px;font-weight:700;letter-spacing:2px;-webkit-user-select:all;user-select:all;word-break:break-all}.copy-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;flex-shrink:0;font-size:13px;font-weight:600;padding:8px 14px;transition:all .2s ease;white-space:nowrap}.copy-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.copy-btn.copied{background:linear-gradient(135deg,#10b981,#059669)}.temp-password-expire{color:#6b7280;font-size:12px;margin:10px 0 16px}.temp-password-actions{display:flex;gap:10px;justify-content:flex-end}@media (max-width:768px){.temp-password-modal{width:95%}.temp-password-modal .modal-header h4{font-size:16px}.temp-password-value{font-size:17px;letter-spacing:1px}.temp-password-value-box{align-items:stretch;flex-direction:column;gap:8px}.copy-btn{padding:10px;width:100%}}.message-failed{align-items:center;color:#ef4444;display:flex;font-size:12px;gap:8px;margin-top:4px}.retry-btn{background:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:11px;padding:2px 8px;transition:all .2s ease}.retry-btn:hover{background:#dc2626}.btn-spinner{animation:spin .6s linear infinite;height:14px;width:14px}.send-btn.sending{cursor:not-allowed;opacity:.8}.chat-input{animation:inputSlideUp .3s ease-out;background:#fff;border-top:1px solid #e5e7eb;flex-shrink:0;padding:12px 20px}@keyframes inputSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.input-tools{display:flex;gap:12px;margin-bottom:12px}.tool-btn{align-items:center;background:#f3f4f6;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:18px;height:36px;justify-content:center;transition:all .3s ease;width:36px}.tool-btn:hover{background:#e5e7eb;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.tool-btn.active{background:#667eea;color:#fff}.recording-bar{align-items:center;animation:recordingPulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,#fef2f2,#fee2e2);border-radius:10px;display:flex;gap:8px;margin-bottom:12px;padding:10px 16px}@keyframes recordingPulse{0%,to{opacity:1}50%{opacity:.7}}.recording-dot{animation:recordingBlink 1s ease-in-out infinite;background:#ef4444;border-radius:50%;height:10px;width:10px}@keyframes recordingBlink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.recording-text{color:#dc2626;font-size:13px;font-weight:500}.tool-btn.recording{animation:micPulse 1.5s ease-in-out infinite;background:#ef4444!important;color:#fff}@keyframes micPulse{0%,to{box-shadow:0 0 0 0 #ef444466}50%{box-shadow:0 0 0 8px #ef444400}}.typing-cursor{animation:cursorBlink .8s ease-in-out infinite;color:#667eea;display:inline-block;font-weight:700;margin-left:2px}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.message-image-wrap{display:flex;flex-direction:column;gap:8px}.message-image-wrap .message-text{padding:0}.pending-image-preview{animation:previewFadeIn .3s ease-out;background:#f0f2ff;border:2px solid #667eea;border-radius:12px;display:inline-flex;margin-bottom:12px;padding:8px;position:relative}@keyframes previewFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.preview-image-wrap{display:inline-block;position:relative}.preview-image-wrap img{border-radius:8px;display:block;height:100px;object-fit:cover;width:100px}.upload-success{animation:successFadeIn .3s ease-out;background:#22c55ee6;border-radius:4px;bottom:4px;color:#fff;font-size:10px;padding:2px 6px;position:absolute;right:4px}@keyframes successFadeIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.remove-image-btn{align-items:center;background:#ef4444;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px #0003;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;padding:0;position:absolute;right:-6px;top:-6px;transition:all .2s ease;width:24px}.remove-image-btn:hover{background:#dc2626;transform:scale(1.15)}.remove-image-btn svg{height:12px;width:12px}.upload-progress-bar{animation:progressFadeIn .3s ease-out;background:#f0f2ff;border-radius:10px;margin-bottom:12px;padding:10px 14px}@keyframes progressFadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.upload-progress-info{align-items:center;color:#667eea;display:flex;font-size:12px;font-weight:500;justify-content:space-between;margin-bottom:6px}.upload-progress-track{background:#e0e3ff;border-radius:3px;height:6px;overflow:hidden;width:100%}.upload-progress-fill{animation:progressShimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:3px;height:100%;transition:width .3s ease}@keyframes progressShimmer{0%,to{opacity:1}50%{opacity:.7}}.input-container{display:flex;gap:12px}.message-input{background:#f3f4f6;border:none;border-radius:16px;color:#1f2937;flex:1 1;font-size:15px;max-height:120px;min-height:48px;outline:none;padding:14px 18px;resize:none;transition:all .3s ease}.message-input:focus{background:#fff;box-shadow:0 0 0 2px #667eea33}.message-input::placeholder,.send-btn{color:#9ca3af}.send-btn{align-items:center;background:#e5e7eb;border:none;border-radius:16px;cursor:not-allowed;display:flex;font-size:15px;font-weight:500;gap:8px;padding:14px 24px;transition:all .3s ease;white-space:nowrap}.send-btn svg{height:18px;width:18px}.send-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer}.send-btn.active:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.send-btn.active:active{transform:translateY(0)}.request-badge{align-items:center;animation:badgePulse 2s ease-in-out infinite;background:#ef4444;border-radius:10px;color:#fff;display:flex;font-size:11px;font-weight:600;height:18px;justify-content:center;min-width:18px;padding:0 6px}@keyframes badgePulse{0%,to{box-shadow:0 0 0 0 #ef444466}50%{box-shadow:0 0 0 4px #ef444400}}.friend-empty{align-items:center;color:#ffffff4d;display:flex;flex-direction:column;justify-content:center;padding:40px 20px}.friend-empty svg{height:40px;margin-bottom:12px;width:40px}.friend-empty span{font-size:13px}.friend-error{background:#ef444426;border-radius:8px;color:#f87171;font-size:12px;margin-bottom:8px;padding:10px 12px;text-align:center}.confirm-modal-overlay{align-items:center;animation:modalFadeIn .2s ease-out;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.confirm-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:90%;min-width:320px;padding:24px}.confirm-modal-header{align-items:center;display:flex;flex-direction:column;margin-bottom:16px}.confirm-icon{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:50%;color:#fff;display:flex;height:56px;justify-content:center;margin-bottom:12px;width:56px}.confirm-icon svg{height:28px;width:28px}.confirm-title{color:#1f2937;font-size:18px;font-weight:600}.confirm-message{color:#6b7280;font-size:14px;line-height:1.5;margin-bottom:24px;text-align:center}.confirm-modal-footer{display:flex;gap:12px}.confirm-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:12px 16px;transition:all .3s ease}.cancel-btn{background:#f3f4f6;color:#6b7280}.cancel-btn:hover{background:#e5e7eb}.confirm-btn-primary{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 15px #ef44444d;color:#fff}.confirm-btn-primary:hover{box-shadow:0 6px 20px #ef444466;transform:translateY(-2px)}.confirm-btn-primary:active{transform:translateY(0)}.points-center-overlay{animation:modalFadeIn .2s ease-out;background:#0009;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.points-center{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0000004d;display:flex;flex-direction:column;left:50%;max-height:85vh;max-width:600px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1001}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-40%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.points-center-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.points-center-title{color:#1f2937;font-size:20px;font-weight:700}.close-btn{background:#f3f4f6;border-radius:8px;color:#6b7280;height:32px;width:32px}.close-btn:hover{background:#e5e7eb;color:#374151}.points-center-tabs{border-bottom:1px solid #e5e7eb;display:flex;overflow-x:auto;padding:0 16px}.points-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:12px 16px;transition:all .2s ease;white-space:nowrap}.points-tab:hover{color:#374151}.points-tab.active{border-bottom-color:#667eea;color:#667eea}.points-center-content{flex:1 1;overflow-y:auto;padding:20px}.points-home{display:flex;flex-direction:column;gap:20px}.points-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;display:flex;justify-content:space-between;padding:24px}.points-display{text-align:center}.points-number{font-size:48px;font-weight:700;line-height:1}.points-label{font-size:13px;margin-top:4px;opacity:.8}.level-display{text-align:center}.level-badge-lg{align-items:center;background:#fff3;border-radius:20px;display:inline-flex;gap:4px;padding:8px 16px}.level-badge-lg .level-icon{font-size:16px}.level-badge-lg .level-text{font-size:16px;font-weight:600}.level-name{font-size:13px;margin-top:8px;opacity:.8}.checkin-section{background:#fffbeb;border:1px solid #fef3c7;border-radius:16px;padding:20px}.checkin-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.checkin-title{color:#92400e;font-size:16px;font-weight:600}.checkin-streak{color:#d97706;font-size:14px}.streak-number{font-size:18px;font-weight:700}.checkin-info{margin-bottom:16px}.checkin-desc{color:#b45309;font-size:13px;margin-bottom:8px}.checkin-rewards{display:flex;gap:12px}.reward-item{background:#fbbf2433;border-radius:12px;color:#92400e;font-size:12px;padding:4px 10px}.checkin-btn{border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:all .3s ease;width:100%}.checkin-btn.active{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 15px #f59e0b4d;color:#fff}.checkin-btn.active:hover:not(:disabled){box-shadow:0 6px 20px #f59e0b66;transform:translateY(-2px)}.checkin-btn.checked{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.checkin-btn:disabled{opacity:.7}.quick-stats{display:flex;gap:12px}.stat-item{background:#f9fafb;border-radius:12px;flex:1 1;gap:12px;padding:16px}.stat-icon{font-size:24px}.stat-info{flex:1 1}.stat-value{color:#1f2937;font-size:18px;font-weight:700}.stat-label{color:#9ca3af;font-size:12px}.leaderboard-section{display:flex;flex-direction:column;gap:16px}.leaderboard-header{padding-bottom:8px}.leaderboard-header h3{color:#1f2937;font-size:16px;font-weight:600}.leaderboard-list{display:flex;flex-direction:column;gap:8px}.leaderboard-item{align-items:center;background:#f9fafb;border-radius:10px;display:flex;gap:12px;padding:12px;transition:all .2s ease}.leaderboard-item:hover{background:#f3f4f6}.rank{align-items:center;border-radius:8px;display:flex;height:36px;justify-content:center;width:36px}.rank-icon{font-size:20px}.rank-number{color:#6b7280;font-size:14px;font-weight:600}.leaderboard-item .user-info{flex:1 1;min-width:0}.leaderboard-item .user-name{color:#000!important;font-size:14px;font-weight:600}.leaderboard-item .user-chat-id{color:#9ca3af;font-size:12px}.user-points{text-align:right}.points-value{color:#667eea;font-size:16px;font-weight:700}.leaderboard-item .user-level{color:#9ca3af;font-size:11px}.mall-section{display:flex;flex-direction:column;gap:16px}.mall-tabs{display:flex;gap:8px}.mall-tab{background:#f3f4f6;border:none;border-radius:10px;color:#6b7280;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:12px;transition:all .2s ease}.mall-tab.active{background:#667eea;color:#fff}.mall-items-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.mall-item-card{background:#f9fafb;border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:16px;transition:all .2s ease}.mall-item-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.item-preview{display:flex;justify-content:center;padding:12px}.avatar-preview{border:4px solid #e5e7eb;transition:all .3s ease}.avatar-preview svg{height:32px;width:32px}.bubble-preview{padding:8px}.bubble-example{border-radius:16px;font-size:13px;max-width:120px;padding:10px 14px}.item-info{text-align:center}.item-name{color:#1f2937;font-size:14px;font-weight:600;margin-bottom:4px}.item-desc{color:#9ca3af;font-size:12px}.item-footer{justify-content:space-between}.item-footer,.item-price{align-items:center;display:flex}.item-price{gap:4px}.price-icon,.price-value{font-size:14px}.price-value{color:#f59e0b;font-weight:600}.owned-badge{background:#d1fae5;color:#059669;font-weight:500;padding:4px 12px}.equipped-badge,.owned-badge{border-radius:12px;font-size:12px}.equipped-badge{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d;color:#fff;font-weight:600;padding:6px 14px}.equip-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 16px;transition:all .2s ease}.equip-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.equip-btn:active:not(:disabled){transform:translateY(0)}.equip-btn:disabled{cursor:not-allowed;opacity:.6}.buy-btn{border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;padding:6px 16px;transition:all .2s ease}.buy-btn.active{background:#667eea;color:#fff}.buy-btn.active:hover:not(:disabled){background:#5a67d8}.buy-btn.disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.logs-section{display:flex;flex-direction:column;gap:16px}.logs-header{padding-bottom:8px}.logs-header h3{color:#1f2937;font-size:16px;font-weight:600}.logs-list{display:flex;flex-direction:column;gap:8px}.log-item{align-items:center;background:#f9fafb;border-radius:10px;display:flex;gap:12px;padding:12px}.log-time{color:#9ca3af;font-size:12px;white-space:nowrap}.log-reason{color:#374151;flex:1 1;font-size:14px}.log-amount{font-size:14px;font-weight:600;white-space:nowrap}.log-amount.earn{color:#059669}.log-amount.spend{color:#ef4444}.logs-pagination{align-items:center;display:flex;gap:16px;justify-content:center;padding-top:8px}.pagination-btn{background:#f3f4f6;border:none;border-radius:8px;color:#6b7280;cursor:pointer;font-size:13px;padding:8px 16px;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:#e5e7eb;color:#374151}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#9ca3af;font-size:13px}.rules-section{display:flex;flex-direction:column;gap:16px}.rules-detail-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:16px;transition:all .3s ease}.rules-detail-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.rules-preview{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.rules-category{background:#f9fafb;border-radius:12px;padding:16px}.rules-category h4{color:#1f2937;font-size:14px;font-weight:600;margin-bottom:12px}.rules-category ul{list-style:none;margin:0;padding:0}.rules-category li{color:#6b7280;font-size:13px;padding:4px 0}.rules-modal-overlay{align-items:center;animation:modalFadeIn .2s ease-out;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.rules-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0000004d;max-height:85vh;max-width:700px;overflow:hidden;width:90%}.rules-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.rules-modal-title{color:#1f2937;font-size:18px;font-weight:700}.rules-modal-close{align-items:center;background:#f3f4f6;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.rules-modal-close:hover{background:#e5e7eb}.rules-modal-close svg{height:18px;width:18px}.rules-modal-content{max-height:calc(85vh - 70px);overflow-y:auto;padding:24px}.rules-section-title{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:16px}.rules-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.rule-item{align-items:center;background:#f0fdf4;border-radius:10px;display:flex;gap:12px;padding:12px}.rule-item.spend{background:#fef2f2}.rule-icon{font-size:20px}.rule-info{flex:1 1}.rule-name{color:#1f2937;font-size:14px;font-weight:500}.rule-detail{color:#9ca3af;font-size:12px}.rule-value{color:#059669;font-size:16px;font-weight:700}.rule-item.spend .rule-value{color:#ef4444}.rules-list{display:flex;flex-direction:column;gap:8px}.rule-row{align-items:center;background:#f9fafb;border-radius:10px;display:flex;justify-content:space-between;padding:12px}.rule-label{color:#6b7280;font-size:14px}.rule-value-text{color:#1f2937;font-size:14px;font-weight:600}.level-table{border-collapse:collapse;width:100%}.level-header{background:#667eea;border-radius:10px 10px 0 0;color:#fff;font-size:13px;font-weight:600}.level-header,.level-row{display:grid;grid-template-columns:1fr 2fr 2fr;padding:12px}.level-row{border-bottom:1px solid #f3f4f6}.level-row:last-child{border-bottom:none}.level-row:nth-child(2n){background:#f9fafb}.level-col{align-items:center;display:flex}.level-badge{background:#f59e0b;border-radius:12px;color:#fff;font-size:12px;font-weight:600;padding:4px 10px}@media (max-width:640px){.points-center{max-height:90vh;width:95%}.points-header{flex-direction:column;gap:16px}.points-number{font-size:36px}.mall-items-grid,.rules-grid{grid-template-columns:1fr}.leaderboard-item{padding:10px}.logs-list{gap:6px}.log-item{gap:8px;padding:10px}}.add-friend-overlay{align-items:center;animation:modalFadeIn .2s ease-out;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.add-friend-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0000004d;left:50%;max-width:420px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:2001}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.modal-title{color:#1f2937;font-size:18px;font-weight:700}.modal-header .close-btn{align-items:center;background:#f3f4f6;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.modal-header .close-btn:hover{background:#e5e7eb}.modal-header .close-btn svg{height:18px;width:18px}.modal-tabs{border-bottom:1px solid #e5e7eb;display:flex}.modal-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:16px;transition:all .2s ease}.modal-tab.active{border-bottom-color:#667eea;color:#667eea}.modal-content{padding:24px}.input-group{margin-bottom:16px}.input-label{color:#4b5563;display:block;font-size:13px;font-weight:500;margin-bottom:8px}.modal-input{border:2px solid #e5e7eb;border-radius:12px;box-sizing:border-box;color:#1f2937;font-size:14px;outline:none;padding:12px 16px;transition:border-color .2s ease;width:100%}.modal-input:focus{border-color:#667eea}.modal-input:disabled{background:#f9fafb;color:#9ca3af}.input-hint{color:#9ca3af;font-size:12px;margin-top:4px}.input-with-btn{display:flex;gap:8px}.input-with-btn .modal-input{flex:1 1}.modal-textarea{border:2px solid #e5e7eb;border-radius:12px;box-sizing:border-box;color:#1f2937;font-family:inherit;font-size:14px;outline:none;padding:12px 16px;resize:none;transition:border-color .2s ease;width:100%}.modal-textarea:focus{border-color:#667eea}.modal-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:14px;transition:all .2s ease;width:100%}.modal-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-btn.primary:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.modal-btn.secondary{background:#f3f4f6;color:#4b5563}.modal-btn.secondary:hover:not(:disabled){background:#e5e7eb}.modal-btn.full-width{width:100%}.modal-btn:disabled{cursor:not-allowed;opacity:.7}.btn-spinner{animation:spinner .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.modal-btn.secondary .btn-spinner{border-color:#4b5563 #4b55634d #4b55634d}@keyframes spinner{to{transform:rotate(1turn)}}.modal-error{background:#fef2f2;color:#dc2626}.modal-error,.modal-success{border-radius:8px;font-size:13px;margin-top:12px;padding:10px 12px}.modal-success{background:#f0fdf4;color:#059669}.settings-overlay{animation:modalFadeIn .2s ease-out;background:#0009;bottom:0;left:0;position:fixed;right:0;top:0;z-index:2000}.settings-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0000004d;left:50%;max-height:80vh;max-width:500px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:2001}.settings-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.settings-title{color:#1f2937;font-size:18px;font-weight:700;margin:0}.settings-tabs{border-bottom:1px solid #e5e7eb;display:flex}.settings-tab{background:none;border:none;color:#6b7280;cursor:pointer;flex:1 1;font-size:13px;font-weight:500;padding:14px 8px;text-align:center;transition:all .2s ease}.settings-tab:hover{background:#f3f4f6;color:#667eea}.settings-tab.active{border-bottom:2px solid #667eea;color:#667eea}.settings-content{max-height:400px;overflow-y:auto;padding:24px}.settings-section{display:flex;flex-direction:column;gap:16px}.avatar-preview,.avatar-preview-container{display:flex;justify-content:center}.avatar-preview{align-items:center;background:#f3f4f6;color:#6b7280;height:120px;overflow:hidden;position:relative;width:120px}.avatar-preview img{height:100%;object-fit:cover;width:100%}.avatar-preview svg{height:50px;width:50px}.avatar-status-badge{border-radius:10px;bottom:5px;color:#fff;font-size:10px;padding:2px 8px;position:absolute;right:5px}.avatar-status-badge.pending{background:#f59e0b}.avatar-status-badge.approved{background:#10b981}.avatar-status-badge.rejected{background:#ef4444}.upload-section{align-items:center;display:flex;flex-direction:column;gap:12px}.upload-btn{align-items:center;background:#667eea;border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;justify-content:center;padding:12px 32px;transition:all .2s ease}.upload-btn:hover{background:#5a67d8}.upload-btn input{display:none}.upload-progress{align-items:center;display:flex;gap:10px;width:100%}.progress-bar{background:#e5e7eb;flex:1 1;height:6px;overflow:hidden}.progress-fill{background:#667eea;border-radius:3px;height:100%;transition:width .3s ease}.progress-text{color:#6b7280;font-size:13px;min-width:40px}.password-hints,.upload-hint,.username-hints{color:#9ca3af;font-size:12px;text-align:center}.password-hints,.username-hints{background:#f9fafb;border-radius:10px;line-height:1.8;padding:12px;text-align:left}.current-username{background:#f3f4f6;border-radius:8px;color:#1f2937;font-weight:600;padding:10px 12px}.delete-section{text-align:center}.delete-warning{background:#fef3c7;border-radius:12px;margin-bottom:16px;padding:20px}.warning-icon{font-size:36px;margin-bottom:8px}.warning-title{color:#d97706;font-size:16px;font-weight:700;margin-bottom:4px}.warning-count{color:#b45309;font-size:14px}.delete-info{background:#f3f4f6;border-radius:12px;line-height:1.8;padding:16px}.delete-check,.delete-info{color:#4b5563;font-size:13px;margin-bottom:16px;text-align:left}.delete-check{align-items:flex-start;display:flex;gap:8px;justify-content:center}.delete-check input{margin-top:2px}.modal-btn.danger{background:#ef4444}.modal-btn.danger:hover:not(:disabled){background:#dc2626}.back-btn{align-items:center;background:#667eea1a;border:none;border-radius:8px;color:#667eea;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s ease}.back-btn:hover{background:#667eea33}.back-btn svg{height:16px;width:16px}.other-features{display:inline-block;position:relative}.other-dropdown{animation:dropdownFadeIn .2s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;margin-top:8px;min-width:180px;padding:8px 0;position:absolute;right:0;top:100%;z-index:1000}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.other-item{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:12px 16px;text-align:left;transition:all .2s ease;width:100%}.other-item:hover:not(.disabled){background:#667eea14}.other-item.disabled{cursor:not-allowed;opacity:.5}.item-icon{font-size:16px}.coming-soon{background:#f3f4f6;border-radius:10px;color:#9ca3af;font-size:11px;margin-left:auto;padding:2px 8px}.char-count{color:#9ca3af;font-size:12px;margin-top:4px;text-align:right}.form-error{color:#ef4444}.form-error,.form-success{font-size:13px;margin-top:8px}.form-success{color:#10b981}.feedback-list{max-height:400px;overflow-y:auto}.feedback-item{border:1px solid #e5e7eb;cursor:pointer;margin-bottom:12px;transition:all .2s ease}.feedback-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea26}.feedback-meta,.feedback-title{margin-bottom:8px}.feedback-meta{align-items:center;display:flex;gap:12px}.feedback-time{color:#9ca3af;font-size:12px}.feedback-preview{color:#6b7280;font-size:13px;line-height:1.5}.feedback-reply-badge{background:#10b9811a;border-radius:10px;color:#10b981;display:inline-block;font-size:11px;margin-top:8px;padding:2px 8px}.status{border-radius:20px;font-size:12px;font-weight:500;padding:4px 10px}.status-pending{background:#f59e0b1a;color:#f59e0b}.status-processing{background:#3b82f61a;color:#3b82f6}.status-resolved{background:#10b9811a;color:#10b981}.feedback-detail{padding:8px 0}.detail-row{margin-bottom:16px}.detail-label{color:#6b7280;display:block;font-size:13px;margin-bottom:4px}.detail-value{font-size:15px;font-weight:500}.detail-content{background:#f9fafb;border-radius:8px;color:#374151;font-size:14px;line-height:1.6;padding:12px}.detail-content.reply{background:#10b98114;border-left:3px solid #10b981}.search-results{margin-top:16px}.results-title{color:#4b5563;font-size:13px;font-weight:500;margin-bottom:8px}.search-result-item{align-items:center;background:#f9fafb;border-radius:10px;cursor:pointer;display:flex;margin-bottom:8px;padding:12px;transition:all .2s ease}.search-result-item:hover{background:#f3f4f6}.result-avatar{align-items:center;background:#e5e7eb;border-radius:50%;color:#6b7280;display:flex;height:40px;justify-content:center;width:40px}.result-avatar svg{height:20px;width:20px}.result-info{flex:1 1;margin-left:12px}.result-name{color:#1f2937;font-size:14px;font-weight:600}.result-chatid{color:#9ca3af;font-size:12px;margin-top:2px}.result-action{color:#667eea}.select-text{font-size:13px;font-weight:500}.selected-user{align-items:center;background:#f0fdf4;border-radius:12px;display:flex;margin-bottom:16px;padding:16px}.selected-avatar{align-items:center;background:#d1fae5;border-radius:50%;color:#059669;display:flex;height:48px;justify-content:center;width:48px}.selected-avatar svg{height:24px;width:24px}.selected-info{flex:1 1;margin-left:12px}.selected-name{color:#1f2937;font-size:15px;font-weight:600}.selected-chatid{color:#6b7280;font-size:13px;margin-top:2px}.cancel-select-btn{background:#0000;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:13px;padding:8px 16px}.cancel-select-btn:hover{background:#f3f4f6}.friend-requests{background:#f9fafb;border-radius:12px;margin-bottom:12px;padding:12px}.requests-header{color:#1f2937;font-size:14px;font-weight:600;margin-bottom:12px}.request-empty{color:#9ca3af;font-size:13px;padding:16px;text-align:center}.friend-request-item{align-items:center;background:#fff;border-radius:10px;display:flex;margin-bottom:8px;padding:12px}.friend-request-item:last-child{margin-bottom:0}.request-avatar{align-items:center;background:#e5e7eb;border-radius:50%;color:#6b7280;display:flex;height:44px;justify-content:center;width:44px}.request-avatar svg{height:22px;width:22px}.request-info{flex:1 1;margin-left:12px}.request-name{color:#1f2937;font-size:14px;font-weight:600}.request-message{color:#9ca3af;font-size:12px;margin-top:4px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-actions{display:flex;gap:8px}.request-action-btn{border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s ease}.request-action-btn.accept{background:#059669;color:#fff}.request-action-btn.accept:hover{background:#047857}.request-action-btn.reject{background:#f3f4f6;color:#6b7280}.request-action-btn.reject:hover{background:#e5e7eb}.admin-panel-overlay{animation:modalFadeIn .2s ease-out;background:#0009;bottom:0;left:0;position:fixed;right:0;top:0;z-index:3000}.admin-panel{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0000004d;display:flex;flex-direction:column;left:50%;max-height:85vh;max-width:900px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:3001}.admin-panel-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.admin-panel-header h2{font-size:20px;margin:0}.admin-panel-header .close-btn{background:#fff3;color:#fff}.admin-panel-header .close-btn:hover{background:#ffffff4d}.admin-success-message{background:#f0fdf4;color:#059669}.admin-error-message,.admin-success-message{border-radius:8px;font-size:13px;margin:12px 24px;padding:12px;text-align:center}.admin-error-message{background:#fef2f2;color:#dc2626}.admin-tabs{border-bottom:1px solid #e5e7eb;display:flex;gap:8px;overflow-x:auto;padding:16px 24px}.admin-tab{align-items:center;background:#f3f4f6;border:none;border-radius:10px;color:#6b7280;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.admin-tab:hover{background:#e5e7eb}.admin-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.admin-content{flex:1 1;overflow-y:auto;padding:24px}.admin-section{display:flex;flex-direction:column;gap:16px}.admin-section h3{color:#1f2937;font-size:16px;font-weight:600;margin:0}.admin-textarea{border:2px solid #e5e7eb;border-radius:12px;font-family:inherit;font-size:14px;outline:none;padding:14px;resize:none;transition:border-color .2s ease;width:100%}.admin-textarea:focus{border-color:#667eea}.textarea-footer{align-items:center;display:flex;justify-content:space-between}.textarea-footer span{color:#9ca3af;font-size:12px}.admin-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .2s ease}.admin-btn:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.admin-btn:disabled{cursor:not-allowed;opacity:.7}.admin-btn.secondary{background:#f3f4f6;color:#6b7280}.admin-btn.secondary:hover:not(:disabled){background:#e5e7eb;box-shadow:none;transform:none}.admin-btn.small{font-size:12px;padding:6px 12px}.admin-btn.danger{background:#ef4444}.admin-btn.danger:hover:not(:disabled){box-shadow:0 6px 20px #ef444466}.admin-input{border:2px solid #e5e7eb;border-radius:10px;color:#1f2937;font-size:14px;outline:none;padding:12px 16px;transition:border-color .2s ease}.admin-input:focus{border-color:#667eea}.admin-input.small{font-size:13px;padding:8px 12px}.admin-select{background:#fff;border:2px solid #e5e7eb;border-radius:10px;color:#1f2937;cursor:pointer;font-size:14px;outline:none;padding:12px 16px;transition:border-color .2s ease}.admin-select:focus{border-color:#667eea}.search-bar{display:flex;gap:8px}.search-bar .admin-input{flex:1 1}.admin-table-container{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table td,.admin-table th{border-bottom:1px solid #e5e7eb;font-size:13px;padding:12px;text-align:left}.admin-table th{color:#374151;font-weight:600}.admin-table tbody tr:hover,.admin-table th{background:#f9fafb}.clickable{color:#667eea;cursor:pointer;text-decoration:underline}.clickable:hover{color:#764ba2}.user-detail-modal{background:#fff;border-radius:16px;box-shadow:0 10px 40px #00000026;padding:20px}.user-detail-modal .modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.user-detail-modal .modal-header h4{font-size:16px;margin:0}.user-detail-modal .modal-header button{background:#f3f4f6;border:none;border-radius:6px;color:#6b7280;cursor:pointer;padding:6px}.user-detail-modal .modal-body p{font-size:14px;margin:8px 0}.password-warning{color:#ef4444;font-family:monospace;font-size:12px}.warning-text{color:#f59e0b!important;font-size:12px!important}.ip-ban-section{background:#f9fafb;border-radius:12px;display:flex;gap:8px;padding:16px}.ip-ban-section h4{font-size:14px;margin:0}.ip-ban-section .admin-input{flex:1 1}.avatar-list{display:flex;flex-direction:column;gap:12px}.avatar-item{align-items:center;background:#f9fafb;border-radius:12px;display:flex;gap:16px;padding:16px}.avatar-preview{border:2px solid #e5e7eb;border-radius:50%;height:64px;object-fit:cover;width:64px}.avatar-info p{font-size:13px;margin:4px 0}.avatar-info p strong{color:#1f2937}.avatar-actions{display:flex;gap:8px;margin-left:auto}.feedback-list{display:flex;flex-direction:column;gap:12px}.feedback-item{background:#f9fafb;border-radius:12px;padding:16px}.feedback-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.feedback-title{color:#1f2937;font-size:15px;font-weight:600}.feedback-status{border-radius:20px;font-size:12px;font-weight:500;padding:4px 10px}.feedback-info{color:#9ca3af;display:flex;font-size:12px;gap:16px;margin-bottom:8px}.feedback-content{color:#374151;font-size:14px;line-height:1.5;margin-bottom:8px}.feedback-reply{background:#f0fdf4;border-left:3px solid #10b981;border-radius:8px;padding:12px}.feedback-reply p{color:#059669;font-size:13px;margin:0}.feedback-actions{display:flex;gap:8px;margin-top:12px}.reply-input{display:flex;flex-direction:column;gap:8px;margin-top:8px}.reply-input textarea{border:2px solid #e5e7eb;border-radius:10px;font-family:inherit;font-size:14px;outline:none;padding:12px;resize:none}.reply-input textarea:focus{border-color:#667eea}.stats-panel{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;padding:20px}.stats-panel h4{font-size:16px;margin:0 0 16px}.stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:16px}.stat-item{align-items:center;background:#ffffff26;border-radius:10px;display:flex;font-size:14px;justify-content:space-between;padding:12px}.stat-item span:last-child{font-size:18px;font-weight:700}.channel-stats{display:flex;font-size:13px;gap:16px}.filter-bar{display:flex;gap:8px}.filter-bar .admin-select{flex:1 1;max-width:150px}.filter-bar .admin-input{flex:2 1}.backup-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.delete-by-count{display:flex;gap:8px}.delete-by-count .admin-input{width:100px}.pagination{align-items:center;display:flex;gap:16px;justify-content:center;padding-top:16px}.pagination span{color:#6b7280;font-size:13px}.empty-message{color:#9ca3af;font-size:14px;padding:40px;text-align:center}.clear-options{display:flex;flex-direction:column;gap:20px}.clear-option{background:#f9fafb;border-radius:12px;padding:20px}.clear-option h4{font-size:15px;margin:0 0 8px}.clear-option p{color:#6b7280;font-size:13px;margin:0 0 12px}.backup-table .channel-tag{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:2px 8px;white-space:nowrap}.backup-table .channel-public{background:#dbeafe;color:#1d4ed8}.backup-table .channel-private{background:#dcfce7;color:#15803d}.backup-table .channel-ai{background:#f3e8ff;color:#7e22ce}.backup-table .channel-unknown{background:#f3f4f6;color:#374151}.backup-table .backup-users-cell{line-height:1.5;min-width:180px}.backup-users-cell .ai-session-line,.backup-users-cell .receiver-line,.backup-users-cell .sender-line{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.backup-users-cell .user-name{color:#111827;font-size:13px;font-weight:600}.backup-users-cell .user-chatid{color:#6b7280;font-size:12px}.backup-users-cell .arrow{color:#9ca3af;font-size:12px;font-weight:700}.backup-users-cell .ai-tag{color:#7e22ce;font-size:12px;font-weight:600}.backup-users-cell .ai-session{color:#6b7280;font-family:monospace;font-size:11px}.backup-table .backup-content-cell{color:#111827;font-size:13px;line-height:1.5;max-width:320px;word-break:break-word}.backup-table .backup-time-cell{font-size:12px;line-height:1.55;min-width:180px}.backup-time-cell .send-time{color:#111827;font-size:12.5px;font-weight:500}.backup-time-cell .backup-time{color:#8b5cf6;font-size:11px;margin-top:2px}.backup-table .backup-actions-cell{min-width:240px}.backup-actions-cell .action-btn{font-size:12px;margin:2px 4px 2px 0;padding:4px 10px;white-space:nowrap}.action-btn.view-btn{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8}.action-btn.view-btn:hover:not(:disabled){background:#dbeafe}.action-btn.play-btn{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.action-btn.play-btn.playing{background:#10b981;color:#fff}.action-btn.download-btn{background:#fff7ed;border:1px solid #fed7aa;color:#c2410c}.action-btn.download-btn:hover:not(:disabled){background:#ffedd5}.action-btn.redpacket-btn{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.action-btn.redpacket-btn:hover:not(:disabled){background:#fee2e2}.backup-table .empty-row{color:#9ca3af;font-size:14px;padding:36px 12px;text-align:center}.admin-modal-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:99999}.admin-modal{animation:modalPopIn .22s ease;background:#fff;border-radius:18px;box-shadow:0 25px 50px -12px #00000059;display:flex;flex-direction:column;max-height:82vh;overflow:hidden;width:min(560px,92vw)}@keyframes modalPopIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.admin-modal-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:16px 22px}.admin-modal-header h3{color:#111827;font-size:17px;margin:0}.admin-modal-header .close-btn{background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;font-size:18px;padding:4px 8px}.admin-modal-header .close-btn:hover{background:#f3f4f6;color:#111827}.admin-modal-body{flex:1 1;overflow-y:auto;padding:20px 22px}.admin-modal-footer{border-top:1px solid #f1f5f9;display:flex;justify-content:flex-end;padding:14px 22px}.redpacket-modal .redpacket-info-grid{grid-gap:10px 18px;background:linear-gradient(135deg,#fff1f2,#fff7ed);border:1px solid #fecdd3;border-radius:12px;display:grid;gap:10px 18px;grid-template-columns:repeat(2,1fr);padding:14px 16px}.redpacket-info-item{align-items:center;display:flex;font-size:13px;gap:6px}.redpacket-info-item label{color:#6b7280;flex-shrink:0}.redpacket-info-item span{color:#111827;font-weight:500}.redpacket-info-item .redpacket-total{color:#dc2626;font-size:15px;font-weight:700}.redpacket-info-item .grab-count{color:#047857;font-weight:700}.redpacket-modal .grabbers-title{border-bottom:1px dashed #e5e7eb;color:#374151;font-size:15px;margin:22px 0 10px;padding-bottom:6px}.grabbers-list{display:flex;flex-direction:column;gap:6px;max-height:280px;overflow-y:auto}.grabber-item{grid-row-gap:2px;grid-column-gap:8px;align-items:center;background:#fafafa;border-radius:10px;column-gap:8px;display:grid;grid-template-columns:44px 1fr auto;grid-template-rows:auto auto;padding:8px 12px;row-gap:2px}.grabber-rank{color:#f59e0b;font-size:13px;font-weight:800;grid-row:1/span 2;text-align:center}.grabber-name{color:#111827;font-size:13px;font-weight:600;grid-column:2;grid-row:1}.grabber-chatid{color:#6b7280;font-size:11px;grid-column:2;grid-row:2}.grabber-points{color:#dc2626;font-size:14px;font-weight:700;grid-column:3;grid-row:1/span 2}.grabber-time{display:none}@media (max-width:768px){.admin-modal{max-height:88vh;width:95vw}.redpacket-modal .redpacket-info-grid{grid-template-columns:1fr}.grabber-time{color:#9ca3af;display:block;font-size:11px;grid-column:2/span 2;grid-row:2;text-align:right}.grabber-chatid{display:none}.backup-table .backup-content-cell{max-width:200px}.backup-table .backup-actions-cell{min-width:120px}.admin-panel{max-height:90vh;width:95%}.admin-tabs{padding:12px 16px}.admin-tab{font-size:12px;padding:8px 12px}.admin-content{padding:16px}.search-bar{flex-direction:column}.stats-grid{grid-template-columns:repeat(2,1fr)}.filter-bar{flex-direction:column}.filter-bar .admin-select{max-width:100%}.backup-actions{align-items:stretch;flex-direction:column}.avatar-item{flex-direction:column;text-align:center}.avatar-actions{margin-left:0}}.redpacket-overlay{animation:modalFadeIn .2s ease-out;background:#0009;bottom:0;left:0;position:fixed;right:0;top:0;z-index:2000}.redpacket-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0000004d;left:50%;max-width:420px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:2001}.redpacket-header{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.redpacket-header h3{font-size:18px;margin:0}.redpacket-header .close-btn{background:#fff3;color:#fff}.redpacket-header .close-btn:hover{background:#ffffff4d}.redpacket-body{padding:24px}.redpacket-error{background:#fef2f2;border-radius:8px;color:#dc2626;font-size:13px;margin-bottom:16px;padding:10px 12px}.redpacket-input-group{margin-bottom:20px}.redpacket-input-group label{color:#4b5563;display:block;font-size:13px;font-weight:500;margin-bottom:8px}.input-with-unit{align-items:center;background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;display:flex;overflow:hidden;transition:border-color .2s ease}.input-with-unit:focus-within{border-color:#ef4444}.input-with-unit input{background:#0000;border:none;color:#1f2937;flex:1 1;font-size:15px;outline:none;padding:12px 16px}.input-with-unit .unit{background:#00000008;border-left:1px solid #e5e7eb;color:#6b7280;font-size:14px;padding:12px 16px}.redpacket-preview{margin-top:20px}.preview-label{color:#9ca3af;font-size:12px;margin-bottom:8px}.preview-card{align-items:center;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;border-radius:12px;display:flex;gap:12px;padding:16px}.preview-icon{font-size:32px}.preview-info{flex:1 1}.preview-sender{color:#b91c1c;font-size:14px;font-weight:500;margin-bottom:4px}.preview-details{align-items:center;color:#dc2626;display:flex;font-size:12px;gap:8px}.preview-details .dot{color:#fca5a5}.redpacket-footer{display:flex;gap:12px;padding:16px 24px 24px}.redpacket-footer .cancel-btn{background:#f3f4f6;border:none;border-radius:10px;color:#6b7280;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:12px}.redpacket-footer .cancel-btn:hover{background:#e5e7eb}.redpacket-footer .send-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:10px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:12px;transition:all .2s ease}.redpacket-footer .send-btn:hover:not(:disabled){box-shadow:0 6px 20px #ef444466;transform:translateY(-2px)}.redpacket-footer .send-btn:disabled{cursor:not-allowed;opacity:.7}.redpacket-card{align-items:center;background:linear-gradient(135deg,#fff1f2,#ffe4e6);border:1px solid #fecaca;border-radius:16px;cursor:pointer;display:flex;gap:12px;min-width:200px;padding:14px 18px;transition:all .2s ease}.redpacket-card:hover{box-shadow:0 4px 12px #ef444426;transform:translateY(-2px)}.redpacket-icon{font-size:28px}.redpacket-info{flex:1 1}.redpacket-title{color:#b91c1c;font-size:14px;font-weight:500;margin-bottom:4px}.redpacket-details{align-items:center;color:#dc2626;display:flex;font-size:12px;gap:8px}.redpacket-details .dot{color:#fca5a5}.packet-overlay{animation:modalFadeIn .2s ease-out;background:#0009;bottom:0;left:0;position:fixed;right:0;top:0;z-index:2000}.packet-detail{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0000004d;left:50%;max-width:400px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:2001}.packet-header{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.packet-icon{font-size:24px}.packet-title{font-size:18px;font-weight:600}.packet-close{align-items:center;background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;width:32px}.packet-close:hover{background:#ffffff4d}.packet-body{padding:24px}.packet-total{margin-bottom:16px;text-align:center}.total-label{color:#6b7280;display:block;font-size:13px;margin-bottom:8px}.total-value{color:#dc2626;font-size:48px;font-weight:700}.packet-count{margin-bottom:20px;text-align:center}.count-label{color:#6b7280;display:block;font-size:13px;margin-bottom:4px}.count-value{color:#374151;font-size:16px;font-weight:600}.packet-finished,.packet-grabbed{border-radius:12px;font-size:14px;font-weight:500;margin-bottom:16px;padding:16px;text-align:center}.packet-grabbed{background:#d1fae5;color:#059669}.packet-finished{background:#fef3c7;color:#d97706}.grab-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:12px;box-shadow:0 4px 15px #ef44444d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:16px;transition:all .2s ease;width:100%}.grab-btn:hover:not(:disabled){box-shadow:0 6px 20px #ef444466;transform:translateY(-2px)}.grab-btn:disabled{cursor:not-allowed;opacity:.7}.packet-records{border-top:1px solid #e5e7eb;margin-top:20px;padding-top:20px}.records-title{color:#374151;font-size:14px;font-weight:600;margin-bottom:12px}.records-list{display:flex;flex-direction:column;gap:8px}.record-item{align-items:center;background:#f9fafb;border-radius:8px;display:flex;justify-content:space-between;padding:10px 12px}.record-user{color:#374151;font-size:13px}.record-points{color:#dc2626;font-size:14px;font-weight:600}.media-bubble{padding:12px}.media-placeholder{align-items:center;background:#f9fafb;border-radius:8px;display:flex;gap:12px;margin-bottom:10px;padding:12px}.media-icon{font-size:24px}.media-name{color:#374151;flex:1 1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-actions{display:flex;gap:8px}.media-btn{background:#f3f4f6;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s ease}.media-btn:hover{background:#667eea;color:#fff}.file-placeholder{align-items:center;background:#f9fafb;border-radius:8px;display:flex;gap:12px;margin-bottom:10px;padding:12px}.file-icon{font-size:24px}.file-info{flex:1 1}.file-name{color:#374151;font-size:13px;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{color:#9ca3af;font-size:11px}.voice-message{align-items:center;display:flex;gap:10px}.voice-icon{font-size:20px}.voice-player{flex:1 1;max-width:200px}.voice-duration{color:#9ca3af;font-size:12px}.image-overlay{align-items:center;animation:modalFadeIn .2s ease-out;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.image-preview{animation:modalSlideIn .3s ease-out;max-height:90%;max-width:90%;position:relative}.image-preview img{border-radius:8px;box-shadow:0 20px 60px #00000080;max-height:85vh;max-width:100%}.preview-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:36px;justify-content:center;position:absolute;right:0;top:-40px;width:36px}.preview-close:hover{background:#ffffff4d}.recall-text{color:#9ca3af;font-style:italic}.recall-btn{background:#0000;border:1px solid #d1d5db;border-radius:4px;color:#9ca3af;cursor:pointer;font-size:11px;margin-top:6px;padding:4px 10px;transition:all .2s ease}.recall-btn:hover{background:#f3f4f6;color:#6b7280}.hidden-file-input{display:none}.upload-progress-bar{align-items:center;background:#f3f4f6;border-radius:8px;display:flex;gap:12px;margin-bottom:8px;padding:10px 16px}.upload-filename{color:#374151;flex-shrink:0;font-size:13px}.progress-container{background:#e5e7eb;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.progress-bar{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:3px;height:100%;transition:width .3s ease}.progress-percent{color:#667eea;flex-shrink:0;font-size:13px;font-weight:600;text-align:right;width:45px}.ripple-container{overflow:hidden;position:relative}.ripple{animation:ripple-effect .6s linear;background:#fff6;border-radius:50%;pointer-events:none;position:absolute;transform:scale(0)}.activity-modal-overlay{align-items:center;animation:activityOverlayFadeIn .25s ease-out;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#0000008c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}@keyframes activityOverlayFadeIn{0%{opacity:0}to{opacity:1}}.activity-modal-content{animation:activityModalSlideUp .35s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:20px;box-shadow:0 25px 70px #00000059,0 0 0 1px #ffffff1a;display:flex;flex-direction:column;max-height:88vh;max-width:92vw;overflow:hidden;width:440px}@keyframes activityModalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.activity-modal-header{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a 50%,#fbbf24);border-bottom:1px solid #fcd34d4d;display:flex;justify-content:space-between;padding:18px 24px;position:relative}.activity-modal-header:after{background:linear-gradient(90deg,#f59e0b,#d97706,#f59e0b);bottom:-1px;content:"";height:3px;left:0;position:absolute;right:0}.activity-modal-title-wrap{align-items:center;display:flex;flex:1 1;gap:8px}.activity-modal-emoji{font-size:22px}.activity-modal-title{color:#92400e;font-size:18px;font-weight:700;letter-spacing:.5px;margin:0}.activity-modal-close{align-items:center;background:#fff9;border:none;border-radius:10px;color:#92400e;cursor:pointer;display:flex;height:34px;justify-content:center;transition:all .2s ease;width:34px}.activity-modal-close:hover{background:#ffffffe6;transform:rotate(90deg)}.activity-modal-back{align-items:center;background:#fff9;border:none;border-radius:10px;color:#92400e;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:4px;margin-right:8px;padding:8px 12px;transition:all .2s ease}.activity-modal-back:hover{background:#ffffffe6}.activity-modal-body{flex:1 1;overflow-y:auto;padding:24px}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{align-items:center;background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #fde68a;border-radius:16px;cursor:pointer;display:flex;gap:16px;overflow:hidden;padding:18px 20px;position:relative;text-align:left;transition:all .3s cubic-bezier(.16,1,.3,1);width:100%}.activity-item:before{background:linear-gradient(90deg,#0000,#ffffff80,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.activity-item:hover{border-color:#f59e0b;box-shadow:0 12px 30px #f59e0b40;transform:translateY(-3px)}.activity-item:hover:before{left:100%}.activity-item-icon{align-items:center;background:linear-gradient(135deg,#fde68a,#fbbf24);border-radius:14px;box-shadow:0 4px 12px #fbbf244d;display:flex;flex-shrink:0;font-size:36px;height:56px;justify-content:center;width:56px}.activity-item-info{flex:1 1}.activity-item-title{color:#92400e;font-size:17px;font-weight:700;margin-bottom:4px}.activity-item-desc{color:#b45309;font-size:13px;line-height:1.4}.activity-item-arrow{color:#d97706;flex-shrink:0;font-size:28px;font-weight:700}.welfare-hero{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fcd34d66;border-radius:16px;display:flex;gap:16px;margin-bottom:20px;overflow:hidden;padding:20px;position:relative}.welfare-hero:after{background:radial-gradient(circle,#fbbf244d,#0000);border-radius:50%;content:"";height:100px;position:absolute;right:-30px;top:-30px;width:100px}.welfare-hero-icon{align-items:center;animation:welfareIconBounce 2s ease-in-out infinite;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:16px;box-shadow:0 6px 16px #d977064d;display:flex;flex-shrink:0;font-size:40px;height:60px;justify-content:center;width:60px}@keyframes welfareIconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.welfare-hero-text{flex:1 1}.welfare-hero-title{color:#92400e;font-size:17px;font-weight:700;margin:0 0 4px}.welfare-hero-desc{color:#b45309;font-size:13px;line-height:1.4;margin:0 0 6px}.welfare-hero-reward{color:#78350f;font-size:13px;margin:0}.welfare-hero-reward span{animation:rewardPulse 1.5s ease-in-out infinite;background:#fff;border-radius:8px;box-shadow:0 2px 6px #dc262626;color:#dc2626;display:inline-block;font-size:20px;font-weight:800;margin:0 2px;padding:2px 10px}@keyframes rewardPulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.welfare-error-alert{align-items:center;animation:shakeAlert .4s ease;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fca5a5;border-radius:12px;color:#dc2626;display:flex;font-size:14px;font-weight:500;gap:10px;margin-bottom:18px;padding:12px 16px}@keyframes shakeAlert{0%,to{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}.welfare-error-alert svg{flex-shrink:0}.welfare-form{gap:18px}.welfare-field,.welfare-form{display:flex;flex-direction:column}.welfare-field{gap:8px}.welfare-label{color:#374151;font-size:14px;font-weight:600;letter-spacing:.3px}.welfare-input-wrap{align-items:center;background:#f9fafb;border:2px solid #e5e7eb;border-radius:14px;display:flex;position:relative;transition:all .25s ease}.welfare-input-wrap:focus-within{background:#fff;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a}.welfare-input-icon{color:#9ca3af;flex-shrink:0;left:14px;position:absolute;transition:color .2s ease}.welfare-input-wrap:focus-within .welfare-input-icon{color:#667eea}.welfare-input{background:#0000;border:none;border-radius:14px;color:#1f2937;flex:1 1;font-size:15px;outline:none;padding:14px 16px 14px 44px;transition:all .2s ease}.welfare-input::placeholder{color:#9ca3af;font-size:14px}.welfare-input:disabled{cursor:not-allowed;opacity:.5}.welfare-toggle-pwd{background:none;border:none;border-radius:6px;cursor:pointer;font-size:18px;padding:4px 6px;position:absolute;right:12px;transition:background .2s ease}.welfare-toggle-pwd:hover{background:#e5e7eb}.welfare-submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:14px;box-shadow:0 4px 15px #667eea59;color:#fff;cursor:pointer;font-size:16px;font-weight:700;letter-spacing:.5px;margin-top:8px;overflow:hidden;padding:15px;position:relative;transition:all .3s cubic-bezier(.16,1,.3,1);width:100%}.welfare-submit-btn:before{background:linear-gradient(90deg,#0000,#ffffff40,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.welfare-submit-btn:hover:not(:disabled){box-shadow:0 10px 30px #667eea73;transform:translateY(-3px)}.welfare-submit-btn:hover:not(:disabled):before{left:100%}.welfare-submit-btn:active:not(:disabled){transform:translateY(-1px)}.welfare-submit-btn:disabled{cursor:not-allowed;opacity:.7}.welfare-loading{align-items:center;display:flex;gap:8px;justify-content:center}.welfare-spinner{animation:spin .8s linear infinite;border:2.5px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}.welfare-footer-tip{align-items:center;color:#9ca3af;display:flex;font-size:12px;gap:6px;justify-content:center;margin-top:6px;text-align:center}.welfare-footer-tip svg{color:#d1d5db}@media (max-width:768px){.activity-modal-content{border-radius:18px;max-height:92vh;max-width:94vw;width:94vw}.activity-modal-header{padding:16px 18px}.activity-modal-title{font-size:16px}.activity-modal-body{padding:18px}.activity-item{gap:12px;padding:16px}.activity-item-icon{font-size:28px;height:48px;width:48px}.activity-item-title{font-size:15px}.welfare-hero{gap:12px;padding:16px}.welfare-hero-icon{font-size:32px;height:52px;width:52px}.welfare-input{font-size:15px;padding:12px 14px 12px 40px}.welfare-submit-btn{font-size:15px;padding:14px}}@media (max-width:380px){.activity-modal-content{max-width:96vw;width:96vw}.activity-modal-body{padding:14px}}@keyframes ripple-effect{to{opacity:0;transform:scale(4)}}@keyframes grabSuccess{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes pointsFloat{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-50px) scale(1.5)}}.grab-success{animation:grabSuccess .5s ease-out}.points-float{animation:pointsFloat 1s ease-out forwards}@keyframes coinFlip{0%{transform:rotateY(0deg) translateY(0)}50%{transform:rotateY(180deg) translateY(-20px)}to{transform:rotateY(1turn) translateY(0)}}.coin-flip{animation:coinFlip .6s ease-in-out}@keyframes messagePop{0%{opacity:0;transform:scale(.8) translateY(10px)}50%{transform:scale(1.02)}to{opacity:1;transform:scale(1) translateY(0)}}.message-pop{animation:messagePop .3s ease-out}.skeleton{animation:skeleton-loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:8px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-avatar{border-radius:50%;height:40px;width:40px}.skeleton-text{height:16px;margin-bottom:8px}.skeleton-text.short{width:60%}.skeleton-text.medium{width:80%}.skeleton-text.full{width:100%}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.slide-in-left{animation:slideInLeft .3s ease-out}.slide-in-right{animation:slideInRight .3s ease-out}.slide-in-up{animation:slideInUp .3s ease-out}.slide-in-down{animation:slideInDown .3s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.fade-in{animation:fadeIn .3s ease-out}.fade-out{animation:fadeOut .3s ease-out}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.scale-in{animation:scaleIn .2s ease-out}.scale-out{animation:scaleOut .2s ease-out}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}.bounce-in{animation:bounceIn .5s ease-out}.pulse{animation:pulse 2s ease-in-out infinite}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.rotate{animation:rotate 1s linear infinite}.image-preview-container{border-radius:8px;cursor:pointer;overflow:hidden;transition:transform .2s ease}.image-preview-container:hover{transform:scale(1.02)}.message-image{border-radius:8px;max-height:150px;max-width:200px;object-fit:cover}.touch-feedback{transition:transform .1s ease}.touch-feedback:active{transform:scale(.95)}.pull-refresh{align-items:center;color:#9ca3af;display:flex;flex-direction:column;font-size:13px;justify-content:center;padding:16px;transition:all .3s ease}.pull-refresh.spinning{color:#667eea}.pull-refresh-icon{font-size:20px;margin-bottom:4px;transition:transform .3s ease}.pull-refresh.spinning .pull-refresh-icon{animation:spin .8s linear infinite}.preview-video{border-radius:8px;max-height:80vh;max-width:100%}@media (max-width:768px){.upload-progress-bar{padding:8px 12px}.upload-filename{font-size:12px;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-percent{font-size:12px;width:35px}body{background:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:hidden}.mobile-app{overflow:hidden;position:fixed}.mobile-app,.mobile-view{height:100%;left:0;top:0;width:100%}.mobile-view{background:#f5f7fa;overflow-y:auto;position:absolute;transition:transform .3s ease-out,opacity .3s ease-out}.mobile-view.active{opacity:1;transform:translateX(0);z-index:10}.mobile-view.slide-out{opacity:0;transform:translateX(100%);z-index:5}.mobile-header{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 20px #667eea4d;color:#fff;padding:40px 20px 20px}.mobile-user-info{align-items:center;display:flex;gap:16px}.mobile-avatar{align-items:center;background:#fff3;border:3px solid #ffffff4d;border-radius:50%;display:flex;font-size:28px;font-weight:600;height:72px;justify-content:center;overflow:hidden;width:72px}.mobile-avatar img{height:100%;object-fit:cover;width:100%}.mobile-user-details{flex:1 1}.mobile-user-name{font-size:20px;font-weight:700;margin-bottom:4px}.mobile-user-chat-id{font-size:13px;opacity:.8}.mobile-user-level{text-align:right}.mobile-level-badge{align-items:center;background:#fbbf24e6;border-radius:20px;color:#92400e;display:inline-flex;font-size:13px;font-weight:600;margin-bottom:6px;padding:4px 12px}.mobile-points{font-size:14px;opacity:.9}.mobile-channel-btn,.mobile-channels{display:flex;gap:12px;padding:16px}.mobile-channel-btn{align-items:center;background:#fff;border:none;border-radius:16px;box-shadow:0 2px 10px #0000000d;flex:1 1;transition:all .2s ease}.mobile-channel-btn:active{background:#f9fafb;transform:scale(.98)}.channel-icon{align-items:center;border-radius:12px;display:flex;font-size:22px;height:44px;justify-content:center;width:44px}.public-icon{background:linear-gradient(135deg,#10b981,#059669)}.ai-icon{background:linear-gradient(135deg,#8b5cf6,#6366f1)}.channel-info{flex:1 1;text-align:left}.channel-info .channel-name{color:#1f2937;font-size:15px;font-weight:600;margin-bottom:2px}.channel-info .channel-online{color:#6b7280;font-size:12px}.mobile-section{padding:0 16px 16px}.mobile-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.section-title{color:#374151;font-size:16px;font-weight:600}.mobile-add-friend-btn{background:#667eea;border:none;border-radius:20px;color:#fff;font-size:13px;font-weight:500;padding:6px 14px;transition:all .2s ease}.mobile-add-friend-btn:active{background:#5a67d8;transform:scale(.95)}.mobile-friend-list{background:#fff;border-radius:16px;box-shadow:0 2px 10px #0000000d;padding:8px}.mobile-empty{align-items:center;color:#9ca3af;display:flex;flex-direction:column;padding:40px 20px}.mobile-empty span:first-child{font-size:16px;margin-bottom:8px}.empty-hint{font-size:13px}.mobile-friend-item{align-items:center;border-radius:12px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:background .2s ease}.mobile-friend-item:active{background:#f3f4f6}.mobile-friend-avatar{align-items:center;background:#e5e7eb;border-radius:50%;color:#6b7280;display:flex;flex-shrink:0;font-size:20px;font-weight:600;height:48px;justify-content:center;overflow:hidden;width:48px}.mobile-friend-avatar img{height:100%;object-fit:cover;width:100%}.mobile-friend-info{flex:1 1;min-width:0}.mobile-friend-name{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:2px}.mobile-friend-chat-id{color:#9ca3af;font-size:12px}.mobile-friend-status{border-radius:12px;font-size:12px;font-weight:500;padding:4px 10px}.mobile-friend-status.online{background:#10b9811a;color:#059669}.mobile-friend-status.offline{background:#9ca3af1a;color:#9ca3af}.mobile-function-grid{grid-gap:12px;background:#fff;border-radius:16px;box-shadow:0 2px 10px #0000000d;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);padding:16px}.mobile-function-btn{align-items:center;background:#f9fafb;border:none;border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:16px 8px;transition:all .2s ease}.mobile-function-btn:active{background:#f3f4f6}.mobile-function-btn.admin-btn{background:#f5576c1a}.mobile-function-btn.logout-btn{background:#ef44441a;color:#ef4444}.function-icon{font-size:28px}.function-label{color:#374151;font-size:13px;font-weight:500}.mobile-function-btn.logout-btn .function-label{color:#ef4444}.mobile-chat-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000a;display:flex;height:56px;justify-content:space-between;left:0;padding:0 12px;position:fixed;right:0;top:0;z-index:100}.mobile-back-btn{align-items:center;background:#f3f4f6;border:none;border-radius:50%;color:#374151;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.mobile-back-btn:active{background:#e5e7eb;transform:scale(.95)}.mobile-back-btn svg{height:20px;width:20px}.mobile-chat-title{flex:1 1;padding:0 12px;text-align:center}.chat-name{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:2px}.chat-status{color:#6b7280;font-size:12px}.mobile-menu-btn{align-items:center;background:#f3f4f6;border:none;border-radius:50%;color:#374151;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.mobile-menu-btn:active{background:#e5e7eb;transform:scale(.95)}.mobile-menu-btn svg{height:20px;width:20px}.mobile-menu-overlay{animation:fadeIn .2s ease;background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:200}.mobile-menu-panel{animation:slideDown .2s ease;background:#fff;border-radius:16px;box-shadow:0 10px 40px #00000026;min-width:180px;padding:8px 0;position:absolute;right:12px;top:64px}.mobile-menu-item{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:15px;gap:10px;padding:14px 16px;transition:background .2s ease;width:100%}.mobile-menu-item:active{background:#f3f4f6}.mobile-menu-item.danger{color:#ef4444}.mobile-menu-item.admin-item{background:#f5576c14;color:#f5576c}.menu-icon{font-size:18px}.mobile-message-container{background:#f5f7fa;bottom:100px;left:0;overflow-y:auto;padding:16px;position:fixed;right:0;top:56px}}@media (max-width:768px){.mobile-message-container::-webkit-scrollbar{width:4px}.mobile-message-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:2px}.mobile-chat-input{background:#fff;border-top:1px solid #e5e7eb;bottom:0;left:0;padding:12px;position:fixed;right:0;z-index:100}.mobile-chat-input .chat-input{display:block!important}.mobile-action-sheet-overlay{animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:flex-end;left:0;position:fixed;right:0;top:0;z-index:300}.mobile-action-sheet{animation:slideUp .3s ease;background:#fff;border-radius:20px 20px 0 0;bottom:0;left:0;padding:16px 16px calc(16px + env(safe-area-inset-bottom));position:absolute;right:0}.action-sheet-header{border-bottom:1px solid #e5e7eb;color:#1f2937;font-weight:600;text-align:center}.action-sheet-header,.action-sheet-item{font-size:16px;margin-bottom:8px;padding:16px}.action-sheet-item{align-items:center;background:#f9fafb;border:none;border-radius:12px;color:#374151;cursor:pointer;display:flex;gap:10px;justify-content:center;transition:background .2s ease;width:100%}.action-sheet-item:active{background:#f3f4f6}.action-sheet-item.danger{background:#ef44441a;color:#ef4444}.action-icon{font-size:20px}.action-sheet-cancel{background:#f3f4f6;border:none;border-radius:12px;color:#6b7280;cursor:pointer;font-size:16px;margin-top:8px;padding:16px;transition:background .2s ease;width:100%}.action-sheet-cancel:active{background:#e5e7eb}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-message-container .message-list{display:block!important;height:100%;overflow-y:auto;padding:0}.mobile-message-container .message-container{background:#f5f7fa;height:100%;overflow-y:auto;padding:16px}.mobile-chat-input .chat-input-container{align-items:center;background:#f3f4f6;border-radius:24px;display:flex;gap:8px;padding:8px}.mobile-chat-input .chat-input{background:#fff;border:none;border-radius:20px;flex:1 1;font-size:15px;outline:none;padding:10px 16px}.mobile-chat-input .chat-actions{display:flex;gap:8px}.mobile-chat-input .chat-action-btn{align-items:center;background:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:18px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.mobile-chat-input .chat-action-btn:active{background:#e5e7eb;transform:scale(.95)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.message-item{gap:8px;margin-bottom:16px}.message-avatar{font-size:14px;height:36px;width:36px}.message-content{max-width:75%}.message-bubble{border-radius:14px;font-size:14px;padding:10px 14px}.message-meta{margin-bottom:4px}.message-sender{font-size:11px}.message-time{font-size:10px}.input-tools{gap:8px;margin-bottom:8px}.tool-btn{font-size:16px;height:32px;width:32px}.input-container{gap:8px}.message-input{min-height:44px;padding:12px 14px}.message-input,.send-btn{border-radius:14px;font-size:14px}.send-btn{padding:12px 20px}.auth-card{border-radius:20px;padding:28px 20px}.auth-icon,.auth-title{font-size:24px}.auth-icon{height:56px;width:56px}.form-input{font-size:16px;padding:16px 14px 16px 48px}.auth-btn{font-size:17px;padding:16px 24px}.captcha-image{height:44px;width:80px}.refresh-captcha-btn{height:44px;width:44px}.toast{left:16px;padding:14px 20px;right:16px;top:16px}.points-center{border-radius:20px;max-height:90vh;width:95%}.points-header{flex-direction:column;gap:16px}.points-number{font-size:36px}.mall-items-grid,.rules-grid{grid-template-columns:1fr}.add-friend-modal,.admin-panel,.settings-modal{border-radius:20px;max-height:90vh;width:95%}.admin-table{font-size:12px}.admin-table td,.admin-table th{padding:8px 4px}.settings-content{max-height:350px;padding:16px}.upload-section{gap:8px}.upload-btn{font-size:13px;padding:10px 24px}.friend-request-item{padding:10px}.request-avatar{height:40px;width:40px}.request-action-btn{font-size:12px;padding:6px 12px}.search-result-item{padding:10px}.online-status-clickable{align-items:center;background:#ffffff26;border-radius:12px;cursor:pointer;display:inline-flex;gap:4px;padding:4px 10px;transition:all .25s ease}.online-status-clickable:active{background:#ffffff40;transform:scale(.95)}.mobile-view{transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .35s ease-out}.mobile-view.active{animation:viewSlideIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes viewSlideIn{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.mobile-header{animation:headerSlideDown .5s ease-out}@keyframes headerSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.mobile-user-info{animation:userInfoFadeIn .6s ease-out .1s backwards}@keyframes userInfoFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mobile-channel-btn{animation:channelBtnIn .5s ease-out backwards;transition:transform .2s ease,box-shadow .2s ease}.mobile-channel-btn:first-child{animation-delay:.15s}.mobile-channel-btn:nth-child(2){animation-delay:.25s}.mobile-channel-btn:nth-child(3){animation-delay:.35s}@keyframes channelBtnIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.mobile-channel-btn:active{transform:scale(.97)}.mobile-function-btn{animation:functionBtnIn .5s ease-out backwards;transition:transform .2s ease}.mobile-function-btn:active{transform:scale(.95)}@keyframes functionBtnIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.mobile-chat-header{animation:chatHeaderIn .4s ease-out}@keyframes chatHeaderIn{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.mobile-menu-overlay{animation:overlayFadeIn .25s ease-out}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.mobile-menu-panel{animation:panelSlideUp .3s cubic-bezier(.34,1.56,.64,1)}@keyframes panelSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.mobile-menu-item{animation:menuItemIn .3s ease-out backwards}.mobile-menu-item:first-child{animation-delay:.05s}.mobile-menu-item:nth-child(2){animation-delay:.1s}.mobile-menu-item:nth-child(3){animation-delay:.15s}.mobile-menu-item:nth-child(4){animation-delay:.2s}.mobile-menu-item:nth-child(5){animation-delay:.25s}.mobile-menu-item:nth-child(6){animation-delay:.3s}@keyframes menuItemIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.mobile-message-container{animation:messageContainerIn .4s ease-out .1s backwards}@keyframes messageContainerIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.mobile-chat-input{animation:inputSlideUp .4s ease-out .15s backwards}@keyframes inputSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.mobile-friend-item{animation:friendItemIn .4s ease-out backwards;transition:transform .2s ease,background .2s ease}.mobile-friend-item:active{background:#667eea1a;transform:scale(.98)}@keyframes friendItemIn{0%{opacity:0;transform:translateX(-15px)}to{opacity:1;transform:translateX(0)}}.friend-status-indicator .status-dot,.mobile-friend-item .status-dot{position:relative}.friend-status-indicator.online .status-dot,.mobile-friend-item .online .status-dot{animation:onlinePulse 2s ease-in-out infinite}@keyframes onlinePulse{0%,to{box-shadow:0 0 0 0 #4ade8080}50%{box-shadow:0 0 0 5px #4ade8000}}.mobile-loading{align-items:center;display:flex;justify-content:center;padding:40px}.mobile-loading-spinner{animation:spin .8s linear infinite;border:3px solid #667eea33;border-radius:50%;border-top-color:#667eea;height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.mobile-modal{animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.mobile-modal-content{animation:modalContentIn .35s cubic-bezier(.34,1.56,.64,1)}@keyframes modalContentIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.result-avatar{height:36px;width:36px}.announcement{padding:10px 16px}.announcement-title{font-size:13px}.announcement-text{font-size:12px}.loading-state{font-size:13px;gap:8px}.loading-spinner{height:28px;width:28px}.empty-state{min-height:200px}.empty-icon{height:60px;margin-bottom:12px;width:60px}.empty-title{font-size:16px}.empty-subtitle{font-size:13px}.confirm-modal{padding:20px;width:90%}.confirm-title{font-size:16px}.confirm-message{font-size:13px}.confirm-btn{font-size:14px;padding:12px 14px}.log-item{gap:8px;padding:10px}.log-time{font-size:11px}.log-amount,.log-reason{font-size:13px}.leaderboard-item{gap:10px;padding:10px}.rank{height:32px;width:32px}.mall-item-card{gap:10px;padding:14px}.item-name{font-size:13px}.item-desc{font-size:11px}.item-price{font-size:13px}.buy-btn{font-size:12px;padding:5px 14px}.checkin-section{padding:16px}.checkin-btn,.checkin-title{font-size:14px}.checkin-btn{padding:12px}.quick-stats{gap:8px}.stat-item{gap:8px;padding:12px}.stat-icon{font-size:20px}.stat-value{font-size:16px}.stat-label{font-size:11px}.mobile-view.mobile-chat .mobile-message-container .message-container{height:100%;padding:0}.mobile-view.mobile-chat .mobile-message-container .message-list{height:100%}.mobile-view.mobile-chat .mobile-chat-input .chat-input{background:#fff;border-top:none;padding:8px}}.online-users-overlay{align-items:flex-start;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);background:#0000;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;transition:background .3s ease,-webkit-backdrop-filter .3s ease;transition:background .3s ease,backdrop-filter .3s ease;transition:background .3s ease,backdrop-filter .3s ease,-webkit-backdrop-filter .3s ease;z-index:9998}.online-users-overlay.visible{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080}.online-users-panel{background:linear-gradient(135deg,#fff,#f8f9ff);border-radius:24px;box-shadow:0 20px 60px #0000;display:flex;flex-direction:column;margin-top:60px;max-height:75vh;max-width:560px;opacity:0;overflow:hidden;transform:translateY(-30px) scale(.95);transition:transform .35s cubic-bezier(.34,1.56,.64,1),opacity .3s ease,box-shadow .3s ease;width:90%}.online-users-panel.visible{box-shadow:0 20px 60px #667eea40;opacity:1;transform:translateY(0) scale(1)}.online-users-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;overflow:hidden;padding:24px 28px;position:relative}.online-users-header:before{animation:floatOrb 6s ease-in-out infinite;background:radial-gradient(circle,#ffffff26 0,#0000 70%);border-radius:50%;content:"";height:200px;position:absolute;right:-20%;top:-50%;width:200px}@keyframes floatOrb{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-15px) scale(1.1)}}.header-content{align-items:center;display:flex;gap:16px;z-index:1}.header-icon-wrap{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:16px;display:flex;height:52px;justify-content:center;position:relative;width:52px}.header-icon{font-size:26px}.header-pulse{animation:headerPulse 2s ease-out infinite;border:2px solid #fff9;border-radius:16px;bottom:0;left:0;position:absolute;right:0;top:0}@keyframes headerPulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.3)}}.header-text h3{font-size:20px;font-weight:600;margin:0 0 4px}.header-text p{align-items:center;display:flex;font-size:13px;gap:6px;margin:0;opacity:.9}.online-count-badge{background:#ffffff4d;border-radius:12px;display:inline-flex;font-size:14px;font-weight:700;height:24px;min-width:24px;padding:0 8px}.close-btn,.online-count-badge{align-items:center;justify-content:center}.close-btn{background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:36px;transition:all .2s ease;width:36px;z-index:1}.close-btn:hover{background:#ffffff59;transform:rotate(90deg)}.close-btn svg{height:18px;width:18px}.online-users-body{flex:1 1;overflow-y:auto;padding:20px;scrollbar-color:#c5cae9 #0000;scrollbar-width:thin}.online-users-body::-webkit-scrollbar{width:6px}.online-users-body::-webkit-scrollbar-thumb{background:#c5cae9;border-radius:3px}.online-users-body::-webkit-scrollbar-track{background:#0000}.users-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.user-card{align-items:center;animation:cardFadeIn .4s ease-out backwards;background:#fff;border:2px solid #0000;border-radius:16px;box-shadow:0 2px 8px #667eea14;cursor:default;display:flex;flex-direction:column;padding:16px 8px;transition:all .25s ease}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.user-card:hover{border-color:#667eea4d;box-shadow:0 8px 20px #667eea33;transform:translateY(-4px)}.user-avatar-wrap{margin-bottom:10px;position:relative}.user-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 4px 12px #667eea4d;color:#fff;display:flex;font-size:22px;font-weight:600;height:52px;justify-content:center;text-transform:uppercase;width:52px}.user-status-dot{animation:statusPulse 2s ease-in-out infinite;background:#4ade80;border:3px solid #fff;border-radius:50%;bottom:2px;height:14px;position:absolute;right:2px;width:14px}@keyframes statusPulse{0%,to{box-shadow:0 0 0 0 #4ade8080}50%{box-shadow:0 0 0 6px #4ade8000}}.user-name{color:#333;font-size:13px;font-weight:500;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.empty-state{align-items:center;color:#999;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.empty-icon{font-size:48px;margin-bottom:12px;opacity:.5}.empty-state p{font-size:14px;margin:0}@media (max-width:768px){.online-users-panel{border-radius:0;height:100vh;margin-top:0;max-height:100vh;max-width:100%;width:100%}.online-users-overlay{align-items:stretch}.online-users-header{padding:calc(20px + env(safe-area-inset-top, 0)) 20px 20px}.header-text h3{font-size:18px}.users-grid{gap:12px;grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.user-card{padding:12px 6px}.user-avatar{font-size:18px;height:44px;width:44px}.user-name{font-size:12px}}.voice-call-screen{animation:fadeIn .3s ease-out;background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);bottom:0;color:#fff;flex-direction:column;height:100vh;left:0;position:fixed;right:0;top:0;width:100vw;z-index:9999}.voice-call-screen,.voice-call-screen .call-content{align-items:center;display:flex;justify-content:center}.voice-call-screen .call-content{flex:1 1;flex-direction:column;max-width:500px;padding:40px 20px;width:100%}.voice-call-screen .avatar-container{height:120px;margin-bottom:30px;position:relative;width:120px}.voice-call-screen .avatar{align-items:center;animation:pulse 2s infinite;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 10px 40px #0000004d;color:#fff;display:flex;font-size:48px;font-weight:700;height:100%;justify-content:center;width:100%}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.voice-call-screen .calling-ring{animation:ring 1.5s ease-out infinite;border:3px solid #667eea80;border-radius:50%;height:140px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:140px}@keyframes ring{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}.voice-call-screen .user-name{font-size:28px;font-weight:600;margin-bottom:15px;text-shadow:0 2px 10px #0000004d}.voice-call-screen .call-status{font-size:18px;margin-bottom:10px;opacity:.8}.voice-call-screen .call-duration{font-family:Courier New,monospace;font-size:32px;font-weight:300;letter-spacing:2px;margin-bottom:10px}.voice-call-screen .muted-hint{align-items:center;background:#ffffff1a;border-radius:20px;display:flex;font-size:14px;gap:8px;padding:8px 16px}.voice-call-screen .call-actions{align-items:center;display:flex;gap:40px;justify-content:center;padding:30px 20px 50px;width:100%}.voice-call-screen .call-actions button{align-items:center;background:#0000;border:none;border-radius:50%;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:15px;transition:transform .2s ease,box-shadow .2s ease}.voice-call-screen .call-actions button:hover{transform:scale(1.1)}.voice-call-screen .call-actions button:active{transform:scale(.95)}.voice-call-screen .call-actions .icon{align-items:center;border-radius:50%;display:flex;font-size:28px;height:70px;justify-content:center;width:70px}.voice-call-screen .call-actions .label{font-size:13px;opacity:.8}.voice-call-screen .accept-btn .icon{animation:acceptPulse 1.5s infinite;background:linear-gradient(135deg,#11998e,#38ef7d);box-shadow:0 5px 20px #11998e66}@keyframes acceptPulse{0%,to{box-shadow:0 5px 20px #11998e66}50%{box-shadow:0 5px 30px #11998e99}}.voice-call-screen .hangup-btn .icon{background:linear-gradient(135deg,#eb3349,#f45c43);box-shadow:0 5px 20px #eb334966}.voice-call-screen .reject-btn .icon{background:linear-gradient(135deg,#666,#999);box-shadow:0 5px 20px #6666}.voice-call-screen .mute-btn .icon{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 5px 20px #667eea66}.voice-call-screen .mute-btn.muted .icon{background:linear-gradient(135deg,#ff6b6b,#ee5a5a);box-shadow:0 5px 20px #ff6b6b66}.voice-call-screen.ended .ended-icon{font-size:64px;margin-bottom:20px;opacity:.6}.voice-call-screen.error .error-icon{font-size:64px;margin-bottom:20px}.voice-call-screen.error .error-message{font-size:16px;line-height:1.6;max-width:300px;opacity:.8;text-align:center}.voice-call-screen #remote-audio{display:none}@media (max-width:768px){.voice-call-screen .avatar-container{height:100px;width:100px}.voice-call-screen .avatar{font-size:40px}.voice-call-screen .calling-ring{height:120px;width:120px}.voice-call-screen .user-name{font-size:24px}.voice-call-screen .call-duration{font-size:28px}.voice-call-screen .call-actions{gap:30px}.voice-call-screen .call-actions .icon{font-size:24px;height:60px;width:60px}}.ai-generator-page{background:linear-gradient(135deg,#1a1a2e,#16213e 50%,#0f3460);color:#e0e0e0;display:flex;flex-direction:column;min-height:100vh;width:100%}.ai-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border-bottom:1px solid #ffffff1a;justify-content:space-between;padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.ai-header,.ai-header-left{align-items:center;display:flex}.ai-header-left{gap:12px}.ai-back-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#e0e0e0;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.ai-back-btn:hover{background:#ffffff26;border-color:#ffffff4d}.ai-logo{font-size:28px}.ai-header-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:18px;font-weight:600}.ai-header-right{align-items:center;display:flex;gap:12px}.ai-usage-badge{align-items:center;background:#667eea33;border-radius:20px;color:#a5b4fc;display:flex;font-size:13px;gap:8px;padding:6px 12px}.ai-cost-tag{background:#ef444433;border-radius:10px;color:#fca5a5;font-size:11px;padding:2px 8px}.ai-history-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#e0e0e0;cursor:pointer;display:flex;font-size:14px;gap:6px;padding:8px 16px;transition:all .2s}.ai-history-btn:hover{background:#ffffff26}.ai-mobile-tabs{background:#ffffff08;border-bottom:1px solid #ffffff14;display:none;gap:8px;padding:12px}.ai-mobile-tab{background:#ffffff0d;border-radius:8px;color:#a0a0a0;cursor:pointer;flex:1 1;font-size:13px;padding:10px;text-align:center;transition:all .2s}.ai-mobile-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.ai-main{display:flex;flex:1 1;min-height:0;overflow:auto}.ai-sidebar{background:#ffffff08;border-right:1px solid #ffffff14;flex-shrink:0;padding:20px 12px;width:220px}.ai-nav-label{color:#666;font-size:11px;letter-spacing:1px;padding:0 12px 12px;text-transform:uppercase}.ai-nav-item{align-items:center;border-radius:10px;color:#b0b0b0;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:12px;transition:all .2s}.ai-nav-item:hover{background:#ffffff0d;color:#e0e0e0}.ai-nav-item.active{background:linear-gradient(135deg,#667eea4d,#764ba24d);border:1px solid #667eea4d;color:#fff}.ai-nav-icon{font-size:18px}.ai-content{display:flex;flex:1 1;justify-content:center;overflow-y:auto;padding:30px}.ai-panel{display:none;max-width:700px;width:100%}.ai-panel.active{animation:fadeInUp .3s ease;display:block}.ai-panel-header{margin-bottom:24px}.ai-panel-title{align-items:center;color:#fff;display:flex;font-size:24px;font-weight:700;gap:10px;margin-bottom:8px}.ai-badge{background:#667eea33;border-radius:12px;color:#a5b4fc;font-family:monospace;font-size:12px;font-weight:500;padding:3px 10px}.ai-panel-desc{color:#888;font-size:14px}.ai-form-group{margin-bottom:18px}.ai-form-label{color:#b0b0b0;display:block;font-size:13px;font-weight:500;margin-bottom:8px}.ai-form-input,.ai-form-select,.ai-form-textarea{background:#fffffff2;border:1px solid #fff3;border-radius:10px;box-sizing:border-box;color:#1a1a2e;font-size:14px;outline:none;padding:12px 14px;transition:all .2s;width:100%}.ai-form-input:focus,.ai-form-select:focus,.ai-form-textarea:focus{background:#fff;border-color:#667eeacc}.ai-form-select option{background:#fff;color:#1a1a2e}.ai-form-textarea{font-family:inherit;min-height:100px;resize:vertical}.ai-form-input::placeholder,.ai-form-textarea::placeholder{color:#6b7280;opacity:.7}.ai-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.ai-upload-area{background:#ffffff08;border:2px dashed #ffffff26;border-radius:12px;cursor:pointer;padding:30px;text-align:center;transition:all .2s}.ai-upload-area:hover{background:#ffffff0d;border-color:#667eea80}.ai-upload-icon{font-size:36px;margin-bottom:8px}.ai-upload-text{color:#b0b0b0;font-size:14px;margin-bottom:4px}.ai-upload-hint{color:#666;font-size:12px}.ai-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px 28px;transition:all .2s}.ai-btn-primary:hover:not(:disabled){box-shadow:0 8px 25px #667eea66;transform:translateY(-1px)}.ai-btn-primary:disabled{cursor:not-allowed;opacity:.6}.ai-btn-block{display:block;width:100%}.ai-btn-secondary{background:#ffffff1a;border:1px solid #ffffff26;border-radius:8px;color:#e0e0e0;cursor:pointer;font-size:13px;padding:8px 16px;transition:all .2s}.ai-btn-secondary:hover{background:#ffffff26}.ai-btn-sm{font-size:12px;padding:6px 12px}.ai-keyframes-list{display:flex;flex-direction:column;gap:10px}.ai-keyframe-item{grid-gap:10px;align-items:center;background:#ffffff0a;border-radius:10px;display:grid;gap:10px;grid-template-columns:80px 100px 1fr 30px;padding:10px}.ai-keyframe-time{color:#888;display:flex;flex-direction:column;font-size:12px;gap:4px}.ai-keyframe-time input{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:6px;color:#e0e0e0;padding:6px;width:100%}.ai-keyframe-img{align-items:center;background:#0003;border-radius:8px;display:flex;height:100px;justify-content:center;overflow:hidden;width:100px}.ai-keyframe-img img{height:100%;object-fit:cover;width:100%}.ai-keyframe-upload{color:#667eea;cursor:pointer;font-size:12px;padding:20px 10px;text-align:center}.ai-keyframe-upload:hover{color:#8b9cf7}.ai-keyframe-remove{background:#ef444433;border:none;border-radius:50%;color:#fca5a5;cursor:pointer;font-size:14px;height:30px;width:30px}.ai-keyframe-remove:hover{background:#ef44444d}.ai-keyframe-add{background:#667eea26;border:1px dashed #667eea66;border-radius:10px;color:#a5b4fc;cursor:pointer;font-size:13px;padding:10px;transition:all .2s}.ai-keyframe-add:hover:not(:disabled){background:#667eea40}.ai-keyframe-add:disabled{cursor:not-allowed;opacity:.5}.ai-result-area{background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;display:none;margin-top:30px;padding:20px}.ai-result-area.visible{animation:fadeInUp .3s ease;display:block}.ai-result-header h3{color:#fff;font-size:16px;margin-bottom:16px}.ai-result-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.ai-result-grid.single-col{grid-template-columns:1fr}.ai-result-grid-item{background:#0000004d;border-radius:12px;overflow:hidden}.ai-result-grid-item img{cursor:pointer;display:block;transition:transform .2s;width:100%}.ai-result-grid-item img:hover{transform:scale(1.02)}.ai-img-actions{display:flex;gap:8px;justify-content:center;padding:10px}.ai-video-result{text-align:center}.ai-result-notice{background:#f59e0b26;border:1px solid #f59e0b4d;border-radius:10px;color:#fbbf24;font-size:13px;margin-top:16px;padding:12px 16px;text-align:center}.ai-overlay{animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;inset:0;position:fixed;z-index:9998}.ai-history-panel{background:#1a1a2e;box-shadow:-10px 0 40px #00000080;display:flex;flex-direction:column;height:100vh;max-width:90vw;position:fixed;right:-500px;top:0;transition:right .3s ease;width:450px;z-index:9999}.ai-history-panel.open{right:0}.ai-history-header{align-items:center;border-bottom:1px solid #ffffff14;display:flex;justify-content:space-between;padding:20px}.ai-history-header h2{color:#fff;font-size:18px}.ai-history-close{background:none;border:none;border-radius:50%;color:#888;cursor:pointer;font-size:20px;height:32px;width:32px}.ai-history-close:hover{background:#ffffff1a;color:#fff}.ai-history-body{flex:1 1;overflow-y:auto;padding:16px}.ai-history-empty{align-items:center;color:#666;display:flex;flex-direction:column;height:100%;justify-content:center}.ai-history-item{background:#ffffff08;border-radius:10px;display:flex;gap:12px;margin-bottom:10px;padding:12px}.ai-history-thumb{background:#0000004d;border-radius:8px;flex-shrink:0;height:80px;overflow:hidden;width:80px}.ai-history-thumb img,.ai-history-thumb video{height:100%;object-fit:cover;width:100%}.ai-history-info{flex:1 1;min-width:0}.ai-history-title{color:#e0e0e0;font-size:13px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-history-meta{color:#666;font-size:11px;margin-bottom:8px}.ai-history-actions button{background:#667eea33;border:1px solid #667eea66;border-radius:6px;color:#a5b4fc;cursor:pointer;font-size:12px;padding:4px 12px}.ai-history-actions button:hover:not(:disabled){background:#667eea4d}.ai-loading-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:none;flex-direction:column;gap:20px;inset:0;justify-content:center;position:fixed;z-index:10000}.ai-loading-overlay.visible{display:flex}.ai-spinner{animation:spin 1s linear infinite;border:4px solid #667eea33;border-radius:50%;border-top-color:#667eea;height:50px;width:50px}.ai-loading-text{color:#e0e0e0;font-size:16px}.ai-toast{animation:slideDown .3s ease;border-radius:10px;box-shadow:0 10px 30px #0000004d;font-size:14px;left:50%;padding:12px 24px;position:fixed;top:20px;transform:translateX(-50%);z-index:10001}.ai-toast.success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.ai-toast.error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.ai-toast.info{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes slideDown{0%{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@media (max-width:768px){.ai-generator-page{height:100vh;height:100dvh;overflow:hidden}.ai-header{flex-shrink:0;padding:10px 12px}.ai-header-left{gap:8px}.ai-header-title{font-size:14px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-logo{font-size:22px}.ai-back-btn{font-size:12px;padding:6px 10px}.ai-usage-badge{font-size:11px;gap:4px;padding:4px 8px}.ai-usage-badge span:first-child{display:none}.ai-cost-tag{font-size:10px;padding:1px 5px}.ai-history-btn{font-size:12px;padding:6px 10px}.ai-mobile-tabs{-webkit-overflow-scrolling:touch;display:flex;flex-shrink:0;overflow-x:auto;scrollbar-width:none}.ai-mobile-tabs::-webkit-scrollbar{display:none}.ai-mobile-tab{flex-shrink:0;font-size:12px;padding:8px 12px;white-space:nowrap}.ai-main{-webkit-overflow-scrolling:touch;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto}.ai-sidebar{display:none}.ai-content{min-height:-webkit-fit-content;min-height:fit-content;overflow-y:visible;padding:16px 14px 80px;width:100%}.ai-panel-title{flex-wrap:wrap;font-size:18px;gap:6px}.ai-badge{font-size:10px;padding:2px 8px}.ai-panel-desc{font-size:12px}.ai-form-group{margin-bottom:14px}.ai-form-label{font-size:12px;margin-bottom:6px}.ai-form-input,.ai-form-select,.ai-form-textarea{-webkit-appearance:none;appearance:none;border-radius:8px;font-size:14px;padding:10px 12px}.ai-form-textarea{min-height:80px}.ai-form-row{gap:12px;grid-template-columns:1fr}.ai-upload-area{padding:20px 15px}.ai-upload-icon{font-size:32px}.ai-upload-text{font-size:13px}.ai-upload-hint{font-size:11px}.ai-btn-primary{font-size:14px;padding:12px 20px}.ai-btn-secondary{font-size:12px;padding:8px 12px}.ai-keyframes-list{gap:8px}.ai-keyframe-item{gap:8px;grid-template-columns:50px 70px 1fr;padding:8px}.ai-keyframe-img{height:70px;width:70px}.ai-keyframe-upload{font-size:11px;padding:12px 6px}.ai-keyframe-remove{border-radius:8px;grid-column:span 3;height:32px;width:100%}.ai-keyframe-add{font-size:12px;padding:10px}.ai-result-area{margin-top:20px;padding:15px}.ai-result-header h3{font-size:15px}.ai-result-grid{gap:10px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.ai-result-grid.single-col{grid-template-columns:1fr}.ai-video-result video{max-height:300px}.ai-img-actions{flex-direction:column;gap:8px}.ai-img-actions button{width:100%}.ai-history-panel{max-width:100%;right:-100%;width:100%}.ai-history-header{padding:16px}.ai-history-header h2{font-size:16px}.ai-history-body{-webkit-overflow-scrolling:touch;padding:12px}.ai-history-item{flex-direction:column;gap:10px;padding:12px}.ai-history-thumb{height:150px;width:100%}.ai-history-info{width:100%}.ai-history-title{font-size:13px}.ai-history-actions button{flex:1 1}.ai-loading-overlay{background:#000c}.ai-spinner{border-width:3px;height:40px;width:40px}.ai-loading-text{font-size:14px}.ai-toast{font-size:13px;left:10px;padding:10px 16px;right:10px;top:10px;transform:none}.ai-queue-warning{margin-bottom:16px;padding:14px}.ai-queue-title{font-size:14px}.ai-queue-desc{font-size:12px}.ai-history-body::-webkit-scrollbar,.ai-main::-webkit-scrollbar{width:3px}.ai-history-body::-webkit-scrollbar-thumb,.ai-main::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}}@media (max-width:380px){.ai-header-title{font-size:13px;max-width:100px}.ai-form-input,.ai-form-select,.ai-form-textarea,.ai-panel-title{font-size:16px}.ai-result-grid{grid-template-columns:1fr}.ai-history-thumb{height:120px}}
/*# sourceMappingURL=main.aa120417.css.map*/