-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstyles.css
More file actions
183 lines (159 loc) · 5.06 KB
/
Copy pathstyles.css
File metadata and controls
183 lines (159 loc) · 5.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
/* Global reset so spacing and sizing start from a clean baseline */
* {
margin: 0;
padding: 0;
box-sizing: border-box; /* Include padding + border inside declared width/height */
}
/* Page‑level layout and background */
body {
font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; /* System‑friendly type stack */
background-color: #f7f7f4; /* Soft off‑white background for subtle contrast with cards */
display: flex; /* Center the cards block inside the viewport */
justify-content: center;
align-items: center;
min-height: 100vh; /* Ensure full‑height viewport on short pages */
padding: 20px; /* Breathing room on small screens */
}
/* Horizontal container that holds the pricing cards */
.cards-container {
display: flex;
flex-direction: row;
gap: 24px; /* Visual space between cards */
flex-wrap: nowrap; /* Keep cards in a single row (can be made wrap if needed) */
justify-content: center;
align-items: flex-start; /* Align card tops to keep headers on one line */
}
/* Individual pricing card shell */
.card {
display: flex;
flex-direction: column; /* Stack header, content, and button vertically */
min-height: 380px; /* Ensure enough height so buttons align across cards */
background-color: #f2f1ed; /* Slightly darker than page for card contrast */
border-radius: 4px; /* Subtle rounding to soften card edges */
padding: 16px;
width: 320px; /* Fixed width so cards feel consistent */
flex-shrink: 0; /* Prevent cards from shrinking too tightly on narrow viewports */
}
/* Wrapper for the top portion of each card (title + price + features) */
.card-top {
display: flex;
flex-direction: column;
}
/* Plan title styling (Hobby / Pro) */
.card-title {
font-size: 22px;
line-height: 28px;
font-weight: 400;
color: #26251e; /* Dark neutral for strong readability */
margin-bottom: 8px;
}
/* Price row: groups the amount and billing period */
.card-price {
font-size: 20px;
color: rgba(38, 37, 30, 0.5); /* Softer tone compared to the title */
display: inline-flex; /* Keep price inline while aligning baselines */
align-items: baseline; /* Align number and /mo. neatly on the baseline */
}
/* Main price number styling */
.card-price-amount {
font-size: 22px;
font-weight: 400;
color: rgba(38, 37, 30, 0.5);
}
/* Billing cadence (e.g., /mo.) */
.card-price-period {
font-size: 14px;
color: rgba(38, 37, 30, 0.5);
}
/* Container for the "Includes" label and feature bullets */
.card-content {
margin-bottom: 32px; /* Reserve room so the button has separation */
}
/* Small label above the feature list */
.includes-text {
font-size: 16px;
color: rgba(38, 37, 30, 0.5);
margin: 16px 0px;
}
/* Remove default list styling so we can fully control layout */
.features-list {
list-style: none;
padding: 0;
}
/* Each feature row inside the list */
.features-list li {
display: flex; /* Align checkmark and text on one row */
align-items: center;
margin-bottom: 8px;
font-size: 16px;
color: #26251e;
}
/* Checkmark icon to the left of each feature */
.checkmark {
color: #26251e;
font-size: 14px;
margin-right: 10px; /* Space between icon and text */
font-weight: 400;
}
/* Base visual style for all card buttons */
.download-button {
margin-top: auto; /* Push button to the bottom of the card */
width: fit-content; /* Button grows just large enough for its text */
background-color: #e6e5e0;
border: none;
border-radius: 999px; /* Full pill shape */
padding: 14px 24px;
font-size: 16px;
font-weight: 500;
color: #333;
cursor: pointer;
transition: background-color 0.2s ease; /* Subtle hover feedback */
}
/* Hover state for the neutral (secondary) button */
.download-button:hover {
background-color: #D8D6CE;
}
/* Active/pressed state keeps the same tone for quick taps */
.download-button:active {
background-color: #D8D6CE;
}
/* Primary button variant used for the Pro plan */
.download-button.primary {
background-color: #111; /* Strong contrast, feels like main CTA */
color: #fff;
}
/* Slightly lighter hover state for the primary button */
.download-button.primary:hover {
background-color: #333;
}
/* Keep pressed state consistent with hover for a simple interaction model */
.download-button.primary:active {
background-color: #333;
}
.download-button.tertiary {
background-color: transparent;
color: #333;
border: 1px solid #c2c1ba;
}
.download-button.tertiary:hover {
background-color: #e0dfdb;
}
.download-button.tertiary:active {
background-color: #e0dfdb;
}
.page-label {
position: fixed;
top: 16px;
left: 50%;
transform: translateX(-50%); /* Center horizontally by shifting half its width */
font-size: 14px;
color: #666;
background: #fff;
padding: 8px 16px;
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0,0,0,0.08); /* Soft, subtle elevation */
}
/* Highlight the "HTML version" text within the page label */
.page-label strong {
color: #333;
}