Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
Q
qiyouxue
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xuchentao
qiyouxue
Commits
9204e044
Commit
9204e044
authored
Aug 13, 2026
by
tao355667
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: refine homepage content and expand FAQ
parent
330212cd
Changes
3
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
51 additions
and
18 deletions
+51
-18
site.ts
src/data/site.ts
+38
-11
index.astro
src/pages/index.astro
+5
-7
global.css
src/styles/global.css
+8
-0
No files found.
src/data/site.ts
View file @
9204e044
This diff is collapsed.
Click to expand it.
src/pages/index.astro
View file @
9204e044
This diff is collapsed.
Click to expand it.
src/styles/global.css
View file @
9204e044
...
...
@@ -19,3 +19,11 @@
.brand
{
display
:
flex
;
width
:
108px
;
height
:
68px
;
align-items
:
center
;
overflow
:
visible
}
.brand
img
{
width
:
100%
;
height
:
auto
;
max-height
:
66px
;
object-fit
:
contain
}
.footer-logo
{
display
:
flex
;
width
:
148px
;
height
:
100px
;
align-items
:
center
;
overflow
:
visible
;
border-radius
:
0
}
.footer-logo
img
{
width
:
100%
;
height
:
auto
;
max-height
:
96px
;
object-fit
:
contain
}
.image-frame
{
aspect-ratio
:
1.22
}
.image-frame
img
{
height
:
100%
;
aspect-ratio
:
auto
}
.article-tabs
{
display
:
flex
;
flex-wrap
:
wrap
;
gap
:
8px
;
margin-bottom
:
32px
}
.article-tab
{
display
:
flex
;
align-items
:
center
;
gap
:
8px
;
padding
:
8px
13px
;
border
:
1px
solid
var
(
--border
);
border-radius
:
7px
;
background
:
#fff
;
color
:
var
(
--text-secondary
);
font-size
:
13px
}
.article-tab
span
{
color
:
var
(
--text-muted
);
font-size
:
11px
}
.article-tab
:hover
,
.article-tab.active
{
border-color
:
var
(
--brand-blue
);
color
:
var
(
--brand-blue
)}
.article-tab.active
{
background
:
var
(
--brand-accent-soft
)}
.article-empty
{
padding
:
60px
;
border
:
1px
dashed
var
(
--border
);
background
:
#fff
;
color
:
var
(
--text-muted
);
text-align
:
center
}
.article-pagination
{
display
:
flex
;
justify-content
:
center
;
gap
:
7px
;
margin-top
:
36px
}
.article-pagination
>
a
,
.article-pagination
>
span
{
display
:
grid
;
place-items
:
center
;
width
:
38px
;
height
:
38px
;
border
:
1px
solid
var
(
--border
);
border-radius
:
6px
;
background
:
#fff
}
.article-pagination
.active
{
border-color
:
var
(
--brand-blue
);
color
:
#fff
;
background
:
var
(
--brand-blue
)}
.home-hero
h1
,
.page-hero
h1
,
.teacher-layout
h2
{
font-weight
:
600
;
letter-spacing
:
-.025em
}
.stage-ruler
{
font-weight
:
600
}
.stat-grid
strong
{
font-weight
:
600
}
.nav-link
{
font-weight
:
500
}
.mobile-nav__primary
{
font-weight
:
600
}
.need-card
>
strong
,
.footer-phone
{
font-weight
:
600
}
.workflow-section
{
background
:
#f8fbff
}
.workflow-head
{
display
:
flex
;
align-items
:
end
;
justify-content
:
space-between
;
gap
:
48px
;
margin-bottom
:
52px
}
.workflow-head
.section-heading
{
max-width
:
760px
}
.workflow-head
.button
{
flex
:
none
;
margin-bottom
:
3px
}
.workflow-grid
{
display
:
grid
;
grid-template-columns
:
repeat
(
3
,
1
fr
);
gap
:
16px
}
.workflow-card
{
position
:
relative
;
display
:
flex
;
min-height
:
206px
;
padding
:
28px
28px
26px
;
flex-direction
:
column
;
justify-content
:
space-between
;
overflow
:
hidden
;
border
:
1px
solid
#cfe3f7
;
border-radius
:
16px
;
background
:
#fff
;
box-shadow
:
0
8px
24px
rgba
(
29
,
91
,
147
,
.06
);
transition
:
transform
.25s
,
box-shadow
.25s
,
border-color
.25s
}
.workflow-card
::after
{
position
:
absolute
;
right
:
-22px
;
bottom
:
-34px
;
width
:
110px
;
height
:
110px
;
border
:
1px
solid
#e4f0fb
;
border-radius
:
50%
;
content
:
""
}
.workflow-card
:hover
{
border-color
:
#9fc9f2
;
box-shadow
:
0
14px
30px
rgba
(
29
,
91
,
147
,
.12
);
transform
:
translateY
(
-4px
)}
.workflow-card__marker
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
}
.workflow-card__marker
::after
{
width
:
34px
;
height
:
2px
;
background
:
#e1edf8
;
content
:
""
}
.workflow-card__marker
span
{
color
:
#1473e6
;
font-size
:
13px
;
font-weight
:
800
;
letter-spacing
:
.12em
}
.workflow-card__body
{
position
:
relative
;
z-index
:
1
}
.workflow-card
h3
{
margin
:
0
0
9px
;
font-size
:
23px
;
letter-spacing
:
-.02em
}
.workflow-card
p
{
max-width
:
31em
;
margin
:
0
;
color
:
var
(
--text-secondary
);
font-size
:
15px
;
line-height
:
1.75
}
@media
(
max-width
:
760px
){
.workflow-head
{
display
:
block
;
margin-bottom
:
34px
}
.workflow-head
.button
{
display
:
inline-flex
;
margin-top
:
24px
}
.workflow-grid
{
grid-template-columns
:
1
fr
;
gap
:
12px
}
.workflow-card
{
min-height
:
180px
;
padding
:
23px
22px
}
.workflow-card
h3
{
font-size
:
21px
}
.workflow-card
p
{
font-size
:
14px
}}
.subject-overview
{
background
:
#fff
}
.subject-stage
{
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
gap
:
28px
;
margin-bottom
:
72px
;
padding
:
19px
26px
;
border-radius
:
14px
;
color
:
#fff
;
background
:
#1473e6
}
.subject-stage
>
strong
{
font-size
:
13px
;
letter-spacing
:
.08em
}
.subject-stage
>
div
{
display
:
flex
;
align-items
:
center
}
.subject-stage
span
{
padding
:
1px
26px
;
border-left
:
1px
solid
rgba
(
255
,
255
,
255
,
.28
);
font-size
:
14px
}
.subject-stage
b
{
margin-left
:
6px
;
font-size
:
15px
}
.subject-overview__head
{
display
:
grid
;
max-width
:
none
;
grid-template-columns
:
1.08
fr
.92
fr
;
gap
:
88px
;
align-items
:
end
;
margin
:
0
0
50px
;
text-align
:
left
}
.subject-overview__head
h2
{
margin-bottom
:
0
;
font-size
:
clamp
(
40px
,
4.4vw
,
60px
)}
.subject-overview__lead
{
max-width
:
720px
;
margin
:
24px
0
0
;
font-size
:
18px
}
.subject-overview__intro
{
max-width
:
none
;
margin
:
0
0
7px
;
padding-left
:
28px
;
border-left
:
3px
solid
#1473e6
;
font-size
:
16px
;
line-height
:
1.9
}
.subject-overview__grid
{
grid-template-columns
:
repeat
(
3
,
1
fr
);
gap
:
0
;
overflow
:
hidden
;
border
:
1px
solid
var
(
--border
);
border-radius
:
16px
;
background
:
#fff
}
.subject-card
{
min-height
:
164px
;
padding
:
27px
28px
;
align-items
:
center
;
gap
:
19px
;
border
:
0
;
border-radius
:
0
;
background
:
#fff
;
box-shadow
:
none
}
.subject-card
:not
(
:nth-child
(
3n
))
{
border-right
:
1px
solid
var
(
--divider
)}
.subject-card
:nth-child
(
-n
+
3
)
{
border-bottom
:
1px
solid
var
(
--divider
)}
.subject-card
:hover
{
border-color
:
var
(
--divider
);
background
:
var
(
--subject-bg
);
box-shadow
:
none
;
transform
:
none
}
.subject-card__icon
{
width
:
50px
;
height
:
50px
;
border-radius
:
13px
;
background
:
var
(
--subject-bg
)}
.subject-card__icon
svg
{
width
:
28px
;
height
:
28px
}
.subject-overview__grid
h3
{
margin
:
0
0
8px
;
font-size
:
22px
}
.subject-overview__grid
p
{
font-size
:
13px
}
.subject-support-note
{
display
:
flex
;
align-items
:
center
;
gap
:
24px
;
margin-top
:
16px
;
padding
:
18px
22px
;
border-radius
:
10px
;
background
:
#f4f8fd
}
.subject-support-note
strong
{
flex
:
none
;
color
:
var
(
--brand-blue
);
font-size
:
13px
}
.subject-support-note
p
{
margin
:
0
;
color
:
var
(
--text-secondary
);
font-size
:
13px
}
@media
(
max-width
:
1080px
){
.subject-overview__head
{
gap
:
48px
}
.subject-stage
span
{
padding-inline
:
18px
}
.subject-overview__grid
{
grid-template-columns
:
repeat
(
2
,
1
fr
)}
.subject-card
:not
(
:nth-child
(
3n
))
{
border-right
:
0
}
.subject-card
:nth-child
(
-n
+
3
)
{
border-bottom
:
0
}
.subject-card
:nth-child
(
odd
)
{
border-right
:
1px
solid
var
(
--divider
)}
.subject-card
:nth-child
(
-n
+
4
)
{
border-bottom
:
1px
solid
var
(
--divider
)}}
@media
(
max-width
:
760px
){
.subject-stage
{
display
:
block
;
margin-bottom
:
46px
;
padding
:
20px
}
.subject-stage
>
strong
{
display
:
block
;
margin-bottom
:
13px
}
.subject-stage
>
div
{
display
:
grid
;
grid-template-columns
:
repeat
(
3
,
1
fr
)}
.subject-stage
span
{
padding
:
0
9px
;
text-align
:
center
}
.subject-stage
span
:first-child
{
border-left
:
0
}
.subject-stage
b
{
display
:
block
;
margin
:
2px
0
0
;
font-size
:
12px
}
.subject-overview__head
{
display
:
block
;
margin-bottom
:
34px
}
.subject-overview__head
h2
{
font-size
:
37px
}
.subject-overview__lead
{
font-size
:
16px
}
.subject-overview__intro
{
margin-top
:
30px
;
padding-left
:
18px
}
.subject-overview__grid
{
grid-template-columns
:
1
fr
}
.subject-card
{
min-height
:
auto
;
padding
:
22px
}
.subject-card
:nth-child
(
odd
)
{
border-right
:
0
}
.subject-card
:nth-child
(
-n
+
4
),
.subject-card
:not
(
:last-child
)
{
border-bottom
:
1px
solid
var
(
--divider
)}
.subject-support-note
{
display
:
block
;
padding
:
18px
}
.subject-support-note
p
{
margin-top
:
7px
}}
.needs-section
{
background
:
#f1f7ff
}
.needs-layout
{
display
:
grid
;
grid-template-columns
:
.72
fr
1.28
fr
;
gap
:
90px
}
.needs-intro
{
align-self
:
start
}
.needs-intro
h2
{
margin-bottom
:
24px
;
font-size
:
clamp
(
40px
,
4.5vw
,
60px
);
font-weight
:
600
;
letter-spacing
:
-.035em
}
.needs-intro
>
p
:not
(
.subject-overview__label
)
{
max-width
:
430px
;
color
:
var
(
--text-secondary
);
font-size
:
17px
}
.needs-intro
.text-link
{
display
:
inline-block
;
margin-top
:
20px
}
.needs-intro
.text-link
::after
{
margin-left
:
8px
;
content
:
"→"
}
.needs-list
{
border-top
:
2px
solid
var
(
--brand-blue
)}
.needs-list
>
a
{
display
:
grid
;
grid-template-columns
:
44px
1
fr
auto
;
gap
:
20px
;
align-items
:
center
;
padding
:
24px
5px
;
border-bottom
:
1px
solid
#cbdff3
;
transition
:
padding
.2s
,
background
.2s
}
.needs-list
>
a
:hover
{
padding-right
:
14px
;
padding-left
:
14px
;
background
:
rgba
(
255
,
255
,
255
,
.65
)}
.needs-list
>
a
>
span
{
color
:
#6d91b7
;
font-size
:
12px
;
font-weight
:
700
;
letter-spacing
:
.1em
}
.needs-list
h3
{
margin
:
0
0
6px
;
font-size
:
22px
}
.needs-list
p
{
margin
:
0
;
color
:
var
(
--text-secondary
);
font-size
:
14px
}
.needs-list
>
a
>
strong
{
color
:
var
(
--brand-blue
);
font-size
:
12px
;
font-weight
:
600
}
.needs-context
{
display
:
grid
;
grid-template-columns
:
auto
1
fr
1.25
fr
;
gap
:
22px
;
align-items
:
center
;
margin-top
:
48px
;
padding
:
20px
24px
;
border
:
1px
solid
#cbdff3
;
border-radius
:
10px
;
background
:
rgba
(
255
,
255
,
255
,
.62
)}
.needs-context
strong
{
color
:
var
(
--brand-blue
);
font-size
:
13px
}
.needs-context
p
{
margin
:
0
;
color
:
var
(
--text-secondary
);
font-size
:
13px
}
.needs-context
p
:last-child
{
padding-left
:
22px
;
border-left
:
1px
solid
#cbdff3
}
@media
(
max-width
:
760px
){
.needs-layout
{
grid-template-columns
:
1
fr
;
gap
:
42px
}
.needs-intro
h2
{
font-size
:
38px
}
.needs-intro
>
p
:not
(
.subject-overview__label
)
{
font-size
:
15px
}
.needs-list
>
a
{
grid-template-columns
:
34px
1
fr
;
padding
:
22px
0
}
.needs-list
>
a
>
strong
{
display
:
none
}
.needs-list
h3
{
font-size
:
20px
}
.needs-list
p
{
font-size
:
13px
}
.needs-context
{
display
:
block
;
margin-top
:
34px
;
padding
:
20px
}
.needs-context
p
{
margin-top
:
8px
}
.needs-context
p
:last-child
{
margin-top
:
14px
;
padding
:
14px
0
0
;
border-top
:
1px
solid
#cbdff3
;
border-left
:
0
}}
.hero-subhead
span
{
display
:
block
}
.hero-subhead
span
+
span
{
margin-top
:
3px
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment