.v2-anime-hero .v2-actions { align-items: center; }
.v2-anime-hero .v2-actions .v2-title-icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 3rem; height: 3rem; min-height: 3rem !important; padding: 0 !important;
  border: 1px solid rgba(255,255,255,.13); border-radius: 12px !important;
  background: rgba(255,255,255,.055); color: #d1d8d4; cursor: pointer;
  backdrop-filter: none; transition: color .22s, background .22s, box-shadow .22s, border-color .22s;
}
.v2-title-icon svg { width: 1.3rem; height: 1.3rem; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.v2-anime-hero .v2-actions .v2-title-icon:hover { color: #a4edc0; background: rgba(135,255,187,.09); }
.v2-anime-hero .v2-actions .v2-title-icon.is-active {
  color: #87ffbb; border-color: rgba(135,255,187,.4); background: rgba(102,219,149,.12);
  box-shadow: 0 0 18px rgba(135,255,187,.12);
}
.v2-title-icon.is-active svg { fill: rgba(135,255,187,.18); }
.v2-title-icon:disabled, .v2-status-option:disabled { opacity: .55; cursor: wait; }
.v2-title-icon:focus-visible { outline: 2px solid #87ffbb; outline-offset: 3px; }
.v2-save-note { color: #a9d6ba; font-size: .75rem; }
.v2-save-note:empty { display: none; }
.v2-bookmark .v2-bookmark-menu {
  position: fixed; z-index: 90; width: 300px; min-width: 0;
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .5rem;
  padding: .65rem; border-radius: 15px; border: 1px solid #a8e0bc26;
  background: rgba(22,29,25,.96); backdrop-filter: none;
  box-shadow: 0 16px 45px #0008;
}
.v2-bookmark .v2-status-option {
  display: flex; align-items: center; gap: .5rem; padding: .7rem;
  border: 1px solid #ffffff0c; border-radius: 9px; background: #ffffff04;
  font-size: .77rem; font-weight: 500; color: #c0ccc5; cursor: pointer;
}
.v2-bookmark .v2-status-option:hover, .v2-bookmark .v2-status-option.is-active { color: #b8f4cd; background: #87ffbb12; border-color: #87ffbb40; }
.v2-status-dot { width: .45rem; height: .45rem; flex-shrink: 0; border: 1px solid #99b6a5; border-radius: 50%; }
.is-active .v2-status-dot { background: #87ffbb; border-color: #87ffbb; box-shadow: 0 0 7px #87ffbb55; }
.v2-next-episode { grid-column: span 2; min-width: 0; padding: .9rem; border: 1px solid #87ffbb23; border-radius: 14px; background: linear-gradient(145deg,#87ffbb08,#ffffff02); }
.v2-next-heading { display: flex; align-items: center; justify-content: space-between; gap: .6rem; margin-bottom: .8rem; }
.v2-next-heading strong { color: #a6e9bd; font-size: .7rem; font-weight: 650; }
.v2-next-heading time { color: #9caaa2; font-size: .62rem; white-space: nowrap; }
.v2-countdown-tiles { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .45rem; }
.v2-countdown-tiles > div { text-align: center; }
.v2-countdown-tiles b { display: grid; place-items: center; height: 2.8rem; border-radius: 10px; border: 1px solid #ffffff0c; background: #ffffff04; color: #d5e2da; font-size: 1.2rem; font-variant-numeric: tabular-nums; }
.v2-countdown-tiles > div:first-child b { color: #87ffbb; border-color: #87ffbb50; background: #87ffbb0b; box-shadow: 0 0 15px #87ffbb0a; }
.v2-countdown-tiles small { display: block; margin-top: .4rem; color: #8b9e91; font-size: .56rem; text-transform: uppercase; }
.v2-countdown-note { display: block; margin-top: .6rem; color: #7e9285; font-size: .65rem; }
.v2-empty-episodes { color: #8a968e; font-size: .85rem; grid-column: 1/-1; }
@media(max-width: 760px) {
  .v2-anime-hero .v2-actions { grid-template-columns: minmax(0,1fr) 2.3rem 2.3rem !important; }
  .v2-anime-hero .v2-actions .v2-title-icon { width: 2.3rem; height: 2.3rem; min-height: 2.3rem !important; }
  .v2-title-icon svg { width: 1.15rem; height: 1.15rem; }
  .v2-next-episode { grid-column: 1/-1; }
}
@media(prefers-reduced-motion: reduce) { .v2-title-icon { transition: none !important; } }

.v2-bookmark[open] .v2-bookmark-menu { animation: v2-bookmark-reveal .18s ease-out; }
@keyframes v2-bookmark-reveal { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }
@media(prefers-reduced-motion: reduce) { .v2-bookmark[open] .v2-bookmark-menu { animation: none; } }

.v2-episodes .v2-next-episode {
  grid-column: auto; aspect-ratio: 16 / 9; min-height: 6.8rem; width: calc(100% - .08rem); align-self: start;
  display: flex; flex-direction: column; justify-content: center; gap: .3rem;
  padding: .75rem; border-radius: 8px; border: 1px solid rgba(255,255,255,.13);
  background: linear-gradient(145deg, #141615, #090b0a); box-shadow: none;
}
.v2-next-label { color: #737f78; font-size: .58rem; }
.v2-next-number { color: #b9c3bd; font-size: .82rem; font-weight: 600; }
.v2-next-short { color: #a7d6b9; font-size: 1.1rem; font-weight: 650; font-variant-numeric: tabular-nums; }
@media(max-width: 760px) {
  .v2-episodes .v2-next-episode { padding: .45rem; gap: .15rem; min-height: 4.1rem; border-radius: 7px; }
  .v2-next-short { font-size: 1rem; }
}

.v2-episodes .v2-next-episode { position: relative; padding: 0; }
.v2-next-number { position: absolute; left: .75rem; right: .75rem; bottom: .75rem; font-size: inherit; font-weight: 900; line-height: 1.2; color: #e3e7e4; }
.v2-next-short { position: absolute; left: .4rem; right: .4rem; top: 50%; transform: translateY(-50%); text-align: center; color: #b4c9bc; font-size: 1.4rem; font-weight: 700; }
@media(max-width: 760px) {
  .v2-next-number { left: .48rem; right: .48rem; bottom: .48rem; font-size: .78rem; }
  .v2-next-short { font-size: 1.25rem; }
}

.v2-next-clock {
  position: absolute; top: 44%; left: .4rem; right: .4rem;
  transform: translateY(-50%); display: grid; gap: .2rem; text-align: center;
}
.v2-next-caption { color: #73877c; font-size: .57rem; letter-spacing: .06em; }
.v2-next-clock .v2-next-short {
  position: static; transform: none; line-height: 1.15;
  background: linear-gradient(110deg, #7fe6a7 0%, #c6ffe0 30%, #79dec5 55%, #aaf2bd 80%, #7fe6a7 100%);
  background-size: 220% 100%; background-clip: text; -webkit-background-clip: text;
  color: transparent; animation: v2-clock-shimmer 6s ease-in-out infinite alternate;
}
@keyframes v2-clock-shimmer { from { background-position: 0% 50%; } to { background-position: 100% 50%; } }
@media(prefers-reduced-motion: reduce) { .v2-next-clock .v2-next-short { animation: none; } }

.v2-next-caption { line-height: 1.1; }
@media(max-width: 760px) { .v2-next-clock { top: 38%; gap: .15rem; } }

.v2-bookmark .v2-bookmark-menu {
  width: 250px; grid-template-columns: 1fr; gap: .2rem; padding: .4rem;
  border: 1px solid rgba(255,255,255,.12); border-radius: 13px;
  background: rgba(22,23,25,.98); box-shadow: 0 14px 40px rgba(0,0,0,.4);
}
.v2-bookmark .v2-status-option {
  min-height: 2.55rem; padding: .65rem .8rem; gap: .7rem;
  border: 0; border-radius: 8px; background: transparent;
  color: #bdc0c4; font-size: .8rem; font-weight: 500;
  transition: background .18s, color .18s;
}
.v2-bookmark .v2-status-option:hover { background: rgba(255,255,255,.065); color: #eef0f2; }
.v2-bookmark .v2-status-option.is-active { background: rgba(255,255,255,.045); color: #eef0f2; }
.v2-bookmark .v2-status-dot { width: .35rem; height: .35rem; border-color: #73787c; }
.v2-bookmark .is-active .v2-status-dot { background: #9bdfb5; border-color: #9bdfb5; box-shadow: none; }

.v2-related-section { margin-top:.35rem; }
.v2-related-section[hidden] { display:none; }
.v2-related-heading { display:flex; align-items:center; gap:.6rem; margin-bottom:.8rem; }
.v2-related-heading .v2-section-title { font-size:1.25rem; }
.v2-related-heading>span { padding:.2rem .4rem; border-radius:6px; background:#ffffff05; color:#737881; text-align:center; font-size:.65rem; }
.v2-related-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,350px),350px)); gap:.7rem; }
.v2-related-card { min-width:0; display:flex; align-items:center; gap:.95rem; padding:.75rem; border:1px solid #ffffff0f; border-radius:11px; background:linear-gradient(135deg,#161719,#101112); text-decoration:none; transition:border-color .2s,background .2s; }
.v2-related-card:hover { border-color:#a1dfbd30; background:#191c1b; }
.v2-related-poster { width:72px; height:101px; flex:0 0 72px; border-radius:7px; overflow:hidden; background:#ffffff04; }
.v2-related-poster img { width:100%; height:100%; object-fit:cover; }
.v2-related-copy { min-width:0; flex:1; }
.v2-related-relation { display:block; color:#929b97; font-size:.65rem; margin-bottom:.35rem; }
.v2-related-card h3 { margin:0 0 .5rem; font-size:.88rem; font-weight:600; line-height:1.35; color:#dedfe5; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.v2-related-bottom { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; }
.v2-related-copy .v2-score { position:static; padding:.2rem .35rem; border-radius:5px; font-size:.62rem; line-height:1.2; }
.v2-related-meta { color:#6f7680; font-size:.63rem; line-height:1.5; }
@media(max-width:560px) { .v2-related-grid { grid-template-columns:minmax(0,1fr); } .v2-related-heading .v2-section-title { font-size:1.15rem; } }

.v2-description-preview{font-size:.9rem;position:relative;max-height:4.8em;overflow:hidden;line-height:1.6;margin-top:.7rem}
.v2-description-preview .v2-description{margin:0!important;font-size:.9rem!important;line-height:1.6!important}
.v2-description-preview::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1.5em;background:linear-gradient(transparent,#131415);pointer-events:none}
.v2-description-panel.is-expanded .v2-description-preview{max-height:none}.v2-description-panel.is-expanded .v2-description-preview::after{content:none}
.v2-description-expand{display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;border:0;background:none;color:#989fa7;font:inherit;font-size:.76rem;padding:.7rem 0 0;cursor:pointer}
.v2-description-expand svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.is-expanded .v2-description-expand svg{transform:rotate(180deg)}
@media(max-width:760px){
 .v2-detail-grid .v2-episodes .v2-next-episode{box-sizing:border-box;aspect-ratio:16/9;width:100%;min-height:0;height:auto;align-self:stretch;background:#111513;overflow:hidden}
 .v2-next-clock{top:40%;gap:.15rem}.v2-next-clock .v2-next-short{font-size:1.1rem;line-height:1.2}
 .v2-next-number{left:.5rem;bottom:.5rem;font-size:.75rem}
}

.v2-detail-grid .v2-carousel{position:relative;min-width:0}
.v2-detail-grid .v2-rail-arrow{display:none}
@media(max-width:760px){
 .v2-detail-grid .v2-episodes{grid-auto-columns:142px!important;gap:.65rem!important;max-width:100%!important;margin:0!important;padding:.15rem 0!important;scrollbar-width:none!important;mask-image:none!important;-webkit-mask-image:none!important;scroll-snap-type:x proximity}
 .v2-detail-grid .v2-episodes::-webkit-scrollbar{display:none}
 .v2-detail-grid .v2-episode-card,.v2-detail-grid .v2-next-episode{border-radius:8px;scroll-snap-align:start}
 .v2-detail-grid .v2-rail-arrow{display:grid;place-items:center;position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:28px;height:38px;border:1px solid #ffffff24;border-radius:7px;background:#22262b;color:#eee;font-size:1.5rem;padding:0;cursor:pointer}
 .v2-detail-grid .v2-rail-arrow[data-direction="-1"]{left:.15rem}.v2-detail-grid .v2-rail-arrow[data-direction="1"]{right:.15rem}
 .v2-detail-grid .v2-rail-arrow:disabled{visibility:hidden;pointer-events:none}
}

.v2-detail-grid .v2-episodes{scroll-behavior:smooth}.v2-detail-grid .v2-episodes.is-dragging{scroll-behavior:auto;scroll-snap-type:none}
@media(prefers-reduced-motion:reduce){.v2-detail-grid .v2-episodes{scroll-behavior:auto}}

@media(max-width:760px){.v2-anime-hero{width:calc(100% + 5px)!important;max-width:none!important;margin-inline:-2.5px!important;box-sizing:border-box}}

@media(max-width:760px){.v2-anime-hero .v2-actions{column-gap:3.5px!important}.v2-anime-hero .v2-actions .v2-watch-action{width:100%;box-sizing:border-box}}
