.container[data-v-4a5238b7]{min-height:90vh;background-color:#fff}.main[data-v-4a5238b7]{width:100%;display:flex;flex-direction:row;gap:20px}.left[data-v-4a5238b7]{flex:1;min-width:0}.search-card[data-v-4a5238b7]{border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05);border:1px solid #e8eaed}.search-card[data-v-4a5238b7] .el-card__body{padding:24px}.conditions[data-v-4a5238b7]{display:flex;flex-direction:column;gap:12px;margin-bottom:8px}.search-row-all[data-v-4a5238b7]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:nowrap}.filter-section-right[data-v-4a5238b7]{display:flex;align-items:center;gap:24px}.filter-item-horizontal[data-v-4a5238b7]{display:flex;align-items:center;gap:8px}.filter-label-inline[data-v-4a5238b7]{font-size:13px;color:#606266;font-weight:500;display:flex;align-items:center;gap:4px;white-space:nowrap}.mobile-search[data-v-4a5238b7]{display:none;margin-top:12px}.total-match[data-v-4a5238b7]{display:flex;align-items:center;gap:8px;color:#606266;font-size:14px;font-weight:500}.total-match i[data-v-4a5238b7]{color:#409eff}.count-number[data-v-4a5238b7]{color:#409eff;font-weight:600}.view-mode-switch[data-v-4a5238b7]{display:flex;align-items:center}.view-mode-switch[data-v-4a5238b7] .el-button-group{display:flex}.view-mode-switch[data-v-4a5238b7] .el-button{padding:8px 16px;font-size:13px;font-weight:500;border-radius:6px;transition:all .3s ease}.view-mode-switch[data-v-4a5238b7] .el-button--primary{background:linear-gradient(135deg,#409eff,#1890ff);border-color:#409eff}.view-mode-switch[data-v-4a5238b7] .el-button:first-child{border-radius:6px 0 0 6px}.view-mode-switch[data-v-4a5238b7] .el-button:last-child{border-radius:0 6px 6px 0}.sort-tags-section[data-v-4a5238b7]{display:flex;flex-direction:column;gap:8px}.section-title[data-v-4a5238b7]{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#1f2329}.section-title i[data-v-4a5238b7]{color:#409eff;font-size:15px}.sort-tags[data-v-4a5238b7]{display:flex;flex-wrap:wrap;gap:5px}.sort-tag-item[data-v-4a5238b7]{padding:6px 9.5px;border-radius:6px;font-size:11px;font-weight:500;color:#606266;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;user-select:none;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;position:relative;overflow:hidden}.sort-tag-item[data-v-4a5238b7]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(64,158,255,.1),transparent);transition:left .5s}.sort-tag-item[data-v-4a5238b7]:hover{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0369a1;border-color:#0ea5e9;box-shadow:0 4px 12px rgba(14,165,233,.15)}.sort-tag-item[data-v-4a5238b7]:hover:before{left:100%}.sort-tag-active[data-v-4a5238b7]{background:linear-gradient(135deg,#409eff,#1890ff);color:#fff;border-color:#409eff;font-weight:600;box-shadow:0 4px 12px rgba(64,158,255,.4)}.sort-tag-active[data-v-4a5238b7]:before{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent)}.filter-section[data-v-4a5238b7]{display:flex;gap:24px;align-items:flex-end;flex-wrap:wrap}.filter-item[data-v-4a5238b7]{display:flex;flex-direction:column;gap:8px}.filter-label[data-v-4a5238b7]{font-size:13px;color:#606266;font-weight:500;display:flex;align-items:center;gap:4px}.section-divider[data-v-4a5238b7]{margin:20px 0;border-color:#e8eaed}.empty-state[data-v-4a5238b7]{padding:60px 20px}.custom-button[data-v-4a5238b7]{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:20px;padding:12px 24px;font-weight:600;letter-spacing:.5px;transition:all .3s ease}.custom-button[data-v-4a5238b7]:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(102,126,234,.4)}.project-item[data-v-4a5238b7]{background:#fff;border-radius:8px;margin-bottom:16px;border:1px solid #e8eaed;transition:all .3s ease;overflow:hidden}.project-item[data-v-4a5238b7]:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.1);border-color:#c6d1f0}.project-header[data-v-4a5238b7]{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 20px 12px;border-bottom:1px solid #f0f2f5}.project-title[data-v-4a5238b7]{margin:0;font-size:18px;font-weight:600;color:#1f2329;cursor:pointer;line-height:1.4;max-width:70%;transition:color .3s ease;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-title[data-v-4a5238b7]:hover{color:#409eff}.project-price[data-v-4a5238b7]{display:flex;align-items:center;gap:4px}.price-label[data-v-4a5238b7]{font-size:13px;color:#8a8e99}.price-value[data-v-4a5238b7]{font-size:18px;font-weight:700;color:#f56c6c}.project-content[data-v-4a5238b7]{display:flex;gap:16px;padding:0 20px 16px}.project-image[data-v-4a5238b7]{position:relative;width:200px;height:120px;border-radius:6px;overflow:hidden;cursor:pointer;flex-shrink:0}.project-image img[data-v-4a5238b7]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease}.image-overlay[data-v-4a5238b7]{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity .3s ease;gap:8px;pointer-events:none}.project-image:hover .image-overlay[data-v-4a5238b7]{opacity:1}.project-image:hover img[data-v-4a5238b7]{transform:scale(1.05)}.image-overlay i[data-v-4a5238b7]{font-size:24px}.image-overlay span[data-v-4a5238b7]{font-size:14px;font-weight:500}.project-description[data-v-4a5238b7]{flex:1;display:flex;flex-direction:column;gap:12px}.description-text[data-v-4a5238b7]{font-size:13px;line-height:1.5;color:#4e5969;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.feature-tags[data-v-4a5238b7]{display:flex;flex-wrap:wrap;gap:6px}.preview-tag-mobile-hidden[data-v-4a5238b7]{display:inline-flex!important}.feature-tags .el-tag[data-v-4a5238b7]{border-radius:12px;font-size:11px;padding:4px 10px;border:none;display:inline-flex;align-items:center;justify-content:center;line-height:1;height:auto;min-height:20px}.feature-tags .el-tag i[data-v-4a5238b7]{margin-right:4px;display:inline-flex;align-items:center}.feature-tag-active[data-v-4a5238b7]{background:linear-gradient(135deg,#67c23a,#85ce61)!important;color:#fff!important;border:none!important}.feature-tag-active i[data-v-4a5238b7]{color:#fff!important}.feature-tag-inactive[data-v-4a5238b7]{background-color:#f5f7fa!important;color:#909399!important;border:1px solid #e4e7ed!important}.feature-tag-inactive i[data-v-4a5238b7]{color:#c0c4cc!important}.tech-tags[data-v-4a5238b7]{display:flex;flex-wrap:wrap;gap:4px}.tech-tags .el-tag[data-v-4a5238b7]{border-radius:3px;font-size:10px;background-color:#f2f3f5;color:#86909c;border:1px solid #e5e6eb;padding:2px 6px;height:18px;line-height:1}.project-footer[data-v-4a5238b7]{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background-color:#f8f9fa;border-top:1px solid #f0f2f5}.author-info[data-v-4a5238b7]{display:flex;flex-direction:column;gap:4px}.author-section[data-v-4a5238b7]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.status-tag[data-v-4a5238b7]{border-radius:10px}.chat-tag[data-v-4a5238b7],.status-tag[data-v-4a5238b7]{font-size:11px;padding:2px 8px;height:20px;line-height:1;display:inline-flex;align-items:center;gap:3px}.chat-tag[data-v-4a5238b7]{border-radius:10px;cursor:pointer;transition:all .3s ease;margin-left:6px;background-color:#ecf5ff!important;color:#409eff!important;border:1px solid #b3d8ff!important}.chat-tag[data-v-4a5238b7]:hover{background-color:#409eff!important;color:#fff!important;border-color:#409eff!important;box-shadow:0 2px 4px rgba(64,158,255,.3)}.author-section i[data-v-4a5238b7]{font-size:16px}.author-name[data-v-4a5238b7]{font-weight:500;font-size:14px}.update-time[data-v-4a5238b7]{display:flex;align-items:center;gap:4px;font-size:12px;color:#8a8e99}.project-stats[data-v-4a5238b7]{display:flex;gap:16px}.stat-item[data-v-4a5238b7]{display:flex;align-items:center;gap:4px;font-size:13px;color:#606266}.stat-item i[data-v-4a5238b7]{font-size:14px;color:#8a8e99}.lang-tags-section[data-v-4a5238b7]{display:flex;flex-direction:column;gap:8px}.lang-tags[data-v-4a5238b7]{display:flex;flex-wrap:wrap;gap:5px}.lang-tag-item[data-v-4a5238b7]{padding:6px 9.5px;border-radius:6px;font-size:11px;font-weight:500;color:#606266;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;user-select:none;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;position:relative;overflow:hidden}.lang-tag-item[data-v-4a5238b7]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(103,194,58,.1),transparent);transition:left .5s}.lang-tag-item[data-v-4a5238b7]:hover{background:linear-gradient(135deg,#d1f4e0,#a7f3d0);color:#047857;border-color:#10b981;box-shadow:0 4px 12px rgba(16,185,129,.15)}.lang-tag-item[data-v-4a5238b7]:hover:before{left:100%}.lang-tag-active[data-v-4a5238b7]{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#10b981;font-weight:600;box-shadow:0 4px 12px rgba(16,185,129,.4)}.lang-tag-active[data-v-4a5238b7]:before{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent)}.grid-container[data-v-4a5238b7]{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:16px}.grid-item[data-v-4a5238b7]{background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e8eaed;transition:all .3s ease;display:flex;flex-direction:column;height:100%;box-shadow:0 2px 8px rgba(0,0,0,.1)}.grid-item[data-v-4a5238b7]:hover{transform:translateY(-4px);box-shadow:0 12px 35px rgba(0,0,0,.18);border-color:#c6d1f0}.grid-image[data-v-4a5238b7]{position:relative;width:100%;padding-top:56.25%;overflow:hidden;cursor:pointer;flex-shrink:0}.grid-image img[data-v-4a5238b7]{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease}.grid-item:hover .grid-image img[data-v-4a5238b7]{transform:scale(1.08)}.grid-image-overlay[data-v-4a5238b7]{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;opacity:0;transition:opacity .3s ease;gap:8px;pointer-events:none}.grid-image:hover .grid-image-overlay[data-v-4a5238b7]{opacity:1}.grid-image-overlay i[data-v-4a5238b7]{font-size:32px}.grid-image-overlay span[data-v-4a5238b7]{font-size:14px;font-weight:500}.grid-price-badge[data-v-4a5238b7]{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;padding:4px 10px;border-radius:16px;font-size:12px;font-weight:700;box-shadow:0 3px 10px hsla(0,100%,71%,.4);z-index:2}.grid-content[data-v-4a5238b7]{padding:12px 14px;display:flex;flex-direction:column;gap:8px;flex:1}.grid-title[data-v-4a5238b7]{margin:0;font-size:14px;font-weight:600;color:#1f2329;cursor:pointer;line-height:1.3;transition:color .3s ease;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:36px;max-height:36px}.grid-title[data-v-4a5238b7]:hover{color:#409eff}.grid-description[data-v-4a5238b7]{font-size:11px;line-height:1.4;color:#4e5969;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:31px;max-height:31px}.grid-tech-tags[data-v-4a5238b7]{display:flex;flex-wrap:wrap;gap:3.5px;min-height:19px}.grid-tech-tags .el-tag[data-v-4a5238b7]{border-radius:4px;font-size:10px;background-color:#f2f3f5;color:#86909c;border:1px solid #e5e6eb;padding:3px 6px;height:18px;line-height:1}.grid-footer[data-v-4a5238b7]{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid #f0f2f5;margin-top:auto;min-height:32px}.grid-author[data-v-4a5238b7]{display:flex;align-items:center;gap:6px;font-size:11px;color:#606266}.grid-author i[data-v-4a5238b7]{font-size:13px;color:#8a8e99;display:flex;align-items:center}.grid-author span[data-v-4a5238b7]{font-weight:500;color:#1f2329;display:flex;align-items:center}.grid-status-tag[data-v-4a5238b7]{font-size:9px;padding:3px 6px;border-radius:10px;height:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.grid-stats[data-v-4a5238b7]{display:flex;align-items:center;gap:10px}.grid-stat-item[data-v-4a5238b7]{display:flex;align-items:center;gap:3px;font-size:10px;color:#606266}.grid-stat-item i[data-v-4a5238b7]{font-size:13px;color:#8a8e99;display:flex;align-items:center}.grid-actions[data-v-4a5238b7]{display:flex;gap:6px;margin-top:8px}.grid-actions .el-button[data-v-4a5238b7]{flex:1;font-size:11px;padding:6px 10px}.grid-actions .el-button[data-v-4a5238b7]:last-child{background-color:#049;border-color:#049;color:#fff}.grid-actions .el-button[data-v-4a5238b7]:last-child:hover{background-color:#037;border-color:#037}.pagination-wrapper[data-v-4a5238b7]{display:flex;justify-content:center;margin:32px 0}.right[data-v-4a5238b7]{width:20%;min-width:280px;display:flex;flex-direction:column;gap:16px;align-self:flex-start;height:-moz-fit-content;height:fit-content;transition:all .3s ease}.right.sidebar-fixed[data-v-4a5238b7],.right[data-v-4a5238b7]{position:sticky;top:20px}.sidebar-section[data-v-4a5238b7]{width:100%}.sidebar-card[data-v-4a5238b7]{border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.06);border:1px solid #e8eaed;background:linear-gradient(145deg,#fff,#f8f9fa)}.sidebar-card[data-v-4a5238b7] .el-card__body{padding:16px}.sidebar-header[data-v-4a5238b7]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#1f2329;margin-bottom:12px;padding:8px 12px;border-radius:8px;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:1px solid #e2e8f0}.sidebar-header i[data-v-4a5238b7]{color:#3b82f6;font-size:16px;padding:2px;border-radius:4px;background:rgba(59,130,246,.1)}.lang-filter[data-v-4a5238b7]{max-height:200px;overflow-y:auto;padding:8px}.lang-grid[data-v-4a5238b7]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.lang-item[data-v-4a5238b7]{padding:10px 12px;border-radius:8px;font-size:12px;font-weight:500;color:#606266;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;position:relative;overflow:hidden}.lang-item[data-v-4a5238b7]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.4),transparent);transition:left .5s}.lang-item[data-v-4a5238b7]:hover{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0369a1;border-color:#0ea5e9;box-shadow:0 4px 12px rgba(14,165,233,.15)}.lang-item[data-v-4a5238b7]:hover:before{left:100%}.lang-item-active[data-v-4a5238b7]{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border-color:#2563eb;font-weight:600;box-shadow:0 6px 20px rgba(59,130,246,.4)}.lang-item-active[data-v-4a5238b7]:before{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent)}.contact-info[data-v-4a5238b7]{display:flex;flex-direction:column;gap:8px}.contact-item[data-v-4a5238b7]{display:flex;align-items:center;font-size:12px;padding:4px 8px;border-radius:6px;background-color:#f8f9fa;transition:background-color .3s ease}.contact-item[data-v-4a5238b7]:hover{background-color:#e9ecef}.contact-label[data-v-4a5238b7]{color:#6c757d;min-width:60px;font-weight:500}.contact-value[data-v-4a5238b7]{color:#495057;font-weight:600}.contact-link[data-v-4a5238b7]{color:#06c;text-decoration:none;font-weight:600;padding:2px 4px;border-radius:3px;background-color:rgba(0,102,204,.1);transition:all .3s ease}.contact-link[data-v-4a5238b7]:hover{color:#049;background-color:rgba(0,102,204,.2);text-decoration:underline}.icp-section[data-v-4a5238b7]{margin-top:12px;padding:8px 10px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:6px;border:1px solid #e2e8f0}.icp-title[data-v-4a5238b7]{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#475569;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid #e2e8f0}.icp-title i[data-v-4a5238b7]{color:#64748b;font-size:12px}.icp-item[data-v-4a5238b7]{display:flex;align-items:center;gap:6px;margin-bottom:3px;padding:2px 0}.icp-item[data-v-4a5238b7]:last-child{margin-bottom:0}.icp-icon[data-v-4a5238b7]{width:12px;height:12px;flex-shrink:0}.icp-link-highlight[data-v-4a5238b7]{color:#475569;text-decoration:none;font-weight:500;font-size:10px;transition:all .3s ease;padding:1px 4px;border-radius:3px;background-color:rgba(100,116,139,.1)}.icp-link-highlight[data-v-4a5238b7]:hover{color:#334155;background-color:rgba(100,116,139,.2);text-decoration:underline}.icp-item i[data-v-4a5238b7]{color:#64748b;font-size:12px}.hot-projects-carousel[data-v-4a5238b7]{position:relative;overflow:hidden;border-radius:8px}.hot-projects-carousel[data-v-4a5238b7] .el-carousel,.hot-projects-carousel[data-v-4a5238b7] .el-carousel__container{height:280px}.hot-projects-carousel[data-v-4a5238b7] .el-carousel__item{height:280px;border-radius:8px;overflow:hidden}.carousel-bottom-space[data-v-4a5238b7]{height:20px;width:100%}.carousel-project-card[data-v-4a5238b7]{position:relative;height:280px;background:linear-gradient(145deg,#fff,#f8f9fa);border-radius:8px;overflow:hidden;cursor:pointer;transition:all .3s ease;border:1px solid #e8eaed;display:flex;flex-direction:column}.carousel-project-card[data-v-4a5238b7]:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.1);border-color:#c6d1f0}.rank-badge[data-v-4a5238b7]{position:absolute;top:8px;right:8px;z-index:10;display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600;color:#fff;background:linear-gradient(135deg,#ff6b6b,#ee5a52);box-shadow:0 2px 8px hsla(0,100%,71%,.3)}.rank-badge.top-rank[data-v-4a5238b7]{background:linear-gradient(135deg,gold,#ffb347);color:#8b4513;animation:goldShine-4a5238b7 2s infinite alternate}@keyframes goldShine-4a5238b7{0%{transform:scale(1)}to{transform:scale(1.05)}}.rank-badge i[data-v-4a5238b7]{font-size:12px}.carousel-project-image[data-v-4a5238b7]{position:relative;width:100%;height:140px;overflow:hidden;flex-shrink:0}.carousel-project-image img[data-v-4a5238b7]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease}.carousel-project-card:hover .carousel-project-image img[data-v-4a5238b7]{transform:scale(1.05)}.image-mask[data-v-4a5238b7]{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.3));opacity:.3;transition:opacity .3s ease}.carousel-project-card:hover .image-mask[data-v-4a5238b7]{opacity:0}.carousel-project-info[data-v-4a5238b7]{height:120px;padding:12px;display:flex;flex-direction:column;gap:8px;justify-content:space-between;margin-bottom:20px}.carousel-project-title[data-v-4a5238b7]{font-size:15px;font-weight:600;color:#1f2329;margin:0;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:21px}.carousel-project-desc[data-v-4a5238b7]{font-size:11px;color:#606266;margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:30px}.carousel-author[data-v-4a5238b7]{display:flex;align-items:center;gap:6px;font-size:11px;color:#606266}.carousel-author i[data-v-4a5238b7]{font-size:12px;color:#8a8e99}.carousel-author span[data-v-4a5238b7]{font-weight:500;color:#1f2329}.carousel-author .el-tag[data-v-4a5238b7]{font-size:10px;padding:1px 6px;height:16px;line-height:1}.carousel-tags[data-v-4a5238b7]{display:flex;flex-wrap:wrap;gap:4px;height:20px;overflow:hidden;margin-top:10px;margin-bottom:15px}.carousel-tags .el-tag[data-v-4a5238b7]{font-size:11px;padding:3px 8px;height:20px;line-height:1;border-radius:4px;background-color:#f2f3f5;color:#86909c;border:1px solid #e5e6eb}.carousel-stats[data-v-4a5238b7]{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:6px;border-top:1px solid #f0f2f5}.stat-group[data-v-4a5238b7]{display:flex;gap:16px}.stat-label[data-v-4a5238b7]{display:flex;align-items:center;gap:3px;font-size:12px;color:#8a8e99}.stat-label i[data-v-4a5238b7]{font-size:13px}.price-display[data-v-4a5238b7]{display:flex;align-items:baseline;gap:2px}.price-symbol[data-v-4a5238b7]{font-size:12px;color:#f56c6c;font-weight:500}.price-amount[data-v-4a5238b7]{font-size:16px;font-weight:700;color:#f56c6c}.service-badges[data-v-4a5238b7]{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.service-badge[data-v-4a5238b7]{display:inline-flex;align-items:center;gap:3px;font-size:10px;padding:3px 8px;border-radius:4px;height:18px;line-height:1;font-weight:500}.service-badge i[data-v-4a5238b7]{font-size:10px}.service-badge.preview[data-v-4a5238b7]{background-color:#e8f4ff;color:#1890ff;border:1px solid #b3d8ff}.service-badge.debug[data-v-4a5238b7]{background-color:#fff2e8;color:#fa8c16;border:1px solid #ffd591}.service-badge.tutor[data-v-4a5238b7]{background-color:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.service-badge.modify[data-v-4a5238b7]{background-color:#fff1f0;color:#ff4d4f;border:1px solid #ffb3b3}[data-v-4a5238b7] .filter-section .el-select{min-width:180px}[data-v-4a5238b7] .filter-section .el-input__inner{border-radius:6px;border-color:#d9d9d9}[data-v-4a5238b7] .filter-section .el-input__inner:focus{border-color:#409eff}[data-v-4a5238b7] .search .el-input__inner{border-radius:20px;border-color:#d9d9d9}[data-v-4a5238b7] .search .el-input__inner:focus{border-color:#409eff}@media (min-width:1200px){.grid-container[data-v-4a5238b7]{grid-template-columns:repeat(3,1fr)}}@media (min-width:769px) and (max-width:1199px){.grid-container[data-v-4a5238b7]{grid-template-columns:repeat(2,1fr)}.right[data-v-4a5238b7]{width:30%;min-width:240px}}.mobile-filter-trigger[data-v-4a5238b7]{display:none}@media (max-width:768px){.mobile-filter-trigger[data-v-4a5238b7]{display:flex;background:linear-gradient(135deg,#409eff,#1890ff);color:#fff;border-radius:20px;padding:8px 16px;box-shadow:0 2px 12px rgba(64,158,255,.4);cursor:pointer;transition:all .3s ease;font-size:13px;font-weight:500;align-items:center;gap:6px;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;position:relative}}.mobile-filter-trigger[data-v-4a5238b7]:hover{transform:translateY(-2px);box-shadow:0 6px 25px rgba(64,158,255,.5)}.mobile-filter-trigger[data-v-4a5238b7]:active{transform:translateY(0)}.mobile-filter-trigger i[data-v-4a5238b7]{font-size:16px}.filter-badge[data-v-4a5238b7]{position:absolute;top:-5px;right:-5px;background:#f56c6c;color:#fff;border-radius:50%;width:20px;height:20px;font-size:10px;display:flex;align-items:center;justify-content:center;font-weight:600;border:2px solid #fff}.mobile-filter-drawer[data-v-4a5238b7] .el-drawer{border-radius:20px 20px 0 0;box-shadow:0 -10px 30px rgba(0,0,0,.15)}.mobile-filter-drawer[data-v-4a5238b7] .el-drawer__body{padding:0;background:linear-gradient(145deg,#fff,#f8f9fa)}.mobile-filter-content[data-v-4a5238b7]{padding:24px;height:100%;display:flex;flex-direction:column;gap:24px;box-sizing:border-box;overflow-y:auto;padding-bottom:54px}.mobile-filter-header[data-v-4a5238b7]{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid #e8eaed}.mobile-filter-header h3[data-v-4a5238b7]{margin:0;font-size:18px;font-weight:600;color:#1f2329}.mobile-filter-section[data-v-4a5238b7]{display:flex;flex-direction:column;gap:16px}.mobile-section-title[data-v-4a5238b7]{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#1f2329;margin-bottom:8px}.mobile-section-title i[data-v-4a5238b7]{color:#409eff;font-size:18px}.mobile-lang-grid[data-v-4a5238b7]{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.mobile-lang-item[data-v-4a5238b7]{padding:10px 8px;border-radius:6px;font-size:11px;font-weight:500;color:#606266;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:center;background:#fff;border:1px solid #e8eaed;position:relative;overflow:hidden}.mobile-lang-item[data-v-4a5238b7]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(64,158,255,.1),transparent);transition:left .5s}.mobile-lang-item[data-v-4a5238b7]:hover:before{left:100%}.mobile-lang-item-active[data-v-4a5238b7]{background:linear-gradient(135deg,#409eff,#1890ff);color:#fff;border-color:#409eff;font-weight:600;box-shadow:0 4px 15px rgba(64,158,255,.3)}.mobile-service-grid[data-v-4a5238b7]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mobile-service-item[data-v-4a5238b7]{padding:14px 12px;border-radius:8px;font-size:13px;font-weight:500;color:#606266;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:center;background:#fff;border:1px solid #e8eaed;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px}.mobile-service-item i[data-v-4a5238b7]{font-size:16px}.mobile-service-item-active[data-v-4a5238b7]{background:linear-gradient(135deg,#67c23a,#85ce61);color:#fff;border-color:#67c23a;font-weight:600;box-shadow:0 4px 15px rgba(103,194,58,.3)}.mobile-sort-tags[data-v-4a5238b7]{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.mobile-sort-tag-item[data-v-4a5238b7]{padding:10px 8px;border-radius:6px;font-size:11px;font-weight:500;color:#606266;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:center;background:#fff;border:1px solid #e8eaed;position:relative;overflow:hidden}.mobile-sort-tag-item[data-v-4a5238b7]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(64,158,255,.1),transparent);transition:left .5s}.mobile-sort-tag-item[data-v-4a5238b7]:hover:before{left:100%}.mobile-sort-tag-active[data-v-4a5238b7]{background:linear-gradient(135deg,#409eff,#1890ff);color:#fff;border-color:#409eff;font-weight:600;box-shadow:0 4px 15px rgba(64,158,255,.3)}.mobile-filter-actions[data-v-4a5238b7]{display:flex;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid #e8eaed}.mobile-filter-actions .el-button[data-v-4a5238b7]{border-radius:8px;font-weight:600;font-size:16px;padding:14px 0}@media (max-width:768px){.container[data-v-4a5238b7]{padding:0}.main[data-v-4a5238b7]{flex-direction:column;padding:0 8px;gap:12px;margin:0 auto;max-width:100%;box-sizing:border-box}.right.sidebar-fixed[data-v-4a5238b7],.right[data-v-4a5238b7]{display:none}.conditions[data-v-4a5238b7]{flex-direction:column;gap:12px}.filter-item-horizontal[data-v-4a5238b7]{flex-direction:column;gap:6px;align-items:stretch}.mobile-search[data-v-4a5238b7]{display:block!important;margin:8px 0;position:relative}.mobile-search .search-input[data-v-4a5238b7]{width:100%;position:relative}.mobile-search[data-v-4a5238b7] .clean-search-input .el-input{width:100%}.mobile-search[data-v-4a5238b7] .clean-search-input .el-input__inner{height:48px!important;border-radius:12px!important;border:1px solid #e6e8ea!important;background:#fff!important;font-size:16px!important;padding:0 16px 0 40px!important;color:#2c3e50!important;transition:all .3s ease!important;box-shadow:0 2px 6px rgba(0,0,0,.05)!important}.mobile-search[data-v-4a5238b7] .clean-search-input .el-input__inner:hover{border-color:#409eff!important;box-shadow:0 2px 8px rgba(64,158,255,.15)!important}.mobile-search[data-v-4a5238b7] .clean-search-input .el-input__inner:focus{border-color:#409eff!important;box-shadow:0 0 0 3px rgba(64,158,255,.1),0 2px 8px rgba(64,158,255,.15)!important;outline:none!important}.mobile-search[data-v-4a5238b7] .clean-search-input .el-input__inner::-moz-placeholder{color:#8a8e99!important;font-size:15px!important}.mobile-search[data-v-4a5238b7] .clean-search-input .el-input__inner::placeholder{color:#8a8e99!important;font-size:15px!important}.mobile-search[data-v-4a5238b7] .clean-search-input .el-input__prefix{left:16px!important;color:#8a8e99!important;font-size:16px!important;display:flex!important;align-items:center!important}.mobile-search[data-v-4a5238b7] .clean-search-input .el-input__prefix i{color:#8a8e99!important}.mobile-search[data-v-4a5238b7] .clean-search-input .el-input__suffix{right:16px!important;color:#8a8e99!important}.mobile-search[data-v-4a5238b7] .clean-search-input .el-input.is-focus .el-input__prefix i{color:#409eff!important}.project-item[data-v-4a5238b7]{border-radius:10px;margin-bottom:16px;box-shadow:0 2px 10px rgba(0,0,0,.08);overflow:hidden;background:linear-gradient(145deg,#fff,#f8f9fa)}.project-item[data-v-4a5238b7]:hover{transform:none;box-shadow:0 4px 18px rgba(0,0,0,.12)}.project-content[data-v-4a5238b7]{flex-direction:column;gap:8px;padding:0 14px 10px}.project-image[data-v-4a5238b7]{width:100%;height:160px;border-radius:6px;position:relative;overflow:hidden}.project-image img[data-v-4a5238b7]{transition:none}.image-overlay[data-v-4a5238b7]{background:rgba(0,0,0,.7);opacity:0;transition:opacity .2s ease;pointer-events:none}.project-image:active .image-overlay[data-v-4a5238b7]{opacity:1}.project-header[data-v-4a5238b7]{flex-direction:row;gap:12px;align-items:center;justify-content:space-between;padding:12px 14px 8px}.project-title[data-v-4a5238b7]{flex:1;font-size:15px;line-height:1.4;cursor:pointer;-webkit-tap-highlight-color:transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-price[data-v-4a5238b7]{flex-shrink:0;background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;padding:5px 10px;border-radius:18px;font-size:13px;box-shadow:0 2px 6px hsla(0,100%,71%,.3)}.price-label[data-v-4a5238b7]{color:hsla(0,0%,100%,.9);font-size:12px}.price-value[data-v-4a5238b7]{color:#fff;font-size:15px;font-weight:700}.feature-tags[data-v-4a5238b7]{gap:4px;margin:6px 0}.preview-tag-mobile-hidden[data-v-4a5238b7]{display:none!important}.feature-tags .el-tag[data-v-4a5238b7]{font-size:10px;padding:3px 6px;border-radius:12px;min-height:18px;box-shadow:0 1px 2px rgba(0,0,0,.1)}.tech-tags[data-v-4a5238b7]{gap:3px;margin-top:4px}.tech-tags .el-tag[data-v-4a5238b7]{font-size:9px;padding:2px 5px;height:16px;border-radius:8px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;color:#6c757d}.project-footer[data-v-4a5238b7]{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:#fff;border-top:1px solid #f0f2f5}.author-info[data-v-4a5238b7]{display:flex;flex-direction:column;gap:6px;flex:1}.author-section[data-v-4a5238b7]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.author-name[data-v-4a5238b7]{font-size:13px;font-weight:500;color:#2c3e50}.chat-tag[data-v-4a5238b7],.status-tag[data-v-4a5238b7]{font-size:10px;padding:4px 8px;border-radius:12px;height:22px;line-height:1;display:inline-flex;align-items:center;gap:3px;font-weight:500;-webkit-tap-highlight-color:transparent;transition:all .2s ease}.status-tag[data-v-4a5238b7]{background:#f0f9ff;color:#0369a1;border:1px solid #e0f2fe}.chat-tag[data-v-4a5238b7]{background:#409eff;color:#fff;border:1px solid #409eff}.chat-tag[data-v-4a5238b7]:active{background:#3a8ee6}.update-time[data-v-4a5238b7]{font-size:11px;color:#64748b;display:flex;align-items:center;gap:4px}.update-time i[data-v-4a5238b7]{font-size:12px;color:#94a3b8}.project-stats[data-v-4a5238b7]{display:flex;gap:16px;align-items:center;padding:8px 12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.stat-item[data-v-4a5238b7]{display:flex;align-items:center;gap:4px;font-size:11px;color:#64748b;font-weight:500}.stat-item i[data-v-4a5238b7]{font-size:14px;color:#94a3b8}.conditions[data-v-4a5238b7]{gap:16px}.search-row-all[data-v-4a5238b7]{display:flex;align-items:center;justify-content:flex-start;gap:12px;flex-wrap:nowrap;justify-content:space-between}.total-match[data-v-4a5238b7]{font-size:14px;padding:8px 12px;background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-radius:8px;border:1px solid #90caf9;color:#1976d2}.total-match i[data-v-4a5238b7]{color:#1976d2;font-size:16px}.count-number[data-v-4a5238b7]{color:#0d47a1;font-weight:700}.filter-item-horizontal[data-v-4a5238b7],.filter-section-right[data-v-4a5238b7],.lang-tags-section[data-v-4a5238b7],.sort-tags-section[data-v-4a5238b7],.view-mode-switch[data-v-4a5238b7]{display:none}.grid-container[data-v-4a5238b7]{grid-template-columns:repeat(2,1fr);gap:12px}.grid-item[data-v-4a5238b7]{border-radius:10px;box-shadow:0 2px 6px rgba(0,0,0,.1)}.grid-item[data-v-4a5238b7]:active{box-shadow:0 8px 20px rgba(0,0,0,.15)}.grid-image[data-v-4a5238b7]{padding-top:56.25%}.grid-content[data-v-4a5238b7]{padding:10px;gap:6px}.grid-title[data-v-4a5238b7]{font-size:13px;min-height:34px;max-height:34px;line-height:1.3}.grid-description[data-v-4a5238b7]{font-size:10px;min-height:28px;max-height:28px;line-height:1.4}.grid-tech-tags[data-v-4a5238b7]{min-height:18px;gap:3px}.grid-tech-tags .el-tag[data-v-4a5238b7]{font-size:9px;padding:2px 5px;height:16px}.grid-footer[data-v-4a5238b7]{flex-direction:row;justify-content:space-between;gap:8px;align-items:center;padding-top:6px;min-height:28px}.grid-author[data-v-4a5238b7]{font-size:10px;gap:5px}.grid-author i[data-v-4a5238b7]{font-size:12px}.grid-stats[data-v-4a5238b7]{gap:8px}.grid-stat-item[data-v-4a5238b7]{font-size:9px;gap:2px}.grid-stat-item i[data-v-4a5238b7]{font-size:12px}.grid-status-tag[data-v-4a5238b7]{font-size:8px;padding:2px 5px;height:16px}.grid-actions[data-v-4a5238b7]{margin-top:6px}.grid-actions .el-button[data-v-4a5238b7]{font-size:10px;padding:5px 6px}.grid-actions .el-button[data-v-4a5238b7]:last-child{background-color:#049;border-color:#049;color:#fff}.grid-actions .el-button[data-v-4a5238b7]:last-child:active{background-color:#037;border-color:#037}.grid-price-badge[data-v-4a5238b7]{top:6px;right:6px;padding:3px 6px;font-size:11px}.empty-state[data-v-4a5238b7]{padding:40px 20px;text-align:center}.custom-button[data-v-4a5238b7]{padding:14px 28px;font-size:16px;border-radius:25px;-webkit-tap-highlight-color:transparent}.custom-button[data-v-4a5238b7]:active{transform:scale(.95)}.pagination-wrapper[data-v-4a5238b7]{margin:24px 0;display:flex;justify-content:center}.pagination-wrapper[data-v-4a5238b7] .el-pagination{padding:12px;background:#fff;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,.08)}.pagination-wrapper[data-v-4a5238b7] .el-pager li{min-width:36px;height:36px;line-height:36px;border-radius:8px;margin:0 2px;font-weight:500}.pagination-wrapper[data-v-4a5238b7] .btn-next,.pagination-wrapper[data-v-4a5238b7] .btn-prev{width:36px;height:36px;border-radius:8px;margin:0 2px}.pagination-wrapper[data-v-4a5238b7] .el-pager li.active{background:linear-gradient(135deg,#409eff,#1890ff);color:#fff;font-weight:600}.search-card[data-v-4a5238b7]{background:transparent;border:none;box-shadow:none;margin:0 -8px}.search-card[data-v-4a5238b7] .el-card__body{padding:0 8px;background:transparent}.left[data-v-4a5238b7]{overflow-x:hidden;width:100%}.section-divider[data-v-4a5238b7]{margin:16px 0}.hot-projects-carousel[data-v-4a5238b7]{height:280px}.carousel-project-image[data-v-4a5238b7]{height:140px}.carousel-project-info[data-v-4a5238b7]{height:120px;padding:10px;gap:6px;margin-bottom:20px}.carousel-project-title[data-v-4a5238b7]{font-size:13px;height:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.carousel-project-desc[data-v-4a5238b7]{font-size:10px;min-height:26px}.carousel-author[data-v-4a5238b7]{font-size:10px}.carousel-author .el-tag[data-v-4a5238b7],.carousel-tags .el-tag[data-v-4a5238b7]{font-size:9px;padding:1px 4px;height:14px}.stat-label[data-v-4a5238b7]{font-size:10px}.price-amount[data-v-4a5238b7]{font-size:12px}.service-badge[data-v-4a5238b7]{font-size:8px;padding:1px 4px;height:14px}.rank-badge[data-v-4a5238b7]{font-size:10px;padding:2px 6px}}@media (max-width:480px){.main[data-v-4a5238b7]{padding:0 6px}.search-card[data-v-4a5238b7]{margin:0 -6px}.search-card[data-v-4a5238b7] .el-card__body{padding:0 6px}.mobile-filter-trigger[data-v-4a5238b7]{padding:6px 12px;font-size:12px}.project-item[data-v-4a5238b7]{margin-bottom:16px;border-radius:8px}.project-header[data-v-4a5238b7]{padding:12px}.project-content[data-v-4a5238b7]{padding:0 12px 12px}.project-footer[data-v-4a5238b7]{padding:12px}.feature-tags .el-tag[data-v-4a5238b7]{font-size:10px;padding:4px 8px;min-height:20px}.tech-tags .el-tag[data-v-4a5238b7]{font-size:10px;padding:3px 6px;height:18px}.mobile-filter-content[data-v-4a5238b7]{padding:20px 16px 50px;gap:20px}.mobile-lang-grid[data-v-4a5238b7]{grid-template-columns:repeat(2,1fr);gap:8px}.mobile-lang-item[data-v-4a5238b7]{padding:8px 6px;font-size:10px;border-radius:5px}.mobile-service-grid[data-v-4a5238b7]{grid-template-columns:1fr;gap:6px}.mobile-service-item[data-v-4a5238b7]{padding:8px;font-size:10px;min-height:36px}.mobile-sort-tags[data-v-4a5238b7]{grid-template-columns:repeat(2,1fr);gap:5px}.mobile-sort-tag-item[data-v-4a5238b7]{padding:8px 6px;font-size:10px;border-radius:5px}.mobile-filter-actions .el-button[data-v-4a5238b7]{font-size:14px;padding:12px 0}.grid-container[data-v-4a5238b7]{grid-template-columns:repeat(2,1fr);gap:8px}.grid-item[data-v-4a5238b7]{box-shadow:0 2px 6px rgba(0,0,0,.1)}.grid-item[data-v-4a5238b7]:active{box-shadow:0 8px 20px rgba(0,0,0,.15)}.grid-image[data-v-4a5238b7]{padding-top:56.25%}.grid-content[data-v-4a5238b7]{padding:8px;gap:5px}.grid-title[data-v-4a5238b7]{font-size:12px;min-height:31px;max-height:31px;line-height:1.3}.grid-description[data-v-4a5238b7]{font-size:9px;min-height:25px;max-height:25px;line-height:1.4}.grid-tech-tags[data-v-4a5238b7]{display:none}.grid-footer[data-v-4a5238b7]{flex-direction:row;justify-content:space-between;align-items:center;padding-top:5px;gap:6px;min-height:26px}.grid-author[data-v-4a5238b7]{font-size:9px;gap:4px}.grid-author i[data-v-4a5238b7]{font-size:11px}.grid-stats[data-v-4a5238b7]{gap:6px}.grid-stat-item[data-v-4a5238b7]{font-size:8px;gap:2px}.grid-stat-item i[data-v-4a5238b7]{font-size:11px}.grid-actions[data-v-4a5238b7]{margin-top:5px}.grid-actions .el-button[data-v-4a5238b7]{font-size:9px;padding:4px 5px}.grid-actions .el-button[data-v-4a5238b7]:last-child{background-color:#049;border-color:#049;color:#fff}.grid-actions .el-button[data-v-4a5238b7]:last-child:active{background-color:#037;border-color:#037}.grid-price-badge[data-v-4a5238b7]{top:5px;right:5px;padding:2px 5px;font-size:10px}.grid-status-tag[data-v-4a5238b7]{font-size:8px;padding:2px 4px;height:15px}.pagination-wrapper[data-v-4a5238b7] .el-pager li{min-width:32px;height:32px;line-height:32px;font-size:13px}.pagination-wrapper[data-v-4a5238b7] .btn-next,.pagination-wrapper[data-v-4a5238b7] .btn-prev{width:32px;height:32px}.project-price[data-v-4a5238b7]{padding:4px 10px;font-size:13px;border-radius:16px}.price-value[data-v-4a5238b7]{font-size:14px}.author-section[data-v-4a5238b7]{gap:6px}.author-name[data-v-4a5238b7]{font-size:12px}.chat-tag[data-v-4a5238b7],.status-tag[data-v-4a5238b7]{font-size:9px;padding:3px 6px;height:20px}.update-time[data-v-4a5238b7]{font-size:10px}.project-stats[data-v-4a5238b7]{gap:12px;padding:6px 8px}.stat-item[data-v-4a5238b7]{font-size:10px;gap:3px}.stat-item i[data-v-4a5238b7]{font-size:12px}.hot-projects-carousel[data-v-4a5238b7]{height:280px}.carousel-project-image[data-v-4a5238b7]{height:140px}.carousel-project-info[data-v-4a5238b7]{height:120px;padding:8px;gap:4px;margin-bottom:20px}.carousel-project-title[data-v-4a5238b7]{font-size:12px;height:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.carousel-project-desc[data-v-4a5238b7]{font-size:9px;min-height:24px}.service-badges[data-v-4a5238b7]{gap:2px;margin-top:4px}.service-badge[data-v-4a5238b7]{font-size:7px;padding:1px 3px;height:12px}}