:root{--bg-primary:#1a1a2e;--bg-secondary:#16213e;--bg-card:#0f3460;--text-primary:#e0e0e0;--text-secondary:#a0a0a0;--accent:#e94560;--accent-hover:#ff6b81;--success:#2ed573;--warning:#ffa502;--border:#2a2a4a;--radius:8px;--shadow:0 2px 8px #0000004d}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}.btn{border-radius:var(--radius);cursor:pointer;border:none;padding:.5rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .2s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-outline{border:1px solid var(--accent);color:var(--accent);background:0 0}.btn-outline:hover{background:var(--accent);color:#fff}.main-nav{background:var(--bg-secondary);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.75rem 2rem;display:flex}.main-nav .nav-brand .nav-logo{color:var(--accent);letter-spacing:2px;font-size:1.5rem;font-weight:800}.main-nav .nav-links{align-items:center;gap:1.5rem;display:flex}.main-nav .nav-links .nav-link{color:var(--text-secondary);font-weight:500}.main-nav .nav-links .nav-link:hover{color:var(--text-primary)}.auth-page{justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.auth-page .auth-container{background:var(--bg-secondary);border-radius:var(--radius);box-shadow:var(--shadow);width:100%;max-width:400px;padding:2.5rem}.auth-page .auth-container h1{text-align:center;color:var(--accent);letter-spacing:4px;margin-bottom:.25rem;font-size:2.5rem}.auth-page .auth-container .subtitle{text-align:center;color:var(--text-secondary);margin-bottom:2rem}.auth-page .auth-link{text-align:center;color:var(--text-secondary);margin-top:1.5rem}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-secondary);margin-bottom:.35rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text-primary);padding:.6rem .75rem;font-size:.9rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);outline:none}.auth-form .btn{width:100%;margin-top:.5rem;padding:.75rem}.error-message{border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);background:#e9456026;margin-bottom:1rem;padding:.75rem;font-size:.85rem}.search-page{max-width:1400px;margin:0 auto;padding:2rem}.search-header{margin-bottom:2rem}.search-bar{gap:.75rem;margin-bottom:1rem;display:flex}.search-bar .search-input{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);flex:1;padding:.75rem 1rem;font-size:1rem}.search-bar .search-input:focus{border-color:var(--accent);outline:none}.search-filters{gap:.75rem;display:flex}.search-filters .filter-select{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;padding:.5rem .75rem;font-size:.85rem}.results-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.content-card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.content-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0006}.content-card .card-link{color:inherit;display:block}.content-card .card-thumbnail{aspect-ratio:16/9;background:var(--bg-primary);position:relative;overflow:hidden}.content-card .card-thumbnail img{object-fit:cover;width:100%;height:100%}.content-card .card-thumbnail .type-badge{background:var(--accent);color:#fff;text-transform:uppercase;border-radius:4px;padding:.2rem .5rem;font-size:.7rem;font-weight:700;position:absolute;top:.5rem;left:.5rem}.content-card .card-thumbnail .duration-badge{color:#fff;background:#000c;border-radius:4px;padding:.15rem .4rem;font-size:.75rem;position:absolute;bottom:.5rem;right:.5rem}.content-card .card-info{padding:.75rem}.content-card .card-info .card-title{white-space:nowrap;text-overflow:ellipsis;margin-bottom:.25rem;font-size:.95rem;font-weight:600;overflow:hidden}.content-card .card-info .card-category{color:var(--text-secondary);margin-bottom:.5rem;font-size:.8rem}.content-card .card-info .card-keywords{flex-wrap:wrap;gap:.35rem;display:flex}.keyword-tag,.keyword-tag-sm{color:var(--accent);background:#e9456026;border-radius:4px;padding:.15rem .45rem;font-size:.7rem}.keyword-tag{padding:.25rem .6rem;font-size:.8rem}.star-button{cursor:pointer;color:var(--text-secondary);z-index:10;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;padding:.25rem;font-size:1.4rem;transition:all .2s;display:flex;position:absolute;top:.5rem;right:.5rem}.star-button:hover{color:var(--warning);background:#000c}.star-button.favorited{color:var(--warning)}.content-view-page{max-width:1200px;margin:0 auto;padding:2rem}.content-detail .video-player video{border-radius:var(--radius);background:#000;width:100%;max-height:70vh}.content-detail .image-viewer{text-align:center}.content-detail .image-viewer img{border-radius:var(--radius);max-width:100%;max-height:80vh}.content-detail .text-viewer .markdown-content{background:var(--bg-secondary);border-radius:var(--radius);max-width:800px;margin:0 auto;padding:2rem;line-height:1.7}.content-detail .text-viewer .markdown-content h1,.content-detail .text-viewer .markdown-content h2,.content-detail .text-viewer .markdown-content h3{color:var(--text-primary);margin:1.5rem 0 .75rem}.content-detail .text-viewer .markdown-content p{margin-bottom:1rem}.content-detail .text-viewer .markdown-content code{background:var(--bg-primary);border-radius:4px;padding:.15rem .4rem}.content-detail .text-viewer .markdown-content pre{background:var(--bg-primary);border-radius:var(--radius);margin-bottom:1rem;padding:1rem;overflow-x:auto}.content-detail .content-info{margin-top:1.5rem}.content-detail .content-info h1{margin-bottom:.75rem;font-size:1.5rem}.content-detail .content-info .content-meta{gap:.75rem;margin-bottom:1rem;display:flex}.content-detail .content-info .content-meta .content-type-badge{background:var(--accent);color:#fff;text-transform:uppercase;border-radius:4px;padding:.2rem .6rem;font-size:.8rem}.content-detail .content-info .content-meta .content-category{background:var(--bg-card);border-radius:4px;padding:.2rem .6rem;font-size:.8rem}.content-detail .content-info .content-description{color:var(--text-secondary);margin-bottom:1rem;line-height:1.6}.content-detail .content-info .content-keywords{flex-wrap:wrap;gap:.5rem;display:flex}.favorites-page{max-width:1000px;margin:0 auto;padding:2rem}.favorites-page h1{margin-bottom:2rem}.favorites-page .favorites-section{background:var(--bg-secondary);border-radius:var(--radius);margin-bottom:1.5rem;padding:1.5rem}.favorites-page .favorites-section h2{color:var(--accent);margin-bottom:1rem;font-size:1.1rem}.favorites-page .favorites-section .empty-state{color:var(--text-secondary);font-style:italic}.favorites-page .favorites-section .favorites-list{list-style:none}.favorites-page .favorites-section .favorites-list li{border-bottom:1px solid var(--border);padding:.5rem 0}.favorites-page .favorites-section .favorites-list li:last-child{border-bottom:none}.favorites-page .favorites-section .keyword-tags,.favorites-page .favorites-section .category-tags{flex-wrap:wrap;gap:.5rem;display:flex}.favorites-page .favorites-section .category-tag{background:var(--bg-card);border-radius:4px;padding:.25rem .6rem;font-size:.8rem}.admin-page{max-width:1000px;margin:0 auto;padding:2rem}.admin-page h1{margin-bottom:2rem}.admin-page .admin-section{background:var(--bg-secondary);border-radius:var(--radius);margin-bottom:1.5rem;padding:1.5rem}.admin-page .admin-section h2{color:var(--accent);margin-bottom:1rem;font-size:1.1rem}.admin-page .admin-section .admin-description{color:var(--text-secondary);margin-bottom:1rem}.admin-page .invite-result{background:var(--bg-primary);border-radius:var(--radius);margin-top:1rem;padding:.75rem}.admin-page .invite-result code{color:var(--success);font-size:1.1rem;font-weight:700}.admin-page .config-form .btn{margin-top:.5rem}.loading,.no-results,.not-found{text-align:center;color:var(--text-secondary);padding:3rem}@media (width<=768px){.main-nav{padding:.75rem 1rem}.main-nav .nav-links{gap:.75rem}.search-page,.content-view-page,.favorites-page,.admin-page{padding:1rem}.results-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.search-bar{flex-direction:column}}