Skip to content

Commit 0e8c360

Browse files
committed
Initial visual course
1 parent 26df24c commit 0e8c360

47 files changed

Lines changed: 458 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/assets/css/style.css

Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
:root{
2+
--ink:#1f2937; --cream:#fdf3df; --card:#fce9c7; --teal:#0f8a8a; --orange:#e8702a;
3+
--shadow:0 14px 34px rgba(31,41,55,.16);
4+
}
5+
*{box-sizing:border-box}
6+
body{margin:0;font-family:'Poppins',Verdana,Segoe UI,sans-serif;color:var(--ink);
7+
background:radial-gradient(1200px 600px at 50% -10%,#fff6e3 0%,var(--cream) 55%) ,var(--cream);
8+
min-height:100vh}
9+
a{color:var(--teal)}
10+
/* chapter banner (Option 2) - full-width band, content centered */
11+
.banner-wrap{position:relative;width:100%;overflow:hidden;color:#fff;
12+
background:linear-gradient(125deg,#11999e 0%,#0a6a72 52%,#0a4f63 100%);
13+
box-shadow:0 18px 42px rgba(13,90,98,.30)}
14+
.banner-wrap::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:
15+
radial-gradient(600px 300px at 82% -28%,rgba(255,255,255,.16),transparent 70%),
16+
radial-gradient(440px 280px at -3% 130%,rgba(232,112,42,.28),transparent 70%)}
17+
.banner{position:relative;z-index:2;max-width:920px;margin:0 auto;
18+
padding:38px 188px 38px 44px}
19+
.banner>*{position:relative;z-index:2}
20+
.banner .chip{display:inline-block;background:rgba(255,255,255,.15);
21+
border:1px solid rgba(255,255,255,.28);padding:7px 16px;border-radius:999px;
22+
font:700 12px/1 'Poppins',sans-serif;letter-spacing:.18em}
23+
.banner h1{font:700 clamp(2rem,5.4vw,3.2rem)/1.03 'Space Grotesk','Poppins',sans-serif;
24+
margin:.42em 0 .14em;letter-spacing:-.5px}
25+
.banner .b-sub{color:rgba(255,255,255,.88);max-width:540px;margin:0;font-size:1.05rem}
26+
.banner .b-track{height:7px;width:220px;margin-top:20px;border-radius:4px;overflow:hidden;
27+
background:rgba(255,255,255,.22)}
28+
.banner .b-track i{display:block;height:100%;border-radius:4px;
29+
background:linear-gradient(90deg,#ffd27a,#e8702a)}
30+
.banner .pipav{position:absolute;right:26px;top:50%;transform:translateY(-50%);
31+
width:150px;height:150px;object-fit:cover;border-radius:50%;
32+
border:4px solid rgba(255,255,255,.9);box-shadow:0 14px 30px rgba(0,0,0,.28)}
33+
@media(max-width:600px){
34+
.banner{display:flex;flex-direction:column;align-items:center;
35+
padding:30px 26px 26px;text-align:center}
36+
.banner .pipav{order:-1;position:static;transform:none;
37+
margin:0 0 16px;width:104px;height:104px}
38+
}
39+
/* nav */
40+
.nav{display:flex;gap:12px;justify-content:center;align-items:center;
41+
flex-wrap:wrap;padding:18px 16px;position:sticky;top:0;z-index:5;
42+
background:linear-gradient(var(--cream),rgba(253,243,223,.86) 70%,rgba(253,243,223,0))}
43+
.nav-btn,.nav-home{display:inline-block;text-decoration:none;font-weight:600;
44+
padding:11px 20px;border-radius:999px}
45+
.nav-btn{background:var(--teal);color:#fff;box-shadow:0 6px 16px rgba(15,138,138,.32)}
46+
.nav-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}
47+
.nav-home{background:#fff;border:2px solid var(--ink);color:var(--ink)}
48+
.nav-btn.disabled{background:#cfc8b8;color:#fff;box-shadow:none;cursor:default}
49+
/* comic strip */
50+
.strip{max-width:920px;margin:0 auto;padding:8px 18px 40px;
51+
display:flex;flex-direction:column;gap:34px}
52+
.cell{position:relative;margin:0;background:var(--card);border-radius:22px;
53+
padding:14px;box-shadow:var(--shadow)}
54+
.cell .panel{display:block;width:100%;height:auto;border-radius:12px}
55+
.cap{font-weight:700;font-size:1.06rem;color:var(--ink);margin:2px 4px 12px;
56+
padding-left:24px;line-height:1.25}
57+
.badge{position:absolute;top:-14px;left:-14px;z-index:2;width:46px;height:46px;
58+
display:grid;place-items:center;border-radius:50%;background:var(--orange);
59+
color:#fff;font-weight:800;font-size:1.25rem;border:4px solid #fff;
60+
box-shadow:0 6px 14px rgba(232,112,42,.4)}
61+
.foot{text-align:center;color:#6c6657;font-size:.92rem;padding:26px 18px 46px}
62+
/* home */
63+
body.home{display:flex;flex-direction:column;min-height:100vh}
64+
.home-banner{display:flex;align-items:center;gap:34px;padding:40px 44px}
65+
.home-banner .b-copy{min-width:0;flex:1}
66+
.home-banner .home-av{flex:0 0 auto;width:170px;height:170px;object-fit:cover;
67+
border-radius:50%;border:4px solid rgba(255,255,255,.9);
68+
box-shadow:0 14px 30px rgba(0,0,0,.28)}
69+
.home-banner h1{margin:.28em 0 .2em}
70+
.home-banner .b-sub{font-size:1.06rem;max-width:none;margin-bottom:24px}
71+
.home-banner .cta{margin-top:4px}
72+
@media(max-width:760px){
73+
.home-banner{flex-direction:column;text-align:center;padding:32px 26px}
74+
.home-banner .home-av{order:-1;width:120px;height:120px;margin-bottom:6px}
75+
.home-banner .b-sub{margin-left:auto;margin-right:auto}
76+
}
77+
.home-main{flex:1;width:100%;max-width:920px;margin:0 auto;padding:20px 20px 40px;
78+
display:flex;flex-direction:column}
79+
.home-intro{margin:6px 0 0}
80+
.home-intro .cap{text-align:center;padding-left:0;font-size:1.12rem}
81+
.cta{display:inline-block;background:var(--orange);color:#fff;text-decoration:none;
82+
font-weight:700;font-size:1.12rem;padding:14px 30px;border-radius:999px;
83+
box-shadow:0 10px 22px rgba(232,112,42,.4)}
84+
.cta:hover{transform:translateY(-2px)}
85+
/* custom chapter selector */
86+
.chapter-select{position:relative;max-width:560px;width:100%;margin:26px auto 0}
87+
.chapter-select summary{list-style:none;cursor:pointer;display:flex;align-items:center;
88+
justify-content:space-between;background:#fff;border:2px solid #efe4cb;border-radius:16px;
89+
padding:18px 24px;font-weight:700;font-size:1.14rem;color:var(--ink);
90+
box-shadow:0 6px 16px rgba(31,41,55,.08);transition:border-color .2s}
91+
.chapter-select summary::-webkit-details-marker{display:none}
92+
.chapter-select summary::after{content:"";flex:0 0 auto;width:11px;height:11px;
93+
border-right:3px solid var(--teal);border-bottom:3px solid var(--teal);
94+
transform:rotate(45deg);transition:transform .25s;margin-left:14px}
95+
.chapter-select[open] summary::after{transform:rotate(-135deg)}
96+
.chapter-select summary:hover{border-color:var(--teal)}
97+
.cs-options{position:fixed;z-index:30;
98+
background:#fff;border:2px solid #efe4cb;border-radius:16px;padding:8px;
99+
max-height:min(56vh,360px);overflow-y:auto;-webkit-overflow-scrolling:touch;
100+
box-shadow:0 20px 44px rgba(31,41,55,.22)}
101+
.cs-options a,.cs-soon{display:flex;flex-direction:column;gap:2px;text-decoration:none;
102+
border-radius:11px;padding:13px 16px;color:var(--ink)}
103+
.cs-options a:hover{background:#f4eddf}
104+
.cs-options b{font-size:1.08rem}
105+
.cs-options a span,.cs-soon span{color:#6c6657;font-weight:500;font-size:.95rem}
106+
.cs-soon{opacity:.55;cursor:default}
107+
@media(max-width:560px){.badge{width:38px;height:38px;font-size:1.05rem;top:-12px;left:-12px}}

docs/assets/img/ch00-clone.png

1.81 MB
Loading

docs/assets/img/ch00-install.png

1.68 MB
Loading

docs/assets/img/ch00-login.png

742 KB
Loading

docs/assets/img/ch00-ready.png

1.46 MB
Loading

docs/assets/img/ch00-verify.png

1.63 MB
Loading

docs/assets/img/ch00-welcome.png

1.13 MB
Loading

docs/assets/img/ch01-commands.png

1.08 MB
Loading

docs/assets/img/ch01-magic.png

1.3 MB
Loading

docs/assets/img/ch01-modes.png

1.59 MB
Loading

0 commit comments

Comments
 (0)