/* NK2 app.css - mobile first */
*{box-sizing:border-box}
:root{
  --bg:#0b1020; --bg2:#111834; --card:#151d38; --card2:#1b2545;
  --tx:#e8ecf8; --tx2:#9aa6c8; --ac:#5b8cff; --ac2:#7c5bff; --ok:#25c08a; --warn:#ffb020; --bad:#ff5b6e;
  --r:14px; --sh:0 6px 24px rgba(0,0,0,.35); --max:1280px;
}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--tx);font:15px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Inter,Arial,sans-serif;overflow-wrap:break-word;transition:opacity .2s ease}
html,body{max-width:100%;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 14px 40px}

/* header */
.hd{position:sticky;top:0;z-index:50;background:rgba(11,16,32,.92);backdrop-filter:blur(10px);border-bottom:1px solid #20294d}
.hd-in{max-width:var(--max);margin:0 auto;padding:10px 14px;display:flex;gap:10px;align-items:center}
.logo{font-weight:800;font-size:19px;background:linear-gradient(90deg,var(--ac),var(--ac2));-webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap}
.srch{flex:1;display:flex;min-width:0}
.srch input{flex:1;min-width:0;background:var(--bg2);border:1px solid #26315c;color:var(--tx);padding:8px 12px;border-radius:10px 0 0 10px;font-size:14px;outline:none}
.srch input:focus{border-color:var(--ac)}
.srch button{background:var(--ac);border:0;color:#fff;padding:8px 14px;border-radius:0 10px 10px 0;font-weight:600;cursor:pointer}
.srch.big{max-width:620px;margin:0 0 18px}
.srch.big input{padding:12px 16px;border-radius:12px 0 0 12px}
.srch.big button{padding:12px 20px;border-radius:0 12px 12px 0}
.burger{display:none;background:var(--bg2);border:1px solid #26315c;color:var(--tx);font-size:18px;width:40px;height:38px;border-radius:10px;cursor:pointer}
.nv{max-width:var(--max);margin:0 auto;padding:0 14px 9px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.nv::-webkit-scrollbar{display:none}
.nv a{padding:6px 12px;border-radius:999px;background:var(--bg2);border:1px solid #232d55;color:var(--tx2);font-size:13px;white-space:nowrap}
.nv a:hover{color:var(--tx);border-color:var(--ac)}

/* hero */
.hero{position:relative;min-height:300px;display:flex;align-items:flex-end;margin:0 -14px 6px;background-image:linear-gradient(to top,var(--bg) 8%,rgba(11,16,32,.75) 45%,rgba(11,16,32,.25)),var(--bg);background-size:cover;background-position:center top}
.hero-in{padding:20px 14px 26px;max-width:760px}
.tagpill{background:var(--ac);color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.4px}
.hero h1{margin:10px 0 6px;font-size:26px;line-height:1.25}
.hero .meta{color:var(--tx2);margin:0 0 8px;font-size:13px}
.hero .syn{color:var(--tx2);margin:0 0 14px;font-size:14px;max-height:66px;overflow:hidden}
.cta{display:flex;gap:8px;flex-wrap:wrap}
.btn{display:inline-block;background:var(--bg2);border:1px solid #2a3560;color:var(--tx);padding:9px 16px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer}
.btn:hover{border-color:var(--ac)}
.btn.primary{background:linear-gradient(90deg,var(--ac),var(--ac2));border:0;color:#fff}
.btn.sm{padding:6px 12px;font-size:13px}
.btn.disabled{opacity:.5;cursor:not-allowed}

/* section */
.sec{margin:26px 0}
.sec-t{font-size:17px;margin:0 0 12px;padding-left:11px;border-left:3px solid var(--ac)}
.more{text-align:center;margin:16px 0 0}
.cnt-line{color:var(--tx2);font-size:13px;margin:0 0 12px}

/* grid + card */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);gap:12px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}
.card{background:var(--card);border:1px solid #222c52;border-radius:var(--r);overflow:hidden;scroll-snap-align:start;transition:transform .15s,border-color .15s}
.card:hover{transform:translateY(-3px);border-color:var(--ac)}
.cv{position:relative;aspect-ratio:2/3;background:var(--bg2)}
.cv img{width:100%;height:100%;object-fit:cover}
.badge{position:absolute;top:6px;left:6px;font-size:10px;font-weight:700;padding:3px 7px;border-radius:6px;color:#04121f}
.b-on{background:var(--warn)} .b-done{background:var(--ok)} .b-up{background:#7aa2ff}
.tt{padding:8px 9px 0;font-size:13px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:35px}
.mt{padding:0 9px;font-size:11px;color:var(--tx2);line-height:1.45;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.card .mt:last-child{padding-bottom:9px}

/* chips */
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.chip2{display:inline-block;background:var(--bg2);border:1px solid #26315c;border-radius:999px;padding:4px 11px;font-size:12px;color:var(--tx2)}
.chip2:hover{border-color:var(--ac);color:var(--tx)}
.chip2.sm{font-size:11px;padding:3px 9px}
.chip2 b{color:var(--ac);font-weight:700}

/* anime page */
.an-top{display:flex;gap:16px;margin:18px 0 6px;flex-direction:column}
.an-cv{flex:0 0 168px;max-width:168px;border-radius:var(--r);overflow:hidden;background:var(--bg2);box-shadow:var(--sh)}
.an-cv img{width:100%;aspect-ratio:2/3;object-fit:cover}
.an-info h1{margin:0 0 8px;font-size:22px;line-height:1.25}
.badge-row{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}
.pill{background:var(--bg2);border:1px solid #26315c;border-radius:999px;padding:3px 10px;font-size:11px;color:var(--tx2)}
.p-on{background:rgba(255,176,32,.16);border-color:var(--warn);color:var(--warn)}
.p-done{background:rgba(37,192,138,.16);border-color:var(--ok);color:var(--ok)}
.ln{font-size:13px;color:var(--tx2);margin:0 0 6px}
.synopsis{color:#c3cce6;line-height:1.75;margin:0}
.episodes,.eps{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.ep{background:var(--card);border:1px solid #222c52;border-radius:10px;padding:9px 11px;display:flex;gap:8px;align-items:center;min-width:0}
.ep:hover{border-color:var(--ac)}
.ep.on{background:linear-gradient(90deg,rgba(91,140,255,.22),rgba(124,91,255,.14));border-color:var(--ac)}
.ep .n{font-weight:700;font-size:13px;color:var(--ac);flex:0 0 auto}
.ep .t{font-size:12px;color:var(--tx2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.epnav{display:flex;gap:8px;justify-content:space-between;margin:18px 0}
.empty{color:var(--tx2);background:var(--card);border:1px dashed #2a3560;border-radius:var(--r);padding:22px;text-align:center}
.pg-t{font-size:20px;margin:18px 0 12px}
.cnt{color:var(--tx2);font-size:13px;font-weight:400}
.tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:8px;margin-bottom:6px}
.tabs a{padding:6px 13px;border-radius:999px;background:var(--bg2);border:1px solid #232d55;color:var(--tx2);font-size:13px;white-space:nowrap}
.tabs a.on,.tabs a:hover{background:var(--ac);border-color:var(--ac);color:#fff}
.pager{display:flex;gap:12px;align-items:center;justify-content:center;margin:22px 0;color:var(--tx2);font-size:13px}
.pager a{background:var(--bg2);border:1px solid #26315c;border-radius:9px;padding:7px 14px}
.nf{text-align:center;padding:60px 14px}
.nf h1{font-size:64px;margin:0;color:var(--ac)}

/* ============ player (NK Player v2) ============ */
.wp{position:relative;background:#000;border-radius:var(--r);overflow:hidden;margin:14px 0 16px;box-shadow:var(--sh),0 0 0 1px rgba(91,140,255,.14)}
.wp-stage{position:relative;background:#000;aspect-ratio:16/9;width:100%}
.wp-stage.imm{aspect-ratio:auto;height:100dvh}
.wp-player,.wp-player iframe,.wp-player video{width:100%;height:100%;display:block;border:0;background:#000;object-fit:contain}
.wp-player iframe{min-height:100%}

/* overlay UI */
.nk-top{position:absolute;top:0;left:0;right:0;z-index:6;display:flex;align-items:center;gap:8px;padding:10px 12px;background:linear-gradient(to bottom,rgba(0,0,0,.82),rgba(0,0,0,0));transition:opacity .25s,transform .25s;pointer-events:none}
.stage-ui .nk-top{opacity:1}
.wp-stage:not(.stage-ui) .nk-top{opacity:0;transform:translateY(-6px)}
.wp-stage:not(.stage-ui) .nk-top .nk-btn{pointer-events:none}
.nk-title{flex:1;min-width:0;color:#fff;font-size:13px;font-weight:700;text-shadow:0 1px 4px #000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nk-top .nk-btn{pointer-events:auto}

.nk-bot{position:absolute;bottom:0;left:0;right:0;z-index:6;padding:38px 12px 10px;background:linear-gradient(to top,rgba(0,0,0,.88),rgba(0,0,0,0));transition:opacity .25s,transform .25s;pointer-events:none}
.stage-ui .nk-bot{opacity:1}
.wp-stage:not(.stage-ui) .nk-bot{opacity:0;transform:translateY(8px)}
.wp-stage:not(.stage-ui) .nk-bot *{pointer-events:none}

.nk-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:0;border-radius:999px;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .15s,transform .1s}
.nk-btn:hover{background:rgba(255,255,255,.28)}
.nk-btn:active{transform:scale(.93)}
.nk-btn svg{width:18px;height:18px;fill:currentColor;pointer-events:none}
.nk-btn.on{background:var(--ac)}

.srvs{display:flex;gap:6px;overflow-x:auto;max-width:100%;pointer-events:auto;scrollbar-width:none;padding-bottom:2px}
.srvs::-webkit-scrollbar{display:none}
.lbl{font-size:10px;color:var(--tx2);text-transform:uppercase;letter-spacing:.5px;padding-top:6px;font-weight:700}
.srv{flex:0 0 auto;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:#e6ebff;border-radius:999px;padding:6px 13px;font-size:12px;white-space:nowrap;cursor:pointer;transition:all .15s}
.srv:hover{border-color:var(--ac)}
.srv.on{background:linear-gradient(90deg,var(--ac),var(--ac2));border-color:transparent;color:#fff;font-weight:700;box-shadow:0 2px 12px rgba(91,140,255,.45)}
.srv.bad{opacity:.4;text-decoration:line-through}

/* transport (video native) */
.nk-tv{display:none;align-items:center;gap:8px;width:100%;margin-top:10px;pointer-events:auto}
.nk-tv.c{display:flex}
.nk-tv .play{flex:0 0 42px;width:42px;height:42px;border-radius:999px;border:0;background:linear-gradient(135deg,var(--ac),var(--ac2));color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(91,140,255,.5);transition:transform .12s}
.nk-tv .play:active{transform:scale(.9)}
.nk-tv .play svg{width:20px;height:20px;fill:#fff}
.nk-time{color:#c6cff2;font:12px/1 Consolas,Menlo,monospace;min-width:84px;text-align:center}
.nk-range{flex:1;min-width:0;height:5px;-webkit-appearance:none;appearance:none;background:linear-gradient(to right,var(--ac) var(--p,0%),rgba(255,255,255,.22) var(--p,0%));border-radius:99px;outline:none;cursor:pointer}
.nk-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:15px;height:15px;border-radius:50%;background:#fff;border:3px solid var(--ac);box-shadow:0 2px 6px rgba(0,0,0,.4)}
.nk-range::-moz-range-thumb{width:15px;height:15px;border-radius:50%;background:#fff;border:3px solid var(--ac)}
.nk-mini{flex:0 0 auto;border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:9px;font-size:12px;font-weight:700;padding:7px 10px;cursor:pointer;transition:background .15s}
.nk-mini:hover{background:rgba(255,255,255,.26)}
.nk-vol{flex:0 0 60px;height:5px;-webkit-appearance:none;appearance:none;background:rgba(255,255,255,.3);border-radius:99px;outline:none}

/* center play (video) */
.nk-center{position:absolute;inset:0;margin:auto;width:74px;height:74px;border-radius:50%;border:0;background:rgba(91,140,255,.92);color:#fff;cursor:pointer;z-index:5;display:none;align-items:center;justify-content:center;box-shadow:0 8px 34px rgba(0,0,0,.5),0 0 0 8px rgba(91,140,255,.15);transition:transform .12s,background .2s;animation:nkpop .3s ease}
.nk-center.show{display:flex}
.nk-center:active{transform:scale(.9)}
.nk-center svg{width:30px;height:30px;fill:#fff}
@keyframes nkpop{from{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}

/* panah prev / next episode */
.nk-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:46px;height:46px;border-radius:50%;border:0;background:rgba(0,0,0,.45);color:#fff;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);transition:opacity .2s,background .15s;pointer-events:auto}
.nk-arrow:hover{background:rgba(91,140,255,.55)}
.nk-arrow.pv{left:10px}
.nk-arrow.nx{right:10px}
.nk-arrow.hide{opacity:0;pointer-events:none}

/* auto-next */
.nk-next{position:absolute;right:14px;bottom:14px;z-index:7;background:rgba(10,14,30,.92);border:1px solid rgba(91,140,255,.5);border-radius:14px;padding:12px 14px;color:#fff;font-size:13px;max-width:260px;box-shadow:0 10px 34px rgba(0,0,0,.55);display:none;pointer-events:auto;animation:nkpop .25s ease}
.nk-next.show{display:block}
.nk-next b{display:block;margin-bottom:6px}
.nk-next .btns{display:flex;gap:8px;margin-top:8px}
.nk-next .nb{flex:1;border:0;border-radius:9px;padding:8px 10px;font-size:12px;font-weight:700;cursor:pointer;color:#fff}
.nk-next .nb.go{background:linear-gradient(90deg,var(--ac),var(--ac2))}
.nk-next .nb.later{background:rgba(255,255,255,.14)}

/* loading & msg */
.wp-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#cfd7f5;font-size:13px;background:radial-gradient(circle at 50% 40%,rgba(91,140,255,.14),#000 70%);z-index:8}
.spin{width:26px;height:26px;border:3px solid rgba(91,140,255,.25);border-top-color:var(--ac);border-radius:50%;animation:sp .8s linear infinite}
.wp-loading .st{font-weight:700}
@keyframes sp{to{transform:rotate(360deg)}}
.wp-msg{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:rgba(5,8,18,.94);color:var(--tx2);font-size:13px;padding:20px;text-align:center;z-index:9}
.wp-msg b{color:#fff;font-size:15px}

/* body watch */
.p-watch .sec{margin-top:22px}
.wt{font-size:20px;margin:18px 0 4px;line-height:1.3}
.wt .ep{color:var(--ac);font-weight:700}

@media (max-width:640px){
  .wp{margin:12px -14px 14px;border-radius:0;box-shadow:0 0 0 1px rgba(91,140,255,.14)}
  .wp-stage:not(.imm){aspect-ratio:16/9}
  .nk-title{font-size:12px}
  .nk-tv .nk-time{min-width:66px;font-size:11px}
  .nk-arrow{width:38px;height:38px;font-size:18px}
}

.wp-stage:fullscreen,.wp-stage:-webkit-full-screen{aspect-ratio:auto;width:100vw;height:100vh}
.wp-stage:fullscreen .wp-player video,.wp-stage:-webkit-full-screen .wp-player video{object-fit:contain}
.wp-stage:fullscreen .nk-tv{background:none}

@media (orientation:landscape) and (max-width:900px){
  .wp-stage:not(.imm){aspect-ratio:16/9}
  .wp-stage.imm{height:100dvh}
}

/* footer */
.ft{border-top:1px solid #20294d;background:var(--bg2);padding:22px 0;margin-top:34px}
.ft-in{max-width:var(--max);margin:0 auto;padding:0 14px;color:var(--tx2);font-size:13px}
.ft-in p{margin:0 0 8px}
.ft-in nav{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:8px}
.ft-in a{color:var(--ac)}
.fine{font-size:11px;opacity:.75}

@media (max-width:640px){
  .burger{display:block}
  .nav-open .nv{display:none}
  .an-top{flex-direction:row;gap:12px}
  .an-cv{flex:0 0 118px;max-width:118px}
  .an-info h1{font-size:18px}
  .hero h1{font-size:21px}
  .grid{grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:9px}
  .eps{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}
  .epnav{flex-direction:column}
  .epnav .btn{text-align:center}
}
@media (min-width:641px){.nav-open .nv{display:flex !important}}
