@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@400;600&display=swap');

#tf-root *,
#tf-root *::before,
#tf-root *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

#tf-root button:focus { outline: none; }
#tf-root button:focus-visible { outline: 2px solid var(--tf-primary); outline-offset: 2px; }

#tf-root {
  font-family: 'IBM Plex Sans', ui-sans-serif, system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: var(--tf-text);
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
}

#tf-root h1,
#tf-root h2,
#tf-root h3,
#tf-root h4 {
  font-family: 'IBM Plex Sans', ui-sans-serif, system-ui, sans-serif;
  line-height: 1.2;
}

#tf-root input,
#tf-root select,
#tf-root textarea,
#tf-root button {
  font-family: inherit;
  font-size: inherit;
}

#tf-root a {
  color: var(--tf-primary);
  text-decoration: none;
}
