/* BLOG POST SUMMARY VIEW CSS */

#blog-post-summary-container {
  display: none;
}

#blog-post-summary-grid {
  margin-top: 1em;
  padding: 1em;
  grid-row: 2 / -1;
  grid-column: 1 / -1;
  border-top: 1px solid rgb(80 255 255);

  display: grid;
  /*grid-template-columns: 1fr;*/
  grid-template-columns: repeat(auto-fill, minmax(14em, 1fr));
  align-content: start;
  gap: 1em;
}

@media only screen and (min-width: 1024px) {
  #blog-post-summary-grid {
    font-size: 1.5em;
    grid-template-columns: repeat(auto-fill, minmax(16em, 1fr));
  }

  .blog-post-summary-author img {
    width: 100px !important;
    height: 100px !important;
  }

  .blog-post-summary {
    max-height: 400px !important;
  }
}

@media only screen and (min-width: 1920px) {
#blog-post-summary-grid {
    font-size: 2.0em;
    grid-template-columns: repeat(auto-fill, minmax(18em, 1fr));
  }

  .blog-post-summary-author img {
    width: 128px !important;
    height: 128px !important;
  }

  .blog-post-summary {
    max-height: 500px !important;
  }
}

.blog-post-summary {
  padding: 0.4em;
  min-height: 223px;
  max-height: 320px;
  /*border: 1px solid #a978ff;*/
  border: 1px solid #308888;
  /*border: 1px solid #0A66C2;*/
  border-radius: 10px;
  /*height: 100%;*/
  box-sizing: border-box;
  /*flex: 0 auto;*/
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-content: start;
  /*justify-content: space-around;*/
  grid-template-rows: 0.2fr auto auto auto 0.4fr auto auto 1fr;
  column-gap: 0.4em;
  grid-row-gap: 0.2em;

  /*background: rgba(0, 0, 0, 0.18);*/
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(42, 144, 144, 0.5)) border-box;
}

.blog-post-summary:hover {
  /*background: rgba(255, 255, 255, 0.25);*/
  background: linear-gradient(to bottom, rgba(80, 255, 255, 0.0), rgba(42, 144, 144, 0.9)) border-box;
  /*border: 2px solid #a978ff;*/
  border: 1px solid #50FFFF;

  cursor: pointer;
}

[class|=blog-post] hr {
  grid-column: 1 / -1;
  margin: 0;
  width: calc(100% - 12px);
  justify-self: center;
  /*border: solid #a978ff;*/
  border: none;
  border-bottom: 1px dotted white;
  /*border-bottom: 1px dotted #308888;*/
  opacity: 0.2;
}

@supports (-moz-appearance: none) {
  [class|=blog-post] hr {
    opacity: 0.4;
  }
}

.blog-post-summary-title {
  /*margin: 0 0 1em 0;*/
  margin-bottom: 0.2em;
  padding-bottom: 0.1em;
  width: 97%;
  /*background: rgba(255, 255, 255, 0.2);*/
  border-radius: 0.2em;
  text-align: center;
  font-size: 1.2em;
  justify-self: center;
  color: #a978ff;
  font-weight: bold;
  grid-column: 1 / -1;
}

.blog-post-summary-timestamp:before {
  content: "Posted on ";
}

.blog-post-summary-timestamp {
  font-size: 80%;
  justify-self: center;
  grid-column: 1 / -1;
  line-height: 1.4em;
}

.blog-post-summary-stack, .blog-post-summary-level {
  padding: 0.2em 0.9em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  /*border-left: 1px dotted #308888;*/
  /*border-left: 1px dotted rgba(48, 136, 136, 0.5);*/
  /*border-right: 1px dotted rgba(48, 136, 136, 0.5);*/
  border-radius: 0.4em;
  font-size: 85%;
  line-height: 1em;
  /*white-space: nowrap;*/
}

.blog-post-summary:hover .blog-post-summary-title {
  /*color: #50FFFF;*/
  color: #a978ff;
}

.blog-post-summary-stack {
  grid-column: 1;
  margin-left: 0.3em;
  margin-right: 0.1em;
  background-color: rgba(10, 102, 194, 0.3);
}

.blog-post-summary-level {
  margin-left: 0.1em;
  margin-right: 0.3em;
}

/*#0A66C2*/

.level-basic { background-color: rgba(0, 240, 0, 0.3); }
.level-intermediate { background-color: rgba(240, 240, 0, 0.3); }
.level-advanced { background-color: rgba(240, 60, 20, 0.4); }

.blog-post-summary:hover .blog-post-summary-stack, .blog-post-stack { background-color: rgba(12, 77, 185, 0.7); }
.blog-post-summary:hover .level-basic, .blog-post-level.level-basic { background-color: rgba(0, 240, 0, 0.4); }
.blog-post-summary:hover .level-intermediate, .blog-post-level.level-intermediate { background-color: rgba(240, 240, 0, 0.4); }
.blog-post-summary:hover .level-advanced, .blog-post-level.level-advanced { background-color: rgba(240, 60, 20, 0.6); }

.blog-post-summary-author {
  margin-top: 0.2em;
  grid-column: 1 / -1;
  display: flex;
  position: relative;
}

.blog-post-summary-heartbeat {
  width: 100%; 
  height: 100%; 
  position: absolute; 
  display: flex; 
  flex-direction: column; 
  justify-content: center;
}

.blog-post-summary-author svg {
  stroke-dasharray: 0, 1;
  transform: translateZ(0);
}


@keyframes heartbeat {
  0% {
    stroke-dasharray: 200, 250;
    stroke-dashoffset: 130;
  }
  100% {
    stroke-dasharray: 200, 250;
    stroke-dashoffset: 580;
  }
}

.blog-post-summary-author path {
  fill: none;
  stroke: #a978ff;
  stroke-width: 1.6px;
  animation-fill-mode: forwards;
}

.blog-post-summary:hover .blog-post-summary-author path {
  animation: heartbeat 1.8s infinite linear;
  display: inline;
}

.blog-post-summary-author img {
  /*flex-basis: content;*/
  z-index: 12;
  width: 80px;
  height: 80px;
  /*border: 2px solid blue;*/
  box-shadow: 0 0 1px 2px rgba(169, 120, 255, 0.8);
  
  /*margin-left: auto;*/
  border-radius: 50%;
  margin: 0.4em auto;
  opacity: 0.7;
}

.blog-post-summary-text {
  grid-column: 1 / -1;
  /*grid-row: 5;*/
}

.blog-post-summary:hover * {
  /*margin-left: -1px;*/
  /*font-size: 0.7em;*/
}

.blog-post-summary:hover .blog-post-summary-title, 
.blog-post-summary:hover .blog-post-summary-title span {
  /*margin-top: -1px;*/
}
/*
.blog-post-summary:hover .blog-post-summary-title, 
.blog-post-summary:hover .blog-post-summary-title span, 
*/
.blog-post-summary:hover .blog-post-summary-author img {
  /*margin-left: 0;*/
  opacity: 0.9;
  box-shadow: 0 0 1px 2px rgba(169, 120, 255, 1);
}