.login-container{display:flex;min-height:100vh;background:linear-gradient(135deg,#fff0f5,#f3e8ff,#e0f2fe);overflow:hidden}.login-mascot-section{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;position:relative}.login-mascot-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 50%,rgba(249,115,22,.12),transparent 50%),radial-gradient(circle at 70% 30%,rgba(139,92,246,.12),transparent 50%),radial-gradient(circle at 50% 80%,rgba(59,130,246,.12),transparent 50%);pointer-events:none}.mascot-container{position:relative;z-index:1;text-align:center}.login-mascot{width:320px;height:320px;object-fit:contain;animation:float 4s ease-in-out infinite;filter:drop-shadow(0 20px 40px rgba(139,92,246,.25))}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}.mascot-slogan{margin-top:32px;font-size:28px;font-weight:700;color:#1a1a1a;letter-spacing:-.5px}.mascot-subtitle{margin-top:10px;font-size:15px;color:#666;max-width:400px;line-height:1.6}.login-form-section{flex:0 0 480px;display:flex;align-items:center;justify-content:center;padding:40px}.login-box{background:#fffffff2;border-radius:20px;padding:44px 40px;width:100%;max-width:420px;box-shadow:0 24px 64px #8b5cf626;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.6)}.login-header{text-align:center;margin-bottom:28px}.logo-link{display:inline-flex;align-items:center;gap:14px}.logo-badge{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#f97316,#f28b9d);padding:5px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #f9731640;flex-shrink:0}.logo-mascot{width:100%;height:100%;object-fit:cover;border-radius:10px;display:block}.logo{font-size:30px;font-weight:700;color:#f97316;letter-spacing:-.5px;line-height:1;margin:0}.login-title{font-size:22px;font-weight:600;text-align:center;margin-bottom:28px;color:#333}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:14px;font-weight:500;color:#555}.form-input{padding:14px 16px;border:1px solid #e5e7eb;border-radius:10px;font-size:16px;transition:all .3s ease;background:#fff}.form-input:focus{outline:none;border-color:#f97316;box-shadow:0 0 0 3px #f973161f}.phone-input-group{display:flex;gap:8px}.country-code-select{padding:14px 12px;border:1px solid #e5e7eb;border-radius:10px;font-size:16px;background:#fff;cursor:pointer;min-width:100px}.country-code-select:focus{outline:none;border-color:#f97316}.phone-input-group .form-input{flex:1}.login-button{padding:14px;background:linear-gradient(135deg,#f97316,#f28b9d);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;transition:all .3s ease;margin-top:8px}.login-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #f9731659}.login-button:active{transform:translateY(0)}.login-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.error-alert{padding:12px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;text-align:center}@media (max-width: 900px){.login-container{flex-direction:column;padding:0}.login-mascot-section{flex:none;padding:32px 24px 16px}.login-mascot{width:180px;height:180px}.mascot-slogan{font-size:22px;margin-top:20px}.mascot-subtitle{display:none}.login-form-section{flex:1;padding:16px 24px 40px}.login-box{padding:32px 24px}}.agents-page{min-height:100vh;background:#f7f9fc}.header-content{max-width:1400px;margin:0 auto;padding:0 36px;display:flex;align-items:center;justify-content:space-between;height:64px}.header-user{display:flex;align-items:center;gap:12px}.page-main{max-width:1400px;margin:0 auto;padding:24px 32px}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.header-title-section{display:flex;flex-direction:column;gap:4px}.page-title{font-size:24px;font-weight:600;color:#1a1a1a}.page-subtitle{font-size:14px;color:#888}.loading-spinner{width:48px;height:48px;background:url(/assets/mascot.png) no-repeat center;background-size:contain;animation:mascot-bounce 1.5s ease-in-out infinite}.retry-button{padding:10px 24px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;transition:all .3s ease}.agents-grid-new{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.agent-card-new{background:#fff;border-radius:14px;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f;padding:24px;border:1px solid #e8e8e8;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;display:flex;flex-direction:column}.agent-card-new:hover{transform:translateY(-2px);box-shadow:0 10px 24px #00000014;border-color:#dedede}.agent-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.agent-title{font-size:17px;font-weight:600;color:#1a1a1a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-card-body{margin-bottom:20px}.agent-info-item{display:flex;align-items:center;margin-bottom:14px;font-size:14px}.agent-info-item:last-child{margin-bottom:0}.info-label{color:#666;font-weight:500;min-width:80px}.info-value{color:#333}.agent-card-actions{display:flex;gap:8px;margin-top:auto}.agent-action-button{flex:1;padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;color:#333;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.agent-action-button:hover{background:#f8f8f8;border-color:#bfbfbf}@media (max-width: 720px){.header-content{padding:0 16px}.page-main{padding:16px}.agents-grid-new{grid-template-columns:1fr;gap:16px}}.chat-history-page{min-height:100vh;background:#f7f9fc}.page-header{background:#fff;box-shadow:0 2px 8px #00000014;position:sticky;top:0;z-index:100}.header-content{max-width:1200px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;height:64px;gap:24px}.header-left{display:flex;align-items:center;gap:16px}.header-logo{display:inline-flex;align-items:center;gap:12px;text-decoration:none}.logo-badge{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#f97316,#f28b9d);padding:4px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 3px 10px #f9731638;flex-shrink:0}.header-logo-mascot{width:100%;height:100%;object-fit:cover;border-radius:8px;display:block}.logo-text{font-size:20px;font-weight:700;color:#f97316;letter-spacing:-.5px;line-height:1;margin:0}.back-button{padding:8px 16px;background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.back-button:hover{background:#e5e7eb;color:#1f2937}.header-title{flex:1;text-align:center}.page-title{font-size:20px;font-weight:700;color:#1a1a1a;margin:0}.header-nav{display:flex;gap:32px}.nav-link{font-size:15px;color:#666;text-decoration:none;padding:8px 0;position:relative;transition:color .3s ease}.nav-link:hover{color:#f97316}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:#f97316;transition:width .3s ease}.nav-link:hover:after{width:100%}.header-user{display:flex;align-items:center;gap:16px}.user-name{font-size:14px;color:#555;font-weight:500}.logout-button{padding:8px 16px;background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.logout-button:hover{background:#e5e7eb;color:#1f2937}.page-main{max-width:1200px;margin:0 auto;padding:32px}.chat-list-header{margin-bottom:24px}.chat-list-title{font-size:24px;font-weight:700;color:#1a1a1a;margin:0}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px;gap:16px}.loading-spinner{width:48px;height:48px;background:url(/assets/mascot.png) no-repeat center;background-size:contain;animation:mascot-bounce 1.5s ease-in-out infinite}@keyframes mascot-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.05)}}.loading-container p{color:#888;font-size:14px}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px;gap:16px}.error-message{color:#ef4444;font-size:14px}.retry-button{padding:10px 24px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;transition:all .3s ease;cursor:pointer}.retry-button:hover{background:#5a67d8}.chat-list{display:flex;flex-direction:column;gap:16px}.chat-item{background:#fff;border-radius:12px;padding:20px;border:1px solid #e8e8e8;box-shadow:0 1px 3px #0000000f;transition:all .2s ease}.chat-item:hover{box-shadow:0 4px 12px #0000001a;border-color:#d9d9d9}.chat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.chat-title{font-size:16px;font-weight:600;color:#1a1a1a}.chat-date{font-size:13px;color:#999}.chat-summary{font-size:14px;color:#666;line-height:1.6;margin-bottom:16px}.chat-meta{display:flex;gap:24px;flex-wrap:wrap}.chat-actions{display:flex;justify-content:flex-end;margin-top:12px}.chat-detail-button{padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;color:#333;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.chat-detail-button:hover{background:#f8f8f8;border-color:#bfbfbf}.chat-messages{margin-top:14px;padding-top:14px;border-top:1px solid #f0f0f0}.chat-messages-loading,.chat-messages-error,.chat-messages-empty{font-size:13px;color:#666}.chat-messages-error{color:#ef4444}.message-list{display:flex;flex-direction:column;gap:10px}.wechat-thread{background:#ededed;border-radius:10px;padding:12px;max-height:520px;overflow:auto}.wechat-row{display:flex;align-items:flex-end;gap:10px}.wechat-row-user{flex-direction:row-reverse}.wechat-row-system,.wechat-row-tool,.wechat-row-other{justify-content:center}.wechat-row-system .wechat-avatar,.wechat-row-tool .wechat-avatar,.wechat-row-other .wechat-avatar{display:none}.wechat-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;background:#9ca3af;flex-shrink:0}.wechat-avatar-user{background:#22c55e}.wechat-avatar-assistant{background:#6366f1}.wechat-avatar-tool{background:#f59e0b}.wechat-bubble-wrap{display:flex;flex-direction:column;gap:4px;max-width:78%}.wechat-row-user .wechat-bubble-wrap{align-items:flex-end}.wechat-row-system .wechat-bubble-wrap,.wechat-row-tool .wechat-bubble-wrap,.wechat-row-other .wechat-bubble-wrap{align-items:center}.wechat-time{font-size:12px;color:#8c8c8c}.wechat-bubble{border-radius:10px;padding:10px 12px;box-shadow:0 1px 1px #0000000f;max-width:100%}.wechat-bubble-assistant{background:#fff;color:#111827}.wechat-bubble-user{background:#95ec69;color:#111827}.wechat-bubble-system,.wechat-bubble-tool,.wechat-bubble-other{background:#f5f5f5;color:#374151}.wechat-content{font-size:14px;line-height:1.6;white-space:pre-wrap}.chat-meta-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#666}.meta-label{color:#999}.meta-value{color:#333;font-weight:500}.page-button{padding:8px 12px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;color:#333;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.page-button:hover:not(:disabled){background:#f8f8f8;border-color:#bfbfbf}.page-button:disabled{color:#999;cursor:not-allowed;background:#fafafa}.pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px;flex-wrap:wrap}.pagination-info{display:flex;gap:12px;font-size:13px;color:#666}.pagination-controls{display:flex;align-items:center;gap:12px}.pagination-pages{display:flex;align-items:center;gap:6px}.page-number{font-size:13px;color:#666}.page-ellipsis{font-size:14px;color:#999;padding:0 4px}.page-number-button{min-width:32px;height:32px;padding:0 10px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;color:#333;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.page-number-button:hover{background:#f8f8f8;border-color:#bfbfbf}.page-number-button.active{background:#667eea;border-color:#667eea;color:#fff}.app{min-height:100vh}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#333}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}a{text-decoration:none;color:inherit}button{cursor:pointer;font-family:inherit}input{font-family:inherit}
