/* Aus dem Design-System 'Transkript' übernommen und auf BEM-freie Klassennamen umgestellt
   (tk-btn--primary -> btn-primary, tk-recrow__title -> recrow-title). KI-generiert (Claude). */
html{-webkit-text-size-adjust:100%;}
body{margin:0;font-family:var(--font-body);font-size:var(--text-body-size);line-height:var(--text-body-line);font-weight:var(--weight-regular);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{color:var(--text-strong);margin:0;text-wrap:balance;}
p{margin:0;text-wrap:pretty;}
a{color:var(--text-link);text-decoration:none;font-weight:var(--weight-semibold);}
a:hover{color:var(--text-link-hover);text-decoration:underline;text-underline-offset:3px;}
:focus-visible{outline:none;box-shadow:var(--focus-ring);}
::selection{background:var(--teal-100);color:var(--teal-900);}
.display{font-size:var(--text-display-size);line-height:var(--text-display-line);letter-spacing:var(--text-display-track);font-weight:var(--weight-bold);color:var(--text-strong);}
.h1{font-size:var(--text-h1-size);line-height:var(--text-h1-line);letter-spacing:var(--text-h1-track);font-weight:var(--weight-bold);color:var(--text-strong);}
.h2{font-size:var(--text-h2-size);line-height:var(--text-h2-line);letter-spacing:var(--text-h2-track);font-weight:var(--weight-bold);color:var(--text-strong);}
.h3{font-size:var(--text-h3-size);line-height:var(--text-h3-line);letter-spacing:var(--text-h3-track);font-weight:var(--weight-semibold);color:var(--text-strong);}
.lg{font-size:var(--text-lg-size);line-height:var(--text-lg-line);}
.body{font-size:var(--text-body-size);line-height:var(--text-body-line);}
.sm{font-size:var(--text-sm-size);line-height:var(--text-sm-line);}
.xs{font-size:var(--text-xs-size);line-height:var(--text-xs-line);}
.overline{font-size:var(--text-overline-size);line-height:var(--text-overline-line);letter-spacing:var(--text-overline-track);text-transform:uppercase;font-weight:var(--weight-bold);color:var(--text-muted);}
.mono{font-family:var(--font-mono);font-size:var(--text-mono-size);line-height:var(--text-mono-line);font-feature-settings:"tnum";}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes pulse{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.9);opacity:0}}
@keyframes wave-drift{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes bar{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
@keyframes toast-in{from{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}
@keyframes fade-in{from{opacity:0}to{opacity:1}}
@keyframes sheet-in{from{transform:translateY(16px) scale(.98);opacity:0}to{transform:none;opacity:1}}
