all repos — blog @ cf3f947288f389bfb6196041d66bf24900223ba9

Code and content for 5ika.ch

assets/css/style.css (view raw)

  1:root {
  2  --rosewater: #dc8a78;
  3  --flamingo: #dd7878;
  4  --pink: #ea76cb;
  5  --mauve: #8839ef;
  6  --red: #d20f39;
  7  --maroon: #e64553;
  8  --peach: #fe640b;
  9  --yellow: #df8e1d;
 10  --green: #40a02b;
 11  --teal: #179299;
 12  --sky: #04a5e5;
 13  --sapphire: #209fb5;
 14  --blue: #1e66f5;
 15  --lavender: #7287fd;
 16  --text: #4c4f69;
 17  --subtext1: #5c5f77;
 18  --subtext0: #6c6f85;
 19  --overlay2: #7c7f93;
 20  --overlay1: #8c8fa1;
 21  --overlay0: #9ca0b0;
 22  --surface2: #acb0be;
 23  --surface1: #bcc0cc;
 24  --surface0: #ccd0da;
 25  --base: #eff1f5;
 26  --mantle: #e6e9ef;
 27  --crust: #dce0e8;
 28  --inverted-text: var(--base);
 29  --selection-color: var(--blue);
 30
 31  --color-primary: var(--lavender);
 32  --color-bg: white;
 33  --color-primary-light: color-mix(
 34    in srgb,
 35    var(--color-primary) 20%,
 36    var(--color-bg)
 37  );
 38  --text-primary: var(--text);
 39  --text-secondary: var(--subtext1);
 40}
 41
 42body {
 43  font-family:
 44    Menlo,
 45    Monaco,
 46    Lucida Console,
 47    Liberation Mono,
 48    DejaVu Sans Mono,
 49    Bitstream Vera Sans Mono,
 50    Courier New,
 51    monospace,
 52    serif;
 53  background-color: var(--color-bg);
 54  color: var(--text-primary);
 55}
 56
 57header {
 58  font-size: 1.5rem;
 59  font-weight: bold;
 60}
 61
 62main {
 63  max-width: 40rem;
 64  margin: 0 auto;
 65  padding: 2rem 0 4rem;
 66}
 67
 68blockquote {
 69  margin: 0;
 70  padding-left: 1rem;
 71  color: var(--text-secondary);
 72  border-left: 6px solid var(--color-primary);
 73}
 74
 75:not(a) > img {
 76  width: 100%;
 77}
 78
 79a {
 80  color: var(--color-primary);
 81  text-decoration: none;
 82}
 83
 84a:hover {
 85  color: #818cf8;
 86  text-decoration: underline;
 87}
 88
 89h1,
 90h2,
 91h3 {
 92  background-color: var(--color-primary-light);
 93  border-radius: 4px;
 94  padding: 0.25rem 0.5rem;
 95}
 96
 97h1 {
 98  font-size: 1.5rem;
 99  line-height: 2rem;
100}
101
102h2 {
103  font-size: 1.25rem;
104  line-height: 1.75rem;
105  margin-bottom: 1rem;
106  background-color: color-mix(
107    in srgb,
108    var(--color-primary) 9%,
109    var(--color-bg)
110  );
111}
112
113h3 {
114  background-color: color-mix(
115    in srgb,
116    var(--color-primary) 7%,
117    var(--color-bg)
118  );
119}
120
121p {
122  margin: 1.5rem 0;
123  line-height: 1.5;
124}
125
126ul {
127  line-height: 1.3;
128}
129
130input,
131textarea {
132  border-radius: 4px;
133  border: 1px solid #eee;
134  padding: 0.5rem;
135  resize: vertical;
136}
137
138button {
139  border-radius: 4px;
140  color: white;
141  background-color: var(--color-primary);
142  border: none;
143  padding: 0.5rem;
144  cursor: pointer;
145
146  &:hover,
147  &:focus {
148    opacity: 0.8;
149  }
150}
151
152pre:has(code) {
153  padding: 0.5rem 0.75rem;
154  border-radius: 4px;
155  overflow: auto;
156}
157
158:not(pre) > code {
159  font-size: 0.9rem;
160  color: var(--text-secondary);
161  background-color: var(--color-primary-light);
162  padding: 0 0.25rem;
163  border-radius: 4px;
164}
165
166nav {
167  display: grid;
168  grid-template-columns: 1fr 1fr;
169  margin: 2rem 0;
170}
171
172nav > a {
173  display: block;
174  padding-top: 0.5rem;
175  padding-bottom: 0.5rem;
176}
177
178.date {
179  font-size: 0.9rem;
180  color: var(--text-secondary);
181  background-color: var(--color-primary-light);
182  padding: 0 0.25rem;
183  border-radius: 4px;
184}
185
186.projects {
187  & .project {
188    margin-bottom: 2rem;
189  }
190
191  & .lang {
192    color: var(--text-secondary);
193    font-size: 80%;
194    padding: 0 4px;
195    border-radius: 4px;
196  }
197
198  & a {
199    min-width: 10rem;
200  }
201
202  & p {
203    margin: 0.5rem 0 0;
204    font-size: 14px;
205  }
206}
207
208.activity-grid {
209  display: grid;
210  grid-template-columns: 1fr 4fr;
211  column-gap: 1rem;
212  row-gap: 1rem;
213
214  > h4 {
215    margin: 0;
216  }
217}
218
219.contact {
220  display: grid;
221  grid-template-columns: 1fr 1fr;
222  row-gap: 1rem;
223}
224
225#contact-form {
226  display: flex;
227  flex-direction: column;
228  row-gap: 1rem;
229
230  > button {
231    width: 100%;
232  }
233}
234
235ul.categories-list {
236  padding-left: 0;
237}
238
239ul.categories-list li {
240  padding: 0.8rem 0;
241  list-style: none;
242}
243
244ul.categories-list li::before {
245  content: "🌱 ";
246}
247
248@media only screen and (max-width: 600px) {
249  main {
250    padding: 0 0.5rem;
251  }
252
253  nav {
254    display: grid;
255    grid-template-columns: 1fr 1fr;
256  }
257
258  .contact {
259    display: flex;
260    flex-direction: column;
261  }
262
263  .activity-grid {
264    grid-template-columns: 1fr;
265  }
266
267  ul.links-list {
268    padding-left: 1rem;
269    font-size: 1.1rem;
270
271    & > * {
272      margin-bottom: 1rem;
273    }
274  }
275}
276
277@media (prefers-color-scheme: dark) {
278  :root {
279    --rosewater: #f5e0dc;
280    --flamingo: #f2cdcd;
281    --pink: #f5c2e7;
282    --mauve: #cba6f7;
283    --red: #f38ba8;
284    --maroon: #eba0ac;
285    --peach: #fab387;
286    --yellow: #f9e2af;
287    --green: #a6e3a1;
288    --teal: #94e2d5;
289    --sky: #89dceb;
290    --sapphire: #74c7ec;
291    --blue: #89b4fa;
292    --lavender: #b4befe;
293    --text: #cdd6f4;
294    --subtext1: #bac2de;
295    --subtext0: #a6adc8;
296    --overlay2: #9399b2;
297    --overlay1: #7f849c;
298    --overlay0: #6c7086;
299    --surface2: #585b70;
300    --surface1: #45475a;
301    --surface0: #313244;
302    --base: #1e1e2e;
303    --mantle: #181825;
304    --crust: #11111b;
305    --inverted-text: var(--crust);
306    --selection-color: var(--mauve);
307
308    --color-bg: var(--base);
309  }
310
311  body {
312    color: white;
313  }
314}