/* ===== Layout ===== */
.jikan-ac-wrap{
  display:flex;
  gap:20px;
  align-items:flex-start;
}

/* Sidebar fija derecha */
.jikan-ac-sidebar{
  position:sticky;
  top:12px;
  width:300px;
  min-width:300px;
  max-height: calc(100vh - 24px);
  overflow:auto;
  background:#ffffff;
  border:1px solid #e9e9ee;
  border-radius:12px;
  box-shadow: 0 6px 24px rgba(10,10,20,.06);
}

.jikan-ac-sidebar__inner{ padding:14px; }
.jikan-ac-sidebar__title{
  margin:.2rem 0 1rem 0;
  font-size:18px;
  font-weight:700;
  color:#222;
  border-bottom:2px solid #f0f0f4;
  padding-bottom:6px;
}

.jikan-news-card{
  display:flex;
  flex-direction:column;
  border:1px solid #eee;
  border-radius:10px;
  overflow:hidden;
  margin-bottom:12px;
  background:#fff;
  transition: transform .2s ease, box-shadow .2s ease;
  cursor:pointer;
}
.jikan-news-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0,0,0,.08);
}
.jikan-news-card img{
  width:100%; height:160px; object-fit:cover; display:block;
}
.jikan-news-card h4{ margin:10px; font-size:15px; line-height:1.35; color:#222; }

/* Main */
.jikan-ac-main{
  flex:1;
  min-width:0;
}

/* En emisión slider */
.jikan-emit__wrap{ margin-bottom:16px; }
.jikan-section-title{ margin:0 0 10px 0; font-size:20px; color:#222; }
.jikan-emit__slider{
  display:flex;
  gap:12px;
  overflow:hidden;
  position:relative;
}
.jikan-emit__item{
  flex: 0 0 240px;
  border:1px solid #eee;
  border-radius:10px;
  overflow:hidden;
  background:#fff;
  transition:transform .2s ease;
  cursor:pointer;
}
.jikan-emit__item img{ width:100%; height:140px; object-fit:cover; display:block; }
.jikan-emit__info{ padding:8px; }
.jikan-emit__title{ margin:0; font-size:14px; line-height:1.3; color:#222; }
.jikan-emit__meta{ font-size:12px; color:#666; margin-top:4px; }

/* Controles */
.jikan-controls{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  margin:10px 0 14px 0;
}
.jikan-genres{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:center;
}
.jikan-chip{
  appearance:none;
  border:1px solid #6b7cff;
  color:#6b7cff;
  background:#fff;
  font-weight:600;
  padding:8px 14px;
  border-radius:999px;
  cursor:pointer;
  transition: .2s ease;
}
.jikan-chip:hover{ background:#6b7cff; color:#fff; }
.jikan-chip.is-active{ background:#4353ff; border-color:#4353ff; color:#fff; }
.jikan-search input{
  width:260px;
  padding:9px 12px;
  border:1px solid #e1e1e6;
  border-radius:8px;
}

/* Grid catálogo */
.jikan-grid{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap:16px;
  align-items:stretch;
  justify-items:stretch;
}
.jikan-card{
  background:#fff;
  border:1px solid #eee;
  border-radius:10px;
  overflow:hidden;
  box-shadow: 0 4px 14px rgba(0,0,0,.06);
  cursor:pointer;
  display:flex; flex-direction:column;
  transition: transform .25s ease, box-shadow .25s ease;
}
.jikan-card:hover{ transform: translateY(-4px); box-shadow: 0 10px 24px rgba(0,0,0,.1); }
.jikan-card img{ width:100%; height:260px; object-fit:cover; display:block; }
.jikan-card .jikan-card__body{ padding:10px; display:flex; flex-direction:column; gap:6px; }
.jikan-card__title{ font-weight:700; font-size:15px; margin:0; color:#222; }
.jikan-card__meta{ font-size:13px; color:#666; }

/* Paginación */
.jikan-pagination{
  display:flex; gap:10px; justify-content:center; margin:16px 0 10px 0;
}
.jikan-btn{
  padding:10px 16px;
  border-radius:8px;
  border:1px solid #222;
  background:#222;
  color:#fff;
  font-weight:700;
  cursor:pointer;
  transition: .2s ease;
}
.jikan-btn:hover{ transform: translateY(-1px); }
.jikan-btn[disabled]{ opacity:.5; cursor:not-allowed; transform:none; }
.jikan-btn--ghost{
  background:#fff; color:#222; border-color:#ddd;
}

/* Modal */
.jikan-modal{ display:none; position:fixed; inset:0; background:rgba(0,0,0,.6); z-index:9999; align-items:center; justify-content:center; padding:16px; }
.jikan-modal__dialog{ background:#fff; border-radius:12px; width:100%; max-width:860px; max-height:90vh; overflow:auto; position:relative; padding:20px; }
.jikan-modal__close{ position:absolute; right:12px; top:8px; font-size:24px; background:transparent; border:none; cursor:pointer; }
.jikan-modal__head{ display:flex; gap:16px; margin-bottom:12px; }
.jikan-modal__poster{ width:180px; border-radius:8px; object-fit:cover; }
.jikan-modal__title{ margin:0; }
.jikan-episodes{ display:grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap:8px; margin-top:10px; }
.jikan-ep-btn{ display:block; text-decoration:none; text-align:center; padding:8px; border-radius:8px; font-weight:700; border:1px solid #6b7cff; color:#6b7cff; transition:.2s ease; }
.jikan-ep-btn:hover{ background:#6b7cff; color:#fff; }
.jikan-trailer{ margin-top:12px; }
.jikan-trailer iframe{ width:100%; height:340px; border:none; border-radius:10px; }

/* Utilidades */
.jikan-spinner{
  width:38px; height:38px; border-radius:50%;
  border:4px solid #eee; border-top-color:#222;
  margin:18px auto; animation: jikan-spin 1s linear infinite;
}
@keyframes jikan-spin{ to{ transform: rotate(360deg); }}

/* ===== Responsive ===== */
@media (max-width: 1200px){
  .jikan-ac-wrap{ gap:14px; }
  .jikan-ac-sidebar{ width:280px; min-width:280px; }
}
@media (max-width: 992px){
  .jikan-ac-wrap{ flex-direction:column-reverse; }
  .jikan-ac-sidebar{
    position:relative;
    width:100%; min-width:unset; max-height:none;
    order:2;
  }
  .jikan-ac-main{ order:1; }
  .jikan-emit__item{ flex-basis: 70%; }
}
@media (max-width: 600px){
  .jikan-card img{ height:220px; }
  .jikan-emit__item{ flex-basis: 80%; }
  .jikan-search input{ width:100%; }
}
