/* v40 Netflix-style library rows (Dennis relay 226). Covers are always fully visible: no blur, no darkening, no overlay.
   A locked episode gets only a small corner lock; badges sit in the opposite corner. Title sits under the cover. */
.home.rows{padding-bottom:12px}
.home.rows .kid-h{margin-bottom:6px}
.row{margin:14px 0 6px}
.row-h{font-size:19px;font-weight:900;margin:0 16px 8px;letter-spacing:.01em}
.row-wrap{position:relative}
.row-track{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  padding:2px 16px 10px;scroll-padding:0 16px;scrollbar-width:none;overscroll-behavior-x:contain}
.row-track::-webkit-scrollbar{display:none}
.rc{flex:0 0 76%;max-width:340px;scroll-snap-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent;outline:none}
.rc:focus-visible .rc-art{box-shadow:0 0 0 3px var(--gold),0 10px 24px #0007}
.rc-art{position:relative;display:block;width:100%;aspect-ratio:3/2;border-radius:16px;overflow:hidden;background:#ffffff10;box-shadow:0 10px 24px #0007}
.rc-art img{width:100%;height:100%;object-fit:cover;display:block;filter:none;transition:transform .25s}
.rc:active .rc-art img{transform:scale(.97)}
.rc-art i{position:absolute;font-style:normal;font-weight:900;line-height:1}
.rc-badge{top:8px;left:8px;font-size:11px;letter-spacing:.06em;padding:5px 9px;border-radius:99px;box-shadow:0 2px 8px #0006}
.rc-free{background:#2fd27a;color:#06311f}
.rc-recommended{background:#ffb938;color:#2a1300}
.rc-new{background:#ff5a7a;color:#fff}
.rc-lock{top:8px;right:8px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:14px;background:#1a1240cc;border:1px solid #ffb93899}
.rc-done{top:8px;right:8px;font-size:11px;letter-spacing:.02em;padding:6px 9px;border-radius:99px;background:#2fd27a;color:#06311f;box-shadow:0 2px 8px #0006}
/* t_2569af32: progress must read clearly on a phone yet stay thin. A 6px rounded pill inset from the cover edge on a
   dark translucent track (contrast on any cover art), a bright fill with a minimum visible length, and the exact
   percentage repeated as text under the title ("▶ Lanjut nonton 5%"). */
.rc-bar{position:absolute;left:10px;right:10px;bottom:10px;height:6px;border-radius:99px;background:#0b0724b3;
  box-shadow:0 0 0 1px #ffffff59,0 1px 6px #0009;overflow:hidden}
.rc-bar i{display:block;height:100%;min-width:12px;border-radius:99px;background:linear-gradient(90deg,#ffd166,#ff8a1f)}
.rc-meta .rc-pct{font-style:normal;font-weight:900;color:#ffd166;margin-left:4px}
.rc-meta{display:block;padding:8px 2px 0}
.rc-meta small{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;color:var(--mute)}
.rc-meta b{display:block;font-size:15px;line-height:1.25;margin:2px 0 0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.rc-meta span{display:block;font-size:12.5px;color:var(--mute);margin-top:3px}
.row-nav{display:none}
.gate-sheet .gs-img{filter:none}
@media (min-width:600px){.rc{flex-basis:44%}}
@media (min-width:1000px){
  .home.rows{max-width:1180px;margin:0 auto}
  .rc{flex-basis:calc((100% - 3 * 14px) / 3.6);max-width:none}
  .row-track{gap:14px}
  .row-nav{display:grid;place-items:center;position:absolute;top:calc(50% - 40px);z-index:2;width:40px;height:40px;border-radius:50%;
    border:1px solid #ffffff33;background:#1a1240e6;color:#fff;font-size:24px;cursor:pointer;box-shadow:0 4px 14px #0008}
  .row-nav.prev{left:2px}.row-nav.next{right:2px}
  .row-wrap.no-overflow .row-nav{display:none}
}
.sync-note{position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:70;
  display:flex;align-items:center;gap:10px;max-width:calc(100% - 24px);padding:9px 12px;border-radius:14px;
  background:#2c2170f2;color:#fff7ea;font-size:13px;font-weight:700;box-shadow:0 6px 20px #0009;border:1px solid #ffb93866}
.sync-note button,.sync-note a{flex:none;border:0;border-radius:10px;padding:6px 10px;font:inherit;font-weight:900;
  background:#ffb938;color:#2a1300;text-decoration:none;cursor:pointer}
.sync-note a{background:transparent;color:#ffd166;box-shadow:inset 0 0 0 1px #ffd16699}
