@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.video-grid{display:grid;gap:16px;grid-template-columns:repeat(6,1fr)}@media(max-width:1279px){.video-grid{grid-template-columns:repeat(5,1fr)}}@media(max-width:1023px){.video-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:767px){.video-grid{gap:8px;grid-template-columns:repeat(3,1fr)}}@media(max-width:639px){.video-grid{grid-template-columns:repeat(2,1fr)}}.video-grid.grid-5{grid-template-columns:repeat(5,1fr)}@media(max-width:1023px){.video-grid.grid-5{grid-template-columns:repeat(4,1fr)}}@media(max-width:767px){.video-grid.grid-5{grid-template-columns:repeat(3,1fr)}}@media(max-width:639px){.video-grid.grid-5{grid-template-columns:repeat(2,1fr)}}.video-grid.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1023px){.video-grid.grid-4{grid-template-columns:repeat(3,1fr)}}@media(max-width:767px){.video-grid.grid-4{grid-template-columns:repeat(2,1fr)}}.video-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:block;overflow:hidden;text-decoration:none;transition:all .25s ease}.video-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.08);transform:translateY(-2px)}.video-card:hover .card-cover img{transform:scale(1.03)}.video-card:hover .card-title{color:#2563eb}.video-card .card-cover{aspect-ratio:2/3;background:#f1f5f9;overflow:hidden;position:relative}.video-card .card-cover img{height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .25s ease;width:100%}.video-card .card-cover .card-type{align-items:center;background:rgba(37,99,235,.9);border-radius:4px;color:#fff;display:inline-flex;font-size:12px;font-weight:500;left:8px;letter-spacing:.02em;padding:2px 8px;position:absolute;top:8px;z-index:2}.video-card .card-cover .card-status{background:linear-gradient(0deg,rgba(0,0,0,.7),transparent);bottom:0;color:#fff;font-size:12px;left:0;padding:4px 8px;position:absolute;right:0;text-align:right;z-index:2}.video-card .card-cover .card-score{align-items:center;background:hsla(0,0%,100%,.95);border-radius:4px;color:#d97706;display:flex;flex-direction:row;flex-wrap:nowrap;font-size:12px;font-weight:600;gap:2px;justify-content:flex-start;padding:2px 8px;position:absolute;right:8px;top:8px;z-index:2}.video-card .card-cover .card-score .icon{height:12px;width:12px}.video-card .card-cover .card-play{align-items:center;background:rgba(37,99,235,.9);border-radius:50%;color:#fff;display:flex;height:44px;justify-content:center;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .25s ease;width:44px;z-index:2}.video-card .card-cover .card-play .icon{height:22px;margin-left:2px;width:22px}.video-card:hover .card-play{opacity:1}.video-card .card-info{padding:12px}.video-card .card-info .card-title{color:#0f172a;font-size:14px;font-weight:500;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;transition:color .15s ease;white-space:nowrap}.video-card .card-info .card-meta{color:#94a3b8;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-card-horizontal{align-items:stretch;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:flex-start;overflow:hidden;text-decoration:none;transition:all .25s ease}.video-card-horizontal:hover{box-shadow:0 2px 8px rgba(0,0,0,.06)}.video-card-horizontal:hover .card-title{color:#2563eb}.video-card-horizontal:hover .card-cover img{transform:scale(1.03)}.video-card-horizontal .card-cover{background:#f1f5f9;flex-shrink:0;overflow:hidden;position:relative;width:130px}@media(max-width:639px){.video-card-horizontal .card-cover{width:100px}}.video-card-horizontal .card-cover img{height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .25s ease;width:100%}.video-card-horizontal .card-cover .card-status{background:rgba(0,0,0,.6);border-radius:4px;bottom:4px;color:#fff;font-size:10px;left:4px;padding:1px 4px;position:absolute}.video-card-horizontal .card-info{align-items:flex-start;display:flex;flex:1;flex-direction:column;flex-wrap:nowrap;justify-content:space-between;min-width:0;padding:12px}.video-card-horizontal .card-info .card-title{color:#0f172a;font-size:14px;font-weight:500;margin-bottom:4px;transition:color .15s ease}.video-card-horizontal .card-info .card-desc,.video-card-horizontal .card-info .card-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.video-card-horizontal .card-info .card-desc{color:#94a3b8;font-size:13px;margin-bottom:8px}.video-card-horizontal .card-info .card-meta{align-items:center;color:#94a3b8;display:flex;flex-direction:row;flex-wrap:wrap;font-size:12px;gap:8px;justify-content:flex-start}.rank-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:block;overflow:hidden;position:relative;text-decoration:none;transition:all .25s ease}.rank-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.08);transform:translateY(-2px)}.rank-card:hover .card-cover img{transform:scale(1.03)}.rank-card:hover .card-title{color:#2563eb}.rank-card .rank-badge{align-items:center;background:#94a3b8;border-radius:0 0 4px 0;color:#fff;display:flex;font-size:12px;font-weight:700;height:26px;justify-content:center;left:0;position:absolute;top:0;width:26px;z-index:3}.rank-card .rank-badge.rank-1{background:#f59e0b}.rank-card .rank-badge.rank-2{background:#9ca3af}.rank-card .rank-badge.rank-3{background:#d97706}.rank-card .card-cover{aspect-ratio:2/3;background:#f1f5f9;overflow:hidden;position:relative}.rank-card .card-cover img{height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .25s ease;width:100%}.rank-card .card-cover .card-status{background:linear-gradient(0deg,rgba(0,0,0,.6),transparent);bottom:0;color:#fff;font-size:12px;left:0;padding:4px 8px;position:absolute;right:0;text-align:right;z-index:2}.rank-card .card-info{padding:12px}.rank-card .card-info .card-title{color:#0f172a;font-size:14px;font-weight:500;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;transition:color .15s ease;white-space:nowrap}.rank-card .card-info .card-meta{color:#94a3b8;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.featured-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:block;grid-column:span 2;grid-row:span 2;overflow:hidden;position:relative;text-decoration:none;transition:all .25s ease}@media(max-width:767px){.featured-card{grid-column:span 1;grid-row:span 1}}.featured-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.1)}.featured-card:hover .card-cover img{transform:scale(1.03)}.featured-card:hover .card-title{color:#2563eb}.featured-card .card-cover{height:100%;min-height:280px;position:relative;width:100%}@media(max-width:767px){.featured-card .card-cover{min-height:200px}}.featured-card .card-cover img{height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .4s ease;width:100%}.featured-card .card-cover:after{background:linear-gradient(0deg,rgba(0,0,0,.8) 0,rgba(0,0,0,.2) 50%,transparent);content:"";inset:0;position:absolute}.featured-card .card-content{bottom:0;left:0;padding:24px;position:absolute;right:0;z-index:2}@media(max-width:767px){.featured-card .card-content{padding:16px}}.featured-card .card-tags{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;justify-content:flex-start;margin-bottom:12px}.featured-card .card-tags .tag{align-items:center;background:hsla(0,0%,100%,.2);border-radius:4px;color:#fff;display:inline-flex;font-size:12px;font-weight:500;letter-spacing:.02em;padding:2px 8px}.featured-card .card-title{color:#fff;display:-webkit-box;font-size:20px;font-weight:600;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;transition:color .15s ease}@media(max-width:767px){.featured-card .card-title{font-size:16px}}.featured-card .card-desc{color:hsla(0,0%,100%,.7);display:-webkit-box;font-size:13px;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}@media(max-width:767px){.featured-card .card-desc{display:none}}.featured-card .card-meta{align-items:center;color:hsla(0,0%,100%,.6);display:flex;flex-direction:row;flex-wrap:wrap;font-size:13px;gap:12px;justify-content:flex-start;margin-top:8px}.featured-card .play-btn{align-items:center;background:rgba(37,99,235,.9);border-radius:50%;color:#fff;display:flex;height:56px;justify-content:center;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .25s ease;width:56px;z-index:2}@media(max-width:767px){.featured-card .play-btn{height:44px;width:44px}}.featured-card .play-btn .icon{height:26px;margin-left:2px;width:26px}.featured-card:hover .play-btn{opacity:1}.list-page{padding:24px 0}.page-title{color:#0f172a;font-size:20px;font-weight:600;letter-spacing:-.02em;margin-bottom:20px}.filter-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:24px;padding:20px}.filter-section .filter-group{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;justify-content:flex-start;padding:8px 0}.filter-section .filter-group:not(:last-child){border-bottom:1px solid #e2e8f0}.filter-section .filter-group.filter-active{margin-bottom:8px;padding-bottom:16px}.filter-section .filter-group .filter-label{color:#475569;flex-shrink:0;font-size:13px;font-weight:500;padding-top:4px;width:70px}@media(max-width:639px){.filter-section .filter-group .filter-label{margin-bottom:4px;padding-top:0;width:100%}}.filter-section .filter-group .filter-options,.filter-section .filter-group .filter-tags{align-items:center;display:flex;flex:1;flex-direction:row;flex-wrap:wrap;gap:4px;justify-content:flex-start}.filter-section .filter-group .filter-option{border-radius:6px;color:#94a3b8;cursor:pointer;font-size:13px;padding:4px 12px;transition:all .15s ease}.filter-section .filter-group .filter-option:hover{background:#f8fafc;color:#0f172a}.filter-section .filter-group .filter-option.active{background:rgba(37,99,235,.06);color:#2563eb;font-weight:500}.filter-section .filter-tag{align-items:center;background:rgba(37,99,235,.06);border:1px solid rgba(37,99,235,.15);border-radius:9999px;color:#2563eb;display:flex;flex-direction:row;flex-wrap:nowrap;font-size:13px;gap:4px;justify-content:flex-start;padding:4px 12px}.filter-section .filter-tag.active{font-weight:500}.filter-section .filter-tag svg{cursor:pointer;flex-shrink:0;height:12px;transition:color .15s ease;width:12px}.filter-section .filter-tag svg:hover{color:#dc2626}.filter-extend.hidden{display:none}.filter-toggle-wrap{border-top:1px solid #e2e8f0;margin-top:8px;padding-top:16px}.filter-toggle-btn,.filter-toggle-wrap{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center}.filter-toggle-btn{background:#f8fafc;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:13px;gap:4px;padding:8px 20px;transition:all .15s ease}.filter-toggle-btn:hover{background:rgba(37,99,235,.04);color:#2563eb}.filter-toggle-btn .toggle-icon{height:14px;transition:transform .15s ease;width:14px}.filter-toggle-btn .toggle-icon.rotate{transform:rotate(180deg)}