/* ==========================================================
   DonghuaKu - layout mobile (mode aplikasi), layar <= 767px
   Dimuat lewat media query: desktop tidak terpengaruh.
   ========================================================== */
:root{--gut:14px;--bar:64px}
html{scroll-padding-top:calc(var(--bar) + 10px)}
body{font-size:15px}
body.dk-lock{overflow:hidden}
body .dk-wrap{padding-inline:var(--gut)}
body .dk-crumbs{display:none}

/* ---- Beranda: hero geser (carousel kartu poster) ---- */
body .dk-slider{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gut);
  margin:12px calc(var(--gut) * -1) 10px;padding:0 var(--gut);scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
body .dk-slider::-webkit-scrollbar{display:none}
body .dk-slider>.dk-hero{flex:0 0 84%;flex:0 0 min(84%,560px);grid-area:auto;opacity:1;visibility:visible;scroll-snap-align:center;transition:none;
  display:flex;align-items:flex-end;height:min(124vw,520px);min-height:0;padding:18px 16px 18px;border-radius:20px}
@media(orientation:landscape) and (max-height:520px){
 body .dk-slider>.dk-hero{flex-basis:62%;height:auto;min-height:max(240px,calc(100vh - 150px));padding-top:70px}
 @supports (height:100dvh){body .dk-slider>.dk-hero{min-height:max(240px,calc(100dvh - 150px))}}
 body .dk-hero p{display:none}
}
body .dk-hero::before{top:0;right:0;bottom:0;left:0;transform:none;filter:saturate(1.12);background-position:center top}
body .dk-hero::after{background:linear-gradient(0deg,rgba(8,10,14,.96) 0,rgba(8,10,14,.78) 36%,rgba(8,10,14,0) 72%)}
body .dk-hero-body{width:100%}
body .dk-hero .dk-chips{margin:0 0 8px;flex-wrap:nowrap;overflow:hidden}
body .dk-hero .dk-chip{font-size:.7rem;padding:3px 10px;flex:none}
body .dk-hero h2{font-size:1.4rem;line-height:1.15;margin:0 0 .35em}
body .dk-hero p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.86rem;margin:0 0 14px}
body .dk-hero .dk-actions{display:grid;grid-template-columns:1fr auto;gap:8px;flex-wrap:nowrap}
body .dk-hero .dk-btn{min-height:44px;padding:10px 14px;font-size:.86rem}
body .dk-hero .dk-hero-poster,body .dk-dots,body .dk-arrow{display:none}
body .dk-mdots{display:flex;justify-content:center;gap:6px;margin:0 0 22px}
.dk-mdots span{width:6px;height:6px;border-radius:3px;background:var(--line);transition:width .2s,background .2s}
.dk-mdots span.on{width:18px;background:var(--accent)}

/* ---- Seksi, genre, rel, peringkat ---- */
body .dk-sec{margin-bottom:28px}
body .dk-sec h2{font-size:1.12rem}
body .dk-genres{margin:0 calc(var(--gut) * -1) 22px;padding:2px var(--gut)}
body .dk-genres .dk-chip{padding:7px 14px;font-size:.82rem}
body .dk-rail{grid-auto-columns:34vw;grid-auto-columns:clamp(112px,34vw,170px);gap:10px;margin:0 calc(var(--gut) * -1);padding:2px var(--gut) 8px;scroll-padding-inline:var(--gut)}
body .dk-rank{grid-template-columns:none;grid-template-rows:repeat(3,auto);grid-auto-flow:column;grid-auto-columns:86%;grid-auto-columns:min(86%,380px);gap:2px 14px;overflow-x:auto;
  scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(var(--gut) * -1);padding:0 var(--gut)}
body .dk-rank::-webkit-scrollbar{display:none}
body .dk-rank-item{scroll-snap-align:start;padding:8px 0;border-bottom:1px solid var(--line)}
body .dk-rank-n{font-size:2.4rem}

/* ---- Rilis terbaru: daftar baris dengan label hari menempel ---- */
body .dk-feed{padding-left:0}
body .dk-feed::before,body .dk-day-node{display:none}
body .dk-day{margin-bottom:16px}
body .dk-day-label{position:sticky;top:var(--bar);z-index:5;background:var(--bg);padding:8px 0;margin:0 0 6px}
body .dk-day-items{grid-template-columns:1fr;gap:12px}
body .dk-fcard{display:grid;grid-template-columns:42% minmax(0,1fr);gap:12px;align-items:center}
body .dk-fthumb{border-radius:12px}
body .dk-fnum{font-size:1.7rem;left:8px;bottom:4px}
body .dk-fbody{padding:0}

/* ---- Arsip dan pencarian: grid padat 3 kolom, episode jadi baris ---- */
body .dk-page-title{margin:14px 0 12px;font-size:1.35rem}
body .dk-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 9px}
body .dk-grid .dk-card-title{font-size:.76rem;margin-top:6px}
body .dk-grid .dk-badge,body .dk-grid .dk-score{font-size:.62rem;padding:1px 6px;top:5px}
body .dk-grid-wide{grid-template-columns:1fr;gap:12px}
body .dk-grid-wide .dk-card:not(.dk-card-post){display:grid;grid-template-columns:42% minmax(0,1fr);column-gap:12px;align-items:center}
body .dk-grid-wide .dk-card:not(.dk-card-post) .dk-thumb{grid-row:1/span 2}
body .dk-grid-wide .dk-card:not(.dk-card-post) .dk-card-title{margin:0;align-self:end;font-size:.9rem}
body .dk-grid-wide .dk-card:not(.dk-card-post) .dk-card-sub{align-self:start}
body.archive .dk-layout>.dk-side>*:not(.dk-ad),body.search .dk-layout>.dk-side>*:not(.dk-ad),body.page .dk-layout>.dk-side>*:not(.dk-ad){display:none}

/* ---- Halaman series: tata letak terpusat ---- */
body .dk-series-head{display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 16px 18px;border-radius:20px;margin:6px 0 18px}
body .dk-series-head>.dk-thumb{align-self:center;width:46%;max-width:180px;grid-column:auto;grid-row:auto;border-radius:12px;margin-bottom:14px}
body .dk-series-head .dk-series-info>*{grid-column:auto;grid-row:auto;max-width:100%}
body .dk-series-head h1{font-size:1.35rem;line-height:1.25;margin:0 0 4px}
body .dk-series-head .dk-alt{font-size:.85rem;margin:0 0 10px}
body .dk-series-head .dk-chips{justify-content:center;margin:4px 0 12px}
body .dk-series-head .dk-facts{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;width:100%;margin:0 0 14px;padding:0;background:none;border:0;text-align:left}
body .dk-series-head .dk-facts::-webkit-scrollbar{display:none}
body .dk-series-head .dk-facts>div{flex:none;padding:8px 14px;border-radius:12px;background:rgba(255,255,255,.1)}
body .dk-series-head .dk-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
body .dk-series-head .dk-actions .dk-btn{min-height:46px;flex:none}
body .dk-series-head .dk-actions .dk-btn:first-child{grid-column:1/-1;font-size:.95rem}
body #episodes{padding:0;margin:20px 0;background:none}
body .dk-slips{grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:8px}
body .dk-slips a{min-height:46px}
body .dk-slips time{display:none}

/* ---- Halaman episode: player menempel di atas, daftar di bawahnya ---- */
body.single-episode main.dk-wrap{padding-top:0}
body .dk-ep-layout{align-items:stretch}
body .dk-ep-layout>article>.dk-stage{display:contents}
body .dk-watch .dk-theater{position:relative;z-index:1;order:-3;margin:0 calc(var(--gut) * -1);border-radius:0;background:#000;box-shadow:0 10px 24px rgba(0,0,0,.45)}
body .dk-watch .dk-whead{order:-2;padding:14px 0 4px}
body .dk-watch .dk-wbar{order:-1;margin:8px 0 0;padding:10px;border:1px solid var(--line);border-radius:14px}
body .dk-whead h1{font-size:1.15rem}
body .dk-wbar .dk-servers{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:10px}
body .dk-wbar .dk-servers::-webkit-scrollbar{display:none}
body .dk-wbar .dk-srv{flex:none;min-height:40px}
body .dk-wnav,body .dk-wtools{flex:1 1 100%;margin-left:0}
body .dk-wnav .dk-wbtn{flex:1 1 0;min-height:44px}
body .dk-wnav .dk-wbtn-icon{flex:none}
body .dk-wlabel{display:none}
body .dk-wtools .dk-wbtn{flex:1 1 0;padding:8px 10px;font-size:.8rem}
@media(orientation:landscape){body .dk-watch .dk-theater{position:relative;top:auto}}

/* ---- Ponsel besar dan layar lipat (560-767px) ---- */
@media(min-width:560px){
 body .dk-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 12px}
 body .dk-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 14px}
 body .dk-grid .dk-card-title{font-size:.84rem}
}
@media(min-width:680px){
 body .dk-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}

/* ---- Footer ---- */
body .dk-footer{margin-top:28px;padding:22px 0}
body .dk-footer-nav ul{gap:6px 16px}

/* ---- Daftar episode menyatu di bawah pemutar ---- */
body .dk-watch .dk-eplist{order:0;margin:12px 0 0}

/* Player tidak menempel saat di-scroll; tombol alat rapi di layar sempit */
body .dk-watch .dk-theater{position:relative!important;top:auto!important}
body .dk-wtools{flex-wrap:wrap}
body .dk-wtools .dk-wbtn{min-width:0;white-space:normal;text-align:center}

