initial import

This commit is contained in:
local
2025-11-19 16:25:00 +08:00
commit a3c01610a1
18 changed files with 31691 additions and 0 deletions

12
.editorconfig Normal file
View File

@@ -0,0 +1,12 @@
# http://editorconfig.org
root = true
[*]
indent_style = space
indent_size = 2
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
[*.md]
trim_trailing_whitespace = false

7
.eslintrc Normal file
View File

@@ -0,0 +1,7 @@
{
"extends": ["taro/react"],
"rules": {
"react/jsx-uses-react": "off",
"react/react-in-jsx-scope": "off"
}
}

6
.gitignore vendored Normal file
View File

@@ -0,0 +1,6 @@
dist/
deploy_versions/
.temp/
.rn_temp/
node_modules/
.DS_Store

10
babel.config.js Normal file
View File

@@ -0,0 +1,10 @@
// babel-preset-taro 更多选项和默认值:
// https://github.com/NervJS/taro/blob/next/packages/babel-preset-taro/README.md
module.exports = {
presets: [
['taro', {
framework: 'react',
ts: false
}]
]
}

9
config/dev.js Normal file
View File

@@ -0,0 +1,9 @@
module.exports = {
env: {
NODE_ENV: '"development"'
},
defineConstants: {
},
mini: {},
h5: {}
}

71
config/index.js Normal file
View File

@@ -0,0 +1,71 @@
const config = {
projectName: 'codefun',
date: '2022-2-23',
designWidth: 375,
deviceRatio: {
375: 2 / 1,
640: 2.34 / 2,
750: 1,
828: 1.81 / 2
},
sourceRoot: 'src',
outputRoot: 'dist',
plugins: [],
defineConstants: {
},
copy: {
patterns: [
],
options: {
}
},
framework: 'react',
mini: {
postcss: {
pxtransform: {
enable: true,
config: {
}
},
url: {
enable: true,
config: {
limit: 1024 // 设定转换尺寸上限
}
},
cssModules: {
enable: true, // 默认为 false如需使用 css modules 功能,则设为 true
config: {
namingPattern: 'module', // 转换模式,取值为 global/module
generateScopedName: '[name]__[local]___[hash:base64:5]'
}
}
}
},
h5: {
publicPath: '/',
staticDirectory: 'static',
postcss: {
autoprefixer: {
enable: true,
config: {
}
},
cssModules: {
enable: true, // 默认为 false如需使用 css modules 功能,则设为 true
config: {
namingPattern: 'module', // 转换模式,取值为 global/module
generateScopedName: '[name]__[local]___[hash:base64:5]'
}
}
}
}
}
module.exports = function (merge) {
if (process.env.NODE_ENV === 'development') {
return merge({}, config, require('./dev'))
}
return merge({}, config, require('./prod'))
}

37
config/prod.js Normal file
View File

@@ -0,0 +1,37 @@
module.exports = {
env: {
NODE_ENV: '"production"'
},
defineConstants: {
},
mini: {},
h5: {
/**
* WebpackChain 插件配置
* @docs https://github.com/neutrinojs/webpack-chain
*/
// webpackChain (chain) {
// /**
// * 如果 h5 端编译后体积过大,可以使用 webpack-bundle-analyzer 插件对打包体积进行分析。
// * @docs https://github.com/webpack-contrib/webpack-bundle-analyzer
// */
// chain.plugin('analyzer')
// .use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin, [])
// /**
// * 如果 h5 端首屏加载时间过长,可以使用 prerender-spa-plugin 插件预加载首页。
// * @docs https://github.com/chrisvfritz/prerender-spa-plugin
// */
// const path = require('path')
// const Prerender = require('prerender-spa-plugin')
// const staticDir = path.join(__dirname, '..', 'dist')
// chain
// .plugin('prerender')
// .use(new Prerender({
// staticDir,
// routes: [ '/pages/index/index' ],
// postProcess: (context) => ({ ...context, outputPath: path.join(staticDir, 'index.html') })
// }))
// }
}
}

30350
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

62
package.json Normal file
View File

@@ -0,0 +1,62 @@
{
"name": "codefun",
"version": "1.0.0",
"private": true,
"description": "",
"templateInfo": {
"name": "default",
"typescript": false,
"css": "css"
},
"scripts": {
"build:weapp": "taro build --type weapp",
"build:swan": "taro build --type swan",
"build:alipay": "taro build --type alipay",
"build:tt": "taro build --type tt",
"build:h5": "taro build --type h5",
"build:rn": "taro build --type rn",
"build:qq": "taro build --type qq",
"build:jd": "taro build --type jd",
"build:quickapp": "taro build --type quickapp",
"dev:weapp": "npm run build:weapp -- --watch",
"dev:swan": "npm run build:swan -- --watch",
"dev:alipay": "npm run build:alipay -- --watch",
"dev:tt": "npm run build:tt -- --watch",
"dev:h5": "npm run build:h5 -- --watch",
"dev:rn": "npm run build:rn -- --watch",
"dev:qq": "npm run build:qq -- --watch",
"dev:jd": "npm run build:jd -- --watch",
"dev:quickapp": "npm run build:quickapp -- --watch"
},
"browserslist": [
"last 3 versions",
"Android >= 4.1",
"ios >= 8"
],
"author": "",
"dependencies": {
"@babel/runtime": "^7.7.7",
"@tarojs/components": "3.4.2",
"@tarojs/plugin-framework-react": "3.4.2",
"@tarojs/react": "3.4.2",
"@tarojs/runtime": "3.4.2",
"@tarojs/taro": "3.4.2",
"react": "^17.0.0",
"react-dom": "^17.0.0"
},
"devDependencies": {
"@babel/core": "^7.8.0",
"@tarojs/cli": "^3.4.2",
"@tarojs/mini-runner": "3.4.2",
"@tarojs/webpack-runner": "3.4.2",
"@types/react": "^17.0.2",
"@types/webpack-env": "^1.13.6",
"babel-preset-taro": "3.4.2",
"eslint": "^6.8.0",
"eslint-config-taro": "3.4.2",
"eslint-plugin-import": "^2.12.0",
"eslint-plugin-react": "^7.8.2",
"eslint-plugin-react-hooks": "^4.2.0",
"stylelint": "^14.4.0"
}
}

13
project.config.json Normal file
View File

@@ -0,0 +1,13 @@
{
"miniprogramRoot": "./dist",
"projectname": "codefun",
"description": "",
"appid": "testAppId",
"setting": {
"urlCheck": true,
"es6": false,
"postcss": false,
"minified": false
},
"compileType": "miniprogram"
}

9
project.tt.json Normal file
View File

@@ -0,0 +1,9 @@
{
"miniprogramRoot": "./",
"projectname": "codefun",
"appid": "testAppId",
"setting": {
"es6": false,
"minified": false
}
}

3
src/app.config.js Normal file
View File

@@ -0,0 +1,3 @@
export default {
pages: ['pages/ShouYe/ShouYe'],
};

530
src/app.css Normal file
View File

@@ -0,0 +1,530 @@
/************************************************************
** 请将全局样式拷贝到项目的全局 CSS 文件或者当前页面的顶部 **
** 否则页面将无法正常显示 **
************************************************************/
html {
font-size: 16px;
}
body {
margin: 0;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans',
'Droid Sans', 'Helvetica Neue', 'Microsoft Yahei', sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
view,
image,
text {
box-sizing: border-box;
flex-shrink: 0;
}
#app {
width: 100vw;
height: 100vh;
}
.flex-row {
display: flex;
flex-direction: row;
}
.flex-col {
display: flex;
flex-direction: column;
}
.justify-start {
justify-content: flex-start;
}
.justify-end {
justify-content: flex-end;
}
.justify-center {
justify-content: center;
}
.justify-between {
justify-content: space-between;
}
.justify-around {
justify-content: space-around;
}
.justify-evenly {
justify-content: space-evenly;
}
.items-start {
align-items: flex-start;
}
.items-end {
align-items: flex-end;
}
.items-center {
align-items: center;
}
.items-baseline {
align-items: baseline;
}
.items-stretch {
align-items: stretch;
}
.self-start {
align-self: flex-start;
}
.self-end {
align-self: flex-end;
}
.self-center {
align-self: center;
}
.self-baseline {
align-self: baseline;
}
.self-stretch {
align-self: stretch;
}
.flex-1 {
flex: 1 1 0%;
}
.flex-auto {
flex: 1 1 auto;
}
.grow {
flex-grow: 1;
}
.grow-0 {
flex-grow: 0;
}
.shrink {
flex-shrink: 1;
}
.shrink-0 {
flex-shrink: 0;
}
.relative {
position: relative;
}
.ml-2 {
margin-left: 4rpx;
}
.mt-2 {
margin-top: 4rpx;
}
.ml-4 {
margin-left: 8rpx;
}
.mt-4 {
margin-top: 8rpx;
}
.ml-6 {
margin-left: 12rpx;
}
.mt-6 {
margin-top: 12rpx;
}
.ml-8 {
margin-left: 16rpx;
}
.mt-8 {
margin-top: 16rpx;
}
.ml-10 {
margin-left: 20rpx;
}
.mt-10 {
margin-top: 20rpx;
}
.ml-12 {
margin-left: 24rpx;
}
.mt-12 {
margin-top: 24rpx;
}
.ml-14 {
margin-left: 28rpx;
}
.mt-14 {
margin-top: 28rpx;
}
.ml-16 {
margin-left: 32rpx;
}
.mt-16 {
margin-top: 32rpx;
}
.ml-18 {
margin-left: 36rpx;
}
.mt-18 {
margin-top: 36rpx;
}
.ml-20 {
margin-left: 40rpx;
}
.mt-20 {
margin-top: 40rpx;
}
.ml-22 {
margin-left: 44rpx;
}
.mt-22 {
margin-top: 44rpx;
}
.ml-24 {
margin-left: 48rpx;
}
.mt-24 {
margin-top: 48rpx;
}
.ml-26 {
margin-left: 52rpx;
}
.mt-26 {
margin-top: 52rpx;
}
.ml-28 {
margin-left: 56rpx;
}
.mt-28 {
margin-top: 56rpx;
}
.ml-30 {
margin-left: 60rpx;
}
.mt-30 {
margin-top: 60rpx;
}
.ml-32 {
margin-left: 64rpx;
}
.mt-32 {
margin-top: 64rpx;
}
.ml-34 {
margin-left: 68rpx;
}
.mt-34 {
margin-top: 68rpx;
}
.ml-36 {
margin-left: 72rpx;
}
.mt-36 {
margin-top: 72rpx;
}
.ml-38 {
margin-left: 76rpx;
}
.mt-38 {
margin-top: 76rpx;
}
.ml-40 {
margin-left: 80rpx;
}
.mt-40 {
margin-top: 80rpx;
}
.ml-42 {
margin-left: 84rpx;
}
.mt-42 {
margin-top: 84rpx;
}
.ml-44 {
margin-left: 88rpx;
}
.mt-44 {
margin-top: 88rpx;
}
.ml-46 {
margin-left: 92rpx;
}
.mt-46 {
margin-top: 92rpx;
}
.ml-48 {
margin-left: 96rpx;
}
.mt-48 {
margin-top: 96rpx;
}
.ml-50 {
margin-left: 100rpx;
}
.mt-50 {
margin-top: 100rpx;
}
.ml-52 {
margin-left: 104rpx;
}
.mt-52 {
margin-top: 104rpx;
}
.ml-54 {
margin-left: 108rpx;
}
.mt-54 {
margin-top: 108rpx;
}
.ml-56 {
margin-left: 112rpx;
}
.mt-56 {
margin-top: 112rpx;
}
.ml-58 {
margin-left: 116rpx;
}
.mt-58 {
margin-top: 116rpx;
}
.ml-60 {
margin-left: 120rpx;
}
.mt-60 {
margin-top: 120rpx;
}
.ml-62 {
margin-left: 124rpx;
}
.mt-62 {
margin-top: 124rpx;
}
.ml-64 {
margin-left: 128rpx;
}
.mt-64 {
margin-top: 128rpx;
}
.ml-66 {
margin-left: 132rpx;
}
.mt-66 {
margin-top: 132rpx;
}
.ml-68 {
margin-left: 136rpx;
}
.mt-68 {
margin-top: 136rpx;
}
.ml-70 {
margin-left: 140rpx;
}
.mt-70 {
margin-top: 140rpx;
}
.ml-72 {
margin-left: 144rpx;
}
.mt-72 {
margin-top: 144rpx;
}
.ml-74 {
margin-left: 148rpx;
}
.mt-74 {
margin-top: 148rpx;
}
.ml-76 {
margin-left: 152rpx;
}
.mt-76 {
margin-top: 152rpx;
}
.ml-78 {
margin-left: 156rpx;
}
.mt-78 {
margin-top: 156rpx;
}
.ml-80 {
margin-left: 160rpx;
}
.mt-80 {
margin-top: 160rpx;
}
.ml-82 {
margin-left: 164rpx;
}
.mt-82 {
margin-top: 164rpx;
}
.ml-84 {
margin-left: 168rpx;
}
.mt-84 {
margin-top: 168rpx;
}
.ml-86 {
margin-left: 172rpx;
}
.mt-86 {
margin-top: 172rpx;
}
.ml-88 {
margin-left: 176rpx;
}
.mt-88 {
margin-top: 176rpx;
}
.ml-90 {
margin-left: 180rpx;
}
.mt-90 {
margin-top: 180rpx;
}
.ml-92 {
margin-left: 184rpx;
}
.mt-92 {
margin-top: 184rpx;
}
.ml-94 {
margin-left: 188rpx;
}
.mt-94 {
margin-top: 188rpx;
}
.ml-96 {
margin-left: 192rpx;
}
.mt-96 {
margin-top: 192rpx;
}
.ml-98 {
margin-left: 196rpx;
}
.mt-98 {
margin-top: 196rpx;
}
.ml-100 {
margin-left: 200rpx;
}
.mt-100 {
margin-top: 200rpx;
}

20
src/app.js Normal file
View File

@@ -0,0 +1,20 @@
import { Component } from 'react'
import './app.css'
class App extends Component {
componentDidMount () {}
componentDidShow () {}
componentDidHide () {}
componentDidCatchError () {}
// this.props.children 是将要会渲染的页面
render () {
return this.props.children
}
}
export default App

19
src/index.html Normal file
View File

@@ -0,0 +1,19 @@
<!DOCTYPE html>
<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<meta content="width=device-width,initial-scale=1,user-scalable=no" name="viewport">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-touch-fullscreen" content="yes">
<meta name="format-detection" content="telephone=no,address=no">
<meta name="apple-mobile-web-app-status-bar-style" content="white">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" >
<title></title>
<script>
!function(n){function e(){var e=n.document.documentElement,t=e.getBoundingClientRect().width;e.style.fontSize=t>=640?"40px":t<=320?"20px":t/320*20+"px"}n.addEventListener("resize",(function(){e()})),e()}(window);
</script>
</head>
<body>
<div id="app"></div>
</body>
</html>

View File

@@ -0,0 +1,3 @@
export default {
usingComponents: {},
};

158
src/pages/ShouYe/ShouYe.jsx Normal file
View File

@@ -0,0 +1,158 @@
import React, { useState, useEffect } from 'react';
import Taro from '@tarojs/taro';
import { View, Text, Image } from '@tarojs/components';
import styles from './ShouYe.module.css';
export default function ShouYe(props) {
const [data, setData] = useState({});
return (
<View className={`flex-col ${styles['page']} ${props.className}`}>
<View className={`flex-row ${styles['section']}`}>
<View className={`flex-col justify-start items-start shrink-0 self-start relative ${styles['group']}`}>
<Text className={`${styles['text']}`}>水晶手串</Text>
<Text className={`${styles['font']} ${styles['text_2']} ${styles['pos']}`}>运势金</Text>
</View>
<Image
className={`ml-10 flex-1 ${styles['image']}`}
src="https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=6cec6f7f5aa0f7ebd6a5481d215c5a83.png"
/>
</View>
<View className={`flex-col ${styles['group_2']} ${styles['mt-3']}`}>
<View className={`flex-col self-stretch ${styles['section_2']}`}>
<View className={`flex-row items-center ${styles['group_3']}`}>
<Image
className={`${styles['image_2']}`}
src="https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=99b057307175080c85c8c05f06e81f22.png"
/>
<Text className={`${styles['font_2']} ${styles['text_3']} ${styles['ml-17']}`}>Message</Text>
</View>
<View className={`flex-row ${styles['mt-9']}`}>
<View className={`flex-col items-center ${styles['section_3']} ${styles['equal-division-item']}`}>
<Image
className={`${styles['image_3']}`}
src="https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=00dcaa3a97303286908408349839cf3b.png"
/>
<Text className={`${styles['font_3']} ${styles['text_4']}`}>激活日期</Text>
<Text className={`${styles['font_4']} ${styles['text_5']}`}>25-12-11</Text>
</View>
<View className={`ml-20 flex-col items-center ${styles['section_3']} ${styles['equal-division-item']}`}>
<Image
className={`${styles['image_3']}`}
src="https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=00dcaa3a97303286908408349839cf3b.png"
/>
<Text className={`${styles['font_3']} ${styles['text_4']}`}>水晶年纪</Text>
<Text className={`${styles['font_4']} ${styles['text_5']}`}>1500</Text>
</View>
<View className={`ml-20 flex-col items-center ${styles['section_3']} ${styles['equal-division-item']}`}>
<Image
className={`${styles['image_3']}`}
src="https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=00dcaa3a97303286908408349839cf3b.png"
/>
<Text className={`${styles['font_3']} ${styles['text_4']}`}>触碰次数</Text>
<Text className={`${styles['font_4']} ${styles['text_5']}`}>20</Text>
</View>
<View className={`ml-20 flex-col items-center ${styles['section_3']} ${styles['equal-division-item']}`}>
<Image
className={`${styles['image_3']}`}
src="https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=00dcaa3a97303286908408349839cf3b.png"
/>
<Text className={`${styles['font_3']} ${styles['text_4']}`}>运势等级</Text>
<Text className={`${styles['font_4']} ${styles['text_5']}`}>王者</Text>
</View>
</View>
</View>
<View className={`flex-col self-stretch ${styles['group_4']}`}>
<Text className={`self-start ${styles['font_5']} ${styles['text_6']}`}>我的守护兽</Text>
<View className={`flex-row justify-between self-stretch ${styles['section_4']}`}>
<Image
className={`self-center ${styles['image_4']}`}
src="https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=4fdec46522306db544cc88d058d12c2f.png"
/>
<View className={`flex-col items-start self-start ${styles['group_5']}`}>
<Text className={`${styles['font_2']}`}>迷你鹿</Text>
<Text className={`mt-16 ${styles['font_6']} ${styles['text_7']}`}>期待你长大的样子</Text>
</View>
</View>
<View className={`flex-col justify-start self-stretch ${styles['section_5']}`}>
<View className={`flex-row ${styles['group_6']}`}>
<View className={`flex-col flex-1 ${styles['section_6']}`}>
<View className={`flex-row items-center self-stretch`}>
<Image
className={`${styles['image_5']}`}
src="https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=72178d549fc08e2a36e2bbcc9da00799.png"
/>
<Text className={`${styles['font_6']} ${styles['text_8']} ${styles['ml-7']}`}>进化完成度</Text>
</View>
<Text className={`self-start ${styles['font_3']} ${styles['text_9']} ${styles['mt-9']}`}>666/1500</Text>
</View>
<View className={`shrink-0 ${styles['section_7']}`}></View>
</View>
</View>
</View>
<View className={`flex-row justify-between items-baseline self-stretch ${styles['group_7']}`}>
<Text className={`${styles['font_5']} ${styles['text_10']}`}>更多推荐</Text>
<Text className={`${styles['font_7']} ${styles['text_11']}`}>全部></Text>
</View>
<Text className={`self-start ${styles['font_6']} ${styles['text_12']}`}>暂未开放线上调节</Text>
<View className={`flex-row ${styles['equal-division']}`}>
<View className={`flex-col items-start ${styles['equal-division-item_2']} ${styles['section_8']}`}>
<Text className={`${styles['font']} ${styles['text_13']}`}>触碰水晶</Text>
<Text className={`${styles['font_8']} ${styles['text_14']} ${styles['mt-13']}`}>
触碰睡觉可以加速宠物的进化
</Text>
</View>
<View className={`ml-14 flex-col items-start ${styles['equal-division-item_3']} ${styles['section_9']}`}>
<Text className={`${styles['font']}`}>运势</Text>
<Text className={`${styles['font_8']} ${styles['text_14']} ${styles['mt-13']}`}>
触碰睡觉可以加速宠物的进化
</Text>
</View>
<View className={`ml-14 flex-col items-start ${styles['equal-division-item_2']} ${styles['section_10']}`}>
<Text className={`${styles['font']}`}>抽牌</Text>
<Text className={`${styles['font_8']} ${styles['text_14']} ${styles['mt-11']}`}>
触碰睡觉可以加速宠物的进化
</Text>
</View>
</View>
<View className={`flex-row justify-between items-baseline self-stretch ${styles['group_8']}`}>
<Text className={`${styles['font_5']}`}>里程碑</Text>
<Text className={`${styles['font_7']} ${styles['text_15']}`}>全部></Text>
</View>
<View className={`flex-col self-stretch ${styles['section_11']}`}>
<View className={`flex-col justify-start items-center self-start ${styles['text-wrapper']}`}>
<Text className={`${styles['font_6']} ${styles['text_16']}`}>图鉴</Text>
</View>
<View className={`flex-row ${styles['equal-division_2']} ${styles['group_9']} ${styles['mt-17']}`}>
<View className={`flex-col ${styles['group_10']} ${styles['equal-division-item_4']}`}>
<Image
className={`self-start ${styles['image_6']}`}
src="https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=4847668f063c0997763f6e4c249ad33b.png"
/>
<View className={`flex-col items-start self-stretch ${styles['section_12']} ${styles['mt-3']}`}>
<View className={`flex-col justify-start items-center ${styles['text-wrapper_2']}`}>
<Text className={`${styles['font_9']} ${styles['text_17']}`}>已获得</Text>
</View>
<Text className={`${styles['font_6']} ${styles['text_18']} ${styles['mt-7']}`}>初级小鹿</Text>
</View>
</View>
<View className={`flex-col ${styles['group_10']} ${styles['equal-division-item_4']} ${styles['ml-1']}`}>
<Image
className={`self-start ${styles['image_6']}`}
src="https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=b91b938179b31a6bcfe934515b7ec608.png"
/>
<View className={`flex-col items-start self-stretch ${styles['section_12']} ${styles['mt-3']}`}>
<View className={`flex-col justify-start items-center ${styles['text-wrapper_2']}`}>
<Text className={`${styles['font_9']} ${styles['text_17']}`}>未获得</Text>
</View>
<Text className={`${styles['font_6']} ${styles['text_18']} ${styles['mt-7']}`}>中级小鹿</Text>
</View>
</View>
</View>
</View>
</View>
</View>
);
}
ShouYe.defaultProps = { className: '' };

View File

@@ -0,0 +1,372 @@
.ml-17 {
margin-left: 34rpx;
}
.ml-7 {
margin-left: 14rpx;
}
.mt-9 {
margin-top: 18rpx;
}
.mt-13 {
margin-top: 26rpx;
}
.mt-11 {
margin-top: 22rpx;
}
.mt-17 {
margin-top: 34rpx;
}
.mt-3 {
margin-top: 6rpx;
}
.mt-7 {
margin-top: 14rpx;
}
.ml-1 {
margin-left: 2rpx;
}
.page {
padding-bottom: 174rpx;
background-color: #0b1411;
width: 100%;
overflow-y: auto;
overflow-x: hidden;
height: 100%;
}
.section {
padding: 0 28rpx 12rpx;
background-image: url('https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=2ef0ed71548c576fd256d13e2f016096.png');
background-size: 100% 100%;
background-repeat: no-repeat;
}
.group {
margin-top: 100rpx;
width: 111.46rpx;
}
.text {
color: #d1b05b96;
font-size: 64rpx;
font-family: Inter;
font-weight: 900;
line-height: 76rpx;
width: 96rpx;
}
.font {
font-size: 32rpx;
font-family: Inter;
line-height: 30.52rpx;
font-weight: 900;
color: #ffffff;
}
.text_2 {
color: #a5864d;
line-height: 38rpx;
width: 32rpx;
}
.pos {
position: absolute;
right: 0;
top: 266.42rpx;
}
.image {
margin-right: 4rpx;
height: 536rpx;
}
.group_2 {
padding: 0 28rpx;
}
.section_2 {
padding: 12rpx 8rpx 36rpx;
border-radius: 20rpx;
background-image: url('https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=b006026aece6a0992802b69125015c60.png');
background-size: 100% 100%;
background-repeat: no-repeat;
}
.group_3 {
padding: 0 14rpx;
}
.image_2 {
width: 120rpx;
height: 120rpx;
}
.font_2 {
font-size: 40rpx;
font-family: Inter;
line-height: 38.04rpx;
font-weight: 900;
color: #ffffff;
}
.text_3 {
line-height: 37.72rpx;
}
.section_3 {
position: relative;
flex: 1 1 140rpx;
}
.equal-division-item {
padding: 24rpx 0 44rpx;
background-image: linear-gradient(208.9deg, #3d6650 -28.1%, #273d31 121.1%);
border-radius: 20rpx;
box-shadow: 0rpx 8rpx 16rpx #00000066;
border-image-slice: 1;
height: 234rpx;
border-left: solid 2rpx #666666;
border-right: solid 2rpx #666666;
border-top: solid 2rpx #666666;
border-bottom: solid 2rpx #666666;
}
.image_3 {
width: 64rpx;
height: 64rpx;
}
.font_3 {
font-size: 24rpx;
font-family: Inter;
line-height: 20.92rpx;
font-weight: 900;
color: #ffffff;
}
.text_4 {
margin-top: 32rpx;
line-height: 22.92rpx;
}
.font_4 {
font-size: 28rpx;
font-family: Inter;
line-height: 20.92rpx;
font-weight: 900;
color: #ffffff;
}
.text_5 {
margin-top: 20rpx;
}
.group_4 {
margin-top: 24rpx;
}
.font_5 {
font-size: 40rpx;
font-family: Inter;
line-height: 38.04rpx;
font-weight: 900;
color: #d6a207;
}
.text_6 {
line-height: 38.72rpx;
}
.section_4 {
margin-top: 12rpx;
padding: 56rpx 34rpx;
border-radius: 20rpx;
background-image: url('https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=b006026aece6a0992802b69125015c60.png');
background-size: 100% 100%;
background-repeat: no-repeat;
}
.image_4 {
width: 302rpx;
height: 306rpx;
}
.group_5 {
margin-right: 4rpx;
margin-top: 108rpx;
}
.font_6 {
font-size: 28rpx;
font-family: Inter;
line-height: 28rpx;
font-weight: 900;
color: #ffffff;
}
.text_7 {
font-size: 30rpx;
line-height: 28.76rpx;
}
.section_5 {
margin-right: 12rpx;
margin-top: 24rpx;
padding: 20rpx 0;
border-radius: 20rpx;
background-image: url('https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=a4f8db26beefc37502d9cb6f6bbc0da6.png');
background-size: 100% 100%;
background-repeat: no-repeat;
}
.group_6 {
margin-left: 24rpx;
margin-right: 42rpx;
filter: drop-shadow(0rpx 8rpx 4rpx #00000040);
}
.section_6 {
padding: 16rpx 24rpx;
background-image: linear-gradient(262.3deg, #605f5f33 0%, #dadada33 97%);
border-radius: 20rpx 0rpx 0rpx 20rpx;
border-image-slice: 1;
height: 114rpx;
border-left: solid 2rpx #203128;
border-right: solid 2rpx #203128;
border-top: solid 2rpx #203128;
border-bottom: solid 2rpx #203128;
}
.image_5 {
width: 30rpx;
height: 38rpx;
}
.text_8 {
font-size: 30rpx;
line-height: 29.46rpx;
}
.text_9 {
color: #fefdf9;
line-height: 20.9rpx;
}
.section_7 {
background-color: #273d31;
border-radius: 0rpx 20rpx 20rpx 0rpx;
box-shadow: 0rpx 8rpx 8rpx #00000069 inset;
border-image-slice: 1;
width: 204rpx;
height: 118rpx;
border-left: solid 4rpx #192820;
border-right: solid 4rpx #192820;
border-top: solid 4rpx #192820;
border-bottom: solid 4rpx #192820;
}
.group_7 {
margin-top: 36rpx;
}
.text_10 {
line-height: 38.24rpx;
}
.font_7 {
font-size: 32rpx;
font-family: Inter;
line-height: 30.52rpx;
font-weight: 900;
color: #828282;
}
.text_11 {
margin-right: 20rpx;
line-height: 30.6rpx;
}
.text_12 {
margin-top: 32rpx;
color: #828282;
line-height: 26.88rpx;
}
.equal-division {
align-self: stretch;
margin-top: 32rpx;
}
.equal-division-item_2 {
flex: 1 1 215.24rpx;
}
.section_8 {
padding: 40rpx 20rpx 104rpx;
background-image: linear-gradient(328.8deg, #a7976e66 3.1%, #a7976e 96.9%);
border-radius: 20rpx;
height: 286rpx;
}
.text_13 {
line-height: 30.5rpx;
}
.font_8 {
font-size: 24rpx;
font-family: Inter;
line-height: 28rpx;
font-weight: 900;
color: #dadada;
}
.text_14 {
width: 144rpx;
}
.equal-division-item_3 {
position: relative;
flex: 1 1 215.24rpx;
}
.section_9 {
padding: 40rpx 20rpx 104rpx;
background-image: linear-gradient(215.2deg, #b7d4caa6 1.1%, #5f6e69 75.4%);
border-radius: 20rpx;
box-shadow: 0rpx 8rpx 8rpx #00000040;
border-image-slice: 1;
height: 286rpx;
border-left: solid 2rpx #ffffff;
border-right: solid 2rpx #ffffff;
border-top: solid 2rpx #ffffff;
border-bottom: solid 2rpx #ffffff;
}
.section_10 {
padding: 40rpx 20rpx 104rpx;
border-radius: 20rpx;
filter: drop-shadow(0rpx 8rpx 4rpx #00000040);
background-image: url('https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=b1f2c311c0160b9cb2eb4695124cc145.png');
background-size: 100% 100%;
background-repeat: no-repeat;
height: 286rpx;
}
.group_8 {
margin-top: 24rpx;
}
.text_15 {
margin-right: 20rpx;
line-height: 30.6rpx;
}
.section_11 {
margin-top: 32rpx;
padding: 44rpx 0 12rpx;
border-radius: 20rpx;
background-image: url('https://ide.code.fun/api/image?token=691c46a8043f1900118e3440&name=9f808516bfacf14b34bcd1380c11ab36.png');
background-size: 100% 100%;
background-repeat: no-repeat;
}
.text-wrapper {
margin-left: 26rpx;
padding: 12rpx 0;
background-color: #105b46;
border-radius: 10rpx;
width: 114rpx;
}
.text_16 {
line-height: 26.62rpx;
}
.equal-division_2 {
align-self: stretch;
}
.group_9 {
padding: 0 12rpx;
}
.group_10 {
flex: 1 1 338rpx;
}
.equal-division-item_4 {
padding: 0 8rpx;
}
.image_6 {
margin-left: 8rpx;
border-radius: 20rpx 20rpx 0rpx 0rpx;
width: 288rpx;
height: 288rpx;
}
.section_12 {
margin-right: 16rpx;
padding: 16rpx 26rpx 44rpx;
background-color: #244236;
border-radius: 0rpx 0rpx 20rpx 20rpx;
}
.text-wrapper_2 {
padding: 8rpx 0 4rpx;
background-color: #ffffff;
border-radius: 10rpx;
width: 114rpx;
}
.font_9 {
font-size: 28rpx;
font-family: Inter;
line-height: 28rpx;
font-weight: 900;
color: #324a3f;
}
.text_17 {
line-height: 26.66rpx;
}
.text_18 {
line-height: 27rpx;
}