:root{
  --bg:#0f1720; --card:#0b1220; --muted:#9aa4b2; --accent:#22c55e;
}
*{box-sizing:border-box}
html,body{height:100%;margin:0;font-family:Inter,Segoe UI,Arial,Helvetica,sans-serif;background:linear-gradient(180deg,#071126 0%, #071025 100%);color:#e6eef6}
header{padding:1rem 1.25rem}
h1{margin:.25rem 0;font-size:1.25rem}
p{margin:0;color:var(--muted)}
main{padding:1rem}
.notice{background:rgba(255,255,255,0.03);padding:.6rem;border-radius:8px;margin-bottom:1rem}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.card{background:rgba(255,255,255,0.03);border-radius:8px;overflow:hidden;position:relative;cursor:pointer;border:1px solid rgba(255,255,255,0.03)}
.card img,.card video{display:block;width:100%;height:150px;object-fit:cover}
.meta{padding:.5rem;font-size:.8rem;color:var(--muted);display:flex;justify-content:space-between;align-items:center}
.meta .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80%}
.meta .ext{font-weight:600;color:var(--accent)}
.toast{position:fixed;right:16px;bottom:16px;background:#0b1220;color:#cdecd3;padding:.6rem .8rem;border-radius:8px;box-shadow:0 6px 18px rgba(2,6,23,0.6);opacity:0;transform:translateY(8px);transition:all .18s ease}
.toast.show{opacity:1;transform:none}
footer{padding:1rem;color:var(--muted);font-size:.85rem}

@media (max-width:420px){.grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.card img,.card video{height:120px}}
