@import "/node_modules/bulma/bulma.sass";
$fa-font-path: "/node_modules/@fortawesome/fontawesome-free/webfonts";
@import "/node_modules/@fortawesome/fontawesome-free/scss/fontawesome.scss";
@import "/node_modules/@fortawesome/fontawesome-free/scss/regular.scss";
@import "/node_modules/@fortawesome/fontawesome-free/scss/solid.scss";
$bg-color: yellow;
$border-color: red;

$volume-color: #fdecd1;
$issue-color: #f2f1f9;
$size-8: 0.9rem;
$size-9: 0.7rem;
$flexSize: 4em;
$boxSpacing: 1em;
$colorText: #404646;

.is-size-8 {
  font-size: $size-8;
}

.is-size-9 {
  font-size: $size-9;
}

.small-tag {
  align-items: center;
  background-color: #fff6de;
  border-radius: 4px;
  color: #4a4a4a;
  display: inline-flex;
  font-size: $size-9;
  height: 1.5em;
  justify-content: center;
  line-height: 1.5;
  padding-left: 0.55em;
  padding-right: 0.55em;
  white-space: nowrap;
}

// global style overrides

pre {
  border-radius: 0.5rem;
}

.container {
  margin-top: 2em;
}
.app {
  font-family: helvetica, arial, sans-serif;
  padding: 2em;
  border: 5px solid $border-color;

  p {
    background-color: $bg-color;
  }
}
// Navbar
.navbar {
  border-bottom: 1px solid #f2f1f9;
  .download-progress-meter {
    margin-left: -300px;
    min-width: 500px;
  }
  .airdcpp-status {
    min-width: 300px;
    line-height: 1.7rem;
  }
  body {
    background: #454a59;
  }

  body {
    background: #454a59;
  }

  .pulsating-circle {
    position: relative;
    left: -120%;
    top: 20%;
    transform: translateX(-50%) translateY(-50%);
    width: 15px;
    height: 15px;

    &:before {
      content: "";
      position: relative;
      display: block;
      width: 300%;
      height: 300%;
      box-sizing: border-box;
      margin-left: -100%;
      margin-top: -100%;
      border-radius: 45px;
      background-color: #01a4e9;
      animation: pulse-ring 1.25s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
    }

    &:after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      display: block;
      width: 100%;
      height: 100%;
      background-color: green;
      border-radius: 15px;
      box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
      animation: pulse-dot 1.25s cubic-bezier(0.455, 0.03, 0.515, 0.955) -0.4s infinite;
    }
  }

  @keyframes pulse-ring {
    0% {
      transform: scale(0.33);
    }
    80%,
    100% {
      opacity: 0;
    }
  }

  @keyframes pulse-dot {
    0% {
      transform: scale(0.8);
    }
    50% {
      transform: scale(1);
    }
    100% {
      transform: scale(0.8);
    }
  }
}

.navbar-item.is-mega {
  position: static;

  .is-mega-menu-title {
    margin-bottom: 0;
    padding: 0.375rem 1rem;
  }
}

// Dashboard

// slick slider overrides
.slick-slider {
  margin-left: -10px;
  .slick-list {
    padding: 0 0px 15px 10px;
  }
}
.recent-comics-container {
  display: -webkit-box; /* Not needed if autoprefixing */
  display: -ms-flexbox; /* Not needed if autoprefixing */
  display: flex;
  margin-left: -22px; /* gutter size offset */
  width: auto;

  .recent-comics-column {
    padding-left: 22px; /* gutter size */
    background-clip: padding-box;
    & > div {
      /* change div to reference your elements you put in <Masonry> */
      margin-bottom: 20px;
    }
  }
}
.volumes-container {
  .stack {
    display: inline-block;
    border-radius: 0.5rem;
    box-shadow:
    /* The top layer shadow */ 0 -1px 1px rgba(0, 0, 0, 0.15),
      /* The second layer */ 0 -10px 0 -5px #eee,
      /* The second layer shadow */ 0 -10px 1px -4px rgba(0, 0, 0, 0.15),
      /* The third layer */ 0 -20px 0 -10px #eee,
      /* The third layer shadow */ 0 -20px 1px -9px rgba(0, 0, 0, 0.15);
    img {
      height: auto;
      border-top-left-radius: 0.5rem;
      border-top-right-radius: 0.5rem;
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
    }
    .stack-title {
      margin-bottom: 0.4rem;
    }
    .content {
      margin: -5px 0 0 0;
      padding: 0.5rem 1rem;
      border-bottom-left-radius: 0.25rem;
      box-shadow: 1px 8px 23px 7px rgba(0, 0, 0, 0.12);
      border-bottom-right-radius: 0.25rem;
    }
  }

  .volumes-grid {
    display: -webkit-box; /* Not needed if autoprefixing */
    display: -ms-flexbox; /* Not needed if autoprefixing */
    display: flex;
    margin-left: -30px; /* gutter size offset */
    width: auto;
  }
  .volumes-grid-column {
    padding-left: 22px; /* gutter size */
    background-clip: padding-box;
    & > div {
      /* change div to reference your elements you put in <Masonry> */
      margin-bottom: 20px;
    }
  }
}

.min {
  overflow: visible;
  margin: auto;
  .tag__custom {
    height: auto !important;
    padding: 0.3rem;
    white-space: unset !important;
    width: 100%;
    background-color: #effaf5;
    color: #257953;
  }
  .tags {
    display: inline;
    margin-right: 5px;
    margin-left: 5px;
    &:first-child {
      margin-left: 0;
    }
  }
  pre {
    border-radius: 0.4em;
    margin: 10px 0 10px 0;
    white-space: pre-wrap;
  }
}

.generic-card {
  display: inline-block;
  background-color: #fff;
  border-top-left-radius: 0.4rem;
  border-top-right-radius: 0.4rem;
  border-bottom-left-radius: 0.4rem;
  border-bottom-right-radius: 0.4rem;
  box-shadow: 1px 8px 23px 7px rgba(0, 0, 0, 0.12);

  .green-border {
    border: 1px dotted #168b64;
    border-radius: 0.4rem;
  }

  .truncate {
    width: 100px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .partial-rounded-card-image {
    figure {
      display: flex;
      img {
        border-top-left-radius: 0.4rem;
        border-top-right-radius: 0.4rem;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
      }
    }
  }
  .rounded-card-image {
    figure {
      display: flex;
      img {
        border-radius: 0.4rem;
      }
    }
  }
  .card-content {
    .card-title {
      margin-bottom: 0.4rem;
    }
    .custom-icon,
    i {
      margin: 4px 4px 4px 0;
    }
    padding: 0.5rem 1rem;
  }
}
.card-container {
  // display: grid;
  // grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  // column-gap: 0.5em;
  // row-gap: 1.2em;

  .card {
    margin: 0 0 15px 0;

    .partial-rounded-card-image {
      img {
        border-top-left-radius: 0.4rem;
        border-top-right-radius: 0.4rem;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
      }
    }
    .rounded-card-image {
      border-radius: 0.4rem;
    }

    .is-horizontal {
      // margin: $boxSpacing / 2;
      border-radius: 1.5em;
      height: $flexSize;
      max-width: $flexSize * 3;
      flex: 1 1 auto;
      display: flex;
      .card-image {
        // leaving this here... for posterity
        img.image {
          border-top-left-radius: 8px;
          border-bottom-left-radius: 8px;
          border-top-right-radius: 0;
          border-bottom-right-radius: 0;
          height: 100%;
          max-width: $flexSize * 1.3;
          object-fit: cover;
          flex: 1 1 auto;
        }
        img.cropped-image {
          width: 70px;
          border-top-left-radius: 8px;
          border-bottom-left-radius: 8px;
          border-top-right-radius: 0;
          border-bottom-right-radius: 0;
          height: 64px;
          object-fit: cover;
          object-position: 100% 0;
          //  flex: 1 1 auto;
        }
      }
    }
    .card-content {
      align-self: top;
      flex: 1;
      padding-left: 0.7em;
      padding-top: 0.4em;
      padding-bottom: 0em;
    }
  }
}

// raw file details
.raw-file-details {
  padding: 1rem;
  background-color: beige;
  border-radius: 0.5rem;
}

.comic-viewer {
  border: 1px solid red;
}

// comicvine metadata
.comicvine-metadata {
  background-color: #f2f1f9;
  padding: 0.8rem;
  border-radius: 0.5rem;
}

.issue-metadata {
  background-color: #fbffee;
  padding: 0.8em;
  border-radius: 0.5rem;
  .name {
    font-size: 0.95rem;
    color: #4a4f50;
  }
}

.comicInfo-metadata {
  background-color: #f7ebdd;
  padding: 0.8rem;
  border-radius: 0.5rem;
}

// Comic Detail
.comic-detail {
  dl {
    dd {
      margin: 0;
    }
  }
  .button {
    .airdcpp-text {
      margin: 0 0 0 0.2rem;
    }
  }
}

// AirDC++ search results
.dupe-search-result {
  background: lavender;
}

// Search
.search {
  .main-search-bar {
    border: 0;
    border-bottom: 1px solid #999;
    border-radius: 0;
    outline: 0;
    background: transparent;
    box-shadow: none;
  }
}
// Library
.header-area {
  width: 100%;
  padding: 25px 0 15px 0;
  position: sticky;
  z-index:9999;
  background: #fffffc;
  top: 50px;
}

.library {
  .table-controls {
    background: #fffffc;
    justify-content: space-between;
    position: sticky;
    top: 126px;
    padding-bottom: 10px;
  }
  .pagination {
    margin: 0;
    background: #fffffc;
  }

  table {
    border-collapse: separate;
    width: 100%;
    thead {
      position: sticky;
      top: 250px;
      z-index: 1;
      background: #fffffc;
      min-height: 130px;
    }
    tr {
      td {
        border: 0 none;
        .card {
          margin: 8px 0 7px 0;
          .name {
            margin: 0 0 4px 0;
          }
        }
      }
    }
    tbody {
      padding: 10px 0 0 0;
    }
  }
}

// Comic Detail
.control-palette {
  background-color: #fff6de;
  display: inline-block;
  i {
    display: flex;
    justify-content: center;
    align-items: center;
    // padding: 1.5rem 2rem;
  }
}

// airdcpp downloads tab
.tabs {
  .download-icon-labels {
    .downloads-count {
      margin: 0 1em -1px 0.4em;
      border: 1px solid #ccc;
    }
  }
  .download-tab-name {
  }
}

// drawer content padding override
.slide-pane__content {
  padding: 24px 12px;
}

.slide-pane__header {
  margin-top: 3.5rem;
}

.comic-vine-match-drawer {
  // comic detail drawer

  .search-criteria-card {
    width: 100%;
    .card-content {
      padding: 10px;
      .ant-divider-horizontal {
        margin: 12px 0;
      }
    }
  }

  .field {
    margin: 5px 0 0 0;
  }
}

// Volume detail
.volume-details {
  .is-volume-related {
    $tag-background-color: $volume-color;
  }
  .issues-container {
    display: -webkit-box; /* Not needed if autoprefixing */
    display: -ms-flexbox; /* Not needed if autoprefixing */
    display: flex;
    margin-left: -10px; /* gutter size offset */
    width: auto;
    .issues-column {
      max-width: 102px;
      margin: 10px;
      background-clip: padding-box;
      & > div {
        /* change div to reference your elements you put in <Masonry> */
        margin-bottom: 20px;
      }
    }
  }
}
// Potential issue matches in library slideout panel
.potential-matches-container {
  .potential-issue-match {
    border-radius: 0.3rem;
    background-color: beige;
    padding: 10px;
    pre {
      padding: 5px;
      background-color: transparent;
      border-radius: 0.3rem;
      white-space: pre-wrap; /* Since CSS 2.1 */
      white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
      white-space: -pre-wrap; /* Opera 4-6 */
      white-space: -o-pre-wrap; /* Opera 7 */
      word-wrap: break-word;
    }
    .generic-card {
      max-width: 90px;
    }
  }
}

// comicvine search results
.search-results-container {
  margin: 15px 0 0 0;
  overflow: hidden;

  .search-result {
    margin: 0 0 10px 0;
    padding: 1em;
    border-radius: 10px;
    background: #f2f1f9;
    .cover-image {
      border-radius: 5px;
    }
    .search-result-details {
      .score {
        float: right;
      }
    }
    .volume-information {
      margin-top: -2.5em;
      width: 80%;
      background: #fdecd1;
      border-radius: 10px;
    }
    .vertical-line {
      position: relative;
      top: -25px;
      left: 1.5rem;
      border: 2px dotted #ccc;
      width: 20px;
      min-height: 35px;

      border-color: transparent transparent #f3a22d #f3a22d;
      border-bottom-left-radius: 10px;
    }
  }
}

// Library grid
.my-masonry-grid {
  display: -webkit-box; /* Not needed if autoprefixing */
  display: -ms-flexbox; /* Not needed if autoprefixing */
  display: flex;
  margin-left: -30px; /* gutter size offset */
  width: auto;
}
.my-masonry-grid_column {
  padding-left: 30px; /* gutter size */
  background-clip: padding-box;
}

.my-masonry-grid_column > div {
  /* change div to reference your elements you put in <Masonry> */
  margin-bottom: 20px;
}

// progress
.progress-indicator-container {
  height: 100%;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;

  .indicator {
    padding: 5px;
    width: 120px;
    height: 120px;
  }
}
