/* reset layout style */
* {
  margin: 0;
  padding: 0;
  font-size: inherit;
  box-sizing: border-box;
  outline: none;
}
html { font-size: 14px; }
body { font-size: 1rem; }
img { user-select: none; }
.header {
  display: flex;
  align-items: center;
  padding: 0px 16px;
  width: 100vw;
  height: 60px;
}
.header .logo {
  width: 120px;
  user-select: none;
}
.header nav,
.header nav ul,
.header nav ul li {
  height: 100%;
}
.header nav ul {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  height: 100%;
}
.header nav ul li a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 8px 12px;
  height: 100%;
}
.footer {
  display: flex;
  align-content: center;
  padding: 8px 16px;
  width: 100vw;
  height: 40px;
}
main {
  max-height: calc(100vh - 103px);
  min-height: calc(100vh - 103px);
  height: calc(100vh - 103px);
  overflow-y: auto;
  overflow-x: hidden;
}

ul {
  list-style: none;
}
a, a:hover, a:visited {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

.container {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 36px;
}