body{margin:0;padding:0;background-color:#f0f2f5}.pc-layout[data-v-1bf428bd]{height:100vh}.aside[data-v-1bf428bd]{background-color:#304156}.logo[data-v-1bf428bd]{height:60px;line-height:60px;text-align:center;color:#fff;font-size:18px;font-weight:700;background-color:#2b3649}.el-menu-vertical[data-v-1bf428bd]{border-right:none}.header[data-v-1bf428bd]{background-color:#fff;box-shadow:0 1px 4px rgba(0,21,41,.08);display:flex;justify-content:flex-end;align-items:center}.header-right[data-v-1bf428bd]{display:flex;align-items:center;color:#606266}.main-content[data-v-1bf428bd]{background-color:#f0f2f5;padding:20px}.login-container[data-v-e1435b96]{height:100vh;display:flex;justify-content:center;align-items:center;background-color:#2d3a4b;background-image:linear-gradient(to right bottom,#2d3a4b,#1f2d3d)}.login-card[data-v-e1435b96]{width:400px;padding:20px 30px;border-radius:8px}.login-title[data-v-e1435b96]{text-align:center;font-size:24px;font-weight:700;margin-bottom:30px;color:#303133}.h5-layout[data-v-63f26ebf]{background-color:#f7f8fa;min-height:100vh}.h5-main[data-v-63f26ebf]{padding:12px}.h5-dashboard[data-v-212502da]{padding-bottom:80px}.filter-scroll[data-v-212502da]{overflow-x:auto;white-space:nowrap;margin-bottom:12px;padding-bottom:4px;scrollbar-width:none;-ms-overflow-style:none}.filter-scroll[data-v-212502da]::-webkit-scrollbar{display:none}.filter-box[data-v-212502da]{display:flex;gap:10px}.filter-btn[data-v-212502da]{padding:6px 14px;background:#fff;border-radius:16px;font-size:13px;color:#666;transition:all .2s;border:1px solid #ebedf0}.filter-btn.active[data-v-212502da]{background:#1989fa;color:#fff;border-color:#1989fa;font-weight:700}.stat-card[data-v-212502da]{background:#fff;border-radius:8px;padding:16px;width:100%;box-sizing:border-box;box-shadow:0 2px 8px rgba(0,0,0,.04);text-align:center}.stat-title[data-v-212502da]{font-size:13px;color:#666;margin-bottom:8px}.stat-num[data-v-212502da]{font-size:22px;font-weight:700;color:#333}.text-blue[data-v-212502da]{color:#1989fa}.text-green[data-v-212502da]{color:#07c160}.rank-item[data-v-212502da]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:#fff;position:relative}.rank-item[data-v-212502da]:after{position:absolute;box-sizing:border-box;content:" ";pointer-events:none;right:16px;bottom:0;left:16px;border-bottom:1px solid #ebedf0;transform:scaleY(.5)}.rank-item[data-v-212502da]:last-child:after{display:none}.rank-left[data-v-212502da]{display:flex;align-items:center;flex:1;min-width:0}.rank-right[data-v-212502da]{display:flex;gap:16px;font-size:13px;font-weight:700;flex-shrink:0;margin-left:10px}.rank-right span[data-v-212502da]{min-width:65px;text-align:right;white-space:nowrap}.rank-name[data-v-212502da]{font-size:14px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-index[data-v-212502da]{display:inline-block;width:20px;height:20px;background:#f2f3f5;color:#969799;text-align:center;line-height:20px;border-radius:50%;font-size:12px;margin-right:8px;flex-shrink:0}.rank-index.top-3[data-v-212502da]{background:#ff976a;color:#fff}.rank-header[data-v-212502da]{display:flex;justify-content:space-between;align-items:center}.sort-tabs[data-v-212502da]{display:flex;background:#f2f3f5;border-radius:12px;padding:2px}.sort-btn[data-v-212502da]{font-size:12px;color:#969799;padding:4px 20px;border-radius:10px;cursor:pointer;transition:all .2s}.sort-btn.active[data-v-212502da]{background:#fff;color:#1989fa;font-weight:700;box-shadow:0 1px 3px rgba(0,0,0,.1)}.h5-login-container[data-v-e52eed5a]{min-height:100vh;background-color:#f7f8fa;padding:0 20px}.login-header[data-v-e52eed5a]{padding-top:80px;text-align:center;margin-bottom:40px}.login-header h2[data-v-e52eed5a]{font-size:24px;color:#323233;margin-bottom:10px}.login-header p[data-v-e52eed5a]{font-size:14px;color:#969799}.btn-box[data-v-e52eed5a]{margin-top:30px}.filter-card[data-v-0be55db3]{margin-bottom:20px}.filter-box[data-v-0be55db3]{display:flex;align-items:center}.edit-name-box[data-v-0be55db3]{display:flex;align-items:center;justify-content:space-between}