*::-webkit-scrollbar{width:2px;}
*::-webkit-scrollbar-track{background:rgba(255,255,255,0.1)}
*::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.35);border-radius:1px}
*::-webkit-scrollbar-button{display:none;height:0;width:0}
*::-webkit-scrollbar-corner{background:transparent}
.sidebar{width:200px;height:100%;background-color:#0f0f0f;transition:width 0.3s;padding:0 20px;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden}
.sidebar-container{flex:1 1 auto;width:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;border-radius:9px;background:#262626}
.sidebar-item{flex-shrink:0}
.sidebar-item.is-open{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.sidebar-item.is-open .sidebar-title{flex-shrink:0}
.sidebar-title{padding:10px 15px;color:#fff;display:flex;align-items:center;justify-content:space-between;cursor:pointer; border-bottom:1px solid #2d2d2d;}
.sidebar-title .title{font-size:15px;}
.sidebar-title .icon{font-size:12px;transition:transform 0.3s;  font-size:8px;}
.sidebar-title .rotate{transform:rotate(90deg);}
.sidebar-item:last-child .sidebar-title{border:0}
.sidebar-content{display:none;background:#1a1a1a; overflow-x:hidden; overflow-y:auto; padding-top: 5px;}
.sidebar-content.show{display:block;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto}
.sidebar-content ul{list-style:none;padding:0;margin:0}
.sidebar-content li{display:flex;align-items:center;box-sizing:border-box;width:100%;margin:0;padding:9px 0;transition:all 0.3s ease; padding-left:25px;}
.sidebar-content li::before{content:"";flex-shrink:0;width:3px;height:3px;margin-right:10px;border-radius:50%;background-color:#ccc}
.sidebar-content li:hover:not(.active){transform:translateX(5px); color:#cc5200;}
.sidebar-content li.active{background:rgba(255,255,255,0.1);transform:none}
.sidebar-content li.active::before{background-color:#fff}
.sidebar-content li a{color:#ccc;text-decoration:none;font-size:13px;transition:color 0.3s; position: relative;}
.sidebar-content li.active a{color:#fff;font-weight:500}

section.container{min-width: 1500px; box-sizing: border-box;}
.content{flex:1; padding:10px 0; padding-right:38px; padding-left:20px; overflow-x:hidden; overflow-y:auto;}
.content .group-title{font-size:18px;color:#EFEFEF;margin:2px 0 15px 0;display:flex;align-items:center; line-height:30px; font-weight:500;}
.content .group-title::before{content:"| ☆";color:#EFEFEF;margin-right:8px;font-size:22px;  line-height:30px;}
.card-list {display: grid;grid-template-columns: repeat(5, calc((100% - 80px) / 5));gap: 20px;margin-bottom: 50px;}
.card-list:last-child{margin:0}
.card-list a{text-decoration:none;}
.card-item{background-color:#1a1a1a; border-radius:9px; overflow:hidden}
.card-item .card-video,.card-img{width:100%;aspect-ratio: 16 / 9;overflow: hidden; background-color: #000; background-image: url("/resource/image/common/default_cover.png"); background-size: cover;}
.card-item .card-img img{width:100%; height: 100%; object-fit:cover;}
.card-item .card-video video{width:100%; height:100%;}
.card-item .card-desc{padding:15px; padding-bottom: 20px;}
.card-item .card-desc .title{font-size:15px;color:#efefef;margin-bottom:5px}
.card-item .card-desc .sub-title{font-size:13px;color:#999; line-height: 20px; height:20px; overflow: hidden;}
.card-list a.is-playing{position:relative;outline:1px solid #4dabf7;outline-offset:0;border-radius:12px;box-shadow:0 0 0 1px rgba(77,171,247,0.3),0 0 16px rgba(77,171,247,0.55),0 0 40px rgba(77,171,247,0.25),inset 0 0 20px rgba(77,171,247,0.08);transition:box-shadow 0.3s ease,outline-color 0.3s ease;animation:glow-breathe 2.4s ease-in-out infinite}
@keyframes glow-breathe{
    0%,100%{
        box-shadow:0 0 0 1px rgba(77,171,247,0.3),0 0 16px rgba(77,171,247,0.55),0 0 40px rgba(77,171,247,0.25),inset 0 0 20px rgba(77,171,247,0.08)
    }
    50%{
        box-shadow:0 0 0 1px rgba(77,171,247,0.45),0 0 24px rgba(77,171,247,0.75),0 0 60px rgba(77,171,247,0.35),inset 0 0 26px rgba(77,171,247,0.12)
    }
}
/* .card-list a.is-playing::before{content:'';position:absolute;top:12px;right:12px;width:20px;height:20px;border-radius:50%;background:#4dabf7;box-shadow:0 0 8px #4dabf7,0 0 16px rgba(77,171,247,0.8),0 0 28px rgba(77,171,247,0.4);animation:pulse-dot 1.4s ease-in-out infinite;z-index:2}
@keyframes pulse-dot{
    0%,100%{opacity:1;transform:scale(1)}
    50%{opacity:0.5;transform:scale(0.75)}
} */