/* === BASE STYLES (merged from ecss.css) ===
   ecss.css has been integrated here; only frosted-refactor.css is loaded. */
::-webkit-scrollbar{width:8px;height:12px;background-color:#c5c5c5;border-radius:6px}
::-webkit-scrollbar-thumb{display:block;min-height:12px;min-width:8px;border-radius:6px;background-color:#39445e}
::-webkit-scrollbar-thumb:hover{display:block;min-height:12px;min-width:8px;border-radius:6px;background-color:#00fbff}
*{padding:0;margin:0;box-sizing:border-box}
body{font-family:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",微软雅黑,Arial,sans-serif;background-color:#16161a;color:#fff;padding-top:90px}
body {font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", 微软雅黑, Arial, sans-serif;
    background-color: black !important; /* 使用 !important 提高优先级 */color: #fff;padding-top: 90px;}
body{background-image:url(new/m-bg.png);background-color:#000;background-repeat:no-repeat;background-size:100% 200px;background-attachment:fixed;padding-top:90px}
a{color:#fff;text-decoration:none}
a:hover{color:#00fbff}
li{list-style:none}
.container{width:1080px;max-width:100%;margin:0 auto;height:100%;padding-left:10px;padding-right:10px}
.pc-flex{display:flex}
.flex{display:flex}
.flex-center{align-items:center}
.flex-mid{justify-content:center}
.flex-between{justify-content:space-between}
.flex-wrap{flex-wrap:wrap}
.flex-column{flex-direction: column;}
.input{outline:0}
.text-row{text-overflow:ellipsis;width:100%;display:block;white-space: nowrap;overflow:hidden}
.tx-btn{vertical-align:middle;-webkit-user-select:none;-ms-user-select:none;-moz-user-select:none}
.tx-btn{display:inline-block;height:38px;line-height:38px;padding:0 22px;background-color:#009688;color:#fff;white-space:nowrap;text-align:center;font-size:1.4rem;border:none;border-radius:2px;cursor:pointer;opacity:.9}
.tx-btn:hover{opacity:.8;color:#fff}
.tx-btn:active{opacity:1}
.header{position:fixed;top:0;left:0;width:100%;height:70px;background: linear-gradient(rgb(22, 22, 26) 0%, rgba(22, 22, 26, 0.01) 100%);z-index:100}
.header .container{padding:0 10px}
.header .logo img{width:120px}
.header .nav li{display: inline-block;}
.header .nav li a{margin-right:10px;}
.header .nav li a.active{color:#00fbff}
.header .search{border-radius:8px;background: rgba(255, 255, 255, 0.1);overflow:hidden}
.header .search .input{color:#ffffff;width:300px;background-color: transparent;}
.header .search .input::placeholder {color: white;}
.header .search .btn{position: relative;background-color:transparent;color: #ffffff;}
.header .search .btn::before{content:'';position: absolute;left: 0;height: 50%;width:1px;background-color: rgba(255, 255, 255, 0.06);}
.header .search .btn img{margin-right:4px}
.header .search .btn,.header .search .input{border:none;height:40px;padding:0 15px}
.header .user{text-align:center;font-size:12px}
.header .user .item{cursor:pointer;position: relative;margin-left:20px ;}
.header .user .item .icon img{width:22px;height: 22px;}
.header .user .item .name{line-height: 1.6;}
.header .user .item.login img{border-radius: 50%;}
.header .user .item .box{display:none;position:absolute;right:0;top:100%;margin-top:10px;border:solid 1px #272a36;background-color:#14161a;border-radius:10px}
.history-box{padding:15px;width:320px;max-height:500px;overflow-y:auto}
.history-box .item{margin-bottom:15px}
.history-box .thumb{position:relative;border-radius:6px;width:40%;flex:0 0 40%;margin-right:10px;overflow:hidden}
.history-box .thumb::before{content:'';display:block;padding-bottom:70%}
.history-box .thumb img{position:absolute;width:100%;height:100%;left:0;right:0;top:0;bottom:0}
.history-box .info{text-align:left;padding:5px;flex:1;width:0;}
.history-box .info .name{font-size:15px}
.history-box .text{color:#2883f4;text-align:center}
.cate .head{margin-bottom:20px}
.cate .head h2{font-size:18px;margin-top: 10px;margin-right:20px}
.cate .head .sub-cate a{margin-right:10px;height:28px;line-height:30px;text-align:center;margin:4px 8px;padding:0 16px;border-radius:16px;display:inline-block;color:#798499;background:#34343b}
.cate .head .sub-cate .active{color:#fff;background:#08f}
.main .cate + .cate{margin-top: 20px;}
.post-list{margin:-8px}
.post-list .post-multi{flex:0 0 16.666666%;width:16.666666%;padding:8px;margin:0}
.post-list .post-multi .in{overflow:hidden}
.post-list .post-multi .thumb{position:relative;display:block}
.post-list .post-multi .thumb::before{content:'';display:block;padding-bottom:120%}
.post-list .post-multi .thumb img{position:absolute;left:0;right:0;top:0;bottom:0;width:100%;height:100%;border-radius:8px}
.post-list .post-multi .thumb .player-btn{position:absolute;left:0;right:0;top:0;bottom:0;width:100%;height:100%;background-color:rgb(0,0,0,0);transition: all .1s;z-index:-1}
.post-list .post-multi .thumb .player-btn i{font-size:60px;color:#fff;}
.post-list .post-multi .thumb:hover .player-btn{background-color:rgb(0,0,0,60%);z-index:5;}
.post-list .post-multi .date,.post-list .post-multi .quality{position:absolute;top:8px;z-index:2}
.post-list .post-multi .quality{background:linear-gradient(90deg,#2883f4 0,#29abe3 100%);color:#ccc;border-radius:4px;padding:2px 6px;left:8px}
.post-list .post-multi .date{right: 0px;color:#fff;top: auto;bottom: 2px;background-color: rgb(100, 0, 0, 100%);line-height: 1;padding: 0px;}
.post-list .post-multi h3{margin-top:10px;}
.post-list .post-multi .title{font-size: 16px;line-height: 0px;font-weight: 300;}
.video-intro{position:relative}
.video-intro .bg{position:absolute;left:0;top:0;width:100%;height:100%;background-size:100%;filter:blur(100px) saturate(180%);z-index:-1}
.video-intro .main{margin-bottom:20px}
.video-intro .main .info{color:#fff}
.video-intro .main .thumb img{margin-right:40px;border-radius:8px;max-width: 300px;}
.video-intro .main h1{font-size:30px;margin-bottom:20px;font-weight:400}
.video-intro .main .other{line-height:1.8;font-size:18px}
.video-intro .main .other p{margin:5px 0}
.video-intro .list .name{font-size:22px;margin-bottom:20px}
.video-intro .list a{position:relative;cursor:pointer;text-align:center;/* height: 32px; *//* line-height: 32px; */width: 125px;border-radius: 8px;background:#069;color:#fff;margin: 0 5px 3px 0;display:inline-block;vertical-align: middle;}
.player{display:flex;margin-bottom: 20px;max-height:500px;}
.player .in-video{flex:1;}
.player .right{background-color:#1f1e24;flex:0 0 25%;width:25%;}
.player .right .head{border-bottom:solid 3px #313036;padding:10px 15px;color:#00fbff}
.player .right .list{padding:10px 12px;flex:1;overflow-y: auto;}
.player .right .list ul{overflow-y: auto;height: 100%;}
.player .right .list a{display:inline-block;line-height:2;margin:2px 0;color:#fff}
.player .right .list a.active{color:#00fbff;font-weight:700}
.player .right .list li::before{content:'';background-image:url(../style/new/down.svg);width:16px;height:16px;display:inline-block;background-size:100%;transform:rotate(-90deg) translateX(-2px);margin-right:4px}
.pagebar{text-align:center;margin:20px 0}
.pagebar a{display:inline-block;width:36px;line-height:36px;border-radius:2px;margin:0 5px;color:#798499;background:#34343b}
.pagebar a.active{background-color:#0088ff;color:#fff;}
.footer{background-color: #202125;text-align: center;line-height: 1.5;padding: 10px 0;margin-top: 10px;font-size: 12px;color: rgb(242 221 44);}
.no-permission-tips{height:100%;background-color: rgb(0, 0, 0, 80%);text-align: center;}
.no-permission-tips .tx-btn{margin:20px 0;}
.live .post-list{margin:-8px}
.live-multi{width:16.666666%;flex:0 0 16.666666%;padding:3px}
.live-multi .in{padding:8px;background-color:#1f1e24;border-radius:8px}
.live-multi .thumb{position:relative;overflow:hidden;border-radius:5px}
.live-multi .thumb img{position:absolute;left:0;top:0;right:0;bottom:0;width:100%;height:100%;transition:all .4s}
.live-multi .thumb::before{content:'';display:block;padding-bottom:57%}
.live-multi .thumb:hover img{transform:scale(1.1)}
.live-multi .name{font-size:16px;margin-top:10px}
.m-bar{position:fixed;bottom:0;left:0;width:100%;background-color:#fff;border-top:solid 1px #cfd1d3;padding:10px;text-align:center;justify-content:space-around;z-index:100}
.m-bar .icon img{width:24px;height:24px}
.m-bar a{color:#888c91;font-size:14px}
.m-bar .item .on{display:none}
.m-bar .item.active a{color:#0659ff}
.m-bar .item.active .on{display:inline}
.m-bar .item.active .on~img{display:none}
.tx-comments>ul.msg{margin-bottom:8px;border: 1px solid #07c160;padding:10px;border-radius:4px;background-color: rgb(0 0 0);}
.tx-comments{margin-bottom:10px;}
ul.msg img.avatar{float:left;margin-right:10px;border-radius:4px;width:45px;height:45px;border-radius:50%;-webkit-transition:.4s;-webkit-transition:-webkit-transform .4s ease-out;transition:transform .4s ease-out;-moz-transition:-moz-transform .4s ease-out;}
li.msgname:hover img.avatar,.commons li:hover img{transform:rotateZ(60deg);-webkit-transform:rotateZ(60deg);-moz-transform:rotateZ(60deg)}
ul.msg li.msgname p.commentname{line-height:23px;font-size:1.2rem;margin-bottom:3px;}
ul.msg li.msgname small{color:#aaa;font-size:1.2rem;}
ul.msg li.msgname small a{display:none;}
ul.msg:hover li.msgname small a{display:inline-block;}
ul.msg li ul.msg{margin-top:12px;padding:10px;border: 1px solid #ee206e;border-radius:4px;box-shadow: 0 0 2px rgba(0,0,0,0.05);}
.tx-comment h3,.tx-comments h3{line-height:40px;height:40px;font-size:1.2rem;font-weight:normal;margin-bottom:8px;border-radius:2px;}
.tx-comment label,.tx-comments label{display:none;}
.tx-comments h4{text-align:center;padding:10px;font-size:1.2rem;font-weight:normal;margin-bottom:8px;}
.tx-comment input{line-height:30px;height:30px;font-size:1rem;font-family: "Microsoft YaHei", Verdana, sans-serif;width:100%;border:0;padding-left:8px;}
.tx-comment textarea{border:0;height:120px;width: 100%; font-size:1rem;font-family: "Microsoft YaHei", Verdana, sans-serif;display:block;padding:8px;}
.tx-comment-box{border:1px solid #ddd;border-radius:4px;padding:4px;position:relative;background:#fff;margin-bottom:6px;}
.tx-comment-ul4{float:left;width:49.5%;}
.tx-comment-ul3{float:left;width:32.66%;}
.tx-comment .tx-comment-ul4:nth-child(2n){float:right;}
.tx-comment .tx-comment-ul3-2{margin:0 1%;}
.tx-comment-box img.tx-code{position:absolute;right:4px;top:4px;height:30px;width:auto;}
.tx-comment-box input.button{border:0;border-radius:0 0 2px 0;line-height:40px;height:40px;width:100px;color:#111;position:absolute;right:0;bottom:0;}
.tx-comment-textarea{width:100%;clear:both;}
.tx-red{color:#c00;}
.reply-frm{margin-top:15px;}

@media screen and (min-width:360px){
    .header .logo .pc {display: block !important;}
    .header.fixed{background-color:#16161a;}
    .header.fixed .search .input{background-color:#2a2a32;}
    .header.fixed .search .btn{background-color:#2d2c2e;}
    .header .logo .m{display: none;}
    .m-bar{display: none;}
}

@media screen and (max-width:1080px){
    a{color:#fff;text-decoration:none}
    a:hover{color:#0252f5}
    body{background-image:url(new/m-bg.png);background-color:#000;background-repeat:no-repeat;background-size:100% 200px;background-attachment:fixed;padding-top:140px}
    .post-list .post-multi,.live-multi{width:25%;flex:0 0 25%}
    .live-multi .name a{color:#fff}
    .header{background:unset}
    .header .nav{position:absolute;top:100%;width:100%;left:0;white-space:nowrap;overflow-x:auto;padding:10px 20px}
    .header .nav li a{color:#ffffffb3}
    .header .nav li a.active{font-size:20px;color:#fff;font-weight:700}
    .header.fixed,.header.fixed .nav{background-color:#0252f5}
    .header .user .item > .name{display:none}
    .cate .head h2{color:#fff}
    .video-intro .list .name{font-size: 18px;}
    .video-intro{color:#fff}
    .video-intro .main .info{color:#fff}
    .header .logo .pc{display: none;}
}

@media screen and (max-width:768px){
    ::-webkit-scrollbar{height:4px}
    ::-webkit-scrollbar-thumb{display:block;min-height:12px;min-width:8px;border-radius:6px;background-color:#39445e}
    ::-webkit-scrollbar-thumb:hover{display:block;min-height:12px;min-width:8px;border-radius:6px;background-color:#00fbff}
    .header .search .btn span{display:none}
    .post-list .post-multi,.live-multi{width:33.333333%;flex:0 0 33.333333%}
    .video-intro .main .thumb img{margin-right:15px;border-radius:5px;max-width:35vw}
    .video-intro .main h1{font-size:18px}
    .video-intro .main .info .other{font-size:14px}
    .video-intro .list a{/* height:32px; *//* line-height:32px; */border-radius: 3px;/* padding: 0px 0; */}
    .player .right{display:none}
    .video-intro .list .links{display: flex;flex-wrap: wrap;justify-content: space-between;}
    .video-intro .list .links a {flex: 0 0 32%;width:32%;margin:0 0 10px}
}

@media screen and (max-width:768px){
    .header .search{border-radius:19px}
    .header .search .input{width:100px}
    .header .search .btn,.header .search .input{height:38px}
    .post-list .post-multi,.live-multi{width:33.333333%;flex:0 0 33.333333%}
}

/* === FROSTED OVERRIDES =================================== */
:root {
    --ui-bg: #0f1824;
    --ui-bg-deep: #0b111b;
    --ui-text: #e9eef7;
    --ui-subtext: #aab8cc;
    --ui-border: rgba(210, 227, 255, 0.18);
    --ui-glass: linear-gradient(135deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.05));
    --ui-glass-strong: linear-gradient(135deg, rgba(255, 255, 255, 0.26), rgba(255, 255, 255, 0.1));
    --ui-shadow: 0 16px 40px rgba(5, 10, 18, 0.45);
    --ui-accent: #6fb2ff;
    --ui-success: #6de59f;
}

body {
    background:
        radial-gradient(1200px 600px at 80% -120px, rgba(69, 132, 242, 0.38), rgba(11, 17, 27, 0) 70%),
        radial-gradient(820px 560px at 5% 0, rgba(35, 84, 170, 0.34), rgba(11, 17, 27, 0) 68%),
        linear-gradient(180deg, var(--ui-bg) 0%, var(--ui-bg-deep) 100%);
    color: var(--ui-text);
    padding-top: 148px;
}

body[data-ui-theme="light"] {
    --ui-bg: #e6edf7;
    --ui-bg-deep: #dbe6f4;
    --ui-text: #15212f;
    --ui-subtext: #4b5f77;
    --ui-border: rgba(87, 118, 159, 0.3);
    --ui-glass: linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(241, 247, 255, 0.62));
    --ui-glass-strong: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(235, 244, 255, 0.8));
    --ui-shadow: 0 14px 34px rgba(47, 77, 121, 0.18);
    --ui-accent: #2f73d5;
    --ui-success: #1f8b50;
}

body[data-ui-theme="light"] .header .search .input::placeholder {
    color: rgba(17, 39, 70, 0.6);
}

.page-atmosphere {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: -1;
    background:
        radial-gradient(circle at 15% 10%, rgba(107, 178, 255, 0.25), rgba(107, 178, 255, 0) 36%),
        radial-gradient(circle at 88% 2%, rgba(69, 132, 242, 0.22), rgba(69, 132, 242, 0) 32%);
}

.header {
    height: auto;
    background: transparent;
    padding-top: 18px;
}

.header .container {
    width: min(1260px, calc(100% - 36px));
    display: grid;
    gap: 12px;
    padding: 0;
}

.topbar-glass,
.nav-glass,
.live-pane,
.vod-pane {
    border: 1px solid var(--ui-border);
    background: var(--ui-glass);
    box-shadow: var(--ui-shadow);
    backdrop-filter: blur(14px) saturate(142%);
    -webkit-backdrop-filter: blur(14px) saturate(142%);
    border-radius: 18px;
}

.topbar-glass {
    min-height: 64px;
    padding: 12px 16px;
    gap: 14px;
}

.topbar-left,
.topbar-right {
    gap: 10px;
}

.quick-icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: 1px solid rgba(189, 210, 247, 0.32);
    background: rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ui-text);
    cursor: pointer;
}

.quick-icon .icon,
.quick-icon .icon a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header .user .item .icon img,
.quick-icon img {
    width: 18px;
    height: 18px;
    object-fit: cover;
}

.quick-icon.login .icon img {
    border-radius: 50%;
    width: 24px;
    height: 24px;
}

.glass-search {
    flex: 1;
    border: 1px solid rgba(188, 210, 245, 0.25);
    background: rgba(11, 22, 36, 0.34);
    border-radius: 999px;
    overflow: hidden;
}

.glass-search form {
    width: 100%;
}

.header .search .input {
    width: 100%;
    min-width: 0;
    padding: 0 18px;
    font-size: 15px;
    color: var(--ui-text);
}

.header .search .btn {
    min-width: 88px;
    font-size: 15px;
    font-weight: 600;
    color: var(--ui-text);
    border-left: 1px solid rgba(194, 215, 250, 0.26);
    background: rgba(255, 255, 255, 0.08);
}

.theme-switcher {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border-radius: 999px;
    border: 1px solid rgba(190, 214, 251, 0.28);
    background: rgba(255, 255, 255, 0.08);
    padding: 4px;
}

.theme-switcher .label {
    font-size: 12px;
    color: var(--ui-subtext);
    margin: 0 6px 0 8px;
}

.theme-switcher button {
    border: 0;
    border-radius: 999px;
    min-width: 36px;
    height: 26px;
    padding: 0 8px;
    cursor: pointer;
    color: var(--ui-subtext);
    font-size: 12px;
    background: transparent;
}

.theme-switcher button.is-active {
    color: var(--ui-text);
    background: var(--ui-glass-strong);
}

.nav-glass {
    padding: 10px 16px;
    min-height: 56px;
    gap: 16px;
}

.header .logo img {
    width: 106px;
}

.header .nav {
    flex: 1;
    overflow: hidden;
}

.header .nav ul {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 2px;
}

.header .nav li {
    flex: 0 0 auto;
}

.header .nav li a {
    display: inline-block;
    margin: 0;
    line-height: 30px;
    padding: 0 14px;
    font-size: 14px;
    border-radius: 999px;
    color: var(--ui-subtext);
    transition: all .2s ease;
}

.header .nav li a.active,
.header .nav li a:hover {
    color: var(--ui-text);
    background: rgba(255, 255, 255, 0.12);
}

.ui-main {
    margin-top: 8px;
}

.ui-shell {
    width: min(1260px, calc(100% - 36px));
    margin: 0 auto;
}

.live-pane,
.vod-pane {
    padding: 12px;
}

.main .cate + .cate {
    margin-top: 12px;
}

.cate .head {
    margin: 2px 4px 10px;
    justify-content: flex-start;
}

.cate .head h2 {
    margin: 0;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.15;
    letter-spacing: .2px;
    color: var(--ui-text);
    text-shadow: 0 4px 18px rgba(5, 9, 17, 0.38);
}

.live .post-list,
.post-list {
    margin: -8px;
}

.live-multi,
.post-list .post-multi { padding: 8px;
}

.live-multi {
    width: 16.666666%;
    flex: 0 0 16.666666%;
    padding: 3px;
}

.live-multi .in {
    background: linear-gradient(165deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.03));
    border: 1px solid rgba(184, 206, 242, 0.24);
    border-radius: 12px;
    padding: 8px;
}

.live-multi .thumb {
    display: block;
    overflow: hidden;
    border-radius: 8px;
}

.live-multi .name {
    font-size: 16px;
    margin-top: 8px;
    line-height: 1.45;
}

.live-multi .name a {
    color: var(--ui-text);
}

.live-multi .date {
    position: absolute;
    right: 1px;
    bottom: 1px;
    top: auto;
    color: #fff;
    background: rgba(3, 7, 16, 0.72);
    border-radius: 4px;
    line-height: 1.2;
    padding: 2px 6px;
    z-index: 2;
}

.post-list .post-multi {
    width: 16.666666%;
    flex: 0 0 16.666666%;
}

.post-list .post-multi .in {
    border-radius: 12px;
    background: linear-gradient(165deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.03));
    border: 1px solid rgba(180, 203, 240, 0.2);
    padding: 8px 8px 10px;
    transition: transform .22s ease, box-shadow .22s ease;
}

.post-list .post-multi .in:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 30px rgba(3, 8, 15, 0.34);
}

.post-list .post-multi .thumb::before {
    padding-bottom: 120%;
}

.post-list .post-multi .thumb img {
    border-radius: 5px;
}

.post-list .post-multi .quality {
    top: 1px;
    left: 1px;
    color: #fff;
    background: linear-gradient(90deg, #1e8f4d 0, #58ce83 100%);
    padding: 2px 6px;
}

.post-list .post-multi .date {
    right: 1px;
    bottom: 1px;
    top: auto;
    color: #fff;
    background: rgba(3, 7, 16, 0.72);
    border-radius: 4px;
    line-height: 1.2;
    padding: 2px 6px;
}

.post-list .post-multi h3 {
    margin-top: 9px;
}

.post-list .post-multi .title {
    font-size: 14px;
    line-height: 0px;
    font-weight: 300;
    color: var(--ui-text);
}

.post-list .post-multi .meta-line {
    margin-top: 4px;
    font-size: 12px;
    color: var(--ui-subtext);
    display: flex;
    gap: 8px;
}

.history-box {
    width: 340px;
    border: 1px solid rgba(180, 203, 240, 0.25);
    background: linear-gradient(170deg, rgba(15, 28, 45, 0.92), rgba(10, 17, 28, 0.97));
    border-radius: 14px;
    box-shadow: 0 18px 36px rgba(5, 9, 16, 0.45);
}

.history-box .sub,
.history-box .time,
.history-box .text,
.history-box .clear {
    color: var(--ui-subtext);
    font-size: 12px;
}

.site-footer {
    background: transparent !important;
    border-top: 0;
    margin-top: 24px;
}

@media screen and (max-width:1080px) {
    body {
        padding-top: 150px;
    }

    .container,
    .header .container,
    .ui-shell {
        padding-left: 8px;
        padding-right: 8px;
    }

    .header .container,
    .ui-shell {
        width: calc(100% - 16px);
    }

    .post-list .post-multi,
    .live-multi {
        width: 25%;
        flex: 0 0 25%;
    }

    .cate .head h2 {
        font-size: 20px;
    }

    .post-list .post-multi .title,
    .live-multi .name {
        font-size: 15px;
    }
}

@media screen and (max-width:768px) {
    body {
        padding-top: 130px;
    }

    .container,
    .header .container,
    .ui-shell {
        padding-left: 5px;
        padding-right: 5px;
    }

    .header .container,
    .ui-shell {
        width: calc(100% - 10px);
    }

    .topbar-glass {
        padding: 8px;
        gap: 8px;
    }

    .theme-switcher .label {
        display: none;
    }

    .theme-switcher button {
        min-width: 30px;
        padding: 0 6px;
    }

    .header .search .input {
        font-size: 13px;
        padding: 0 12px;
    }

    .header .search .btn {
        min-width: 56px;
        font-size: 13px;
    }

    .nav-glass {
        padding: 8px 10px;
    }

    .header .logo {
        display: none;
    }

    .post-list .post-multi,
    .live-multi {
        width: 33.333333%;
        flex: 0 0 33.333333%;
    }

    .shipin-list-page .post-list {
        margin: -3px;
    }

    .shipin-list-page .post-list .post-multi {
        padding: 3px;
    }

    .live-pane,
    .vod-pane {
        border-radius: 14px;
        padding: 8px;
    }

    .post-list .post-multi .in,
    .live-multi .in {
        border-radius: 5px;
        padding: 6px;
    }

    .post-list .post-multi .title,
    .live-multi .name {
        font-size: 13px;
    }

    .post-list .post-multi .meta-line {
        font-size: 11px;
    }

    .history-box {
        width: min(92vw, 340px);
        right: -32px;
    }
}

@media screen and (max-width:480px) {
    body {
        padding-top: 118px;
    }

    .quick-icon,
    .ui-settings-btn {
        width: 30px;
        height: 30px;
    }

    .topbar-right {
        gap: 6px;
    }

    .theme-switcher {
        padding: 2px;
    }

    .theme-switcher button {
        min-width: 26px;
        height: 24px;
        font-size: 11px;
    }

    .post-list .post-multi,
    .live-multi {
        width: 33.333333%;
        flex: 0 0 33.333333%;
    }
}

/* --- Detail page/mobile/light theme fixes --- */
.video-intro .container {
    width: 1080px;
    max-width: 100%;
}

.video-intro .main {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 22px;
    align-items: start;
    margin-bottom: 16px;
}

.video-intro .main .thumb {
    width: 100%;
}

.video-intro .main .thumb img {
    width: 100%;
    max-width: none;
    margin-right: 0;
    border-radius: 5px;
    display: block;
}

.video-intro .main .info {
    min-width: 0;
}

.video-intro .main h1 {
    margin: 0 0 10px;
    font-size: 30px;
    line-height: 1.3;
    font-weight: 400;
    color: var(--ui-text);
}

.video-intro .main .other {
    display: grid;
    gap: 8px;
    color: var(--ui-subtext);
}

.video-intro .main .other p {
    margin: 0;
    line-height: 1.8;
    font-size: 18px;
    color: var(--ui-subtext);
    word-break: break-word;
}

.video-intro .main .other p a {
    display: inline-block;
    margin: 0 4px 6px 0;
    padding: 2px 8px;
    border-radius: 999px;
    border: 1px solid var(--ui-border);
    color: var(--ui-text);
    background: rgba(255, 255, 255, 0.08);
}

.plot-intro {
    margin-top: 14px;
    border-radius: 16px;
    border: 1px solid var(--ui-border);
    background: var(--ui-glass);
    box-shadow: var(--ui-shadow);
    padding: 18px;
}

.plot-intro .name {
    margin: 0 0 12px;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 400;
    color: var(--ui-text);
}

.plot-intro .plot-content {
    font-size: 15px;
    line-height: 1.95;
    color: var(--ui-text);
    opacity: 0.95;
    position: relative;
    overflow: hidden;
    transition: max-height .25s ease;
}

.plot-intro .plot-content.is-collapsed::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 66px;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(8, 14, 25, 0), rgba(8, 14, 25, 0.96));
}

.plot-intro .plot-toggle-btn {
    margin-top: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 112px;
    height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid var(--ui-border);
    background: rgba(18, 34, 53, 0.72);
    color: var(--ui-text);
    font-size: 14px;
    cursor: pointer;
}

.plot-intro .plot-toggle-btn:hover {
    background: rgba(26, 49, 75, 0.82);
}

.plot-intro .plot-content p {
    margin: 0 0 10px;
}

.plot-intro .plot-content .plot-canvas {
    display: block;
    width: 100%;
    height: auto;
}

.video-intro .list {
    margin-top: 16px;
    border-radius: 16px;
    border: 1px solid var(--ui-border);
    background: var(--ui-glass);
    box-shadow: var(--ui-shadow);
    padding: 16px;
}

.video-intro .list .name {
    margin: 0 0 12px;
    font-size: 22px;
    color: var(--ui-text);
}

.video-intro .list .links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.video-intro .list .links a {
    width: auto;
    min-width: 118px;
    line-height: 1.8;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid var(--ui-border);
    color: var(--ui-text);
    margin: 0;
    padding: 2px 12px;
}

.video-intro .cate {
    margin-top: 16px;
}

.video-intro .cate .head {
    justify-content: flex-start;
    margin-bottom: 8px;
}

body[data-ui-theme="light"],
body[data-ui-theme="light"] p,
body[data-ui-theme="light"] h1,
body[data-ui-theme="light"] h2,
body[data-ui-theme="light"] h3,
body[data-ui-theme="light"] .name,
body[data-ui-theme="light"] .title,
body[data-ui-theme="light"] .plot-content,
body[data-ui-theme="light"] .video-intro .main .other,
body[data-ui-theme="light"] .video-intro .main .other p {
    color: #142133;
}

body[data-ui-theme="light"] a {
    color: #1d3552;
}

body[data-ui-theme="light"] .header .nav li a.active,
body[data-ui-theme="light"] .header .nav li a:hover {
    color: #0f1f31;
    background: rgba(27, 58, 96, 0.08);
}

body[data-ui-theme="light"] .video-intro .main .other p a,
body[data-ui-theme="light"] .video-intro .list .links a,
body[data-ui-theme="light"] .post-list .post-multi .in,
body[data-ui-theme="light"] .live-multi .in {
    color: #142133;
    background: rgba(255, 255, 255, 0.75);
}

body[data-ui-theme="light"] .post-list .post-multi .meta-line {
    color: #3c5168;
}

@media screen and (max-width:1080px) {
    .video-intro .main {
        grid-template-columns: 180px minmax(0, 1fr);
        gap: 14px;
    }

    .video-intro .main h1 {
        font-size: 22px;
    }

    .video-intro .main .other p {
        font-size: 16px;
    }
}

@media screen and (max-width:768px) {
    .video-intro .container {
        width: calc(100% - 14px);
    }

    .video-intro .main {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .video-intro .main .thumb {
        width: min(52vw, 210px);
        margin: 0 auto;
    }

    .video-intro .main h1 {
        font-size: 20px;
        margin-bottom: 8px;
    }

    .video-intro .main .other {
        gap: 6px;
    }

    .video-intro .main .other p {
        font-size: 14px;
        line-height: 1.65;
    }

    .plot-intro,
    .video-intro .list {
        border-radius: 12px;
        padding: 12px;
    }

    .plot-intro .name {
        font-size: 24px;
        margin-bottom: 8px;
    }

    .plot-intro .plot-content {
        font-size: 15px;
        line-height: 1.8;
    }

    .plot-intro .plot-content.is-collapsed::after {
        height: 56px;
    }

    .plot-intro .plot-toggle-btn {
        width: 100%;
        height: 36px;
        font-size: 14px;
    }

    .video-intro .list .name {
        font-size: 18px;
    }

    /* 修正 ecss 合并带入的 space-between，防止最后一行左对齐偏移 */
    .video-intro .list .links {
        justify-content: flex-start !important;
    }

    .video-intro .list .links a {
        min-width: 0;
        width: auto !important; /* 覆盖旧 ecss 残留的 width:32% */
        flex: 0 0 calc(50% - 4px);
        text-align: center;
        padding: 4px 8px;
        white-space: normal;  /* 文字自动换行，不截断 */
        overflow: visible;
        text-overflow: clip;
    }

    .video-intro .post-list .post-multi {
        width: 50%;
        flex: 0 0 50%;
    }
}

@media screen and (max-width:480px) {
    .video-intro .main .thumb {
        width: min(58vw, 210px);
    }

    .video-intro .list .links a {
        flex: 0 0 calc(50% - 4px); /* 手机端保持2列，文字自动换行 */
        white-space: normal;
        overflow: visible;
        text-overflow: clip;
    }
}

.ui-main .cate .head:empty { display: none; }


/* --- targeted fix: red-marked topbar and detail page ordering --- */
.theme-switcher .label {
    display: none;
}

.topbar-glass {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    column-gap: 12px;
}

.topbar-left,
.topbar-right {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
}

.topbar-left {
    gap: 8px;
}

.topbar-left .quick-icon {
    flex: 0 0 34px;
}

.glass-search {
    min-width: 0;
}

.theme-switcher {
    gap: 6px;
    padding: 4px 6px;
}

.theme-switcher button {
    min-width: 34px;
}

.page-video-detail .header .container {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.page-video-detail .nav-glass {
    order: 1;
}

.page-video-detail .topbar-glass {
    order: 2;
}

@media screen and (max-width:768px) {
    .topbar-glass {
        grid-template-columns: auto minmax(0, 1fr) auto;
        column-gap: 8px;
        padding: 8px 10px;
    }

    .topbar-left .quick-icon {
        flex-basis: 30px;
        width: 30px;
        height: 30px;
    }

    .topbar-right {
        gap: 6px;
    }

    .theme-switcher {
        gap: 4px;
        padding: 2px 4px;
    }

    .theme-switcher button {
        min-width: 28px;
        height: 24px;
        padding: 0 6px;
    }

    .page-video-detail .header {
        padding-top: 10px;
    }
}

/* --- keep legacy single-row header layout --- */
.header {
    padding-top: 0 !important;
}

.header .container.pc-flex.flex-center.flex-between {
    width: 1080px !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0 !important;
    padding: 0 10px !important;
}

.header .logo,
.header .nav,
.header .search,
.header .user {
    order: initial !important;
}

.header .nav {
    flex: 0 1 auto !important;
}

.header .search {
    flex: 0 0 auto !important;
}

@media screen and (max-width:1080px) {
    .header .container.pc-flex.flex-center.flex-between {
        width: 100% !important;
    }
}

/* --- mobile header realignment hotfix --- */
@media screen and (max-width:1080px) {
    .header {
        height: auto !important;
        padding-top: 0 !important;
    }

    .header .container.pc-flex.flex-center.flex-between {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        padding: 8px 10px !important;
        gap: 0 !important;
    }

    .header .logo {
        order: 1 !important;
        display: block !important;
        flex: 0 0 auto !important;
        margin-right: 8px !important;
    }

    .header .logo .pc {
        display: block !important;
        width: 106px !important;
    }

    .header .search {
        order: 2 !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        margin: 0 8px 0 0 !important;
    }

    .header .search .input {
        width: 100% !important;
        min-width: 0 !important;
    }

    .header .user {
        order: 3 !important;
        flex: 0 0 auto !important;
        margin-left: auto !important;
    }

    .header .user .item {
        margin-left: 10px !important;
    }

    .header .nav {
        order: 4 !important;
        position: static !important;
        top: auto !important;
        left: auto !important;
        width: 100% !important;
        padding: 10px 0 0 !important;
        overflow-x: auto !important;
        white-space: nowrap !important;
    }

    .header .nav ul {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
    }

    .header .nav li a {
        margin-right: 18px !important;
        font-size: 18px !important;
    }
}

@media screen and (max-width:768px) {
    .header .logo .pc {
        width: 96px !important;
    }

    .header .search {
        margin-right: 6px !important;
    }

    .header .search .input,
    .header .search .btn {
        height: 36px !important;
    }

    .header .nav li a {
        margin-right: 14px !important;
        font-size: 16px !important;
    }
}


@media screen and (max-width:1080px){ .header .nav li a, .header .nav li a.active{ font-size:16px !important; line-height:1.2 !important; } }


/* --- pc header blank-area hotfix --- */
@media screen and (min-width:1081px) {
    .header {
        height: 70px !important;
        padding-top: 0 !important;
        background: linear-gradient(rgb(22, 22, 26) 0%, rgba(22, 22, 26, 0.01) 100%) !important;
    }

    .header .container,
    .header .container.pc-flex.flex-center.flex-between {
        width: 1080px !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        height: 100% !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0 !important;
        padding: 0 10px !important;
    }

    .header .logo,
    .header .nav,
    .header .search,
    .header .user {
        order: initial !important;
    }

    .header .nav {
        position: static !important;
        width: auto !important;
        left: auto !important;
        top: auto !important;
        padding: 0 !important;
        overflow: visible !important;
        white-space: normal !important;
        flex: 0 1 auto !important;
    }

    .header .nav ul {
        display: block !important;
        overflow: visible !important;
    }

    .header .search {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    body { padding-top: 70px !important; }
}

/* 防止横向溢出 */
html, body {
    max-width: 100%;
    overflow-x: hidden;
}

.header-notice {
    width: 100%;
    height: 26px;
    line-height: 26px;
    margin: 6px 0 6px;
    text-align: center;
    background-color: green;
    color: #fff;
}

@media screen and (min-width:1081px) {
    .header-notice {
        margin: 6px 0 6px;
    }
}

/* 手机端头部恢复旧版排列，覆盖之前的换行热修复 */
@media screen and (max-width:1080px) {
    .header {
        height: 70px !important;
        background: unset !important;
        padding-top: 0 !important;
    }

    .header .container.pc-flex.flex-center.flex-between {
        width: 100% !important;
        height: 100% !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0 !important;
        padding: 0 10px !important;
    }

    .header .logo {
        order: initial !important;
        display: block !important;
        flex: 0 0 auto !important;
        margin-right: 0 !important;
    }

    .header .logo .pc {
        display: block !important;
        width: 120px !important;
    }

    .header .search {
        order: initial !important;
        flex: 0 0 auto !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    .header .search .input {
        width: 300px !important;
        min-width: 0 !important;
    }

    .header .user {
        order: initial !important;
        flex: 0 0 auto !important;
        margin-left: 0 !important;
    }

    .header .user .item {
        margin-left: 20px !important;
    }

    .header .nav {
        order: initial !important;
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        width: 100% !important;
        padding: 10px 20px !important;
        overflow-x: auto !important;
        white-space: nowrap !important;
        flex: none !important;
    }

    .header .nav ul {
        display: block !important;
        overflow: visible !important;
        padding-bottom: 0 !important;
    }

    .header .nav li {
        flex: none !important;
    }

    .header .nav li a {
        display: inline-block !important;
        margin-right: 10px !important;
        line-height: normal !important;
        padding: 0 !important;
        border-radius: 0 !important;
    }
}

@media screen and (max-width:768px) {
    .header .logo .pc {
        width: 120px !important;
    }

    .header .search {
        border-radius: 19px !important;
    }

    .header .search .input {
        width: 100px !important;
        padding: 0 15px !important;
    }

    .header .search .btn,
    .header .search .input {
        height: 38px !important;
    }

    .header .nav li a,
    .header .nav li a.active {
        font-size: 16px !important;
        line-height: 1.2 !important;
    }
}
.cate .head h2 {
    font-size: 18px !important;
}

.post-list .post-multi .title,
.live-multi .name {
    font-size: 14px !important;
    line-height: 1.35 !important;
}

/* 详情页字号回调，避免文字过大 */
.video-intro .main h1 {
    font-size: 30px !important;
    line-height: 1.3 !important;
    font-weight: 400 !important;
}

.video-intro .main .other p {
    font-size: 18px !important;
    line-height: 1.8 !important;
}

.plot-intro .name {
    font-size: 22px !important;
}

.plot-intro .plot-content {
    font-size: 15px !important;
    line-height: 1.95 !important;
}

.video-intro .list .name {
    font-size: 22px !important;
}

/* 移动端导航保持单行滚动，避免头部被撑高 */
@media screen and (max-width:1080px) {
    .header .nav {
        overflow-x: auto !important;
        white-space: nowrap !important;
        width: 100% !important;
    }

    .header .nav ul {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        row-gap: 0 !important;
    }

    .header .nav li {
        flex: 0 0 auto !important;
    }

    .header .nav li a,
    .header .nav li a.active {
        font-size: 16px !important;
        line-height: 1.2 !important;
        margin-right: 12px !important;
    }

    body {
        padding-top: 120px !important;
    }
}

/* 移动端详情页和卡片字号微调 */
@media screen and (max-width:768px) {
    .post-list .post-multi .title,
    .live-multi .name {
        font-size: 14px !important;
    }

    .video-intro .main h1 {
        font-size: 20px !important;
    }

    .video-intro .main .other p {
        font-size: 14px !important;
    }

    .plot-intro .name {
        font-size: 20px !important;
    }

    .video-intro .list .name {
        font-size: 18px !important;
    }

    .header .nav li a,
    .header .nav li a.active {
        font-size: 15px !important;
        margin-right: 10px !important;
    }

    body {
        padding-top: 112px !important;
    }
}

@media screen and (max-width:480px) {
    body {
        padding-top: 112px !important;
    }
}

/* 头部与绿色提示条间距统一（PC/手机一致） */
.header-notice {
    margin: 4px 0 10px !important;
}

/* 防止首屏列表负外边距把内容顶到绿色提示条下沿 */
.header-notice + .main {
    padding-top: 2px;
}

/* 头部 fixed 时的毛玻璃效果 */
.header.fixed {
    background: rgba(15, 24, 36, 0.85) !important;
    backdrop-filter: blur(14px) saturate(142%) !important;
    -webkit-backdrop-filter: blur(14px) saturate(142%) !important;
    height: auto !important;
    padding-top: 18px !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3) !important;
}

.header.fixed .nav {
    background: rgba(15, 24, 36, 0.96) !important;
}

.header.fixed .search .input {
    background-color: rgba(42, 42, 50, 0.6) !important;
}

.header.fixed .search .btn {
    background-color: rgba(45, 44, 46, 0.6) !important;
}

/* 播放页统一新风格（仅UI层，不改业务逻辑） */
.play-shell {
    width: 1080px !important;
    max-width: none !important;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
}

.play-shell .play-title {
    margin: 0 0 12px;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.3;
    color: var(--ui-text);
    text-shadow: 0 4px 18px rgba(5, 9, 17, 0.38);
}

.play-shell .play-layout {
    gap: 10px;
    margin-bottom: 0;
    max-height: none;
}

.play-shell .in-video {
    border: 1px solid var(--ui-border);
    background: var(--ui-glass);
    box-shadow: var(--ui-shadow);
    border-radius: 16px;
    padding: 8px;
    overflow: hidden;
}

.play-shell .in-video iframe,
.play-shell #playerArea,
.play-shell #mvideo,
.play-shell #dplayer {
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 5px;
    overflow: hidden;
}

.play-shell .play-sidebar {
    border: 1px solid var(--ui-border);
    background: var(--ui-glass);
    box-shadow: var(--ui-shadow);
    border-radius: 16px;
    flex: 0 0 336px;
    width: 336px;
    min-width: 300px;
    overflow: hidden;
}

.play-shell .player .right.play-sidebar .head.play-sidebar-title {
    border-bottom: 1px solid var(--ui-border);
    padding: 10px 12px;
    color: var(--ui-text) !important;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.25;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
    text-shadow: none;
}

.play-shell .player .right.play-sidebar .list.play-episode-list {
    padding: 8px 10px;
}

.play-shell .player .right.play-sidebar .list.play-episode-list ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3px;
    max-height: 460px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 3px;
}

.play-shell .player .right.play-sidebar .list.play-episode-list ul::-webkit-scrollbar {
    width: 6px;
    height: 6px;
    background: transparent;
}

.play-shell .player .right.play-sidebar .list.play-episode-list ul::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(138, 161, 193, 0.55);
}

.play-shell .player .right.play-sidebar .list.play-episode-list ul::-webkit-scrollbar-thumb:hover {
    background: rgba(111, 178, 255, 0.9);
}

.play-shell .play-episode-list li {
    margin-bottom: 0;
    min-width: 0;
}

.play-shell .player .right.play-sidebar .list.play-episode-list a {
    display: block;
    line-height: 1.25;
    margin: 0;
    padding: 4px 6px;
    border-radius: 5px;
    color: var(--ui-text) !important;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid transparent;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: 13px;
}

.play-shell .player .right.play-sidebar .list.play-episode-list a i {
    display: none;
}

.play-shell .player .right.play-sidebar .list.play-episode-list a.active,
.play-shell .player .right.play-sidebar .list.play-episode-list a:hover {
    color: var(--ui-text);
    border-color: var(--ui-border);
    background: rgba(255, 255, 255, 0.12);
}

.play-shell .player .right.play-sidebar .list.play-episode-list a.watched {
    color: #ff6a6a !important;
    border-color: rgba(255, 106, 106, 0.45);
    background: rgba(255, 106, 106, 0.12);
}

.play-shell .player .right.play-sidebar .list.play-episode-list a.watched.active {
    color: #ff3d3d !important;
    border-color: rgba(255, 61, 61, 0.65);
    background: rgba(255, 61, 61, 0.2);
}

.play-shell .player .right.play-sidebar .list.play-episode-list li::before {
    content: none !important;
    display: none !important;
    background-image: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
}

.play-shell #serverButtons,
.play-shell #server-buttons {
    margin: 10px 0 0 !important;
    padding: 8px;
    border: 1px solid var(--ui-border);
    background: rgba(6, 14, 24, 0.35);
    border-radius: 5px;
    overflow: visible !important;
}

.play-shell .player-stage,
.play-shell .player-stage-media {
    position: relative;
    z-index: 20;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

.play-shell .server-switcher {
    text-align: center;
}

.play-shell .server-switcher-inline {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 5px;
    white-space: normal;
}

.play-shell .server-spacer {
    clear: both;
    height: 30px;
}

.play-shell .server-spacer-sm {
    height: 6px;
}

.play-shell .server-note {
    display: inline-block;
    margin-right: 10px;
    background: rgba(21, 103, 79, 0.9);
    color: #e9eef7;
    border: 1px solid rgba(109, 229, 159, 0.35);
    border-radius: 999px;
    padding: 3px 10px;
    font-size: 12px;
}

.play-shell .server-note-accent {
    color: #9ee2ff;
    font-weight: 700;
}

.play-shell .server-btn {
    border: 1px solid var(--ui-border) !important;
    border-radius: 6px !important;
    background: rgba(255, 255, 255, 0.1) !important;
    color: var(--ui-text) !important;
    padding: 3px 8px !important;
    font-size: 12px !important;
}

.play-shell .server-btn.active {
    background: #1f62d3 !important;
    border-color: #6fb2ff !important;
    color: #fff !important;
}

.play-shell .status {
    color: var(--ui-subtext) !important;
    margin: 0 6px 0 3px !important;
}

@media screen and (max-width:768px) {
    .play-shell .server-note {
        display: block;
        margin: 0 0 8px;
    }

    .play-shell .server-spacer {
        height: 14px;
    }

    .play-shell {
        margin-bottom: 18px !important;
    }

    .play-shell .play-layout {
        margin-bottom: 14px !important;
    }

    .play-shell .play-sidebar {
        margin-bottom: 0;
    }

    .play-shell .player .right.play-sidebar .list.play-episode-list ul {
        max-height: 260px;
    }

    /* position 由全局 static!important 控制，此处只保留间距 */
    .site-footer {
        margin-top: 18px !important;
        padding-bottom: 84px !important;
    }
    /* body padding-bottom 由 L2320 的 58px !important 统一控制，此处不重复 */
}

@media screen and (max-width:1080px) {
    .play-shell {
        width: calc(100% - 20px) !important;
    }

    .play-shell .play-title {
        font-size: 22px;
        margin-bottom: 10px;
    }

    .play-shell .play-layout {
        flex-direction: column;
        gap: 10px;
    }

    .play-shell .play-sidebar {
        width: 100%;
        min-width: 0;
        flex: none;
    }

    .play-shell .play-episode-list ul {
        max-height: 240px;
    }
}

@media screen and (max-width:768px) {
    .play-shell .in-video {
        padding: 6px;
        border-radius: 12px;
    }

    .play-shell .play-sidebar,
    .play-shell .play-sidebar-title {
        border-radius: 12px;
    }

    .play-shell .player .right.play-sidebar .head.play-sidebar-title {
        font-size: 20px;
        padding: 10px 12px;
    }

    .play-shell .player .right.play-sidebar .list.play-episode-list a {
        padding: 5px 7px;
        font-size: 13px;
    }
}

/* mobile compatibility hotfix: avoid footer covering play list */
.site-footer {
    position: static !important;
    clear: both !important;
}

@media screen and (max-width:768px) {
    .play-shell .play-sidebar {
        margin-bottom: 20px !important;
    }

    .play-shell .player .right.play-sidebar .list.play-episode-list,
    .play-shell .player .right.play-sidebar .list.play-episode-list ul {
        max-height: none !important;
        overflow: visible !important;
    }
}

/* global final override: keep top category/nav opaque when header is fixed */
.header.fixed {
    background: rgba(15, 24, 36, 0.95) !important;
}

.header.fixed .nav {
    background: rgba(15, 24, 36, 0.98) !important;
}

@media screen and (max-width:1080px) {
    .header.fixed,
    .header.fixed .nav {
        background: rgba(15, 24, 36, 0.98) !important;
    }
}

/* player page only: keep header/nav opaque and restore footer front placement */
body.page-player-fix .header {
    background: rgba(15, 24, 36, 0.98) !important;
}

body.page-player-fix .header.fixed {
    background: rgba(15, 24, 36, 0.98) !important;
}

body.page-player-fix .header.fixed .nav,
body.page-player-fix .header .nav {
    background: rgba(15, 24, 36, 0.98) !important;
}

/* 播放页面隐藏页脚，避免与播放列表重叠 */
body.page-player-fix .site-footer {
    display: none !important;
}

@media screen and (max-width:1080px) {
    body.page-player-fix {
        padding-bottom: 96px !important;
    }

    body.page-player-fix .play-shell {
        margin-bottom: 18px !important;
    }
}

@media screen and (max-width:768px) {
    body.page-player-fix {
        /* 移除过大 min-height，让页面自然流动，避免大块空白 */
        padding-bottom: 96px !important;
    }

    body.page-player-fix .play-shell {
        padding-bottom: 28px !important;
    }

    body.page-player-fix .play-shell .play-layout {
        gap: 6px !important;
    }

    body.page-player-fix .play-shell .in-video {
        padding: 4px !important;
        overflow: visible !important;
        height: auto !important;
    }

    body.page-player-fix .play-shell .in-video iframe,
    body.page-player-fix .play-shell #mvideo,
    body.page-player-fix .play-shell #dplayer,
    body.page-player-fix .play-shell .player-stage-media {
        height: 208px !important;
        min-height: 208px !important;
        max-height: 208px !important;
    }

    body.page-player-fix .play-shell #playerArea,
    body.page-player-fix .play-shell .player-stage {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.page-player-fix .play-shell #serverButtons {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 6px !important;
        white-space: normal !important;
    }

    body.page-player-fix .play-shell #serverButtons .server-note {
        width: 100% !important;
        margin: 0 0 6px !important;
    }

    body.page-player-fix .play-shell #dplayer .dplayer,
    body.page-player-fix .play-shell #dplayer .dplayer-video-wrap,
    body.page-player-fix .play-shell #dplayer video,
    body.page-player-fix .play-shell #mvideo video,
    body.page-player-fix .play-shell #playerArea video,
    body.page-player-fix .play-shell #playerArea iframe {
        height: 208px !important;
        min-height: 208px !important;
        max-height: 208px !important;
    }

    body.page-player-fix .play-shell .player .right.play-sidebar {
        display: flex !important;
        width: 100% !important;
        margin-top: 6px !important;
        overflow: visible !important;
    }

    body.page-player-fix .play-shell .player .right.play-sidebar .list.play-episode-list,
    body.page-player-fix .play-shell .player .right.play-sidebar .list.play-episode-list ul {
        display: block !important;
        min-height: 236px !important;
    }

    body.page-player-fix .play-shell .player .right.play-sidebar .list.play-episode-list {
        height: 236px !important;
        max-height: 236px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch;
    }

    body.page-player-fix .play-shell .player .right.play-sidebar .list.play-episode-list ul {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-auto-rows: minmax(34px, auto) !important;
        gap: 4px !important;
        height: auto !important;
        min-height: 236px !important;
    }
}

/* final mobile/header alignment fix: match ecss top-bottom flow */
.header-notice {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 130 !important;
    height: 26px !important;
    line-height: 26px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    text-align: center !important;
    background: linear-gradient(90deg, #0f8c1f 0%, #16a025 100%) !important;
    color: #fff !important;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2) !important;
}

.header,
.header.fixed {
    top: 26px !important;
    height: 70px !important;
    padding-top: 0 !important;
}

.header-notice + .main {
    padding-top: 0 !important;
}

body {
    padding-top: 116px !important;
}

/* 卡片标题单行自然裁切：不换行，不显示省略号 */
.post-list .post-multi .title,
.post-list .post-multi .title a,
.live-multi .name,
.live-multi .name a,
.post-list .post-multi .text-row,
.live-multi .text-row {
    display: block !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: clip !important;
}

@media screen and (max-width:1080px) {
    body {
        padding-top: 166px !important;
    }

    .header,
    .header.fixed {
        top: 26px !important;
        height: 70px !important;
        padding-top: 0 !important;
    }

    .header .logo .pc {
        display: none !important;
    }

    .header .logo .m {
        display: block !important;
        width: 120px !important;
    }

    .header .container.pc-flex.flex-center.flex-between {
        height: 100% !important;
    }
}

@media screen and (max-width:768px) {
    body {
        padding-top: 140px !important;
        padding-bottom: 58px !important;
    }

    .header-notice {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 130 !important;
    }

    /* 手机端保持 fixed 定位，与 ecss.css 行为一致，确保 nav 绝对定位正常工作 */
    .header,
    .header.fixed {
        position: fixed !important;
        top: 26px !important;
        left: 0 !important;
        width: 100% !important;
        z-index: 100 !important;
    }

    .header-notice {
        padding: 0 12px !important;
        font-size: 13px !important;
    }

    .m-bar {
        display: flex !important;
        align-items: stretch !important;
        justify-content: space-around !important;
        background: rgba(15, 17, 24, 0.94) !important;
        border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
        padding: 4px 6px !important;
        backdrop-filter: blur(16px) !important;
        -webkit-backdrop-filter: blur(16px) !important;
    }

    .m-bar .item {
        flex: 1 1 25% !important;
        min-width: 0 !important;
        padding: 0 !important;
    }

    .m-bar .icon img {
        width: 18px !important;
        height: 18px !important;
    }

    .m-bar a {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
        font-size: 12px !important;
        line-height: 1.05 !important;
        color: #aeb9ca !important;
    }

    .m-bar a span {
        line-height: 1 !important;
    }

    .site-footer {
        margin-top: 18px !important;
        padding: 16px 10px 66px !important;
        background: transparent !important;
    }

    .footer-links {
        display: flex !important;
        justify-content: center !important;
        flex-wrap: wrap !important;
        gap: 8px 12px !important;
    }

    .footer-links a {
        margin: 0 !important;
    }
}

/* index-list page: keep left content styling, ranking styling removed */
.main.zh {
    width: min(1260px, calc(100% - 36px));
    margin: 0 auto;
}

.main.zh .syqk {
    margin-bottom: 18px;
}

.main.zh .left.fl {
    float: none !important;
    width: 100%;
}

.main.zh .clear {
    display: none !important;
}

.main.zh .sylb dt.ybbt {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.main.zh .sylb dt.ybbt .more.fr {
    margin-left: auto;
    float: none !important;
}

.main.zh .sylb dd ul {
    display: flex;
    flex-wrap: wrap;
    margin: -3px;
}

.main.zh .sylb dd ul li {
    width: 16.666666%;
    flex: 0 0 16.666666%;
    padding: 3px;
    min-width: 0;
}

.main.zh .sylb dd ul li a {
    display: block;
    position: relative;
    border-radius: 12px;
    background: linear-gradient(165deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.03));
    border: 1px solid rgba(180, 203, 240, 0.2);
    padding: 6px;
}

.main.zh .sylb dd ul li .fuc {
    display: none;
}

.main.zh .sylb .img-box {
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 8px;
}

.main.zh .sylb .img-box::before {
    content: '';
    display: block;
    padding-bottom: 62%;
}

.main.zh .sylb .img-box img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main.zh .sylb .img-box .badge-quality,
.main.zh .sylb .img-box .badge-date {
    position: absolute;
    z-index: 2;
    border-radius: 4px;
    padding: 2px 6px;
    font-style: normal;
    line-height: 1.1;
    color: #fff;
    display: inline-block;
}

.main.zh .sylb .img-box .badge-quality {
    top: 1px;
    left: 1px;
    background: linear-gradient(90deg, #1e8f4d 0, #58ce83 100%);
}

.main.zh .sylb .img-box .badge-date {
    right: 1px;
    bottom: 1px;
    background: rgba(3, 7, 16, 0.72);
}

.main.zh .sylb dd ul li h2 {
    margin-top: 8px;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--ui-text);
}

.main.zh .sylb dd ul li a:hover h2 {
    color: #fff;
}

@media screen and (max-width:1080px) {
    .main.zh .sylb dd ul li {
        width: 25%;
        flex: 0 0 25%;
    }
}

@media screen and (max-width:768px) {
    .main.zh .syqk {
        margin-bottom: 14px;
    }

    .main.zh .sylb dd ul li {
        width: 33.333333%;
        flex: 0 0 33.333333%;
    }
}

    /* list-shipin page: align card look with index-list and avoid strip-image distortion */
    .shipin-list-page .post-list {
        margin: -3px;
    }

    .shipin-list-page .post-list .post-multi {
        padding: 3px;
    }

    .shipin-list-page .post-list .post-multi .in {
        padding: 6px 6px 8px;
    }

    .shipin-list-page .post-list .post-multi .thumb::before {
        padding-bottom: 120%;
    }

    .shipin-list-page .post-list .post-multi .thumb img {
        border-radius: 8px;
        object-fit: cover;
    }

    .shipin-list-page .post-list .post-multi .quality {
        top: 1px;
        left: 1px;
    }

    .shipin-list-page .post-list .post-multi .date {
        right: 1px;
        bottom: 1px;
    }

    .shipin-list-page .post-list .post-multi h3 {
        margin-top: 8px;
    }

    .shipin-list-page .post-list .post-multi .title {
        line-height: 1.3;
    }

/* 手机端缩小缩略图上的时长和日期标签字体 */
@media screen and (max-width:768px) {
    .post-list .post-multi .date,
    .post-list .post-multi .quality,
    .live-multi .date {
        font-size: 10px !important;
        padding: 1px 4px !important;
        line-height: 1.2 !important;
    }
}

/* 手机端下滑时折叠顶部：只保留分类导航栏 */
@media screen and (max-width:768px) {
    /* 过渡动画 */
    .header-notice,
    .header .logo,
    .header .search,
    .header .user {
        transition: opacity 0.25s ease, transform 0.25s ease, max-height 0.25s ease;
    }

    /* 折叠状态：隐藏 notice、logo、搜索、用户区 */
    body.nav-only .header-notice {
        opacity: 0 !important;
        pointer-events: none !important;
        max-height: 0 !important;
        overflow: hidden !important;
    }

    body.nav-only .header,
    body.nav-only .header.fixed {
        top: 0 !important;
        height: auto !important;
    }

    body.nav-only .header .logo,
    body.nav-only .header .search,
    body.nav-only .header .user {
        display: none !important;
    }

    /* nav 撑满整行 */
    body.nav-only .header .container {
        display: block !important;
    }

    body.nav-only .header .nav {
        position: static !important;
        top: auto !important;
        width: 100% !important;
        padding: 6px 10px !important;
        background: rgba(10, 21, 41, 0.97) !important;
    }
    /* body padding-top 保持不变：header 是 fixed 不在文档流，
       不改 padding 可避免 scrollTop 跳动引发的闪烁，全站通用 */
}

