all repos — blog @ 04c9fd58850ccf705fcc60e76e0ec4788f5d2843

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