:root
{
  --responsivewidth: 900px;
}

main
{
  max-width: var(--responsivewidth);
  min-height: 250px;
  margin: auto;
  display: flow-root;
  box-sizing: border-box;
}

main p,ul
{
  margin: 5px 0px;
}

body {
  color: #222;
  font-family: sans-serif;
  line-height: 1.6;
  margin: auto;
  padding: 10px;
  background-color:azure;
}

header {
  margin: auto;
  max-width: var(--responsivewidth);
  box-sizing: border-box;
}

header a
{
  color: #222;
  text-decoration: none;
}

footer {
  border-top: 1px solid #222;
  margin-top: 1rem;
}

#site-title
{
  font-size: 20px;
  padding: 10px 20px 0;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  margin-bottom: 0;
  background-color: skyblue;
  font-weight:bold;
}

#site-subtitle
{
  font-size:16px;
  color:darkslategrey;
  border-bottom-left-radius:10px;
  border-bottom-right-radius:10px;
  padding:0 20px 5px;
  background-color:skyblue;
  text-align: right;
}

#GlobalNav
{
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
  padding: 0;
  margin: 5px 0px;
}

#GlobalNav li
{
  padding: 0;
  flex: auto;
  border:solid 1px azure;
  background-color: lightgreen;
  border-radius: 5px;
}

#GlobalNav a
{
  padding: 5px 0;
  display: block;
  width: 100%;
}

.active
{
  background-color:gold !important;
}

.articlelist
{
  margin: 10px!important;
  text-align: center;
  display:flex;
  color: #222;
  text-decoration: none;
  border-bottom: solid 1px gray;
}

.articlelist:hover
{
  background-color:skyblue;
}

.listtxt
{
  flex: 2;
  text-align: left;
}

.listtxt h2
{
  margin: 0;
}

.listimg
{
  flex: 1;
  display: flex;
  padding-left: 10px;
}

.fleximg
{
  object-fit: contain;
  display: block;
  margin: auto;
  max-height: 200px;
}

h1
{
  font-size: 1.5em;
  margin: 0;
}

h2
{
  font-size: 1.25em;
}

.emphasis
{
  text-align: center;
  font-weight: bold;
  line-height: 150%;
}

iframe
{
  max-width: 100%;
  clear: both;
}

main time
{
  text-align: right;
  display: block;
}

main img
{
  max-width: 100%;
  height: auto;
}
main a
{
  word-wrap:break-word;
}
.default-table
{
  margin: auto;
  border-collapse: collapse;
  max-width: 98%;
}

.default-table th,td
{
  border: solid 1px;
  padding:5px;
}

figcaption
{
  text-align: center;
}

.pagination.pagination-default
{
  list-style: none;
  display: flex;
  text-align: center;
  justify-content: center;
}

.page-link
{
  display: block;
  text-decoration: none;
  padding: 0;
  width: 100%;
  height: 100%;
  color: #222;
}

.pagination.pagination-default li
{
  width: 40px;
  height: 50px;
  border: solid 1px gray;
}

.pagination.pagination-default li:hover
{
  background-color:skyblue;
}

pre{
  font-size: 1rem;
  overflow-x: scroll;
}

mjx-container{
  overflow-x: scroll;
}
mjx-container::-webkit-scrollbar {
  display:none;
 }

/* responsivewidth + 150px*2 */
@media (width >= calc(900px + 160px*2)) {
  aside
  {
    position: absolute;
    padding: 10px;
    width: calc((100vw - var(--responsivewidth))/2 - 30px);
    max-width: 150px;
    top: 130px;
    right: 0%;
  }
  #Profilelink 
  {
      display: block;
      color: #222;
      text-decoration: none;
      text-align: center;
      border: solid 2px gray;
  }
  #Profilelink img
  {
    max-width:90%;
    height: auto;
    border-radius:100px;
    vertical-align:bottom;
  }
  #Profilelink:hover
  {
      background-color:skyblue;
  }
  .ContentFig
  {
    margin: 0px 20px 20px 0px;
    float: left;
  }
  main p+p
  {
    clear: both;
  }
  main p
  {
    overflow: hidden;
    line-height: 2em;
  }
  main ul, ol
  {
    line-height: 2em;
    overflow: hidden;
  }
  main figure img
  {
    max-width: 500px;
  }
  main h2,h3,h4,div
  {
    clear: both;
  }
}
@media (width < calc(900px + 160px*2)) {
  #Profilelink 
  {
    display: none;
  }
  .ContentFig
  {
    text-align: center;
  }
  main figure
  {
    margin: 10px;
  }
}