/* Nuboc IP LLC. All rights reserved. */

/* =============================================================================
   03. Reset & Base
   ============================================================================= */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-size: 13px;
}

/* Text size (Settings › Personalization) — scales every rem-based size
   through the root, leaving the shell's px geometry and scroll math alone.
   13px × 1.14 and × 1.28. */
html[data-text-scale="1.14"] {
  font-size: 14.8px;
}

html[data-text-scale="1.28"] {
  font-size: 16.6px;
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: var(--nax-font-sans);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--nax-ink);
  background-color: var(--nax-canvas);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
}

/* Definition lists carry no default margin; components own their spacing. */
dl,
dd {
  margin: 0;
}

::selection {
  background: rgba(var(--nax-accent-rgb), .15);
  color: var(--nax-ink);
}

a {
  color: var(--nax-accent);
  text-decoration: none;
  transition: color var(--nax-t);
}

a:hover {
  color: var(--nax-accent-dark);
  text-decoration: underline;
}

img,
svg {
  display: block;
  max-width: 100%;
}

button {
  cursor: pointer;
  font-family: inherit;
}

::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: var(--nax-ink-20);
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--nax-ink-45);
}

/* The HTML `hidden` attribute must win over component display rules
   (.nax-btn is inline-flex, which otherwise overrides the UA
   [hidden]{display:none}). Toggling `hidden` is the app's standard way to
   show/hide grid actions, disclosures, etc. */
[hidden] {
  display: none !important;
}
