@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/static/fonts/Inter-300.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/static/fonts/Inter-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/static/fonts/Inter-600.woff2') format('woff2');
}

@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/static/fonts/JetBrainsMono-400.woff2') format('woff2');
}

body {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  line-height: 1.5;
}

h1, .h1, h2, .h2, .page-title {
  font-weight: 300;
}

.font-monospace,
code,
pre,
.font-mono,
.datagrid-content time,
.table .text-nowrap time {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
}

.card,
.card-sm {
  border: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.04);
}

[data-bs-theme="dark"] .card,
[data-bs-theme="dark"] .card-sm {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35), 0 1px 2px rgba(0, 0, 0, 0.2);
}

.page-body .row,
.page-body .card,
.page-body .datagrid-item,
.subheader {
  margin-bottom: 8px;
}

#cost-sparkline {
  min-width: 160px;
  min-height: 48px;
}