/* === Carousel Container start=== */


.hero-sidebar-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 10px auto;
    max-width: 1200px;
    padding: 0 15px;
    box-sizing: border-box;
    overflow-x: hidden;
  }

  .hero-carousel {
    flex: 7;
    min-width: 0;
  }

  .sidebar-wrapper {
    flex: 3;
    min-width: 0;
  }



.carousel-container {
    position: relative;
    overflow: hidden;
    max-width: 1200px;
    margin: 0px auto;
  }

  .carousel-track {
    display: flex;
    transition: transform 0.5s ease-in-out;
    user-select: none;
    cursor: grab;
  }
  .carousel-track.grabbing {
    cursor: grabbing;
  }

  .carousel-card {
    flex: 0 0 100%;
    height: 340px;
    display: flex;
    align-items: stretch;
    position: relative;
    padding: 0;
    overflow: hidden;
  }

  .card-overlay {
    background: rgba(0, 0, 0, 0.65);
    backdrop-filter: blur(10px);
    padding: 20px 30px 20px 30px;

    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 16px;
    gap: 30px;
    color: #fff;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
  }

  .card-left {
    flex: 1;
  }
  .card-left a {
    color: inherit;
    text-decoration: none;
  }
  .card-left a:hover {
    color: #ffd700;
  }

  /* === Star + Title + Type === */
  .rating-title-stack {
    display: flex;
    align-items: center;    /* <-- flex-start ➔ center */
    gap: 14px;
    margin-bottom: 12px;
  }

  .star-icon {
    flex-shrink: 0;
    width: 40px;            /* <-- 50px ➔ 40px */
    height: 40px;           /* <-- 50px ➔ 40px */
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .star-icon i {
    font-size: 40px;
    color: #FFD700;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .star-icon span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-weight: bold;
    font-size: 14px;
    color: #111;
    pointer-events: none;
  }

  /* —————— Rating Stars (pulled from admin/manhwa-list.css) —————— */
.rating-row {
    display: flex;
    align-items: center;
    gap: 4px;
    margin:6px 0;
  }
  .rating-row i {
    color: #FFD700;
    font-size: 12px;
  }
  .rating-number {
    margin-left: 6px;
    font-size: 10px;
    color: #ccc;
  }


  .title-type-stack {
    display: flex;
    flex-direction: column;
  }

  .rating-title-stack .f{
    font-size: 12px;
  }


  .title-inline {
    font-size: 22px;
    font-weight: 800;
    margin: 0;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-line-clamp: 2;           /* ✅ only one line */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .title-inline a {
    color: #fff;
    text-decoration: none;
  }
  .title-inline a:hover {
    color: #ffd700;
  }

  .category-inline {
    font-size: 14px;
    color: #FFD700;
    font-weight: 600;
    margin-top: 4px;
    text-transform: uppercase;
  }

  /* === Genres, Summary, Status === */
  .genres {
    font-size: 14px;
    color: #ccc;
    margin-bottom: 15px;
  }
  .genres a {
    color: #ccc;
    text-decoration: none;

    margin-right: 4px;
    transition: color 0.2s ease;
  }
  .genres a:hover {
    text-decoration: none;
    color: #FFD700;
  }

  .summary-title {
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 4px;
    color: #8a8a8a;
  }
  .summary {
    font-size: 14px;
    color: #ddd;
    line-height: 1.5;
    margin-bottom: 20px;
  }

  .status {
    font-size: 14px;
    font-weight: 600;
  }
  .status .ongoing {
    color: #8ef18e;
  }
  .status .completed {
    color: #f18e8e;
  }

  /* === Right Side === */
  .card-right {
    flex-shrink: 0;
  }
  .card-right img {
    height: 220px;
    width: 150px;
    max-width: 150px;
    border-radius: 10px;
    object-position: top;
    object-fit: cover;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
  }

  /* === Dots === */
  .carousel-dots {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
    z-index: 5;
  }
  .dot {
    height: 12px;
    width: 12px;
    background-color: #666;
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 0.3s ease;
  }
  .dot.active {
    background-color: #FFD700;
  }

  /* === Responsive === */
 /* === Responsive === */
@media (max-width: 996px) {


    .hero-sidebar-wrapper {
        flex-direction: column;
        width: 100%;
        padding: 0;
      }

      .hero-carousel,
      .sidebar-wrapper {
        width: 100%;
        max-width: 100%;
      }


      .carousel-container {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0;
        box-sizing: border-box;
      }


    .carousel-card {
      flex: 0 0 100%;
      height: auto;
      flex-direction: column;
    }

    .card-overlay {
      flex-direction: row;
      align-items: flex-center;
      justify-content: space-between;
      width: 100vw;
      padding: 5px 15px 27px 15px;
      gap: 10px;
      text-align: left;
      border-radius: 0;
      box-sizing: border-box;
    }



    .star-icon {
        flex-shrink: 0;           /* ✅ don't shrink star */
        width: 55px;
        height: 55px;
        position: relative;
      }

      .rating-title-stack .f{
        font-size: 10px;
      }



    .category-inline {
      font-size: 13px;
      margin-top: 4px;
    }

    .genres a{
        font-size: 11px;
    }

    .genres,
    .summary-title,

    .status {
      font-size: 12px;
      line-height: 1.4;
    }

    .card-right {
      flex-shrink: 0;
      width: 110px;
      display: flex;
      justify-content: center;
      align-items: flex-start;
    }

    .card-right img {
      width: 100px;
      height: 160px;
      object-fit: cover;
      border-radius: 10px;
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
    }

    .carousel-dots {
      position: relative;
      justify-content: center;
      margin: 5px auto 0;
      opacity: 0.4;
    }

    .dot {
      height: 10px;
      width: 10px;
    }

    .main-content {
      padding: 0 !important;
      width: 100vw;
    }

    .title-inline {
        font-size: 14px;
        font-weight: 700;
        display: -webkit-box;
        -webkit-line-clamp: 1;           /* ✅ only one line */
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      .genres {
        font-size: 13px;
        line-height: 1.4;
        display: -webkit-box;
        -webkit-line-clamp: 2;           /* ✅ max 2 lines */
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      .summary {
        font-size: 11px;
        color: #ddd;
        /* line-height: 1.4; */
        display: -webkit-box;
        -webkit-line-clamp: 3;/* ✅ max 3 lines */
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      .card-left {
        flex: 1;
        min-width: 0;
        overflow: hidden;           /* ✅ Ensures children don't overflow */
      }

      .rating-title-stack {
        display: flex;
        align-items: center;      /* ✅ fix vertical align‌ေment */
        gap: 10px;
        margin-bottom: 8px;
        flex-wrap: nowrap;        /* ✅ force side-by-side only */
        overflow: hidden;
      }

      .title-type-stack {
        flex: 1;
        min-width: 0;
        overflow: hidden;
      }

  }

/* === Carousel Container End === */
