/* Shared reset rules for site, admin, diagnosis, and client UI. Reports remain isolated. */

[hidden] {
  display: none;
}
*,
*::before,
*::after {box-sizing: border-box;}

html {
  scrollbar-gutter: stable;
  overflow-x: hidden;
  overflow-y: scroll;
  scroll-behavior: smooth;
}

html,body,td,h1,h2,h3,h4,h5,div,p,li,ul,ol,dd,dt,section,input,textarea,select,button {
  margin: 0;
  padding: 0;
  border: 0;
  font-family: var(--font-family-base);
  font-size: var(--font-16);
  line-height: var(--leading-relaxed);
  word-break: keep-all; /*break-all*/
  list-style: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}

a {
  border: 0;
  outline: none;
  color: inherit;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  transition: color .16s var(--motion-ease), background-color .16s var(--motion-ease), border-color .16s var(--motion-ease), box-shadow .16s var(--motion-ease), opacity .16s var(--motion-ease);
}
a:hover, a:focus, button:focus {text-decoration:none;outline:none;}
button {
  cursor: pointer;
  background: none;
  transition: color .16s var(--motion-ease), background-color .16s var(--motion-ease), border-color .16s var(--motion-ease), box-shadow .16s var(--motion-ease), opacity .16s var(--motion-ease);
}

input[type="submit"] {cursor:pointer}
input[type=text]:focus,input[type=password]:focus, textarea:focus,select:focus, input:focus {-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;outline:none;}

:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--color-blue-600) 45%, transparent);
  outline-offset: 4px;
}

html.is-scroll-locked,
body.is-scroll-locked {
  overflow: hidden;
  overscroll-behavior: none;
}

body.is-scroll-locked {
  position: fixed;
  inset-inline: 0;
  width: 100%;
}

