* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: var(--bg-0); }
body {
  min-width: 1180px;
  font-family: var(--font-sans);
  color: var(--text-0);
  font-size: var(--type-md);
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
button, input, select, textarea { font: inherit; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
svg { display: block; width: 1em; height: 1em; }
::selection { background: rgba(var(--accent-rgb), .3); color: var(--white); }
::-webkit-scrollbar { width: 12px; height: 12px; }
::-webkit-scrollbar-track { background: #08121c; }
::-webkit-scrollbar-thumb { background: #24394f; border: 3px solid #08121c; border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: #31506f; }

button, [role="button"], .nav-item, .tab, .demo-login { cursor: pointer; }
button:focus-visible, input:focus-visible, [tabindex]:focus-visible {
  outline: 2px solid rgba(var(--accent-rgb), .86);
  outline-offset: 2px;
}

.hidden { display: none !important; }
.muted { color: var(--text-2); }
.mono { font-family: var(--font-mono); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
