@import url("variables.css");
@import url("forms.css");

html {
  font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;
}

/* Center whole page slightly */
body {
  margin: 0;

	background-color: var(--background-color);
	color: var(--text-color);
}

main {
	padding: 1% 6%;
	margin-right: auto;
	min-height: 100vh;
}

hr {
  border: 0;
  height: 0;

  border-top: 1px solid var(--line-color);
}

h1, h2 {
  color: var(--vn-primary-color);
}

a, a:visited {
  color: var(--vn-secondary-color);
}
a:hover {
  color: var(--vn-secondary-lighter-color);
}
/*a[href^="mailto:"]:hover:after {
  content: " (" attr(email) ")";
}*/

.notice {
  padding: 0.66em 1em;

  background-color: var(--ok-background-color);
  color: var(--ok-color);
  border-bottom: 1px solid var(--ok-lighter-color);
}
.notice a {
  color: var(--ok-darker-color);
}
.notice a:hover {
  color: var(--ok-lighter-color);
}

nav, footer {
  display: flex;
  flex-direction: row;
  gap: 0.33em 2ch;
  flex-basis: min-content;
  flex-wrap: wrap;
  align-items: center;
  padding: 1em;
  color: var(--text-dark-color);
}
nav {
  font-size: large;
  background-color: var(--vn-primary-color);
}
nav > .logo > img:hover {
  opacity: 0.8;
}
.current {
  font-weight: bold;
}
nav a, nav a:visited {
  color: inherit;
  text-decoration: none;
}
nav a:hover {
  text-decoration: underline;
}
.spacer-follows {
  margin-right: auto;
}
.user-controls {
  font-size: smaller;
}
footer .version {
  margin-left: auto;
}

footer {
  font-size: smaller;
  background-color: var(--footer-background-color);
}

/* Details */

/* Make details more accesible */
details > summary {
  cursor: pointer;
  display: list-item;
}
details > summary:hover {
  text-decoration: underline;
}

/* "Show more" details */
details.show-more > summary {
  color: var(--vn-secondary-color);
  text-decoration: underline;
}
details.show-more > summary:hover {
  color: var(--vn-secondary-lighter-color);
  text-decoration: underline;
}

/* Details but for headers */
details.header > summary {
  color: var(--vn-primary-color);
  text-decoration: none;
}
details.header > summary:hover {
  text-decoration: underline;
}

/* Adjustments for very small screens */

@media (max-width: 480px) {
  nav {
    font-size: medium;
    gap: 1.33ch;
  }
  .welcome {
    display: none;
    visibility: hidden;
  }
}
