:root {
    --bg: #0b0c10;
    --surface: #1a1c23;
    --text: #e2e8f0;
    --muted: #94a3b8;
    --primary: #45f3ff;
    --accent: #ff2a5f;
    --border: rgba(255,255,255,0.1);
    --radius: 12px;
}
* { margin:0; padding:0; box-sizing:border-box; font-family: 'Inter', sans-serif; }
body { background:var(--bg); color:var(--text); line-height:1.5; }
.navbar {
    display:flex; justify-content:space-between; align-items:center;
    padding:1rem 2rem; background:var(--surface); border-bottom:1px solid var(--border);
    position:sticky; top:0; z-index:10;
}
.logo { font-size:1.4rem; font-weight:700; color:var(--text); text-decoration:none; }
.logo span { color:var(--accent); }
.search-bar input {
    padding:0.6rem 1rem; border-radius:8px; border:1px solid var(--border);
    background:rgba(255,255,255,0.05); color:white; outline:none; width:280px;
}
.container { max-width:1200px; margin:auto; padding:2rem; }
.category-filters {
    display:flex; gap:0.75rem; overflow-x:auto; padding-bottom:1rem; margin-bottom:1rem;
}
.chip {
    padding:0.5rem 1rem; border-radius:99px; border:1px solid var(--border);
    background:var(--surface); color:var(--text); cursor:pointer; white-space:nowrap;
}
.chip.active { background:var(--primary); color:#000; }
.video-grid {
    display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:1.5rem;
}
.video-card {
    background:var(--surface); border-radius:var(--radius); overflow:hidden;
    text-decoration:none; color:var(--text); border:1px solid var(--border);
    transition:0.2s;
}
.video-card:hover { transform:translateY(-4px); border-color:var(--primary); }
.thumbnail-wrapper { aspect-ratio:16/9; }
.thumbnail { width:100%; height:100%; object-fit:cover; }
.video-info { padding:1rem; }
.video-title { font-size:1rem; margin-bottom:0.5rem; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.tag-badge {
    font-size:0.75rem; background:rgba(69,243,255,0.1); color:var(--primary);
    padding:2px 8px; border-radius:4px;
}
.player-wrapper {
    width:100%; aspect-ratio:16/9; background:#000; border-radius:var(--radius);
    overflow:hidden; margin-bottom:1.5rem;
}
.player-wrapper iframe { width:100%; height:100%; border:none; }
.back-link {
    color:var(--muted); text-decoration:none; margin-bottom:1rem; display:inline-block;
}
.video-details { margin-bottom:2rem; }