@font-face {
    font-family: 'saxMono';
    src: local('../fonts/saxMono'),
        url('../fonts/saxMono.woff2') format('woff2'),
        url('../fonts/saxMono.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
:root {
    --main-color:#f1ff51;
}
  
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
/*  padding: 0;*/
  margin: 0;
}

html,
body {
  padding:0;
  margin:0;
  height: 100%;
  font-family: "saxmono", "Courier New", monospace;
  font-size: 12pt;
  background-color: black;
  /*  line-height: 1.5em;*/
}

figure,
blockquote {
  width: 100%;
  margin: 0;
}

header{
  font-size: 22px;
  border-bottom: solid black 3px;
  background-color: var(--main-color);
  display: block;
  margin-top: 0;
  width:100%;
  text-align: center;
  padding: 1em 0;
}
h1 {
  font-size: 22px;

  background-color: var(--main-color);
  display: flex;
  justify-content: center;
  padding: 1em 0;
}

div{
/*  background-color: black;*/
}
a {
  color:dodgerblue;
  border-color:yellow;
  text-decoration: none;
  font-weight: 600;
  border-bottom:solid yellow 1px;
}
iframe {
  width: 100%;
  max-height: 260px;
}

p {
  margin-top: 0.5em;
  justify-content: center;
}

img {
  width:100%;
  padding: 0 0.1em;
  background-color: var(--main-color);
/*  border: solid var(--main-color) 2px;*/
}

video{
  max-width:100%;
  border: none;
}
.footer {
  margin: 0 auto;
  padding: 1em;
  font-size: 6pt;
  text-justify: center;
  justify-content: center;
}

#timestamp {
  font-weight: 600;
}

.tag, .timestamp{
  font-size:8pt;
}
.tag:before {
  content: "#";
}

.collapse-b{
  background-color: var(--main-color);
  width: 5em;
  height: 3em;
  border: none;
  border-left: solid rgb(5,5,5) 1px;
  color: rgb(5,5,5);
  text-align: center;
  display: inline-block;
  font-size: 16px;
  font-weight: 400;
  cursor: pointer;
  position: fixed;
  z-index: 999;
  margin: 4px 2px;
}

#top-right {
  right: 0;
  top: 0;
}

#bottom-right {
  right: 0;
  bottom: 0;
}

.flex-container {
  margin: 1em auto;
  padding-left:0.8em;
  padding-right:0.8em;
  min-height: 120vh;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items:flex-start;
  column-gap: calc(2% + 12px);
  row-gap: 2.5em;
  width: 100%;
  flex-wrap: wrap;
}

.flex-item {
  flex-grow: 1;
  flex: 0 0 33.3%;
  max-width: 17em;
  min-width:400px;
  min-height: 14em;
  overflow: hidden;
  background: pink;
  opacity: 0; /* Start fully transparent */
  transition: opacity 0.5s ease-in; /* Transition effect */
  border-right: solid black 1px; 
}
.flex-item.loaded {
    opacity: 1; /* Fully opaque when the class 'loaded' is added */
}

/*
.flex-iter-body{
    padding:12px;
}
*/

.flex-item p{
  padding:12px;
}
.flex-item h1 {
  margin: 0 auto;
/*  padding: 6px;*/
  word-wrap: break-word;
  padding: 12px 60px 12px 60px;
}

.flex-item img {
  margin: 0 auto;
  background-color: var(--main-color);
  padding: 0 60px 12px 60px;
}


.caption{
  margin-top:-4em;
  display: block;
  color:white;
  font-size:0.8em;
  text-align: right;
  padding: 0 60px 20px 60px;
}

.four-inline{
  padding:0;
  margin:0 auto;
}

a.readmore{
  width:calc(100% + 12px);
  margin-right:12px;
  padding-right:12px;
  padding:1em;
  padding-top:2em;
  word-wrap: break-word;
  background: rgba(0,0,0,155);
}

.largeV {
  flex:0 1 82%;
  padding:0 25%;
  z-index: 999;
  right:0;
  background: black;
  color:white;
  flex-grow: 0;
  max-width:100%;
  height: auto;
  flex-direction: row-reverse;
}

.largeV.flex-item h1{
  color:black;
}

.largeV a{
  color:white;
}


div[id^="rmjs"] {
}

div[id^="rmjs"] p{
  padding-left:0.4em;
  padding-right:0.1em;
}

.readmore, .readless {
  width: 100%;
  position: relative;
  bottom: 0;
  right: 0;
  display: block;
  text-align: right;
  font-size: 0.8em;
  font-weight: bold;
  color: var(--main-color);
  background-color: rgba(0, 0, 0, 150);
  padding: 0.3em;
}

#player{
  height: auto;
}

/*READ MORE by Jed Foster*/
.read-more-container {
  display: flex;
  flex-direction: column;
  color: #111;
  gap: 1em;
}

.container {
  padding: 2rem;
  background-color: #fff;
  border-radius: 2px;
  line-height: 1.4rem;
  box-shadow: 0 0 1rem rgba(0, 0, 0, .1);
}

.read-more-btn {
  color: #0984e3;
}

.read-more-text {
  display: none;
}

.read-more-text--show {
  display: inline;
}

/* Add some styles for the sentinel element */
body #sentinel {
    width: 100%;
    min-height: 50px; /* Invisible, but triggers when in view */
/*    margin-top: 50px;*/
}

#spinner{
  background:yellow;
}

@media (max-width: 1200px) {
  .flex-item {
    flex:0 2 32%;
    max-width: none;
    min-width:40%;
    padding: 0em;
  }
  .flex-container{
    max-width: 100%;
    column-gap: 3em;
  }
}

@media (max-width: 821px) {
  .flex-item {
    flex:0 1 100%;
  }
  div[id^="rmjs"]{
    height: auto;
  }
}

@media (max-width: 480px) {
  .flex-item {
  }
}

@media (max-height: 480px) {
  .flex-item {
    flex:0 2 32%;
  }
}

@mixin flexbox() {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

@mixin flex($values) {
  -webkit-box-flex: $values;
  -moz-box-flex: $values;
  -webkit-flex: $values;
  -ms-flex: $values;
  flex: $values;
}

@mixin order($val) {
  -webkit-box-ordinal-group: $val;
  -moz-box-ordinal-group: $val;
  -ms-flex-order: $val;
  -webkit-order: $val;
  order: $val;
}

.wrapper {
  @include flexbox();
}

.item {
  @include flex(1 200px);
  @include order(2);
}