*{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#0f0f0f;--card:#1c1c1c;--line:#272727;--txt:#f1f1f1;--mut:#aaa;--red:#ff0033}
body{background:var(--bg);color:var(--txt);font-family:Roboto,'Segoe UI',system-ui,sans-serif}
a{color:inherit;text-decoration:none}
.top{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:12px;padding:8px 14px;background:rgba(15,15,15,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:center;gap:7px;font-weight:700;font-size:18px;letter-spacing:-.5px}
.logo .ic{width:30px;height:21px;background:var(--red);border-radius:6px;display:grid;place-items:center}
.logo .ic svg{width:12px;height:12px;fill:#fff;margin-left:2px}
.sbar{flex:1;display:flex;max-width:640px;margin:0 auto}
.sbar input{flex:1;background:#121212;border:1px solid var(--line);border-right:0;border-radius:22px 0 0 22px;padding:9px 16px;color:var(--txt);font-size:15px;outline:none}
.sbar input:focus{border-color:#3ea6ff}
.sbar button{background:#222;border:1px solid var(--line);border-radius:0 22px 22px 0;padding:0 18px;color:var(--txt);cursor:pointer}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px 14px;padding:16px;max-width:1400px;margin:0 auto}
.card{cursor:pointer}
.card .th{position:relative;width:100%;aspect-ratio:16/9;background:#000;border-radius:10px;overflow:hidden}
.card img{width:100%;height:100%;object-fit:cover;display:block}
.card .len{position:absolute;right:6px;bottom:6px;background:rgba(0,0,0,.85);padding:2px 5px;border-radius:4px;font-size:12px;font-weight:600}
.card .tt{margin-top:9px;font-size:14px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card .mt{margin-top:4px;font-size:13px;color:var(--mut);line-height:1.4}
.rowh{display:flex;align-items:center;gap:8px;padding:12px 16px 0;font-weight:700}
.rowh .see{margin-left:auto;font-size:13px;color:#3ea6ff;font-weight:500}
.srow{display:flex;gap:10px;overflow-x:auto;padding:10px 16px}
.srow .sc{flex:0 0 150px;cursor:pointer}
.srow .sc .th{aspect-ratio:9/16;border-radius:12px}
.srow .sc .tt{font-size:13px;-webkit-line-clamp:2}
.nav{position:fixed;bottom:0;left:0;right:0;z-index:60;display:flex;background:#0f0f0fee;border-top:1px solid var(--line);backdrop-filter:blur(8px)}
.nav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 0 10px;font-size:10.5px;color:var(--mut)}
.nav a.on{color:var(--txt)}
.nav svg{width:21px;height:21px;fill:currentColor}
.pad{padding-bottom:64px}
.banner{padding:14px 16px;color:#ffb84d;font-size:14px}
.errbox{max-width:520px;margin:60px auto;text-align:center;color:var(--mut);font-size:14px;line-height:1.6}
button.ghost{background:#272727;border:0;border-radius:18px;padding:8px 14px;color:var(--txt);font-size:13px;font-weight:500;cursor:pointer}
button.ghost.on{background:#f1f1f1;color:#0f0f0f}
@media(min-width:900px){.nav{display:none}.pad{padding-bottom:20px}}
