@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}#root{width:100%}.admin-login-container{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex;position:relative;overflow:hidden}.admin-login-container:before{content:"";background:radial-gradient(circle,#ffffff1a 1px,#0000 1px) 0 0/30px 30px;width:200%;height:200%;animation:20s linear infinite move;position:absolute;top:-50%;left:-50%}@keyframes move{0%{transform:translate(0)}to{transform:translate(30px,30px)}}.admin-login-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border:none;border-radius:16px;width:100%;max-width:400px;padding:32px 24px;transition:all .3s;box-shadow:0 12px 48px #00000026}.admin-login-card:hover{transform:translateY(-4px);box-shadow:0 16px 64px #0003}.admin-login-header{text-align:center;margin-bottom:32px}.admin-login-header .admin-login-icon{background:linear-gradient(135deg,#81d8d0 0%,#4db8aa 100%);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 16px;display:flex;box-shadow:0 4px 16px #81d8d04d}.admin-login-header .admin-login-icon .anticon{color:#fff;font-size:40px}.admin-login-header .admin-login-title{color:#333;margin:0 0 8px;font-weight:600}.admin-login-header .admin-login-subtitle{color:#666;font-size:14px}.admin-login-form .ant-form-item{margin-bottom:20px}.admin-login-form .ant-form-item:last-child{margin-bottom:0}.admin-login-form .ant-form-item-label{margin-bottom:8px}.admin-login-form .ant-form-item-label label{color:#333;font-size:14px;font-weight:500}.admin-login-form .ant-input{border-color:#e0e0e0;border-radius:10px;padding:12px 16px;font-size:15px;transition:all .3s}.admin-login-form .ant-input:focus{border-color:#81d8d0;transform:translateY(-1px);box-shadow:0 0 0 3px #81d8d033}.admin-login-form .ant-input-prefix{color:#1677ff}.admin-login-form .ant-btn{border-radius:10px;width:100%;padding:14px;font-size:16px;font-weight:600;transition:all .3s}.admin-login-form .ant-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #81d8d066}.admin-login-form .ant-btn:active{transform:translateY(0)}.admin-login-forgot{text-align:right;margin-bottom:24px}.admin-login-forgot a{color:#81d8d0;cursor:pointer;font-size:14px}.admin-login-forgot a:hover{text-decoration:underline}.home-login-container{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex;position:relative;overflow:hidden}.home-login-container:before{content:"";background:radial-gradient(circle,#ffffff1a 1px,#0000 1px) 0 0/30px 30px;width:200%;height:200%;animation:20s linear infinite move;position:absolute;top:-50%;left:-50%}.home-login-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border:none;border-radius:16px;width:100%;max-width:400px;padding:32px 24px;transition:all .3s;box-shadow:0 12px 48px #00000026}.home-login-card:hover{transform:translateY(-4px);box-shadow:0 16px 64px #0003}.home-login-header{text-align:center;margin-bottom:32px}.home-login-header .home-login-icon{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 16px;display:flex;box-shadow:0 4px 16px #667eea4d}.home-login-header .home-login-icon .anticon{color:#fff;font-size:40px}.home-login-header .home-login-title{color:#333;margin:0 0 8px;font-weight:600}.home-login-header .home-login-subtitle{color:#666;font-size:14px}.home-login-form .ant-form-item{margin-bottom:20px}.home-login-form .ant-form-item:last-child{margin-bottom:0}.home-login-form .ant-form-item-label{margin-bottom:8px}.home-login-form .ant-form-item-label label{color:#333;font-size:14px;font-weight:500}.home-login-form .ant-input{border-color:#e0e0e0;border-radius:10px;padding:12px 16px;font-size:15px;transition:all .3s}.home-login-form .ant-input:focus{border-color:#667eea;transform:translateY(-1px);box-shadow:0 0 0 3px #667eea33}.home-login-form .ant-input-prefix{color:#667eea}.home-login-form .ant-btn{background-color:#667eea;border-color:#667eea;border-radius:10px;width:100%;padding:14px;font-size:16px;font-weight:600;transition:all .3s}.home-login-form .ant-btn:hover{box-shadow:0 4px 12px #667eea66;background-color:#667eea!important;border-color:#667eea!important;transform:translateY(-2px)!important}.home-login-form .ant-btn:active{transform:translateY(0)!important}.home-login-forgot{text-align:right;margin-bottom:24px}.home-login-forgot a{color:#667eea;cursor:pointer;font-size:14px}.home-login-forgot a:hover{text-decoration:underline}.admin-layout{height:100vh}.admin-main-layout{height:100%}.admin-sider{border-right:1px solid #f0f0f0;background:#fff!important;overflow:hidden auto!important}.admin-sider .ant-layout-sider-children{flex-direction:column;display:flex}.admin-logo{background:#f5f5f5;border-radius:8px;justify-content:center;align-items:center;height:64px;margin:16px;display:flex}.admin-logo .admin-logo-icon{color:#1677ff;font-size:28px}.ant-layout-sider-collapsed .admin-logo .admin-logo-icon{font-size:24px}.admin-menu{flex:1;background:0 0!important;border-right:none!important}.admin-menu .ant-menu-item{color:#333!important;border-radius:8px!important}.admin-menu .ant-menu-item:hover{color:#1677ff!important;background:#1677ff0d!important}.admin-menu .ant-menu-item.ant-menu-item-selected{color:#1677ff!important;background:#e6f4ff!important}.admin-header{border-bottom:1px solid #f0f0f0;flex-shrink:0;justify-content:space-between;align-items:center;display:flex;background:#fff!important;padding:0 24px!important}.admin-header .admin-header-left,.admin-header .admin-header-right{align-items:center;display:flex}.admin-header .admin-trigger{height:40px;padding:0 12px;font-size:18px}.admin-header .admin-trigger:hover{color:#1677ff}.admin-header .admin-user-btn{color:#333}.admin-header .admin-user-btn:hover{color:#1677ff}.admin-header .admin-logout-btn{text-align:left;width:100%}.admin-content{background:#fff;border-radius:8px;margin:24px;padding:0;overflow-y:auto!important}.admin-content-wrapper{min-height:100%}.home-layout{height:100vh}.home-header{flex-shrink:0;justify-content:space-between;align-items:center;display:flex;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)!important;padding:0 24px!important}.home-header .home-header-title{color:#fff;font-size:18px;font-weight:600}.home-header .home-header-right{align-items:center;display:flex}.home-header .home-user-btn{color:#fff}.home-header .home-user-btn:hover{color:#fffc}.home-header .home-logout-btn{text-align:left;width:100%}.home-content{background:#f9f9f9;margin:0;padding:0;overflow-y:auto!important}.home-content-wrapper{min-height:100%}.admin-home,.cookie-management{padding:24px}.cookie-management .cookie-management-header{margin-bottom:16px}.job-management{padding:24px}.job-management .job-management-search{background:#fff;border-radius:6px;margin-bottom:16px;padding:16px}.job-management .job-management-header{margin-bottom:16px}@media (width<=768px){.products-layout{flex-direction:column}}.keyword-list{background-color:#fff;border-radius:12px;width:240px;padding:16px;box-shadow:0 2px 8px #00000014}@media (width<=768px){.keyword-list{width:100%}}.job-log{padding:24px}.job-log .job-log-search{margin-bottom:16px}.result-panel{border:none;border-radius:12px;box-shadow:0 2px 8px #00000014}.result-panel .ant-card-head{padding:0 24px}.result-panel .ant-card-head-title{color:#333;font-size:16px;font-weight:600}.result-panel .ant-card-body{padding:24px}.result-panel .export-btn{color:#1677ff;background-color:#fff;border-color:#1677ff;border-radius:8px}.result-panel .export-btn:hover{background-color:#1677ff0d}.result-panel-header{justify-content:space-between;align-items:center;width:100%;display:flex}.status-container{flex-direction:column;justify-content:center;align-items:center;padding:48px 0;display:flex}.status-container .loading-text{color:#666;margin-top:16px}.empty-container{text-align:center;padding:48px 0}.products-layout{gap:24px;margin-top:24px;display:flex}@media (width<=768px){.products-layout{flex-direction:column}}.keyword-list{background-color:#fff;border-radius:12px;flex-shrink:0;width:200px;padding:16px;box-shadow:0 2px 8px #00000014}@media (width<=768px){.keyword-list{width:100%}}.keyword-list .keyword-item{cursor:pointer;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:8px;padding:12px 16px;transition:all .3s}.keyword-list .keyword-item:hover{background-color:#1677ff0d;border-color:#1677ff}.keyword-list .keyword-item.active{background-color:#1677ff1a;border:1px solid #1677ff}.keyword-list .keyword-item.active .ant-text{color:#1677ff}.products-content{background-color:#fff;border-radius:12px;flex:1;padding:16px;box-shadow:0 2px 8px #00000014}.products-content .group-title{color:#1677ff;margin-bottom:16px;font-size:16px;display:block}.products-content .empty-product{text-align:center;padding:48px 0}.products-content .ant-table{border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.products-content .ant-table .ant-table-thead{background-color:#f9f9f9}.chat-modal{z-index:1000;background-color:#fff;border-radius:12px;flex-direction:column;width:420px;height:620px;display:flex;position:fixed;bottom:50px;right:30px;box-shadow:0 4px 20px #00000026}.chat-modal .chat-header{border-bottom:1px solid #eee;border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:12px 16px;font-weight:500;display:flex}.chat-modal .chat-container{background-color:#f7f7f7;flex:1;padding:16px;overflow-y:auto}.chat-modal .chat-empty{text-align:center;color:#999;margin-top:80px}.chat-modal .chat-empty .chat-emoji{margin-bottom:16px;font-size:40px}.chat-modal .chat-loading{color:#666;align-items:center;gap:8px;padding:12px 0;display:flex}.chat-modal .chat-message{margin-bottom:16px;display:flex}.chat-modal .chat-message.user{justify-content:flex-end}.chat-modal .chat-message.assistant{justify-content:flex-start}.chat-modal .chat-message .message-bubble{white-space:pre-wrap;border-radius:12px;max-width:85%;padding:12px 16px;line-height:1.5}.chat-modal .chat-message .user-bubble{color:#333;box-shadow:none;background-color:#e9e9e980}.chat-modal .chat-message .assistant-bubble{color:#333;background-color:#fff;box-shadow:0 1px 3px #0000001a}.chat-modal .chat-message .assistant-bubble h1,.chat-modal .chat-message .assistant-bubble h2,.chat-modal .chat-message .assistant-bubble h3,.chat-modal .chat-message .assistant-bubble h4,.chat-modal .chat-message .assistant-bubble h5,.chat-modal .chat-message .assistant-bubble h6{margin-top:8px;margin-bottom:4px;font-weight:600}.chat-modal .chat-message .assistant-bubble p{margin:4px 0}.chat-modal .chat-message .assistant-bubble code{background-color:#f5f5f5;border-radius:4px;padding:2px 6px;font-size:13px}.chat-modal .chat-message .assistant-bubble pre{background-color:#f5f5f5;border-radius:8px;padding:12px;overflow-x:auto}.chat-modal .chat-message .assistant-bubble pre code{background:0 0;padding:0}.chat-modal .chat-message .assistant-bubble ul,.chat-modal .chat-message .assistant-bubble ol{margin:4px 0;padding-left:20px}.chat-modal .chat-message .assistant-bubble blockquote{color:#666;border-left:3px solid #ddd;margin:8px 0;padding-left:12px}.chat-modal .chat-message .assistant-bubble table{border-collapse:collapse;width:100%;margin:8px 0}.chat-modal .chat-message .assistant-bubble table th,.chat-modal .chat-message .assistant-bubble table td{text-align:left;border:1px solid #ddd;padding:6px 10px}.chat-modal .chat-message .assistant-bubble table th{background-color:#f5f5f5}.chat-modal .chat-message .assistant-bubble a{color:#1890ff;text-decoration:none}.chat-modal .chat-message .assistant-bubble a:hover{text-decoration:underline}.chat-modal .chat-input-container{background-color:#fff;border-top:1px solid #eee;border-radius:0 0 12px 12px;padding:12px 16px}.chat-modal .chat-input-wrapper{background-color:#fff;border:1px solid #e5e5e5;border-radius:24px;align-items:center;padding:8px 16px;transition:box-shadow .2s;display:flex;box-shadow:0 0 0 2px #0000}.chat-modal .chat-input-wrapper:focus-within{box-shadow:0 0 0 3px #e5e5e533}.chat-modal .chat-input-wrapper .chat-textarea{resize:none;background:0 0;border:none;outline:none;flex:1;padding:0;font-size:15px;line-height:1.5}.chat-modal .chat-input-wrapper .chat-textarea:focus{box-shadow:none;outline:none}.chat-modal .chat-input-wrapper .chat-textarea::placeholder{color:#999}.chat-modal .chat-input-wrapper .send-button{color:#999;cursor:not-allowed;background-color:#e5e5e5;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-left:8px;transition:all .2s;display:flex}.chat-modal .chat-input-wrapper .send-button.active{color:#fff;cursor:pointer;background-color:#000}.chat-modal .chat-input-wrapper .send-button.active:hover{background-color:#333}.chat-modal .chat-input-wrapper .send-button.stop-button{color:#fff;cursor:pointer;background-color:#e9e9e980;animation:1.5s infinite pulse}.chat-modal .chat-input-wrapper .send-button.stop-button:hover{background-color:#e9e9e980}.chat-modal .chat-input-wrapper .send-button.stop-button .stop-button-icon{background-color:#000;border-radius:4px;width:12px;height:12px;margin:0 auto;display:block}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.chat-modal .chat-tip{text-align:center;color:#999;margin-top:8px;font-size:12px}.home-page-container{background-color:#f9f9f9;min-height:100%}.home-page-content{max-width:1600px;margin:0 auto;padding:32px 24px}.home-page-welcome-card{border:none;border-radius:12px;margin-bottom:24px;box-shadow:0 2px 8px #00000014}.home-page-welcome-card .ant-card-head-title{color:#333;font-size:18px;font-weight:600}.home-page-welcome-card .ant-card-body p{color:#666;line-height:1.6}.home-page-features-card{border:none;border-radius:12px;box-shadow:0 2px 8px #00000014}.home-page-features-card .ant-card-head-title{color:#333;font-size:18px;font-weight:600}.home-page-features-card .ant-empty-description{color:#999}.home-page-chat-button{background-color:#fff;width:45px;height:45px;font-size:20px;transition:all .3s;position:fixed;bottom:100px;right:30px;box-shadow:0 4px 12px #00000026}.home-page-chat-button:hover{transform:scale(1.1);box-shadow:0 6px 16px #0003;background-color:#fff!important}
