body, html {
	width: 100vw;
	height: 100vh;
	margin: 0;
	padding: 0;
}
@media only screen and (max-width: 600px) {
  body, html {
    overflow-x: hidden;
  }
}

.flow_wrapper {
  position: relative;
  display: table;
	margin: 0 auto;
}

.dash_nav_wrapper {
  position: fixed;
  display: grid; 
  grid-template-columns: .2fr 8fr 6fr; 
  grid-template-rows: 1fr; 
  gap: 0px 0px; 
  grid-template-areas: ". . .";
	justify-content: center;
  width: 100vw;
  top: 0px;
  left: 0px;
}

.wrapper {
  position: relative;
  display: grid; 
  grid-template-columns: 1fr 2fr 1fr; 
  grid-template-rows: 1fr; 
  gap: 0px 0px; 
  grid-template-areas: 
    ". . ."
    ". . ."
    ". . ."; 
	justify-content: center;  
  width: 100vw;
}
@media only screen and (max-width: 600px) {
  .wrapper {
    padding: 0;
  }
  #wrapper-content #mid-center { width: 100vw; }
}

.wrapper.dash {
  grid-template-columns: 3fr 4fr 3fr;
}

#wrapper-content.wrapper.dash {
  top: 3em;
}

#inner-content {
  padding: .6em;
}

#wrapper-mid {
	grid-template-rows: 1fr 1fr;
	margin-top: 1em;
}

#wrapper-bot.wrapper.dash {
  position: fixed;
  bottom: 0px;
}

.home_links {
	padding: 1.2em 1.8em 1.2em 1.8em;
	font-weight: bold;
	text-align: center;
	border-radius: 10px;
}

.home_links:hover {
	background: #DFDFFF;
}

.home_links a { text-decoration: none; }

.home_link-titles {
	font-size: 1.2em;
}

.center_content {
	display: inline-block;
	margin: 0 auto;
}

@media only screen and (max-width: 710px) {
	.center_content {
		display: table;
	}
}

.center_grid_content {
	display: grid;
	justify-content: center;
  grid-template-columns: 1fr;
}

.dash_nav_wrapper .page_info {
  display: inline-block;
  height: 100%;
  margin-left: 1em;
  padding-top: .5em;
}

.page_title {
	display: table;
	margin: 0 auto;
	padding-top: .4em;
	padding-bottom: .2em;
	font-size: 1.6em;
	font-weight: bold;
}

.dash_nav_wrapper .page_title {
  display: inline-block;
  font-size: 1.2em;
  padding-top: .2em;
}

.page_description {
	padding-bottom: .2em;
	font-size: 1.3em;
	font-style: italic;
	text-align: center;
}

.dash_nav_wrapper .page_description {
  display: inline-block;
  font-size: 1em;
}
@media only screen and (max-width: 600px) {
  .page_description {
    display: block;
    width: 90%;
    margin: .5em auto;
  }
}

.dash_nav_wrapper .page_controls {
  display: inline-block;
  justify-self: end;
  height: 100%;
  margin-right: .4em;
  padding-top: .5em;
}

.published, .revised {
	text-align: center;
	padding-bottom: .2em;
}

.logo_link {
	display: table;
	margin: 0 auto;
}

.dash_nav_wrapper .logo_link {
  display: block;
  margin: inherit;
}

.logo {
	width: 200px;
	height: auto;
	padding: 1em;
}

.dash_nav_wrapper .logo {
  height: 2em;
  width: auto;
  padding: .4em;
}

.footer_content {
	padding: 1.5em;
}

.content_link_grid_bar {
	display: grid;
	margin: 0 auto;
	margin-bottom: 1em;
	padding: .5em;
	text-align: center;
	text-decoration: none;
	border: 2px solid #454585;
	border-radius: 5px;
	font-size: 1.2em;
	font-weight: bold;
}
@media only screen and (max-width: 600px) {
  .content_link_grid_bar {
    width: 90%;
  }
}

.content_link_grid_bar:hover {
	background: #DFDFFF;
}

.content_link_grid_bar img {
	display: block;
	width: 70%;
	height: auto;
	margin: 0 auto;
}

.follow_request_source {
  display: inline-block;
  margin-right: .5em;
}

.follow_allow_deny_form {
  display: inline-block;
  margin: 0 .4em 0 .2em;
}

.dashboard_content {
  position: relative;
  width: 100%;
  word-break: break-all;
}

.written_post {
	font-family: sans-serif;
	font-size: 1.1em;
}

@media only screen and (max-width: 600px) {
  .written_post h1, .written_post h2, .written_post h3, .written_post h4, .written_post p {
    display: block;
    width: 90%;
    margin: .5em auto;
  }
}

.codeblock {
  display: block;
  width: 80%;
  max-width: 100vw;
  margin: 0 auto;
  margin-bottom: .2em;
  font-size: .95em;
  font-weight: bold;
  white-space: pre-wrap;
}

.substeps {
  margin-left: 1em;
}

.figure {
	font-size: .9em;
	font-style: italic;
	text-align: center;
}

.figure img {
	display: block;
	max-width: 80%;
	height: auto;
	margin: 0 auto;
}