/* Blog Styles SCSS */

/* Custom Properties */
:root {
  --color-primary: #00223b; /* Main blue */
  --color-gray-dark: #333; /* Timeline, small text */
  --color-gray-medium: #666; /* Sidebar links, thumbnail text */
  --color-gray-light: #ccc; /* Disabled blog-nav links */
  --color-white: #fff; /* Buttons, nav hover */
  --color-shadow-lighter: #00000015; /* Shadows (matches header SCSS) */
  --color-bg-light: #f5f5f5; /* Blog-nav link background */
  --color-bg-form: #f7f7f7; /* Form inputs */
  --color-placeholder: #8e8e8e; /* Form placeholders */
  --color-gray-dotted: #eee; /* Sidebar border */
  --color-dark: #000; /* Hover states */
  --color-accent-dark: #287267; /* Blog-nav link hover */
  --color-gray-btn: #444; /* Blog details button */
  --font-primary: 'Poppins', sans-serif;
  --font-secondary: 'Playfair Display', serif;
}

/* Global Body Styles */
body {
  font-family: var(--font-primary);
}

/* Single Post Styles */
.single-post {
  margin-bottom: 1.5rem;

  .blog-title {
    color: var(--color-primary);
    font-size: 32px;
    font-weight: 600;
    padding: 30px 0 5px;
  }

  .timeline {
    display: inline-block;
    padding: 0 3rem 10px 0;
    font-size: 15px;
    color: var(--color-gray-dark);
    font-weight: 500;
  }

  .author {
    font-size: 16px;
    font-weight: 500;
    display: inline-block;
    margin-bottom: 10px;
  }

  img {
    width: 100%;
    margin: 0.5rem 0 1.6rem;
  }

  h2,
  h3 {
    color: var(--color-primary);
    font-weight: 600;
    font-family: var(--font-primary);
    margin-bottom: 1rem;
    display: inline-block;
    width: fit-content;
  }

  h2 {
    font-size: 26px;
  }

  h3 {
    font-size: 20px;
  }

  .content {
      img{ border-radius: 10px; }
    a {
      font-weight: 500;
      text-decoration: underline;

      p & {
        color: var(--color-primary);
      }
    }

    .post-navigation {
      a {
        color: var(--color-white);
        background: linear-gradient(-45deg, #e2b659 0, #ca9629 100%);
        padding: 8px 0;
        font-size: 16px;
        width: 200px;
        text-align: center;
        text-decoration: none;

        &:hover {
          color: var(--color-white);
        }
      }
    }
  }

  p,
  ul,
  ol {
    margin-bottom: 1rem;
  }

  ul,
  ol {
    padding-left: 19px;

    li {
      font-size: 16px;
      margin-bottom: 0;
    }
  }

  ol li {
    list-style: lower-alpha; /* Converted 'a' to valid list-style */
  }

  @media (max-width: 991px) {
    margin-bottom: 0;

    .blog-title {
      padding-top: 20px;
      font-size: 28px;
    }

    .timeline {
      margin-bottom: 3px;
      display: block;
    }

    .content {
        h2{ font-size: 22px; }
      .post-navigation {
        a {
          width: 155px !important;
        }
      }
    }
  }

  @media (max-width: 359px) {
    .content {
      .post-navigation {
        a {
          font-size: 14px;
          width: 140px !important;
        }
      }
    }
  }
}

/* Global Element Styles */
strong,
p b {
  font-weight: 600;
}

p b {
  color: var(--color-primary);
}

.color-theme {
  color: var(--color-primary);
}

/* Sidebar Styles */
.sidebar {
  margin-bottom: 2rem;

  .heading {
    font-size: 28px;
    color: var(--color-primary);
    font-weight: 600;
    margin-bottom: 1.2rem;
    font-family: var(--font-secondary);
  }

  ul {
    margin: 0;
    padding-left: 0;
    list-style: none;

    li {
      padding: 8px 0;
      border-bottom: 1px dotted var(--color-gray-dotted);
      list-style: none;
      display: flex;
      align-items: center;

      &:first-child {
        padding-top: 0;
      }

      &:hover {
        transform: scale(1.02);
      }

      a {
        font-size: 16px;
        padding-left: 10px;
        color: var(--color-gray-medium);

        &:hover {
          color: var(--color-primary);
        }
          display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2;
      }

      .img {
        width: 70px;
        min-width: 70px;
        display: flex; 
          

        img {
          width: 100%; border-radius: 8px; aspect-ratio: 1; object-fit: cover; margin: 0;
        }
      }
    }
  }
}

/* Blog Thumbnail Styles */
.blog-thumbnail {
  box-shadow: 0 0 20px var(--color-shadow-lighter);
  margin-bottom: 1rem;

  img {
    width: 100%;
  }

  .blog-thumb-content {
    padding: 20px 20px 25px;

    h2 {
        margin: 0 0 15px;
        display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2;
      a {
        font-size: 24px;
        color: var(--color-primary);
        font-weight: 600;

        &:hover {
          color: var(--color-dark);
        }
      }
    }

    p {
      color: var(--color-gray-medium);
      margin-bottom: 10px;
      font-size: 15px; display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 4;

      small {
        color: var(--color-gray-dark);
      }
    }

    .read-more-btn {
      padding: 10px 15px;
      color: var(--color-white);
      background: linear-gradient(-45deg, #e2b659 0, #ca9629 100%);
      display: block;
      width: fit-content;
      margin-top: 20px;
    }
  }

  @media (max-width: 991px) {
    margin-bottom: 2rem;
    margin-top: 0;
  }
}

/* Post Navigation Styles */
.post-navigation {
  display: flex;
  justify-content: space-between;
  margin: 1rem 0;

  @media (min-width: 992px) {
    padding-top: 1rem;
  }

  @media (max-width: 991px) {
    margin: 2rem 0;
  }
}

/* Blog Navigation Styles */
.blog-nav {
  text-align: center;
  margin: 1rem 0;

  .btn-link {
    color: var(--color-primary);
    text-decoration: none;
    display: inline-flex;
    margin: 5px;
    min-width: 87px;

    &:hover {
      color: var(--color-primary);
    }

    &[span] {
      pointer-events: none;
      color: var(--color-gray-light);
    }
  }

  .link {
    display: inline-flex;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    margin: 5px;
    background: var(--color-bg-light);
    justify-content: center;
    align-items: center;
    color: var(--color-gray-dark);
    font-size: 14px;

    &:hover {
      background: var(--color-accent-dark);
      color: var(--color-white);
    }
  }

  @media (max-width: 991px) {
    margin: 0 0 1.5rem;
  }
}

/* Blog Reply Form Styles */
.blog-reply-wrapper {
  form {
    margin-top: 65px;

    input,
    textarea {
      background: var(--color-bg-form);
      border: none;
      color: var(--color-placeholder);
      font-size: 14px;
      padding: 2px 20px;

      &::placeholder {
        color: var(--color-placeholder);
        opacity: 1;
      }
    }

    input {
      height: 60px;
    }

    textarea {
      height: 235px;
      padding: 25px 20px;
    }

    .text-leave {
      input {
        background: var(--color-primary);
        color: var(--color-white);
        cursor: pointer;
        display: inline-block;
        font-weight: 400;
        height: auto;
        letter-spacing: 1px;
        margin-top: 60px;
        padding: 14px 30px;
        width: auto;

        &:hover {
          background: var(--color-dark);
        }
      }
    }
  }
}

/* Blog Details Button */
.blog-details-btn {
  a {
    color: var(--color-gray-btn);
    font-weight: 500;
    text-transform: capitalize;
  }
}

/* Padding Utility */
@media (max-width: 991px) {
  .padding {
    padding: 1rem 0 0;
  }
}

/* Blog Heading Styles */
.head-main-blog {
  font-size: 46px;
  font-weight: 500;
}

.blog-head {
  font-size: 36px;
  color: var(--color-primary);
  font-weight: 600;
  padding: 30px 0 10px 10px;

  @media (max-width: 991px) {
    padding: 30px 0 20px 10px;
  }
}

.head-post {
  font-size: 30px;
  color: var(--color-primary);
  font-weight: 700;
  padding: 30px 0 0 10px;
}