:root{--bg:#171226;--panel:#221b38;--line:#352b55;--tx:#f1ecfb;--mut:#a79fc0;--ac:#f2b84b;--ac2:#3fb8af}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--tx);font:16px/1.6 'Hind Siliguri',sans-serif}
a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
.top{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--panel);border-bottom:2px solid var(--ac);position:sticky;top:0;z-index:5}
.brand{font-size:22px;font-weight:700;color:var(--ac)}
.search{display:flex;gap:6px;flex:1;max-width:420px}
input,select,textarea{width:100%;padding:10px 12px;background:var(--bg);color:var(--tx);border:1px solid var(--line);border-radius:6px;font:inherit}
button{padding:10px 18px;background:var(--ac);color:#211a08;border:0;border-radius:6px;font:inherit;font-weight:700;cursor:pointer}
button.ghost{background:none;color:var(--ac);border:1px dashed var(--ac);margin:8px 8px 8px 0}
button.link{background:none;color:var(--mut);padding:0;font-weight:400}button.x{padding:8px 12px;background:var(--line);color:var(--tx)}
.genres{display:flex;gap:8px;overflow-x:auto;padding:14px 20px;scrollbar-width:none}
.genres a{white-space:nowrap;padding:6px 14px;border:1px solid var(--line);border-radius:99px;color:var(--mut)}
.genres a.on{background:var(--ac2);color:#062724;border-color:var(--ac2);font-weight:500}
main{padding:8px 20px 40px;max-width:1200px;margin:auto}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px}
.card h3{font-size:15px;margin:8px 0 0;line-height:1.35}.card p{margin:0;color:var(--mut);font-size:13px}
.pw{position:relative;aspect-ratio:2/3;border-radius:8px;overflow:hidden;background:var(--panel);border:1px solid var(--line)}
.pw img,.dp img{width:100%;height:100%;object-fit:cover;display:block}
.card:hover .pw{border-color:var(--ac)}
.noposter{height:100%;display:grid;place-items:center;font-size:56px;color:var(--line)}
.qb{position:absolute;left:0;bottom:10px;background:var(--ac);color:#211a08;font-weight:700;font-size:12px;padding:2px 10px;border-radius:0 4px 4px 0}
.pager{display:flex;gap:6px;justify-content:center;margin-top:28px;flex-wrap:wrap}
.pager a{padding:6px 12px;border:1px solid var(--line);border-radius:6px}.pager a.on{background:var(--ac);color:#211a08}
.empty{color:var(--mut);padding:24px 0}
.detail{display:grid;grid-template-columns:260px 1fr;gap:28px;padding-top:28px}
.dp{aspect-ratio:2/3;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--panel)}
.di h1{margin:0 0 4px;font-size:30px;line-height:1.25}.meta{color:var(--ac2);margin:0 0 14px}.desc{max-width:65ch;color:#d9d2ec}
.dl{display:flex;flex-wrap:wrap;gap:10px}
.dl a{display:flex;flex-direction:column;align-items:center;min-width:110px;padding:10px 18px;background:var(--panel);border:1px solid var(--ac);border-radius:8px}
.dl a:hover{background:var(--ac);color:#211a08}.dl b{font-size:18px}.dl span{font-size:12px;color:var(--mut)}.dl a:hover span{color:#211a08}
footer{text-align:center;color:var(--mut);padding:24px;border-top:1px solid var(--line)}
.login{max-width:360px}.login label,.admin label{display:block;margin:12px 0;color:var(--mut);font-size:14px}
.admin section{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:20px;margin:20px 0}
.row{display:grid;grid-template-columns:1fr 2fr 1fr;gap:12px}
.lr{display:grid;grid-template-columns:100px 1fr 2fr auto;gap:8px;margin-bottom:8px}
.thumb{width:80px;border-radius:6px;margin:0 0 8px}
.ar{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.ar span{display:flex;gap:14px;align-items:center}.ar form{margin:0}.ar a{color:var(--ac2)}
.ok{background:#12352f;padding:10px 14px;border-radius:6px}.err{background:#4a1d2b;padding:10px 14px;border-radius:6px}
@media(max-width:640px){.detail{grid-template-columns:1fr}.dp{max-width:220px}.row,.lr{grid-template-columns:1fr}.search button{display:none}}

.brand{display:flex;align-items:center}
.logo{display:inline-flex;align-items:center;font-size:26px;font-weight:700;letter-spacing:.5px;line-height:1}
.logo .l1{color:var(--tx)}
.logo .l2{background:var(--ac);color:#211a08;padding:3px 8px;margin-left:3px;border-radius:5px}
.logo-img{height:38px;width:auto;display:block}

.pg{max-width:680px;margin:auto;padding-top:24px}
.pp{position:relative;width:min(300px,80%);aspect-ratio:2/3;margin:0 auto 18px;border-radius:12px;overflow:hidden;background:var(--panel);border:1px solid var(--line)}
.pp img{width:100%;height:100%;object-fit:cover;display:block}
.b{position:absolute;font-weight:700;font-size:13px;padding:5px 12px;text-transform:uppercase}
.bq{top:14px;right:14px;background:var(--ac);color:#211a08;border-radius:5px}
.bl{left:0;bottom:0;background:#4c8a1f;color:#fff;border-radius:0 8px 0 0}
.bt{right:0;bottom:0;background:#d22f3d;color:#fff;border-radius:8px 0 0 0}
.box{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:16px}
.box h1{text-align:center;margin:0 0 6px;font-size:26px;line-height:1.3}.box h2{margin:0 0 12px;font-size:20px}
.ql{text-align:center;color:var(--ac);font-size:18px;margin:0 0 16px}
.tri{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;color:var(--mut);margin-bottom:18px}
.tri b{display:block;color:var(--ac);font-size:17px}.tri div:nth-child(3) b{color:var(--ac2)}
.info{list-style:none;padding:0;margin:0 0 12px}.info li{display:flex;gap:10px;padding:5px 0}.info li>span{width:26px}
.info b{color:var(--tx)}
.box .desc{color:#d9d2ec;margin:12px 0 0}

.card .b{font-size:11px;padding:3px 8px}.card .bq{top:8px;right:8px}
