PageSourceSearch

https://frankreinhold.education/

html frankreinhold.education collected 2026-10-07 04:03:54 UTC 132,440 bytes, 4,929 lines download raw bytes

1<!doctype html>
2<!-- This site was created with Hugo Blox. https://hugoblox.com -->
3<!-- Last Published: March 8, 2026 --><html lang="en-us" dir="ltr"
4      data-wc-theme-default="system"
5      data-hbb-relurl="/">
6  
7<head>
8  <meta charset="utf-8" />
9  <meta name="viewport" content="width=device-width, initial-scale=1" />
10  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
11  <meta name="generator" content="Hugo Blox Builder 0.10.0" />
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  <meta name="author" content="Frank Reinhold" />
41
42  
43  
44  
45  
46    
47  
48  
49  <meta name="description" content="Frank Reinhold&#39;s academic webpage." />
50
51  
52  <link rel="alternate" hreflang="en-us" href="https://frankreinhold.education/" />
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<style>
168   
169     
170  
171   
172  :root {
173    
174      
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189  
190  
191  
192  
193    
194      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
195         or we output the raw color value directly if theme.css supp
195orts it.
196         
197         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
198         However, Tailwind 4 supports OKLCH natively. 
199         
200         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
201         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
202         
203         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
204         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
205         
206         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
207         OR we redefine the higher-level variables.
208         
209         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
210         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
211      */
212      --color-primary-100: oklch(0.93 0.034 272.788);
213    
214      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
215         or we output the raw color value directly if theme.css supp
215orts it.
216         
217         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
218         However, Tailwind 4 supports OKLCH natively. 
219         
220         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
221         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
222         
223         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
224         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
225         
226         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
227         OR we redefine the higher-level variables.
228         
229         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
230         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
231      */
232      --color-primary-200: oklch(0.87 0.065 274.039);
233    
234      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
235         or we output the raw color value directly if theme.css supp
235orts it.
236         
237         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
238         However, Tailwind 4 supports OKLCH natively. 
239         
240         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
241         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
242         
243         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
244         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
245         
246         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
247         OR we redefine the higher-level variables.
248         
249         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
250         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
251      */
252      --color-primary-300: oklch(0.785 0.115 274.713);
253    
254      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
255         or we output the raw color value directly if theme.css supp
255orts it.
256         
257         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
258         However, Tailwind 4 supports OKLCH natively. 
259         
260         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
261         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
262         
263         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
264         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
265         
266         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
267         OR we redefine the higher-level variables.
268         
269         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
270         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
271      */
272      --color-primary-400: oklch(0.673 0.182 276.935);
273    
274      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
275         or we output the raw color value directly if theme.css supp
275orts it.
276         
277         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
278         However, Tailwind 4 supports OKLCH natively. 
279         
280         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
281         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
282         
283         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
284         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
285         
286         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
287         OR we redefine the higher-level variables.
288         
289         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
290         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
291      */
292      --color-primary-50: oklch(0.962 0.018 272.314);
293    
294      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
295         or we output the raw color value directly if theme.css supp
295orts it.
296         
297         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
298         However, Tailwind 4 supports OKLCH natively. 
299         
300         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
301         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
302         
303         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
304         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
305         
306         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
307         OR we redefine the higher-level variables.
308         
309         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
310         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
311      */
312      --color-primary-500: oklch(0.585 0.233 277.117);
313    
314      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
315         or we output the raw color value directly if theme.css supp
315orts it.
316         
317         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
318         However, Tailwind 4 supports OKLCH natively. 
319         
320         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
321         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
322         
323         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
324         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
325         
326         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
327         OR we redefine the higher-level variables.
328         
329         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
330         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
331      */
332      --color-primary-600: oklch(0.511 0.262 276.966);
333    
334      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
335         or we output the raw color value directly if theme.css supp
335orts it.
336         
337         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
338         However, Tailwind 4 supports OKLCH natively. 
339         
340         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
341         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
342         
343         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
344         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
345         
346         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
347         OR we redefine the higher-level variables.
348         
349         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
350         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
351      */
352      --color-primary-700: oklch(0.457 0.24 277.023);
353    
354      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
355         or we output the raw color value directly if theme.css supp
355orts it.
356         
357         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
358         However, Tailwind 4 supports OKLCH natively. 
359         
360         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
361         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
362         
363         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
364         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
365         
366         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
367         OR we redefine the higher-level variables.
368         
369         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
370         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
371      */
372      --color-primary-800: oklch(0.398 0.195 277.366);
373    
374      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
375         or we output the raw color value directly if theme.css supp
375orts it.
376         
377         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
378         However, Tailwind 4 supports OKLCH natively. 
379         
380         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
381         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
382         
383         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
384         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
385         
386         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
387         OR we redefine the higher-level variables.
388         
389         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
390         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
391      */
392      --color-primary-900: oklch(0.359 0.144 278.697);
393    
394      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
395         or we output the raw color value directly if theme.css supp
395orts it.
396         
397         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
398         However, Tailwind 4 supports OKLCH natively. 
399         
400         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
401         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
402         
403         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
404         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
405         
406         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
407         OR we redefine the higher-level variables.
408         
409         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
410         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
411      */
412      --color-primary-950: oklch(0.257 0.09 281.288);
413    
414    
415    /* Also set the legacy RGB vars to a fallback (500 shade) to prevent breakage 
416       in case something accesses the raw -rgb var directly, though unlikely */
417    --hb-primary-500-rgb: 128 128 128; 
418  
419
420
421
422
423
424
425
426
427
428
429  
430  
431  
432  
433    
434      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
435         or we output the raw color value directly if theme.css supp
435orts it.
436         
437         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
438         However, Tailwind 4 supports OKLCH natively. 
439         
440         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
441         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
442         
443         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
444         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
445         
446         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
447         OR we redefine the higher-level variables.
448         
449         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
450         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
451      */
452      --color-secondary-100: oklch(0.932 0.032 255.585);
453    
454      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
455         or we output the raw color value directly if theme.css supp
455orts it.
456         
457         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
458         However, Tailwind 4 supports OKLCH natively. 
459         
460         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
461         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
462         
463         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
464         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
465         
466         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
467         OR we redefine the higher-level variables.
468         
469         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
470         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
471      */
472      --color-secondary-200: oklch(0.882 0.059 254.128);
473    
474      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
475         or we output the raw color value directly if theme.css supp
475orts it.
476         
477         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
478         However, Tailwind 4 supports OKLCH natively. 
479         
480         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
481         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
482         
483         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
484         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
485         
486         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
487         OR we redefine the higher-level variables.
488         
489         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
490         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
491      */
492      --color-secondary-300: oklch(0.809 0.105 251.813);
493    
494      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
495         or we output the raw color value directly if theme.css supp
495orts it.
496         
497         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
498         However, Tailwind 4 supports OKLCH natively. 
499         
500         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
501         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
502         
503         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
504         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
505         
506         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
507         OR we redefine the higher-level variables.
508         
509         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
510         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
511      */
512      --color-secondary-400: oklch(0.707 0.165 254.624);
513    
514      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
515         or we output the raw color value directly if theme.css supp
515orts it.
516         
517         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
518         However, Tailwind 4 supports OKLCH natively. 
519         
520         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
521         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
522         
523         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
524         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
525         
526         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
527         OR we redefine the higher-level variables.
528         
529         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
530         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
531      */
532      --color-secondary-50: oklch(0.97 0.014 254.604);
533    
534      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
535         or we output the raw color value directly if theme.css supp
535orts it.
536         
537         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
538         However, Tailwind 4 supports OKLCH natively. 
539         
540         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
541         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
542         
543         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
544         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
545         
546         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
547         OR we redefine the higher-level variables.
548         
549         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
550         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
551      */
552      --color-secondary-500: oklch(0.623 0.214 259.815);
553    
554      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
555         or we output the raw color value directly if theme.css supp
555orts it.
556         
557         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
558         However, Tailwind 4 supports OKLCH natively. 
559         
560         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
561         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
562         
563         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
564         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
565         
566         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
567         OR we redefine the higher-level variables.
568         
569         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
570         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
571      */
572      --color-secondary-600: oklch(0.546 0.245 262.881);
573    
574      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
575         or we output the raw color value directly if theme.css supp
575orts it.
576         
577         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
578         However, Tailwind 4 supports OKLCH natively. 
579         
580         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
581         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
582         
583         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
584         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
585         
586         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
587         OR we redefine the higher-level variables.
588         
589         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
590         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
591      */
592      --color-secondary-700: oklch(0.488 0.243 264.376);
593    
594      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
595         or we output the raw color value directly if theme.css supp
595orts it.
596         
597         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
598         However, Tailwind 4 supports OKLCH natively. 
599         
600         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
601         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
602         
603         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
604         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
605         
606         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
607         OR we redefine the higher-level variables.
608         
609         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
610         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
611      */
612      --color-secondary-800: oklch(0.424 0.199 265.638);
613    
614      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
615         or we output the raw color value directly if theme.css supp
615orts it.
616         
617         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
618         However, Tailwind 4 supports OKLCH natively. 
619         
620         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
621         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
622         
623         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
624         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
625         
626         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
627         OR we redefine the higher-level variables.
628         
629         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
630         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
631      */
632      --color-secondary-900: oklch(0.379 0.146 265.522);
633    
634      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
635         or we output the raw color value directly if theme.css supp
635orts it.
636         
637         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
638         However, Tailwind 4 supports OKLCH natively. 
639         
640         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
641         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
642         
643         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
644         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
645         
646         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
647         OR we redefine the higher-level variables.
648         
649         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
650         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
651      */
652      --color-secondary-950: oklch(0.282 0.091 267.935);
653    
654    
655    /* Also set the legacy RGB vars to a fallback (500 shade) to prevent breakage 
656       in case something accesses the raw -rgb var directly, though unlikely */
657    --hb-secondary-500-rgb: 128 128 128; 
658  
659
660
661
662
663
664
665--color-background: #ffffff;
666--color-foreground: #111827;
667
668
669--color-header-bg: #0f172a;
670--color-header-fg: #ffffff;
671
672
673--color-footer-bg: #f3f4f6;
674--color-footer-fg: #0f172a;
675
676    
677  }
678
679   
680  .dark {
681    
682      
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697  
698  
699  
700  
701    
702      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
703         or we output the raw color value directly if theme.css supp
703orts it.
704         
705         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
706         However, Tailwind 4 supports OKLCH natively. 
707         
708         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
709         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
710         
711         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
712         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
713         
714         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
715         OR we redefine the higher-level variables.
716         
717         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
718         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
719      */
720      --color-primary-100: oklch(0.932 0.032 255.585);
721    
722      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
723         or we output the raw color value directly if theme.css supp
723orts it.
724         
725         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
726         However, Tailwind 4 supports OKLCH natively. 
727         
728         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
729         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
730         
731         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
732         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
733         
734         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
735         OR we redefine the higher-level variables.
736         
737         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
738         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
739      */
740      --color-primary-200: oklch(0.882 0.059 254.128);
741    
742      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
743         or we output the raw color value directly if theme.css supp
743orts it.
744         
745         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
746         However, Tailwind 4 supports OKLCH natively. 
747         
748         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
749         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
750         
751         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
752         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
753         
754         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
755         OR we redefine the higher-level variables.
756         
757         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
758         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
759      */
760      --color-primary-300: oklch(0.809 0.105 251.813);
761    
762      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
763         or we output the raw color value directly if theme.css supp
763orts it.
764         
765         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
766         However, Tailwind 4 supports OKLCH natively. 
767         
768         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
769         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
770         
771         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
772         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
773         
774         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
775         OR we redefine the higher-level variables.
776         
777         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
778         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
779      */
780      --color-primary-400: oklch(0.707 0.165 254.624);
781    
782      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
783         or we output the raw color value directly if theme.css supp
783orts it.
784         
785         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
786         However, Tailwind 4 supports OKLCH natively. 
787         
788         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
789         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
790         
791         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
792         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
793         
794         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
795         OR we redefine the higher-level variables.
796         
797         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
798         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
799      */
800      --color-primary-50: oklch(0.97 0.014 254.604);
801    
802      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
803         or we output the raw color value directly if theme.css supp
803orts it.
804         
805         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
806         However, Tailwind 4 supports OKLCH natively. 
807         
808         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
809         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
810         
811         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
812         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
813         
814         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
815         OR we redefine the higher-level variables.
816         
817         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
818         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
819      */
820      --color-primary-500: oklch(0.623 0.214 259.815);
821    
822      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
823         or we output the raw color value directly if theme.css supp
823orts it.
824         
825         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
826         However, Tailwind 4 supports OKLCH natively. 
827         
828         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
829         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
830         
831         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
832         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
833         
834         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
835         OR we redefine the higher-level variables.
836         
837         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
838         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
839      */
840      --color-primary-600: oklch(0.546 0.245 262.881);
841    
842      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
843         or we output the raw color value directly if theme.css supp
843orts it.
844         
845         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
846         However, Tailwind 4 supports OKLCH natively. 
847         
848         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
849         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
850         
851         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
852         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
853         
854         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
855         OR we redefine the higher-level variables.
856         
857         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
858         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
859      */
860      --color-primary-700: oklch(0.488 0.243 264.376);
861    
862      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
863         or we output the raw color value directly if theme.css supp
863orts it.
864         
865         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
866         However, Tailwind 4 supports OKLCH natively. 
867         
868         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
869         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
870         
871         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
872         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
873         
874         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
875         OR we redefine the higher-level variables.
876         
877         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
878         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
879      */
880      --color-primary-800: oklch(0.424 0.199 265.638);
881    
882      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
883         or we output the raw color value directly if theme.css supp
883orts it.
884         
885         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
886         However, Tailwind 4 supports OKLCH natively. 
887         
888         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
889         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
890         
891         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
892         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
893         
894         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
895         OR we redefine the higher-level variables.
896         
897         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
898         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
899      */
900      --color-primary-900: oklch(0.379 0.146 265.522);
901    
902      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
903         or we output the raw color value directly if theme.css supp
903orts it.
904         
905         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
906         However, Tailwind 4 supports OKLCH natively. 
907         
908         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
909         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
910         
911         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
912         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
913         
914         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
915         OR we redefine the higher-level variables.
916         
917         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
918         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
919      */
920      --color-primary-950: oklch(0.282 0.091 267.935);
921    
922    
923    /* Also set the legacy RGB vars to a fallback (500 shade) to prevent breakage 
924       in case something accesses the raw -rgb var directly, though unlikely */
925    --hb-primary-500-rgb: 128 128 128; 
926  
927
928
929
930
931
932
933
934
935
936
937  
938  
939  
940  
941    
942      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
943         or we output the raw color value directly if theme.css supp
943orts it.
944         
945         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
946         However, Tailwind 4 supports OKLCH natively. 
947         
948         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
949         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
950         
951         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
952         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
953         
954         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
955         OR we redefine the higher-level variables.
956         
957         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
958         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
959      */
960      --color-secondary-100: oklch(0.953 0.051 180.801);
961    
962      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
963         or we output the raw color value directly if theme.css supp
963orts it.
964         
965         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
966         However, Tailwind 4 supports OKLCH natively. 
967         
968         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
969         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
970         
971         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
972         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
973         
974         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
975         OR we redefine the higher-level variables.
976         
977         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
978         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
979      */
980      --color-secondary-200: oklch(0.91 0.096 180.426);
981    
982      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
983         or we output the raw color value directly if theme.css supp
983orts it.
984         
985         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
986         However, Tailwind 4 supports OKLCH natively. 
987         
988         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
989         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
990         
991         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
992         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
993         
994         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
995         OR we redefine the higher-level variables.
996         
997         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
998         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
999      */
1000      --color-secondary-300: oklch(0.855 0.138 181.071);
1001    
1002      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
1003         or we output the raw color value directly if theme.css supp
1003orts it.
1004         
1005         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
1006         However, Tailwind 4 supports OKLCH natively. 
1007         
1008         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
1009         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
1010         
1011         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
1012         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
1013         
1014         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
1015         OR we redefine the higher-level variables.
1016         
1017         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
1018         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
1019      */
1020      --color-secondary-400: oklch(0.777 0.152 181.912);
1021    
1022      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
1023         or we output the raw color value directly if theme.css supp
1023orts it.
1024         
1025         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
1026         However, Tailwind 4 supports OKLCH natively. 
1027         
1028         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
1029         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
1030         
1031         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
1032         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
1033         
1034         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
1035         OR we redefine the higher-level variables.
1036         
1037         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
1038         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
1039      */
1040      --color-secondary-50: oklch(0.984 0.014 180.72);
1041    
1042      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
1043         or we output the raw color value directly if theme.css supp
1043orts it.
1044         
1045         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
1046         However, Tailwind 4 supports OKLCH natively. 
1047         
1048         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
1049         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
1050         
1051         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
1052         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
1053         
1054         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
1055         OR we redefine the higher-level variables.
1056         
1057         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
1058         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
1059      */
1060      --color-secondary-500: oklch(0.704 0.14 182.503);
1061    
1062      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
1063         or we output the raw color value directly if theme.css supp
1063orts it.
1064         
1065         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
1066         However, Tailwind 4 supports OKLCH natively. 
1067         
1068         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
1069         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
1070         
1071         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
1072         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
1073         
1074         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
1075         OR we redefine the higher-level variables.
1076         
1077         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
1078         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
1079      */
1080      --color-secondary-600: oklch(0.6 0.118 184.704);
1081    
1082      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
1083         or we output the raw color value directly if theme.css supp
1083orts it.
1084         
1085         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
1086         However, Tailwind 4 supports OKLCH natively. 
1087         
1088         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
1089         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
1090         
1091         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
1092         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
1093         
1094         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
1095         OR we redefine the higher-level variables.
1096         
1097         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
1098         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
1099      */
1100      --color-secondary-700: oklch(0.511 0.096 186.391);
1101    
1102      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
1103         or we output the raw color value directly if theme.css supp
1103orts it.
1104         
1105         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
1106         However, Tailwind 4 supports OKLCH natively. 
1107         
1108         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
1109         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
1110         
1111         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
1112         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
1113         
1114         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
1115         OR we redefine the higher-level variables.
1116         
1117         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
1118         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
1119      */
1120      --color-secondary-800: oklch(0.437 0.078 188.216);
1121    
1122      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
1123         or we output the raw color value directly if theme.css supp
1123orts it.
1124         
1125         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
1126         However, Tailwind 4 supports OKLCH natively. 
1127         
1128         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
1129         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
1130         
1131         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
1132         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
1133         
1134         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
1135         OR we redefine the higher-level variables.
1136         
1137         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
1138         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
1139      */
1140      --color-secondary-900: oklch(0.386 0.063 188.416);
1141    
1142      /* Note: converting OKLCH to raw RGB CSS vars requires Tailwind 4's internal conversion 
1143         or we output the raw color value directly if theme.css supp
1143orts it.
1144         
1145         The existing system expects --hb-primary-50-rgb to be a comma-less RGB triplet "255 255 255".
1146         However, Tailwind 4 supports OKLCH natively. 
1147         
1148         CRITICAL FIX: We must override the `rgb(var(...))` wrapper in `theme.css` if we want to use OKLCH.
1149         OR we just output the RGB approximation if we want to keep `theme.css` untouched.
1150         
1151         BUT `theme.css` defines: --color-primary-50: rgb(var(--hb-primary-50-rgb));
1152         So we MUST provide RGB triplets. OKLCH strings like "oklch(...)" inside `rgb(...)` is invalid CSS.
1153         
1154         To fix this properly without changing `theme.css` significantly, we need RGB values in this table, 
1155         OR we redefine the higher-level variables.
1156         
1157         Since we cannot easily calculate OKLCH -> RGB in Hugo templates, we should 
1158         OUTPUT THE HIGHER LEVEL VARIABLES directly here to override theme.css.
1159      */
1160      --color-secondary-950: oklch(0.277 0.046 192.524);
1161    
1162    
1163    /* Also set the legacy RGB vars to a fallback (500 shade) to prevent breakage 
1164       in case something accesses the raw -rgb var directly, though unlikely */
1165    --hb-secondary-500-rgb: 128 128 128; 
1166  
1167
1168
1169
1170
1171
1172
1173--color-background: #0f172a;
1174--color-foreground: #f8fafc;
1175
1176
1177--color-header-bg: #f8fafc;
1178--color-header-fg: #0f172a;
1179
1180
1181--color-footer-bg: #111827;
1182--color-footer-fg: #e5e7eb;
1183
1184    
1185  }
1186   
1187</style>
1188
1189
1190  
1191  
1192
1193  
1194  
1195  
1196    
1197
1198  
1199  
1200  
1201  
1202  
1203  
1204  
1205    
1206      
1207        <link rel="stylesheet" href="/css/_entry.abda409c3a51ec42de7c319e4f7d0651d69549116e6a151c003e202665f4eb23.css" integrity="sha256-q9pAnDpR7ELefDGeT30GUdaVSRFuahUcAD4gJmX06yM=" crossorigin="anonymous">
1208      
1209    
1210  
1211
1212
1213  
1214
1215  
1216  
1217  
1218
1219  
1220
1221  
1221<script src="/js/hb-head.min.e9ff67ddf77122b225756bf5a926e24420bea2586199fddcb3b1813a009f4ee5.js" integrity="sha256-6f9n3fdxIrIldWv1qSbiRCC&#43;olhhmf3cs7GBOgCfTuU=" crossorigin="anonymous"></script>
1221
1222
1223  
1224  
1225  
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262  
1263  
1264  
1265    <link rel="alternate" href="/index.xml" type="application/rss+xml" title="Frank Reinhold" />
1266  
1267
1268  
1269  
1270  
1271    <link rel="icon" type="image/png" href="/media/icon_hu_c545d605fbaba839.png" />
1272  
1273  
1274  
1275  
1276    
1277      <link rel="apple-touch-icon" type="image/png" href="/media/icon_hu_b7aec86dcb688f0.png" />
1278    
1279  
1280
1281  <link rel="canonical" href="https://frankreinhold.education/" />
1282
1283  
1284  
1285  
1286  
1287  
1288  
1289  
1290  
1291    
1292    
1293      
1294    
1295    
1296  
1297  
1298
1299  
1300  
1301    
1302    
1303  
1304  <meta property="twitter:card" content="summary" />
1305  
1306  <meta property="og:site_name" content="Frank Reinhold" />
1307  <meta property="og:url" content="https://frankreinhold.education/" />
1308  <meta property="og:title" content="Frank Reinhold" />
1309  <meta property="og:description" content="Frank Reinhold&#39;s academic webpage." /><meta property="og:image" content="https://frankreinhold.education/media/icon_hu_982c5d63a71b2961.png" />
1310    <meta property="twitter:image" content="https://frankreinhold.education/media/icon_hu_982c5d63a71b2961.png" /><meta property="og:locale" content="en-us" />
1311  
1312    
1313      <meta property="og:updated_time" content="2025-12-05T00:00:00&#43;00:00" />
1314    
1315  
1316
1317  
1318
1319<script type="application/ld+json">
1320{
1321  "@context": "https://schema.org",
1322  "@type": "WebSite",
1323  "potentialAction": {
1324    "@type": "SearchAction",
1325    "target": "https://frankreinhold.education/?q={search_term_string}",
1326    "query-input": "required name=search_term_string"
1327  },
1328  "url": "https://frankreinhold.education/"
1329}
1330</script>
1330
1331
1332
1333  
1334
1335
1336
1337
1338
1339
1340
1341  <title>Frank Reinhold</title>
1342
1343  
1344  
1345  
1346  
1347  
1348  
1349  
1350  
1351  
1352  
1353  
1354  
1355  
1356  
1357  
1358  
1359  
1360  
1361  
1362  
1363  
1364  
1365  
1366  
1367    
1368    
1369  
1370  
1371  <style>
1372    :root {
1373       
1374      --hb-font-size-base: 1rem;
1375      --hb-font-size-scale: 1.25;
1376      
1377       
1378      --hb-radius: 0.5rem;
1379      --hb-spacing-base: 0.75rem;
1380      --hb-spacing-section: 2.5rem;
1381    }
1382    
1383    
1384    @font-face {
1385      font-family: 'Inter var';
1386      font-style: normal;
1387      font-weight: 100 900;
1388      font-display: swap;
1389      src: url(/dist/font/Inter.var.woff2) format(woff2);
1390    }
1391    
1392  </style>
1393
1394  
1395
1396  
1397  
1398
1399
1400
1401
1402  
1403  
1404
1405  
1406  
1407
1408  
1409
1410  
1411  
1412    
1413    
1414      
1415      
1416      
1417    
1418      
1419      
1420      
1421    
1422      
1423      
1424      
1425    
1426      
1427      
1428      
1429    
1430      
1431      
1432      
1433    
1434    
1435  
1436
1437  
1438    
1439    
1440      
1441      
1442      
1443      
1444      
1445      
1446      
1447      
1448      
1449      
1450      
1451      
1452      
1453      
1454      
1455    
1456  
1457    
1458    
1459      
1460      
1461      
1462      
1463      
1464      
1465      
1466      
1467      
1468      
1469      
1470      
1471      
1472      
1473      
1474    
1475  
1476    
1477    
1478      
1479      
1480      
1481      
1482      
1483      
1484      
1485      
1486      
1487      
1488      
1489      
1490      
1491      
1492      
1493    
1494  
1495    
1496    
1497      
1498      
1499      
1500      
1501      
1502      
1503      
1504      
1505      
1506      
1507      
1508      
1509      
1510      
1511      
1512    
1513  
1514    
1515    
1516      
1517      
1518      
1519      
1520      
1521      
1522      
1523      
1524      
1525      
1526      
1527      
1528      
1529      
1530      
1531    
1532  
1533  
1534  
1535
1536  
1537  
1538
1539  
1540
1541  
1542  
1543    
1544    
1545      
1546      
1547      
1548    
1549    
1550  
1551
1552  
1553    
1554    
1555      
1556      
1557      
1558      
1559      
1560      
1561      
1562      
1563      
1564      
1565      
1566      
1567      
1568      
1569      
1570    
1571  
1572  
1573  
1574
1575  
1576  
1577
1578  
1579
1580  
1581  
1582    
1583    
1584      
1585      
1586      
1587    
1588    
1589  
1590
1591  
1592    
1593    
1594      
1595      
1596      
1597      
1598      
1599      
1600      
1601      
1602      
1603      
1604      
1605      
1606      
1607      
1608      
1609    
1610  
1611  
1612  
1613
1614  
1615  
1616
1617  
1618
1619  
1620  
1621    
1622    
1623      
1624      
1625      
1626    
1627      
1628      
1629      
1630    
1631    
1632  
1633
1634  
1635    
1636    
1637      
1638      
1639      
1640      
1641      
1642      
1643      
1644      
1645      
1646      
1647      
1648      
1649      
1650      
1651      
1652    
1653  
1654    
1655    
1656      
1657      
1658      
1659      
1660      
1661      
1662      
1663      
1664      
1665      
1666      
1667      
1668      
1669      
1670      
1671    
1672  
1673  
1674  
1675
1676  
1677  
1678
1679  
1680
1681  
1682  
1683    
1684    
1685      
1686      
1687      
1688    
1689    
1690  
1691
1692  
1693    
1694    
1695      
1696      
1697      
1698      
1699      
1700      
1701      
1702      
1703      
1704      
1705      
1706      
1707      
1708      
1709      
1710    
1711  
1712  
1713  
1714
1715  
1716  
1717
1718  
1719
1720  
1721  
1722    
1723    
1724      
1725      
1726      
1727    
1728      
1729      
1730      
1731    
1732      
1733      
1734      
1735    
1736      
1737      
1738      
1739    
1740    
1741  
1742
1743  
1744    
1745    
1746      
1747      
1748      
1749      
1750      
1751      
1752      
1753      
1754      
1755      
1756      
1757      
1758      
1759      
1760      
1761    
1762  
1763    
1764    
1765      
1766      
1767      
1768      
1769      
1770      
1771      
1772      
1773      
1774      
1775      
1776      
1777      
1778      
1779      
1780    
1781  
1782    
1783    
1784      
1785      
1786      
1787      
1788      
1789      
1790      
1791      
1792      
1793      
1794      
1795      
1796      
1797      
1798      
1799    
1800  
1801    
1802    
1803      
1804      
1805      
1806      
1807      
1808      
1809      
1810      
1811      
1812      
1813      
1814      
1815      
1816      
1817      
1818    
1819  
1820  
1821  
1822  
1823  
1824  
1825  
1826  
1827  
1828
1829  
1829<script
1830    defer
1831    src="/js/hugo-blox-en.min.65b31b94cb4f09cfd8f827efdb711400b677b90781e4aee753207d95de698687.js"
1832    integrity="sha256-ZbMblMtPCc/Y&#43;Cfv23EUALZ3uQeB5K7nUyB9ld5phoc="
1833  ></script>
1833
1834
1835  
1836  
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862  
1863  
1864
1865
1866
1867
1868
1869
1870
1871
1872  
1873    
1874      
1875        
1876        
1876<script async defer src="https://buttons.github.io/buttons.js"></script>
1876
1877
1878        
1879      
1880    
1881  
1882
1883
1884
1885
1886</head>
1887
1888  <body class="bg-[var(--color-background)] text-[var(--color-foreground)] page-wrapper" id="top">
1889    <div id="page-bg"></div>
1890    <div class="page-header sticky top-0 z-30">
1891      
1892      
1893      
1894        
1895          
1896
1897<header id="site-header" class="header">
1898  <nav class="navbar px-3 flex justify-start">
1899    <div class="order-0 h-full">
1900      
1901      <a class="navbar-brand" href="/" title="Frank Reinhold">
1902        
1903        
1904        
1905        Frank Reinhold
1906      </a>
1907    </div>
1908    
1909    <input id="nav-toggle" type="checkbox" class="hidden" />
1910    <label
1911      for="nav-toggle"
1912      class="order-3 cursor-pointer flex items-center lg:hidden text-[var(--color-header-fg)] lg:order-1">
1913      <svg id="show-button" class="h-6 fill-current block" viewBox="0 0 20 20">
1914        <title>Open Menu</title>
1915        <path d="M0 3h20v2H0V3z m0 6h20v2H0V9z m0 6h20v2H0V0z"></path>
1916      </svg>
1917      <svg id="hide-button" class="h-6 fill-current hidden" viewBox="0 0 20 20">
1918        <title>Close Menu</title>
1919        <polygon
1920          points="11 9 22 9 22 11 11 11 11 22 9 22 9 11 -2 11 -2 9 9 9 9 -2 11 -2"
1921          transform="rotate(45 10 10)"></polygon>
1922      </svg>
1923    </label>
1924    
1925
1926    
1927    
1928    <ul
1929      id="nav-menu"
1930      class="navbar-nav order-3 hidden lg:flex w-full pb-6 lg:order-1 lg:w-auto lg:space-x-2 lg:pb-0 xl:space-x-8 justify-start
1931      ">
1932      
1933      
1934      
1935      
1936      
1937      
1938      <li class="nav-item">
1939        <a
1940          class="nav-link active"
1941          
1942          href="/"
1943        >Home</a
1944        >
1945      </li>
1946      
1947      
1948      
1949      
1950      
1951      
1952      <li class="nav-item">
1953        <a
1954          class="nav-link "
1955          
1956          href="/#news"
1957        >News</a
1958        >
1959      </li>
1960      
1961      
1962      
1963      
1964      
1965      
1966      <li class="nav-item">
1967        <a
1968          class="nav-link "
1969          
1970          href="/#featuredpub"
1971        >Featured</a
1972        >
1973      </li>
1974      
1975      
1976      
1977      
1978      
1979      
1980      <li class="nav-item">
1981        <a
1982          class="nav-link "
1983          
1984          href="/#featuredfocus"
1985        >Research</a
1986        >
1987      </li>
1988      
1989      
1990      
1991      
1992      
1993      
1994      <li class="nav-item">
1995        <a
1996          class="nav-link "
1997          
1998          href="/experience/"
1999        >Experience</a
2000        >
2001      </li>
2002      
2003      
2004      
2005      
2006      
2007      
2008      <li class="nav-item">
2009        <a
2010          class="nav-link "
2011          
2012          href="/publication"
2013        >Publications</a
2014        >
2015      </li>
2016      
2017      
2018      
2019      
2020      
2021      
2022      <li class="nav-item">
2023        <a
2024          class="nav-link "
2025          
2026          href="/projects/"
2027        >Projects</a
2028        >
2029      </li>
2030      
2031      
2032      
2033      
2034      
2035      
2036      <li class="nav-item">
2037        <a
2038          class="nav-link "
2039          
2040          href="/events/"
2041        >Talks</a
2042        >
2043      </li>
2044      
2045      
2046      
2047      
2048      
2049      
2050      <li class="nav-item">
2051        <a
2052          class="nav-link "
2053          
2054          href="/posts/"
2055        >Blog</a
2056        >
2057      </li>
2058      
2059      
2060      
2061    </ul>
2062
2063    <div class="order-1 ml-auto flex items-center md:order-2 lg:ml-0">
2064
2065      
2066      
2067      
2068
2069      
2070      
2071
2072      
2073      
2074
2075      
2076      
2077
2078      
2079      
2080    </div>
2081  </nav>
2082</header>
2083
2084
2085
2086        
2087      
2088    </div>
2089    
2090    <div class="page-body ">
2091      
2092
2093  
2094  
2095    
2096
2097
2098
2099
2100
2101
2102
2103
2104  
2105
2106  
2107
2108  
2109
2110  
2111
2112  
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136  
2137  
2138  
2139  
2140  
2141  
2142  
2143  
2144  
2145  
2146    
2147  
2148  
2149  
2150  
2151  
2152  
2153  
2154  
2155  
2156  
2157  
2158    
2159    
2160    
2161    
2162    
2163      
2164      
2165      
2166      
2167      
2168      
2169      
2170      
2171      
2172      
2173      
2174      
2175      
2176      
2177      
2178      
2179    
2180      
2181      
2182      
2183      
2184      
2185      
2186      
2187      
2188      
2189      
2190      
2191        
2192      
2193      
2194      
2195      
2196      
2197      
2198    
2199    
2200  
2201  
2202  
2203  
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220  
2221  
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232  
2233  
2234  
2235
2236  
2237  
2238
2239  
2240
2241  
2242
2243  
2244  <section id="section-resume-biography" class="relative overflow-hidden hbb-section blox-resume-biography  " style="padding: 30px 20px 0 20px;">
2245    
2246    <div class="absolute inset-0 -z-10"><div class="absolute inset-0 bg-gradient-to-br from-primary-500/20 via-trans
2246parent to-secondary-500/20"></div><div class="absolute top-0 left-1/4 w-96 h-96 bg-primary-500/20 rounded-full filter blur-3xl animate-pulse"></div><div class="absolute bottom-0 right-1/4 w-96 h-96 bg-secondary-500/20 rounded-full filter blur-3xl animate-pulse" style="animation-delay: 2s;"></div></div>
2247    <div class="home-section-bg " >
2248      
2249    </div>
2250    
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283<div id="profile" class="resume-biography flex justify-center items-center flex-col dark:text-white">
2284  
2285
2286  <div class="avatar-wrapper mt-10" style="width: 200px; height: 200px;">
2287    
2288    <img class="avatar rounded-full bg-white dark:bg-gray-800 p-1" src="/authors/admin/avatar_hu_5a14a12c7cfc3f39.jpg" alt="Frank Reinhold"
2289         width="200" height="200"
2290         style="width: 200px; height: 200px; object-fit: cover;">
2291    
2292  </div>
2293  
2294
2295  <div class="text-3xl font-bold mb-2 mt-6">Frank Reinhold</div><h3 class="font-semibold mb-1">Professor of Mathematics Education</h3>
2296
2297  
2298  <div class="mb-2">
2299    <a href="https://www.ph-freiburg.de/mathe/persondendetails.html?tx_ttaddress_listview%5Baction%5D=show&amp;tx_ttaddress_listview%5Baddress%5D=1058&amp;tx_ttaddress_listview%5Bcontroller%5D=Address&amp;cHash=0ab9d05c32eef64f35d2eeac9856cf58" target="_blank" rel="noopener">
2300    <div>University of Education Freiburg</div>
2301    </a>
2302  </div>
2303  
2304
2305  <ul class="network-icon dark:text-zinc-100">
2306    
2307    
2308    
2309    
2310      
2311    
2312    
2313    
2314    
2315    
2316    <li>
2317      <a href="mailto:[email protected]"  aria-label="at-symbol"
2318          data-toggle="tooltip" data-placement="top" title="E-mail Me">
2319        <svg style="height: 1.5rem;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-width="1.5" d="M16.5 12a4.5 4.5 0 1 1-9 0a4.5 4.5 0 0 1 9 0Zm0 0c0 1.657 1.007 3 2.25 3S21 13.657 21 12a9 9 0 1 0-2.636 6.364M16.5 12V8.25"/></svg>
2320      </a>
2321    </li>
2322    
2323    
2324    
2325    
2326      
2327    
2328    
2329    
2330    
2331    
2332      
2333    
2334    <li>
2335      <a href="https://x.com/Reinhold_Edu/" target="_blank" rel="noopener" aria-label="brands/x"
2336         >
2337        <svg style="height: 1.5rem;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z"/></svg>
2338      </a>
2339    </li>
2340    
2341    
2342    
2343    
2344      
2345    
2346    
2347    
2348    
2349    
2350      
2351    
2352    <li>
2353      <a href="https://www.linkedin.com/in/frankreinholdedu/" target="_blank" rel="noopener" aria-label="brands/linkedin"
2354         >
2355        <svg style="height: 1.5rem;" xmlns="http://www.w3.org/2000/svg" height="1em" viewBox="0 0 448 512"><path fill="currentColor" d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"/></svg>
2356      </a>
2357    </li>
2358    
2359    
2360    
2361    
2362      
2363    
2364    
2365    
2366    
2367    
2368      
2369    
2370    <li>
2371      <a href="https://scholar.google.com/citations?user=Ea40IuQAAAAJ" target="_blank" rel="noopener" aria-label="academicons/google-scholar"
2372         >
2373        <svg style="height: 1.5rem;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M343.759 106.662V79.43L363.524 64h-213.89L20.476 176.274h85.656a82.339 82.339 0 0 0-.219 6.225c0 20.845 7.22 38.087 21.672 51.861c14.453 13.797 32.252 20.648 53.327 20.648c4.923 0 9.75-.368 14.438-1.024c-2.907 6.5-4.374 12.523-4.374 18.142c0 9.875 4.499 20.43 13.467 31.642c-39.234 2.67-68.061 9.732-86.437 21.163c-10.531 6.5-19 14.704-25.39 24.531c-6.391 9.9-9.578 20.515-9.578 31.962c0 9.648 2.062 18.336 6.219 26.062c4.156 7.726 9.578 14.07 16.312 18.984c6.718 4.968 14.469 9.101 23.219 12.469c8.734 3.344 17.406 5.718 26.061 7.062A167.052 167.052 0 0 0 180.555 448c13.469 0 26.953-1.734 40.547-5.187c13.562-3.485 26.28-8.642 38.171-15.493c11.86-6.805 21.515-16.086 28.922-27.718c7.39-11.68 11.094-24.805 11.094-39.336c0-11.016-2.25-21.039-6.75-30.14c-4.468-9.073-9.938-16.542-16.452-22.345c-6.501-5.813-13-11.155-19.516-15.968c-6.5-4.845-12-9.75-16.468-14.813c-4.485-5.046-6.735-10.054-6.735-14.984c0-4.921 1.734-9.672 5.216-14.265c3.455-4.61 7.674-9.048 12.61-13.306c4.937-4.25 9.875-8.968 14.796-14.133c4.922-5.147 9.141-11.827 12.61-20.008c3.485-8.18 5.203-17.445 5.203-27.757c0-13.453-2.547-24.46-7.547-33.314c-.594-1.022-1.218-1.803-1.875-3.022l56.907-46.672v17.119c-7.393.93-6.624 5.345-6.624 10.635V245.96c0 5.958 4.875 10.834 10.834 10.834h3.989c5.958 0 10.833-4.875 10.833-10.834V117.293c0-5.277.778-9.688-6.561-10.63zm-107.36 222.48c1.14.75 3.704 2.78 7.718 6.038c4.05 3.243 6.797 5.695 8.266 7.414a443.553 443.553 0 0 1 6.376 7.547c2.813 3.375 4.718 6.304 5.718 8.734c1 2.477 2.016 5.461 3.047 8.946a38.27 38.27 0 0 1 1.485 10.562c0 17.048-6.564 29.68-19.656 37.859c-13.125 8.18-28.767 12.274-46.938 12.274c-9.187 0-18.203-1.093-27.063-3.196c-8.843-2.116-17.311-5.336-25.39-9.601c-8.078-4.258-14.577-10.204-19.5-17.797c-4.938-7.64-7.407-16.415-7.407-26.25c0-10.32 2.797-19.29 8.422-26.906c5.594-7.625 12.938-13.391 22.032-17.315c9.063-3.946 18.25-6.742 27.562-8.398a157.865 157.865 0 0 1 28.438-2.555c4.47 0 7.936.25 10.405.696c.455.219 3.032 2.07 7.735 5.563c4.704 3.462 7.625 5.595 8.75 6.384zm-3.359-100.579c-7.406 8.86-17.734 13.288-30.953 13.288c-11.86 0-22.298-4.764-31.266-14.312c-9-9.523-15.422-20.328-19.344-32.43c-3.937-12.109-5.906-23.984-5.906-35.648c0-13.694 3.596-25.352 10.781-34.976c7.187-9.65 17.5-14.485 30.938-14.485c11.875 0 22.374 5.038 31.437 15.157c9.094 10.085 15.61 21.413 19.517 33.968c3.922 12.54 5.873 24.53 5.873 35.984c0 13.446-3.702 24.61-11.076 33.454z"/></svg>
2374      </a>
2375    </li>
2376    
2377    
2378    
2379    
2380      
2381    
2382    
2383    
2384    
2385    
2386      
2387    
2388    <li>
2389      <a href="https://orcid.org/0000-0003-4468-024X" target="_blank" rel="noopener" aria-label="academicons/orcid"
2390         >
2391        <svg style="height: 1.5rem;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
2391<path fill="currentColor" d="M336.62 194.538c-7.13-3.328-13.866-5.56-20.253-6.614c-6.365-1.095-16.574-1.612-30.71-1.612h-36.704v152.747h37.634c14.673 0 26.081-1.013 34.224-3.017c8.142-2.004 14.921-4.526 20.356-7.626a69.448 69.448 0 0 0 14.942-11.388c14.488-14.714 21.742-33.273 21.742-55.717c0-22.052-7.44-40.052-22.341-53.982c-5.498-5.166-11.822-9.444-18.89-12.793zM256 8C119.022 8 8 119.042 8 256s111.022 248 248 248s248-111.042 248-248S392.978 8 256 8Zm-82.336 357.513h-29.389V160.148h29.389zM158.95 138.696c-11.14 0-20.213-9.01-20.213-20.212c0-11.118 9.052-20.191 20.213-20.191c11.18 0 20.232 9.052 20.232 20.191a20.194 20.194 0 0 1-20.232 20.212zm241.386 163.597c-5.29 12.545-12.834 23.581-22.65 33.088c-9.982 9.837-21.597 17.194-34.844 22.196c-7.75 3.017-14.839 5.063-21.307 6.117c-6.49 1.013-18.828 1.509-37.076 1.509h-64.956V160.148h69.233c27.962 0 50.034 4.154 66.32 12.545c16.265 8.37 29.181 20.728 38.792 36.972c9.61 16.265 14.425 34.018 14.425 53.196c.023 13.765-2.666 26.908-7.936 39.432z"/></svg>
2392      </a>
2393    </li>
2394    
2395    
2396    
2397    
2398      
2399    
2400    
2401    
2402    
2403    
2404      
2405    
2406    <li>
2407      <a href="https://www.researchgate.net/profile/Frank_Reinhold/" target="_blank" rel="noopener" aria-label="academicons/researchgate"
2408         >
2409        <svg style="height: 1.5rem;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M228.66 408.101c-20.194-21.973-47.218-57.268-69.698-97.166c37.134-8.685 64.633-43.55 64.633-78.384c0-51.345-39.88-75.176-92.163-75.176c-27.023 0-48.583 1.365-68.716 1.365c-18.369 0-36.722 0-48.154-.445V171.6l17.401 3.192c11.97 2.302 18.783 7.765 18.783 36.214v180.6c0 28.435-6.813 33.928-18.783 36.2l-17.4 3.252v13.259c12.367-.445 33.912-1.351 55.473-1.351c20.624 0 47.217.906 58.68 1.35v-13.258l-23.847-3.253c-12.366-1.796-18.813-7.764-18.813-36.2v-76.542c11.002.921 20.624.921 35.325.921c27.96 49.95 54.551 87.56 69.652 104.962c13.78 16.526 34.85 27.054 61.442 27.054c7.781 0 16.023-1.367 21.054-3.683v-11.894c-16.496 0-32.992-11.477-44.87-24.321zM119.064 295.344c-15.591 0-22.434-.414-33.008-1.41V178.918c10.574-.92 24.752-.92 37.136-.92c38.531 0 61.427 20.195 61.427 56.839c0 36.215-24.736 60.506-65.555 60.506zm139.934-115.703c-.46-2.409-.875-5.217-1.243-8.456c-.383-3.268-.63-7.104-.782-11.63c-.154-4.496-.215-9.99-.215-16.282c0-6.323.061-11.74.215-16.25c.152-4.528.399-8.41.782-11.648c.368-3.223.782-6.046 1.243-8.455a50.885 50.885 0 0 1 1.78-6.982c3.943-11.923 10.405-20.885 19.443-26.901C289.244 67.02 300.308 64 313.443 64c6.752 0 12.875.782 18.307 2.377c5.371 1.581 10.189 3.76 14.44 6.553c4.189 2.762 7.81 6.015 10.802 9.698a52.87 52.87 0 0 1 7.474 11.878c.75 1.35.537 2.425-.66 3.176l-16.68 6.858c-1.413.753-2.41.37-3.193-1.12c-3.743-6.936-6.936-11.493-12.183-14.807c-5.31-3.3-10.22-4.865-18.308-4.865c-8.793 0-12.721 1.749-18.23 5.693c-5.463 3.867-9.468 8.732-11.832 16.143c-.474 1.335-.905 2.993-1.41 4.942c-.415 1.98-.753 4.404-.967 7.242c-.215 2.84-.415 6.353-.598 10.497c-.123 4.144-.184 9.177-.184 15.008c0 5.86.061 10.894.184 15.038c.184 4.128.383 7.641.598 10.48c.214 2.87.552 5.279.966 7.274c.507 1.919.937 3.575 1.411 4.927c2.364 7.38 5.74 11.415 10.712 14.654c4.911 3.284 10.557 5.648 19.35 5.648c7.811 0 14.962-2.225 19.626-5.618c4.62-3.39 8.456-7.87 10.175-13.994c.753-2.579 1.72-5.786 2.38-9.714c.598-3.929.598-8.087.598-13.825c0-.907-.508-1.367-1.352-1.367h-26.716c-1.504 0-2.24-.736-2.24-2.24v-15.314c0-1.52.736-2.257 2.24-2.257h49.028c1.535 0 2.257.737 2.257 2.257v13.09c0 6.935 0 13.365-.722 19.32c-.691 5.953-1.626 11.109-2.808 14.868c-3.744 11.77-9.682 20.15-18.782 26.394c-9.131 6.291-20.9 9.682-33.684 9.682c-13.135 0-24.199-3.022-33.221-9.022c-9.039-6.077-15.5-14.993-19.443-26.916a51.103 51.103 0 0 1-1.78-6.997z"/></svg>
2410      </a>
2411    </li>
2412    
2413    
2414    
2415    
2416      
2417    
2418    
2419    
2420    
2421    
2422      
2423    
2424    <li>
2425      <a href="https://www.scopus.com/authid/detail.uri?authorId=57203852784" target="_blank" rel="noopener" aria-label="academicons/scopus"
2426         >
2427        <svg style="height: 1.5rem;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M64 64v384h384V64Zm116.815 99.926c22.222 0 32.04 2.586 45.736 8.27l-1.292 20.411c-14.729-8.785-26.356-11.367-43.152-11.367c-19.379 0-29.2 14.727-29.2 28.163c0 18.088 17.313 24.807 33.592 34.626c20.93 12.403 42.636 23.514 42.636 48.062c0 32.299-27.65 48.577-54.006 48.577c-18.863 0-32.557-2.843-45.993-9.044l3.102-20.414c13.178 8.01 24.547 11.889 41.86 11.889c17.57 0 32.297-11.887 32.297-28.424c0-17.054-16.535-23.516-32.297-33.076c-21.189-12.92-44.444
2427-24.29-44.444-50.646s19.379-47.027 51.161-47.027zm161.705 0c26.097 0 37.725 3.102 51.937 9.82l-1.55 19.38c-15.504-8.527-31.783-11.886-52.971-11.886c-33.592 0-62.274 26.613-62.274 69.765c0 40.826 29.2 71.575 65.892 71.575c16.795 0 33.591-3.359 49.353-11.886l1.55 19.638c-13.953 6.977-31.523 9.82-52.71 9.82c-42.12 0-87.338-31.01-87.338-87.597c0-49.612 37.982-88.63 88.11-88.63z" opacity=".999"/></svg>
2428      </a>
2429    </li>
2430    
2431  </ul>
2432
2433  
2434  <div class="pt-2 d-flex justify-content-center prose prose-slate lg:prose-xl dark:prose-invert">
2435    <div class="bio-text" >
2436      <p>Frank Reinhold is Professor of Mathematics Education at the University of Education Freiburg. His research lies at the intersection of mathematics education, educational psychology, and digital learning, with particular interest in instructional design, learning processes, and the professional development of teachers.</p>
2437
2438    </div>
2439  </div>
2440  
2441
2442  
2443
2444</div>
2445
2446  </section>
2447
2448  
2449
2450  
2451  
2452    
2453
2454
2455
2456
2457
2458
2459
2460
2461  
2462
2463  
2464
2465  
2466
2467  
2468
2469  
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508  
2509  
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520  
2521  
2522  
2523
2524  
2525  
2526
2527  
2528
2529  
2530
2531  
2532  <section id="news" class="relative  hbb-section blox-collection  " style="padding: 30px 0 0 0;">
2533    
2534    
2535    <div class="home-section-bg " >
2536      
2537    </div>
2538    
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550  
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563  
2564  
2565  
2566  
2567  
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591  
2592
2593
2594
2595
2596  
2597
2598  
2599
2600
2601
2602
2603
2604<div class="flex flex-col items-center max-w-prose mx-auto gap-3 justify-center px-6 md:px-0">
2605
2606  <div class="mb-6 text-3xl font-bold text-gray-900 dark:text-white">
2607    Recent News
2608  </div>
2609
2610  
2611</div>
2612
2613
2614<div class="flex flex-col items-center px-6">
2615
2616  
2617  
2618
2619
2620<div class="container px-8 mx-auto xl:px-5 py-5 lg:py-8 max-w-screen-lg ">
2621  <div class="grid gap-10 md:grid-cols-2 lg:gap-10">
2622
2623
2624  
2625    
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640<div class="group bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm rounded-2xl ring-1 ring-zinc-900/5 dark:ring-white/10 shadow-lg overflow-hidden transition-all duration-300 ease-out hover:shadow-xl hover:shadow-blue-500/10 hover:-translate-y-2 focus-within:ring-2 focus-within:ring-blue-500/50" role="article" aria-labelledby="card-title-8a8b34bba55e3617cc138b0057da84f3">
2641    
2642    <div class="relative overflow-hidden aspect-[16/9] bg-gradient-to-br from-zinc-100 to-zinc-200 dark:from-zinc-800 dark:to-zinc-900">
2643      
2644      
2645        
2646          
2647          
2648            
2649          
2650          
2651          <a href="/posts/2026-03-08_reinholdleaind/"  class="block">
2652            <img class="w-full h-full transition-transform duration-500 ease-out group-hover:scale-105 object-fill" 
2653                 srcset="/posts/2026-03-08_reinholdleaind/featured_hu_2008c0e3ab914eb3.webp 400w, /posts/2026-03-08_reinholdleaind/featured_hu_5a158f1f76ac634e.webp 600w, /posts/2026-03-08_reinholdleaind/featured_hu_62b58b5506e53952.webp 800w, /posts/2026-03-08_reinholdleaind/featured_hu_a750e0de892747aa.webp 800w"
2654                 sizes="(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw"
2655                 src="/posts/2026-03-08_reinholdleaind/featured_hu_2008c0e3ab914eb3.webp" 
2656                 width="800" 
2657                 height="450"
2658                 loading="lazy" 
2659                 decoding="async"
2660                 fetchpriority="high"
2661                 style="position: absolute; height: 100%; width: 100%; inset: 0px; color: transparent;"
2662                 alt="Who Outperforms Whom in School—and Why? The Role of Motivation and Culture in Gender Gaps featured image">
2663          </a>
2664        
2665      
2666      
2667      
2668      <div class="absolute inset-0 pointer-events-none bg-gradient-to-t from-black/10 via-trans
2668parent to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-300"></div>
2669    </div>
2670
2671    
2672    <div class="p-8 space-y-4">
2673      
2674
2675      
2676      <div class="flex items-center gap-2">
2677        
2678        <a href="/tags/gender-disparities/">
2679          <span class="inline-flex items-center px-3 py-1 rounded-full text-xs font-semibold bg-primary-100 text-primary-800 dark:bg-primary-900/40 dark:text-primary-300">
2680            Gender Disparities
2681          </span>
2682        </a>
2683        
2684      </div>
2685      
2686
2687      <h3 id="card-title-8a8b34bba55e3617cc138b0057da84f3" class="text-xl font-bold tracking-tight text-zinc-900 dark:text-zinc-100 group-hover:text-blue-600 dark:group-hover:text-blue-400 transition-colors duration-200 leading-tight">
2688        <a href="/posts/2026-03-08_reinholdleaind/"  class="hover:underline">
2689          Who Outperforms Whom in School—and Why? The Role of Motivation and Culture in Gender Gaps
2690          
2691        </a>
2692      </h3>
2693      
2694      <p class="text-zinc-600 dark:text-zinc-400 text-base leading-relaxed line-clamp-3">
2695        Achievement gaps between boys and girls reflect a complex interaction of motivation, beliefs, and societal influences.
2696      </p>
2697
2698      
2699
2700      
2701      
2702      <div class="pt-3 border-t border-zinc-100 dark:border-zinc-800">
2703        <div class="flex items-center gap-3 text-xs text-zinc-500 dark:text-zinc-500 flex-wrap mb-3">
2704          
2705          <div class="flex items-center gap-2 min-w-0">
2706            
2707            
2708              
2709              <div class="relative h-6 w-6 flex-shrink-0">
2710                
2711                
2712                  
2713                  <img alt="avatar" class="rounded-full object-cover" src="/authors/admin/avatar_hu_7920a977f573d4ac.webp" width="24" height="24" loading="lazy" decoding="async" />
2714                
2715              </div>
2716              <span class="truncate max-w-[9rem] text-sm">Frank Reinhold</span>
2717            
2718          </div>
2719          <span class="opacity-40">•</span>
2720          
2721          
2722            <time class="hidden sm:inline whitespace-nowrap" datetime="2026-03-08">
2723              Mar 8, 2026
2724            </time>
2725          
2726          
2727          
2728        </div>
2729        
2730        
2731        
2732        <div class="pt-2 border-t border-zinc-200/50 dark:border-zinc-700/50">
2733          <a href="/posts/2026-03-08_reinholdleaind/"  class="inline-flex items-center gap-2 text-primary-600 dark:text-primary-400 hover:text-primary-700 dark:hover:text-primary-300 font-medium text-sm transition-all duration-300 group/link">
2734            <span>Read more</span>
2735            <svg class="w-4 h-4 transition-transform group-hover/link:translate-x-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" aria-hidden="true">
2736              <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 8l4 4m0 0l-4 4m4-4H3"/>
2737            </svg>
2738          </a>
2739        </div>
2740        
2741      </div>
2742      
2743      
2744      
2745      
2746    </div>
2747</div>
2748  
2749    
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764<div class="group bg-white/90 dark:bg-zinc-900/90 backdrop-blur-sm rounded-2xl ring-1 ring-zinc-900/5 dark:ring-white/10 shadow-lg overflow-hidden transition-all duration-300 ease-out hover:shadow-xl hover:shadow-blue-500/10 hover:-translate-y-2 focus-within:ring-2 focus-within:ring-blue-500/50" role="article" aria-labelledby="card-title-ba7775705740de682c240cf963b8b3c7">
2765    
2766    <div class="relative overflow-hidden aspect-[16/9] bg-gradient-to-br from-zinc-100 to-zinc-200 dark:from-zinc-800 dark:to-zinc-900">
2767      
2768      
2769        
2770          
2771          
2772            
2773          
2774          
2775          <a href="/posts/2025-12-19_reuteresm/"  class="block">
2776            <img class="w-full h-full transition-transform duration-500 ease-out group-hover:scale-105 object-fill" 
2777                 srcset="/posts/2025-12-19_reuteresm/featured_hu_d951558dc747e626.webp 400w, /posts/2025-12-19_reuteresm/featured_hu_3264ce7b93e78083.webp 600w, /posts/2025-12-19_reuteresm/featured_hu_990c8fb149ce8929.webp 800w, /posts/2025-12-19_reuteresm/featured_hu_ed113713bdd75693.webp 800w"
2778                 sizes="(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw"
2779                 src="/posts/2025-12-19_reuteresm/featured_hu_d951558dc747e626.webp" 
2780                 width="800" 
2781                 height="450"
2782                 loading="lazy" 
2783                 decoding="async"
2784                 
2785                 style="position: absolute; height: 100%; width: 100%; inset: 0px; color: transparent;"
2786                 alt="Why Some Patterns Are Harder Than Others: What Primary Students Really Struggle With featured image">
2787          </a>
2788        
2789      
2790      
2791      
2792      <div class="absolute inset-0 pointer-events-none bg-gradient-to-t from-black/10 via-trans
2792parent to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-300"></div>
2793    </div>
2794
2795    
2796    <div class="p-8 space-y-4">
2797      
2798
2799      
2800      <div class="flex items-center gap-2">
2801        
2802        <a href="/tags/pattern-recognition/">
2803          <span class="inline-flex items-center px-3 py-1 rounded-full text-xs font-semibold bg-primary-100 text-primary-800 dark:bg-primary-900/40 dark:text-primary-300">
2804            Pattern Recognition
2805          </span>
2806        </a>
2807        
2808      </div>
2809      
2810
2811      <h3 id="card-title-ba7775705740de682c240cf963b8b3c7" class="text-xl font-bold tracking-tight text-zinc-900 dark:text-zinc-100 group-hover:text-blue-600 dark:group-hover:text-blue-400 transition-colors duration-200 leading-tight">
2812        <a href="/posts/2025-12-19_reuteresm/"  class="hover:underline">
2813          Why Some Patterns Are Harder Than Others: What Primary Students Really Struggle With
2814          
2815        </a>
2816      </h3>
2817      
2818      <p class="text-zinc-600 dark:text-zinc-400 text-base leading-relaxed line-clamp-3">
2819        Patterns are often called the heart of mathematics, but recognizing a pattern is more complex than it seems.
2820      </p>
2821
2822      
2823
2824      
2825      
2826      <div class="pt-3 border-t border-zinc-100 dark:border-zinc-800">
2827        <div class="flex items-center gap-3 text-xs text-zinc-500 dark:text-zinc-500 flex-wrap mb-3">
2828          
2829          <div class="flex items-center gap-2 min-w-0">
2830            
2831            
2832              
2833              <div class="relative h-6 w-6 flex-shrink-0">
2834                
2835                
2836                  
2837                  <img alt="avatar" class="rounded-full object-cover" src="/authors/admin/avatar_hu_7920a977f573d4ac.webp" width="24" height="24" loading="lazy" decoding="async" />
2838                
2839              </div>
2840              <span class="truncate max-w-[9rem] text-sm">Frank Reinhold</span>
2841            
2842          </div>
2843          <span class="opacity-40">•</span>
2844          
2845          
2846            <time class="hidden sm:inline whitespace-nowrap" datetime="2025-12-19">
2847              Dec 19, 2025
2848            </time>
2849          
2850          
2851          
2852        </div>
2853        
2854        
2855        
2856        <div class="pt-2 border-t border-zinc-200/50 dark:border-zinc-700/50">
2857          <a href="/posts/2025-12-19_reuteresm/"  class="inline-flex items-center gap-2 text-primary-600 dark:text-primary-400 hover:text-primary-700 dark:hover:text-primary-300 font-medium text-sm transition-all duration-300 group/link">
2858            <span>Read more</span>
2859            <svg class="w-4 h-4 transition-transform group-hover/link:translate-x-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" aria-hidden="true">
2860              <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 8l4 4m0 0l-4 4m4-4H3"/>
2861            </svg>
2862          </a>
2863        </div>
2864        
2865      </div>
2866      
2867      
2868      
2869      
2870    </div>
2871</div>
2872  
2873
2874    </div>
2875</div>
2876
2877
2878</div>
2879
2880
2881
2882
2883
2884  
2885  
2886    
2887  
2888
2889  
2890  
2891  
2892  
2893    
2894  
2895
2896  
2897
2898  <div class="container mx-auto max-w-screen-lg px-8 xl:px-5 pb-5 lg:pb-8">
2899    <div class="mt-10 flex justify-center">
2900      <a
2901        class="relative inline-flex items-center gap-1 rounded-md border border-gray-300 bg-white px-3 py-2 pl-4 text-sm font-medium text-gray-500 hover:bg-gray-50 focus:z-20 dark:border-gray-500 dark:bg-gray-800 dark:text-gray-300"
2902        href="/posts/">
2903          <span>See all</span>
2904        </a>
2905      </div>
2906  </div>
2907
2908
2909
2910  </section>
2911
2912  
2913
2914  
2915  
2916    
2917
2918
2919
2920
2921
2922
2923
2924
2925  
2926
2927  
2928
2929  
2930
2931  
2932
2933  
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972  
2973  
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984  
2985  
2986  
2987
2988  
2989  
2990
2991  
2992
2993  
2994
2995  
2996  <section id="featuredfocus" class="relative  hbb-section blox-features  " style="padding: 0 20px 0 20px;">
2997    
2998    
2999    <div class="home-section-bg " >
3000      
3001    </div>
3002    
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012<section>
3013  <div class="py-8 px-4 mx-auto max-w-screen-xl sm:py-16 lg:px-6">
3014    <div class="max-w-screen-md mb-8 lg:mb-16 flex flex-col justify-center mx-auto">
3015      
3016      <h2 class="mb-4 text-4xl tracking-tight font-extrabold text-gray-900 dark:text-white text-center">My Research Focus</h2>
3017      
3018      
3019      <p class="text-gray-500 sm:text-xl dark:text-gray-400 text-center">My research is structured around three mutually reinforcing themes.</p>
3020      
3021    </div>
3022    <div class="space-y-8 md:grid md:grid-cols-2 lg:grid-cols-3 md:gap-12 md:space-y-0">
3023      
3024        <div>
3025          
3026          <div class="flex justify-center items-center mb-4 w-10 h-10 rounded-full bg-primary-100 lg:h-12 lg:w-12 dark:bg-primary-900 text-primary-600 dark:text-primary-300">
3027            <svg class="w-5 h-5 lg:w-6 lg:h-6" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
3027<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M9 17.25v1.007a3 3 0 0 1-.879 2.122L7.5 21h9l-.621-.621A3 3 0 0 1 15 18.257V17.25m6-12V15a2.25 2.25 0 0 1-2.25 2.25H5.25A2.25 2.25 0 0 1 3 15V5.25m18 0A2.25 2.25 0 0 0 18.75 3H5.25A2.25 2.25 0 0 0 3 5.25m18 0V12a2.25 2.25 0 0 1-2.25 2.25H5.25A2.25 2.25 0 0 1 3 12V5.25"/></svg>
3028          </div>
3029          
3030          <h3 class="mb-2 text-xl font-bold dark:text-white">Digital Learning in Mathematics</h3>
3031          <p class="text-gray-500 dark:text-gray-400">I investigate how digital learning environments transform mathematics education&mdash;from interactive tasks to adaptive learning pathways&mdash;bridging mathematics education with educational psychology.</p>
3032        </div>
3033      
3034        <div>
3035          
3036          <div class="flex justify-center items-center mb-4 w-10 h-10 rounded-full bg-primary-100 lg:h-12 lg:w-12 dark:bg-primary-900 text-primary-600 dark:text-primary-300">
3037            <svg class="w-5 h-5 lg:w-6 lg:h-6" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M12 18v-5.25m0 0a6.01 6.01 0 0 0 1.5-.189m-1.5.189a6.01 6.01 0 0 1-1.5-.189m3.75 7.478a12.06 12.06 0 0 1-4.5 0m3.75 2.383a14.406 14.406 0 0 1-3 0M14.25 18v-.192c0-.983.658-1.823 1.508-2.316a7.5 7.5 0 1 0-7.517 0c.85.493 1.509 1.333 1.509 2.316V18"/></svg>
3038          </div>
3039          
3040          <h3 class="mb-2 text-xl font-bold dark:text-white">Cognitive &amp; Motivational Processes</h3>
3041          <p class="text-gray-500 dark:text-gray-400">I analyze cognitive strategies, motivation, and emotions in mathematical learning to understand the processes that support successful learning trajectories.</p>
3042        </div>
3043      
3044        <div>
3045          
3046          <div class="flex justify-center items-center mb-4 w-10 h-10 rounded-full bg-primary-100 lg:h-12 lg:w-12 dark:bg-primary-900 text-primary-600 dark:text-primary-300">
3047            <svg class="w-5 h-5 lg:w-6 lg:h-6" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M3.75 3v11.25A2.25 2.25 0 0 0 6 16.5h2.25M3.75 3h-1.5m1.5 0h16.5m0 0h1.5m-1.5 0v11.25A2.25 2.25 0 0 1 18 16.5h-2.25m-7.5 0h7.5m-7.5 0l-1 3m8.5-3l1 3m0 0l.5 1.5m-.5-1.5h-9.5m0 0l-.5 1.5m.75-9l3-3l2.148 2.148A12.061 12.061 0 0 1 16.5 7.605"/></svg>
3048          </div>
3049          
3050          <h3 class="mb-2 text-xl font-bold dark:text-white">Learning Analytics &amp; Empirical Methods</h3>
3051          <p class="text-gray-500 dark:text-gray-400">Using advanced quantitative methods, process data, and learning analytics, I model learning processes and intervention effects, including GLMMs, response time analysis, and eye-tracking.</p>
3052        </div>
3053      
3054    </div>
3055  </div>
3056</section>
3057
3058  </section>
3059
3060  
3061
3062  
3063  
3064    
3065
3066
3067
3068
3069
3070
3071
3072
3073  
3074
3075  
3076
3077  
3078
3079  
3080
3081  
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120  
3121  
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132  
3133  
3134  
3135
3136  
3137  
3138
3139  
3140
3141  
3142
3143  
3144  <section id="featuredpub" class="relative  hbb-section blox-collection  " style="padding: 0 0 0 0;">
3145    
3146    
3147    <div class="home-section-bg " >
3148      
3149    </div>
3150    
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162  
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175  
3176  
3177  
3178  
3179  
3180
3181
3182
3183
3184
3185
3186
3187
3188  
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205  
3206
3207
3208
3209
3210  
3211
3212  
3213
3214  
3215
3216  
3217
3218  
3219
3220  
3221
3222  
3223
3224  
3225
3226  
3227
3228  
3229
3230
3231
3232
3233
3234<div class="flex flex-col items-center max-w-prose mx-auto gap-3 justify-center px-6 md:px-0">
3235
3236  <div class="mb-6 text-3xl font-bold text-gray-900 dark:text-white">
3237    Featured Publications
3238  </div>
3239
3240  <p>Key works that highlight the focus and direction of my research.</p>
3241</div>
3242
3243
3244<div class="flex flex-col items-center px-6">
3245
3246  
3247  
3248<div class="mt-16 sm:mt-20 container max-w-3xl w-full">
3249  <div class="flex flex-col space-y-3">
3250
3251
3252  
3253    
3254
3255
3256<div class="pub-list-item view-citation" style="margin-bottom: 1rem">
3257  <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
3258
3259  
3260  
3261
3262  <span class="article-metadata li-cite-author">
3263    
3264
3265
3266  <span >
3267      Sarah I. Hofer</span>, <span class="font-bold">
3268      Frank Reinhold</span>
3269  </span>
3270  (2025).
3271  <a href="/publication/2025-06-07_hofer_jli/" class="underline">Scaffolding of learning activities: Aptitude-treatment-interaction effects in math?</a>.
3272  <em>Learning and Instruction</em>.
3273  
3274
3275  
3276  <div class="flex flex-wrap space-x-3">
3277    
3278
3279
3280
3281
3282
3283
3284
3285
3286 
3287
3288
3289  
3290    
3291    
3292    
3293    
3294    
3295    
3296      
3297      
3298    
3299
3300    
3301    
3302    
3303      
3304        
3305      
3306    
3307    
3308
3309    
3310      <a class="hb-attachment-link hb-attachment-link-small" href="https://www.sciencedirect.com/science/article/pii/S095947522500101X/pdfft?md5=cc7243fe9eba645a621bc00e212306b9&amp;pid=1-s2.0-S095947522500101X-main.pdf" target="_blank" rel="noopener">
3311        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
3311<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9"/></svg>
3312        PDF
3313      </a>
3314    
3315  
3316
3317  
3318    
3319    
3320    
3321    
3322    
3323    
3324      
3325        
3326      
3327    
3328
3329    
3330    
3331    
3332      
3333        
3334      
3335    
3336    
3337
3338    
3339      <button class="hb-attachment-link hb-attachment-link-small js-cite-clipboard cursor-pointer" type="button" data-filename="/publication/2025-06-07_hofer_jli/cite.bib">
3340        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75"/></svg>
3341        <span>Cite</span>
3342      </button>
3343    
3344  
3345
3346  
3347    
3348    
3349    
3350    
3351    
3352    
3353      
3354      
3355    
3356
3357    
3358    
3359    
3360      
3361        
3362      
3363    
3364    
3365
3366    
3367      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.1016/j.learninstruc.2025.102177" target="_blank" rel="noopener">
3368        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
3369        DOI
3370      </a>
3371    
3372  
3373
3374
3375  </div>
3376  
3377
3378  
3379  
3380</div>
3381
3382  
3383    
3384
3385
3386<div class="pub-list-item view-citation" style="margin-bottom: 1rem">
3387  <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
3388
3389  
3390  
3391
3392  <span class="article-metadata li-cite-author">
3393    
3394
3395
3396  <span >
3397      Maria-Martine Oppmann</span>, <span >
3398      Maik Beege</span>, <span class="font-bold">
3399      Frank Reinhold</span>
3400  </span>
3401  (2025).
3402  <a href="/publication/2025-03-15_oppmann_jli/" class="underline">Stimulating individual learning of the concept of fraction equivalence: How students utilize adaptive features in digital learning environments mediates their effect</a>.
3403  <em>Learning and Instruction</em>.
3404  
3405
3406  
3407  <div class="flex flex-wrap space-x-3">
3408    
3409
3410
3411
3412
3413
3414
3415
3416
3417 
3418
3419
3420  
3421    
3422    
3423    
3424    
3425    
3426    
3427      
3428        
3429      
3430    
3431
3432    
3433    
3434    
3435    
3436      
3437    
3438
3439    
3440      <a class="hb-attachment-link hb-attachment-link-small" href="/"  >
3441        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
3442        Link
3443      </a>
3444    
3445  
3446
3447  
3448    
3449    
3450    
3451    
3452    
3453    
3454      
3455        
3456      
3457    
3458
3459    
3460    
3461    
3462      
3463        
3464      
3465    
3466    
3467
3468    
3469      <button class="hb-attachment-link hb-attachment-link-small js-cite-clipboard cursor-pointer" type="button" data-filename="/publication/2025-03-15_oppmann_jli/cite.bib">
3470        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.7
34705"/></svg>
3471        <span>Cite</span>
3472      </button>
3473    
3474  
3475
3476  
3477    
3478    
3479    
3480    
3481    
3482    
3483      
3484      
3485    
3486
3487    
3488    
3489    
3490      
3491        
3492      
3493    
3494    
3495
3496    
3497      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.3389/feduc.2025.1631375" target="_blank" rel="noopener">
3498        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
3499        DOI
3500      </a>
3501    
3502  
3503
3504
3505  </div>
3506  
3507
3508  
3509  
3510</div>
3511
3512  
3513    
3514
3515
3516<div class="pub-list-item view-citation" style="margin-bottom: 1rem">
3517  <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
3518
3519  
3520  
3521
3522  <span class="article-metadata li-cite-author">
3523    
3524
3525
3526  <span >
3527      Martin Abt</span>, <span >
3528      Timo Leuders</span>, <span >
3529      Katharina Loibl</span>, <span class="font-bold">
3530      Frank Reinhold</span>
3531  </span>
3532  (2024).
3533  <a href="/publication/2024-10-22_abt_mtl/" class="underline">Developing initial notions of variability when learning about box plots</a>.
3534  <em>Mathematical Thinking and Learning</em>.
3535  
3536
3537  
3538  <div class="flex flex-wrap space-x-3">
3539    
3540
3541
3542
3543
3544
3545
3546
3547
3548 
3549
3550
3551  
3552    
3553    
3554    
3555    
3556    
3557    
3558      
3559      
3560    
3561
3562    
3563    
3564    
3565      
3566        
3567      
3568    
3569    
3570
3571    
3572      <a class="hb-attachment-link hb-attachment-link-small" href="https://www.tandfonline.com/doi/epdf/10.1080/10986065.2024.2421412?needAccess=true" target="_blank" rel="noopener">
3573        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9"/></svg>
3574        PDF
3575      </a>
3576    
3577  
3578
3579  
3580    
3581    
3582    
3583    
3584    
3585    
3586      
3587        
3588      
3589    
3590
3591    
3592    
3593    
3594      
3595        
3596      
3597    
3598    
3599
3600    
3601      <button class="hb-attachment-link hb-attachment-link-small js-cite-clipboard cursor-pointer" type="button" data-filename="/publication/2024-10-22_abt_mtl/cite.bib">
3602        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75"/></svg>
3603        <span>Cite</span>
3604      </button>
3605    
3606  
3607
3608  
3609    
3610    
3611    
3612    
3613    
3614    
3615      
3616      
3617    
3618
3619    
3620    
3621    
3622      
3623        
3624      
3625    
3626    
3627
3628    
3629      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.1080/10986065.2024.2421412" target="_blank" rel="noopener">
3630        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
3631        DOI
3632      </a>
3633    
3634  
3635
3636
3637  </div>
3638  
3639
3640  
3641  
3642</div>
3643
3644  
3645    
3646
3647
3648<div class="pub-list-item view-citation" style="margin-bottom: 1rem">
3649  <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
3650
3651  
3652  
3653
3654  <span class="article-metadata li-cite-author">
3655    
3656
3657
3658  <span class="font-bold">
3659      Frank Reinhold</span>, <span >
3660      Timo Leuders</span>, <span >
3661      Katharina Loibl</span>, <span >
3662      Matthias Nückles</span>, <span >
3663      Maik Beege</span>, <span >
3664      Jan M. Boelmann</span>
3665  </span>
3666  (2024).
3667  <a href="/publication/2024-01-26_reinhold_edpr/" class="underline">Learning Mechanisms Explaining Learning With Digital Tools in Educational Settings: a Cognitive Process Framework</a>.
3668  <em>Educational Psychology Review</em>.
3669  
3670
3671  
3672  <div class="flex flex-wrap space-x-3">
3673    
3674
3675
3676
3677
3678
3679
3680
3681
3682 
3683
3684
3685  
3686    
3687    
3688    
3689    
3690    
3691    
3692      
3693      
3694    
3695
3696    
3697    
3698    
3699      
3700        
3701      
3702    
3703    
3704
3705    
3706      <a class="hb-attachment-link hb-attachment-link-small" href="https://link.springer.com/content/pdf/10.1007/s10648-024-09845-6.pdf" target="_blank" rel="noopener">
3707        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9"/></svg>
3708        PDF
3709      </a>
3710    
3711  
3712
3713  
3714    
3715    
3716    
3717    
3718    
3719    
3720      
3721      
3722    
3723
3724    
3725    
3726    
3727      
3728        
3729      
3730    
3731    
3732
3733    
3734      <a class="hb-attachment-link hb-attachment-link-small" href="https://media.springernature.com/full/springer-static/image/art%3A10.1007%2Fs10648-024-09845-6/MediaObjects/10648_2024_9845_Fig1_HTML.png?as=webp" target="_blank" rel="noopener">
3735        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m2.25 15.75l5.159-5.159a2.25 2.25 0 0 1 3.182 0l5.159 5.159m-1.5-1.5l1.409-1.409a2.25 2.25 0 0 1 3.182 0l2.909 2.909m-18 3.75h16.5a1.5 1.5 0 0 0 1.5-1.5V6a1.5 1.5 0 0 0-1.5-1.5H3.75A1.5 1.5 0 0 0 2.25 6v12a1.5 1.5 0 0 0 1.5 1.5m10.5-11.25h.008v.008h-.008zm.375 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0"/></svg>
3736        Poster
3737      </a>
3738    
3739  
3740
3741  
3742    
3743    
3744    
3745    
3746    
3747    
3748      
3749        
3750      
3751    
3752
3753    
3754    
3755    
3756      
3757        
3758      
3759    
3760    
3761
3762    
3763      <button class="hb-attachment-link hb-attachment-link-small js-cite-clipboard cursor-pointer" type="button" data-filename="/publication/2024-01-26_reinhold_edpr/cite.bib">
3764        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75"/></svg>
3765        <span>Cite</span>
3766      </button>
3767    
3768  
3769
3770  
3771    
3772    
3773    
3774    
3775    
3776    
3777      
3778      
3779    
3780
3781    
3782    
3783    
3784      
3785        
3786      
3787    
3788    
3789
3790    
3791      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.1007/s10648-024-09845-6" target="_blank" rel="noopener">
3792        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
3793        DOI
3794      </a>
3795    
3796  
3797
3798
3799  </div>
3800  
3801
3802  
3803  
3804</div>
3805
3806  
3807    
3808
3809
3810<div class="pub-list-item view-citation" style="margin-bottom: 1rem">
3811  <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
3812
3813  
3814  
3815
3816  <span class="article-metadata li-cite-author">
3817    
3818
3819
3820  <span class="font-bold">
3821      Frank Reinhold</span>, <span >
3822      Timo Leuders</span>, <span >
3823      Katharina Loibl</span>
3824  </span>
3825  (2023).
3826  <a href="/publication/2023-09-06_reinhold_yceps/" class="underline">Disentangling magnitude processing, natural number biases, and benchmarking in fraction comparison tasks: A person-centered Bayesian classification approach</a>.
3827  <em>Contemporary Educational Psychology</em>.
3828  
3829
3830  
3831  <div class="flex flex-wrap space-x-3">
3832    
3833
3834
3835
3836
3837
3838
3839
3840
3841 
3842
3843
3844  
3845    
3846    
3847    
3848    
3849    
3850    
3851      
3852      
3853    
3854
3855    
3856    
3857    
3858      
3859        
3860      
3861    
3862    
3863
3864    
3865      <a class="hb-attachment-link hb-attachment-link-small" href="https://www.sciencedirect.com/science/article/pii/S0361476X23000784/pdfft?md5=908ce91d8256b81973176ca173cb19fe&amp;pid=1-s2.0-S0361476X23000784-main.pdf" target="_blank" rel="noopener">
3866        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9"/></svg>
3867        PDF
3868      </a>
3869    
3870  
3871
3872  
3873    
3874    
3875    
3876    
3877    
3878    
3879      
3880      
3881    
3882
3883    
3884    
3885    
3886      
3887        
3888      
3889    
3890    
3891
3892    
3893      <a class="hb-attachment-link hb-attachment-link-small" href="https://ars.els-cdn.com/content/image/1-s2.0-S0361476X23000784-ga1_lrg.jpg" target="_blank" rel="noopener">
3894        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m2.25 15.75l5.159-5.159a2.25 2.25 0 0 1 3.182 0l5.159 5.159m-1.5-1.5l1.409-1.409a2.25 2.25 0 0 1 3.182 0l2.909 2.909m-18 3.75h16.5a1.5 1.5 0 0 0 1.5-1.5V6a1.5 1.5 0 0 0-1.5-1.5H3.75A1.5 1.5 0 0 0 2.25 6v12a1.5 1.5 0 0 0 1.5 1.5m10.5-11.25h.008v.008h-.008zm.375 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0"/></svg>
3895        Poster
3896      </a>
3897    
3898  
3899
3900  
3901    
3902    
3903    
3904    
3905    
3906    
3907      
3908        
3909      
3910    
3911
3912    
3913    
3914    
3915      
3916        
3917      
3918    
3919    
3920
3921    
3922      <button class="hb-attachment-link hb-attachment-link-small js-cite-clipboard cursor-pointer" type="button" data-filename="/publication/2023-09-06_reinhold_yceps/cite.bib">
3923        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75"/></svg>
3924        <span>Cite</span>
3925      </button>
3926    
3927  
3928
3929  
3930    
3931    
3932    
3933    
3934    
3935    
3936      
3937      
3938    
3939
3940    
3941    
3942    
3943      
3944        
3945      
3946    
3947    
3948
3949    
3950      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.1016/j.cedpsych.2023.102224" target="_blank" rel="noopener">
3951        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
3952        DOI
3953      </a>
3954    
3955  
3956
3957
3958  </div>
3959  
3960
3961  
3962  
3963</div>
3964
3965  
3966    
3967
3968
3969<div class="pub-list-item view-citation" style="margin-bottom: 1rem">
3970  <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
3971
3972  
3973  
3974
3975  <span class="article-metadata li-cite-author">
3976    
3977
3978
3979  <span class="font-bold">
3980      Frank Reinhold</span>, <span >
3981      Christian Schons</span>, <span >
3982      Sarah Scheuerer</span>, <span >
3983      Peter Gritzmann</span>, <span >
3984      Jürgen Richter-Gebert</span>, <span >
3985      Kristina Reiss</span>
3986  </span>
3987  (2021).
3988  <a href="/publication/2021-02-06_reinhold_chb/" class="underline">Students&#39; coping with the self-regulatory demand of crisis-driven digitalization in university mathematics instruction: do motivational and emotional orientations make a difference?</a>.
3989  <em>Computers in Human Behavior</em>.
3990  
3991
3992  
3993  <div class="flex flex-wrap space-x-3">
3994    
3995
3996
3997
3998
3999
4000
4001
4002
4003 
4004
4005
4006  
4007    
4008    
4009    
4010    
4011    
4012    
4013      
4014      
4015    
4016
4017    
4018    
4019    
4020      
4021        
4022      
4023    
4024    
4025
4026    
4027      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.1016/j.chb.2021.106732" target="_blank" rel="noopener">
4028        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M20.25 6.375c0 2.278-3.694 4.125-8.25 4.125S3.75 8.653 3.75 6.375m16.5 0c0-2.278-3.694-4.125-8.25-4.125S3.75 4.097 3.75 6.375m16.5 0v11.25c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125V6.375m16.5 0v3.75m-16.5-3.75v3.75m16.5 0v3.75C20.25 16.153 16.556 18 12 18s-8.25-1.847-8.25-4.125v-3.75m16.5 0c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125"/></svg>
4029        Dataset
4030      </a>
4031    
4032  
4033
4034  
4035    
4036    
4037    
4038    
4039    
4040    
4041      
4042        
4043      
4044    
4045
4046    
4047    
4048    
4049      
4050        
4051      
4052    
4053    
4054
4055    
4056      <button class="hb-attachment-link hb-attachment-link-small js-cite-clipboard cursor-pointer" type="button" data-filename="/publication/2021-02-06_reinhold_chb/cite.bib">
4057        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75"/></svg>
4058        <span>Cite</span>
4059      </button>
4060    
4061  
4062
4063  
4064    
4065    
4066    
4067    
4068    
4069    
4070      
4071      
4072    
4073
4074    
4075    
4076    
4077      
4078        
4079      
4080    
4081    
4082
4083    
4084      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.1016/j.chb.2021.106732" target="_blank" rel="noopener">
4085        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
4086        DOI
4087      </a>
4088    
4089  
4090
4091
4092  </div>
4093  
4094
4095  
4096  
4097</div>
4098
4099  
4100    
4101
4102
4103<div class="pub-list-item view-citation" style="margin-bottom: 1rem">
4104  <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
4105
4106  
4107  
4108
4109  <span class="article-metadata li-cite-author">
4110    
4111
4112
4113  <span class="font-bold">
4114      Frank Reinhold</span>, <span >
4115      Anselm Strohmaier</span>, <span >
4116      Stefan Hoch</span>, <span >
4117      Kristina Reiss</span>, <span >
4118      Ricardo Böheim</span>, <span >
4119      Tina Seidel</span>
4120  </span>
4121  (2020).
4122  <a href="/publication/2020-10-01_reinhold_leaind/" class="underline">Process data from electronic textbooks indicate students&#39; classroom engagement</a>.
4123  <em>Learning and Individual Differences</em>.
4124  
4125
4126  
4127  <div class="flex flex-wrap space-x-3">
4128    
4129
4130
4131
4132
4133
4134
4135
4136
4137 
4138
4139
4140  
4141    
4142    
4143    
4144    
4145    
4146    
4147      
4148        
4149      
4150    
4151
4152    
4153    
4154    
4155      
4156        
4157      
4158    
4159    
4160
4161    
4162      <button class="hb-attachment-link hb-attachment-link-small js-cite-clipboard cursor-pointer" type="button" data-filename="/publication/2020-10-01_reinhold_leaind/cite.bib">
4163        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
4163<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75"/></svg>
4164        <span>Cite</span>
4165      </button>
4166    
4167  
4168
4169  
4170    
4171    
4172    
4173    
4174    
4175    
4176      
4177      
4178    
4179
4180    
4181    
4182    
4183      
4184        
4185      
4186    
4187    
4188
4189    
4190      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.1016/j.lindif.2020.101934" target="_blank" rel="noopener">
4191        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
4192        DOI
4193      </a>
4194    
4195  
4196
4197
4198  </div>
4199  
4200
4201  
4202  
4203</div>
4204
4205  
4206    
4207
4208
4209<div class="pub-list-item view-citation" style="margin-bottom: 1rem">
4210  <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
4211
4212  
4213  
4214
4215  <span class="article-metadata li-cite-author">
4216    
4217
4218
4219  <span >
4220      Delia Hillmayr</span>, <span >
4221      Lisa Ziernwald</span>, <span class="font-bold">
4222      Frank Reinhold</span>, <span >
4223      Sarah Hofer</span>, <span >
4224      Kristina Reiss</span>
4225  </span>
4226  (2020).
4227  <a href="/publication/2020-04-15_hillmayr_cae/" class="underline">The potential of digital tools to enhance mathematics and science learning in secondary schools: A context-specific meta-analysis</a>.
4228  <em>Computers &amp; Education</em>.
4229  
4230
4231  
4232  <div class="flex flex-wrap space-x-3">
4233    
4234
4235
4236
4237
4238
4239
4240
4241
4242 
4243
4244
4245  
4246    
4247    
4248    
4249    
4250    
4251    
4252      
4253      
4254    
4255
4256    
4257    
4258    
4259      
4260        
4261      
4262    
4263    
4264
4265    
4266      <a class="hb-attachment-link hb-attachment-link-small" href="https://www.tum.de/en/studinews/issue-032015/show/article/34370/" target="_blank" rel="noopener">
4267        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9"/></svg>
4268        Source Document
4269      </a>
4270    
4271  
4272
4273  
4274    
4275    
4276    
4277    
4278    
4279    
4280      
4281      
4282    
4283
4284    
4285    
4286    
4287      
4288        
4289      
4290    
4291    
4292
4293    
4294      <a class="hb-attachment-link hb-attachment-link-small" href="https://www.sciencedirect.com/science/article/pii/S0360131520300968/pdfft?isDTMRedir=true&amp;download=true" target="_blank" rel="noopener">
4295        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9"/></svg>
4296        PDF
4297      </a>
4298    
4299  
4300
4301  
4302    
4303    
4304    
4305    
4306    
4307    
4308      
4309        
4310      
4311    
4312
4313    
4314    
4315    
4316      
4317        
4318      
4319    
4320    
4321
4322    
4323      <button class="hb-attachment-link hb-attachment-link-small js-cite-clipboard cursor-pointer" type="button" data-filename="/publication/2020-04-15_hillmayr_cae/cite.bib">
4324        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
4324<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75"/></svg>
4325        <span>Cite</span>
4326      </button>
4327    
4328  
4329
4330  
4331    
4332    
4333    
4334    
4335    
4336    
4337      
4338      
4339    
4340
4341    
4342    
4343    
4344      
4345        
4346      
4347    
4348    
4349
4350    
4351      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.1016/j.compedu.2020.103897" target="_blank" rel="noopener">
4352        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
4353        DOI
4354      </a>
4355    
4356  
4357
4358
4359  </div>
4360  
4361
4362  
4363  
4364</div>
4365
4366  
4367    
4368
4369
4370<div class="pub-list-item view-citation" style="margin-bottom: 1rem">
4371  <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
4372
4373  
4374  
4375
4376  <span class="article-metadata li-cite-author">
4377    
4378
4379
4380  <span class="font-bold">
4381      Frank Reinhold</span>, <span >
4382      Stefan Hoch</span>, <span >
4383      Bernhard Werner</span>, <span >
4384      Jürgen Richter-Gebert</span>, <span >
4385      Kristina Reiss</span>
4386  </span>
4387  (2020).
4388  <a href="/publication/2020-02-01_reinhold_jli/" class="underline">Learning Fractions with and without Educational Technology: What Matters for High-Achieving and Low-Achieving Students?</a>.
4389  <em>Learning and Instruction</em>.
4390  
4391
4392  
4393  <div class="flex flex-wrap space-x-3">
4394    
4395
4396
4397
4398
4399
4400
4401
4402
4403 
4404
4405
4406  
4407    
4408    
4409    
4410    
4411    
4412    
4413      
4414      
4415    
4416
4417    
4418    
4419    
4420      
4421        
4422      
4423    
4424    
4425
4426    
4427      <a class="hb-attachment-link hb-attachment-link-small" href="https://www.sciencedirect.com/science/article/pii/S0959475219300684/pdfft?isDTMRedir=true&amp;download=true" target="_blank" rel="noopener">
4428        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9"/></svg>
4429        PDF
4430      </a>
4431    
4432  
4433
4434  
4435    
4436    
4437    
4438    
4439    
4440    
4441      
4442        
4443      
4444    
4445
4446    
4447    
4448    
4449      
4450        
4451      
4452    
4453    
4454
4455    
4456      <button class="hb-attachment-link hb-attachment-link-small js-cite-clipboard cursor-pointer" type="button" data-filename="/publication/2020-02-01_reinhold_jli/cite.bib">
4457        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75"/></svg>
4458        <span>Cite</span>
4459      </button>
4460    
4461  
4462
4463  
4464    
4465    
4466    
4467    
4468    
4469    
4470      
4471      
4472    
4473
4474    
4475    
4476    
4477      
4478        
4479      
4480    
4481    
4482
4483    
4484      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.1016/j.learninstruc.2019.101264" target="_blank" rel="noopener">
4485        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
4485<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
4486        DOI
4487      </a>
4488    
4489  
4490
4491
4492  </div>
4493  
4494
4495  
4496  
4497</div>
4498
4499  
4500    
4501
4502
4503<div class="pub-list-item view-citation" style="margin-bottom: 1rem">
4504  <i class="far fa-file-alt pub-icon" aria-hidden="true"></i>
4505
4506  
4507  
4508
4509  <span class="article-metadata li-cite-author">
4510    
4511
4512
4513  <span >
4514      Stefan Hoch</span>, <span class="font-bold">
4515      Frank Reinhold</span>, <span >
4516      Bernhard Werner</span>, <span >
4517      Jürgen Richter-Gebert</span>, <span >
4518      Kristina Reiss</span>
4519  </span>
4520  (2018).
4521  <a href="/publication/2018-07-01_hoch_zdm/" class="underline">Design and research potential of interactive textbooks: the case of fractions</a>.
4522  <em>ZDM Mathematics Education</em>.
4523  
4524
4525  
4526  <div class="flex flex-wrap space-x-3">
4527    
4528
4529
4530
4531
4532
4533
4534
4535
4536 
4537
4538
4539  
4540    
4541    
4542    
4543    
4544    
4545    
4546      
4547      
4548    
4549
4550    
4551    
4552    
4553      
4554        
4555      
4556    
4557    
4558
4559    
4560      <a class="hb-attachment-link hb-attachment-link-small" href="https://link.springer.com/content/pdf/10.1007/s11858-018-0971-z.pdf" target="_blank" rel="noopener">
4561        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9"/></svg>
4562        PDF
4563      </a>
4564    
4565  
4566
4567  
4568    
4569    
4570    
4571    
4572    
4573    
4574      
4575        
4576      
4577    
4578
4579    
4580    
4581    
4582      
4583        
4584      
4585    
4586    
4587
4588    
4589      <button class="hb-attachment-link hb-attachment-link-small js-cite-clipboard cursor-pointer" type="button" data-filename="/publication/2018-07-01_hoch_zdm/cite.bib">
4590        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75"/></svg>
4591        <span>Cite</span>
4592      </button>
4593    
4594  
4595
4596  
4597    
4598    
4599    
4600    
4601    
4602    
4603      
4604      
4605    
4606
4607    
4608    
4609    
4610      
4611        
4612      
4613    
4614    
4615
4616    
4617      <a class="hb-attachment-link hb-attachment-link-small" href="https://doi.org/10.1007/s11858-018-0971-z" target="_blank" rel="noopener">
4618        <svg style="height: 1em" class='inline-block' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"/></svg>
4619        DOI
4620      </a>
4621    
4622  
4623
4624
4625  </div>
4626  
4627
4628  
4629  
4630</div>
4631
4632  
4633
4634  </div>
4635</div>
4636
4637
4638</div>
4639
4640
4641
4642
4643
4644  </section>
4645
4646  
4647
4648  
4649  
4650    
4651
4652
4653
4654
4655
4656
4657
4658
4659  
4660
4661  
4662
4663  
4664
4665  
4666
4667  
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706  
4707  
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718  
4719  
4720  
4721
4722  
4723  
4724
4725  
4726
4727  
4728
4729  
4730  <section id="projects-cta" class="relative  hbb-section blox-cta-button-list  " style="padding: 0 0 0 0;">
4731    
4732    
4733    <div class="home-section-bg " >
4734      
4735    </div>
4736    
4737
4738
4739
4740
4741
4742
4743
4744<div class="flex items-center flex-col mx-auto w-full justify-center mt-4 px-8 pb-5">
4745
4746
4747  <a href="/experience/" target="_blank" rel="noopener noreferrer" class="flex items-center p-1 
4747w-full rounded-md hover:scale-105 transition-all bg-gray-100 mb-3 max-w-3xl">
4748  <div class="flex text-center w-full">
4749    <div class="w-10 h-10 text-gray-700">
4750      
4751        <svg height="40" width="40" class="rounded-sm" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M4.26 10.147a60.436 60.436 0 0 0-.491 6.347A48.627 48.627 0 0 1 12 20.904a48.627 48.627 0 0 1 8.232-4.41a60.46 60.46 0 0 0-.491-6.347m-15.482 0a50.57 50.57 0 0 0-2.658-.813A59.905 59.905 0 0 1 12 3.493a59.902 59.902 0 0 1 10.399 5.84a51.39 51.39 0 0 0-2.658.814m-15.482 0A50.697 50.697 0 0 1 12 13.489a50.702 50.702 0 0 1 7.74-3.342M6.75 15a.75.75 0 1 0 0-1.5a.75.75 0 0 0 0 1.5m0 0v-3.675A55.378 55.378 0 0 1 12 8.443m-7.007 11.55A5.981 5.981 0 0 0 6.75 15.75v-1.5"/></svg>
4752      
4753    </div>
4754    <div class="flex justify-center items-center font-semibold w-full text-gray-700 -ml-10">
4755      Experience
4756    </div>
4757    </div>
4758  </a>
4759
4760  <a href="/publication/" target="_blank" rel="noopener noreferrer" class="flex items-center p-1 w-full rounded-md hover:scale-105 transition-all bg-gray-100 mb-3 max-w-3xl">
4761  <div class="flex text-center w-full">
4762    <div class="w-10 h-10 text-gray-700">
4763      
4764        <svg height="40" width="40" class="rounded-sm" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m16.862 4.487l1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10"/></svg>
4765      
4766    </div>
4767    <div class="flex justify-center items-center font-semibold w-full text-gray-700 -ml-10">
4768      Publications
4769    </div>
4770    </div>
4771  </a>
4772
4773  <a href="/projects/" target="_blank" rel="noopener noreferrer" class="flex items-center p-1 w-full rounded-md hover:scale-105 transition-all bg-gray-100 mb-3 max-w-3xl">
4774  <div class="flex text-center w-full">
4775    <div class="w-10 h-10 text-gray-700">
4776      
4777        <svg height="40" width="40" class="rounded-sm" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M4.098 19.902a3.75 3.75 0 0 0 5.304 0l6.401-6.402M6.75 21A3.75 3.75 0 0 1 3 17.25V4.125C3 3.504 3.504 3 4.125 3h5.25c.621 0 1.125.504 1.125 1.125v4.072M6.75 21a3.75 3.75 0 0 0 3.75-3.75V8.197M6.75 21h13.125c.621 0 1.125-.504 1.125-1.125v-5.25c0-.621-.504-1.125-1.125-1.125h-4.072M10.5 8.197l2.88-2.88a1.124 1.124 0 0 1 1.59 0l3.712 3.713c.44.44.44 1.152 0 1.59l-2.879 2.88M6.75 17.25h.008v.008H6.75z"/></svg>
4778      
4779    </div>
4780    <div class="flex justify-center items-center font-semibold w-full text-gray-700 -ml-10">
4781      Projects
4782    </div>
4783    </div>
4784  </a>
4785
4786  <a href="/events/" target="_blank" rel="noopener noreferrer" class="flex items-center p-1 w-full rounded-md hover:scale-105 transition-all bg-gray-100 mb-3 max-w-3xl">
4787  <div class="flex text-center w-full">
4788    <div class="w-10 h-10 text-gray-700">
4789      
4790        <svg height="40" width="40" class="rounded-sm" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M3.75 3v11.25A2.25 2.25 0 0 0 6 16.5h2.25M3.75 3h-1.5m1.5 0h16.5m0 0h1.5m-1.5 0v11.25A2.25 2.25 0 0 1 18 16.5h-2.25m-7.5 0h7.5m-7.5 0l-1 3m8.5-3l1 3m0 0l.5 1.5m-.5-1.5h-9.5m0 0l-.5 1.5M9 11.25v1.5M12 9v3.75m3-6v6"/></svg>
4791      
4792    </div>
4793    <div class="flex justify-center items-center font-semibold w-full text-gray-700 -ml-10">
4794      Talks
4795    </div>
4796    </div>
4797  </a>
4798
4799  <a href="/posts/" target="_blank" rel="noopener noreferrer" class="flex items-center p-1 w-full rounded-md hover:scale-105 transition-all bg-gray-100 mb-3 max-w-3xl">
4800  <div class="flex text-center w-full">
4801    <div class="w-10 h-10 text-gray-700">
4802      
4803        <svg height="40" width="40" class="rounded-sm" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
4803<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M12 7.5h1.5m-1.5 3h1.5m-7.5 3h7.5m-7.5 3h7.5m3-9h3.375c.621 0 1.125.504 1.125 1.125V18a2.25 2.25 0 0 1-2.25 2.25M16.5 7.5V18a2.25 2.25 0 0 0 2.25 2.25M16.5 7.5V4.875c0-.621-.504-1.125-1.125-1.125H4.125C3.504 3.75 3 4.254 3 4.875V18a2.25 2.25 0 0 0 2.25 2.25h13.5M6 7.5h3v3H6z"/></svg>
4804      
4805    </div>
4806    <div class="flex justify-center items-center font-semibold w-full text-gray-700 -ml-10">
4807      Blog
4808    </div>
4809    </div>
4810  </a>
4811
4812
4813</div>
4814
4815  </section>
4816
4817  
4818
4819
4820    </div>
4821    <div class="page-footer">
4822      <footer class="container mx-auto flex flex-col justify-items-center text-sm leading-6 mt-24 mb-4 text-slate-700 dark:text-slate-200">
4823
4824  
4825
4826
4827
4828
4829
4830
4831
4832
4833  
4834
4835
4836
4837
4838
4839  
4840  
4841  
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857  
4858  <p class="powered-by text-center">
4859    
4860    
4861    © 2026 Frank Reinhold. This work is licensed under {license}
4862  </p>
4863  
4864
4865
4866
4867
4868
4869  
4870  
4871  
4872    
4873    
4874      
4875      
4876        
4877        
4878      
4879    
4880
4881    <p class="powered-by text-center text-sm opacity-80 py-1">
4882      
4883      
4884      
4885      
4886      
4887        
4888      
4889      
4890      
4891      
4892      
4893      Made with <a class="underline hover:opacity-100" href="https://hugoblox.com?utm_source=site_footer&utm_medium=referral&utm_campaign=poweredby_oss&utm_content=brand_academic-cv" target="_blank" rel="noopener" data-hbx="poweredby_brand">Hugo Blox</a>.
4894      <a class="inline-flex items-center rounded px-2 py-0.5 border border-current ms-2 text-xs hover:opacity-100"
4895         href="https://hugoblox.com/templates/academic-cv/start?utm_source=site_footer&amp;utm_medium=referral&amp;utm_campaign=poweredby_oss&amp;utm_content=cta_academic-cv" target="_blank" rel="noopener" data-hbx="poweredby_cta">Create yours →</a>
4896    </p>  
4897
4898</footer>
4899
4900    </div>
4901
4902    
4903    
4904
4905
4906<div id="hb-notification-container" class="fixed top-20 right-4 z-[9999] pointer-events-none" aria-live="polite" aria-atomic="true"></div>
4907
4908
4909    
4910    
4911
4912
4913
4914
4915
4916
4917
4918
4919  
4920
4921
4922
4923
4924
4925    
4926    
4927    
4928  </body>
4929</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.