/* fulisq 全站主样式（原 m.css + public/head 内联样式合并，由 include 引入） */

:root {
    --xllys-page-max: 960px;
    --xllys-gutter: clamp(8px, 2.5vw, 20px);
    --xllys-accent: #f97316;
    /* 顶栏全宽独立 fixed，不占主体 gutter；高度 ≈ 安全区顶 + 首行 + 分类条 */
    --xllys-header-offset: calc(env(safe-area-inset-top, 0px) + 46px + 1.75rem + 2px);
    /* ads/dibucaidan：.btm-nav-menu 底部固定栏占位（图标+文案+内边距 ≈ 72～80px）+ Home 指示条安全区 */
    --xllys-bottom-nav-spacer: calc(80px + env(safe-area-inset-bottom, 0px));
    /* ads/dibucaidan .btm-nav-menu z-index:100080 — 全屏抽屉须更高以免被底栏挡住 */
    --xllys-sheet-z: 101000;
}

/* ========== 站点三容器布局（顶栏 / 主体 / 底栏） ==========
   ① header.top_nav#xl-site-top：固定顶栏（.xl-topbar + .mynav）；抽屉/遮罩为平级节点
   ② xl-site-main：正文（.vwbg 版心）
   ③ xl-site-bottom：底部固定菜单（ads/dibucaidan）
   页脚文案：.xl-site-footer */
.xl-site-main {
    display: block;
    margin: 0 auto;
    /* 固定顶栏与首屏内容之间留出缝隙，避免轮播等紧贴顶栏 */
    padding-top: calc(var(--xl-appdl-offset, 0px) + clamp(6px, 1.8vw, 12px));
    box-sizing: border-box;
}
.xl-site-bottom {
    display: block;
    margin: 0;
    padding: 0;
}
.xl-site-footer {
    display: block;
    box-sizing: border-box;
}

html {
    font-size: 20px;
    background-color: #fff;
    scroll-padding-top: var(--xllys-header-offset);
    scroll-padding-bottom: var(--xllys-bottom-nav-spacer);
}

html, body {
    background-color: #fff !important;
    min-height: 100%;
}

@media only screen and (min-width:400px) {
    html {
        font-size: 21.33333333px!important
    }
}

@media only screen and (min-width:414px) {
    html {
        font-size: 22.08px!important
    }
}

@media only screen and (min-width:480px) {
    html {
        font-size: 25.6px!important
    }
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
div,
ul,
ol,
li,
p,
form,
input,
button {
    margin: 0;
    padding: 0
}

nav {
    display: block
}

html,
body,
img,
iframe {
    border: 0
}

img {
    vertical-align: middle
}

i,
em {
    font-style: normal
}

li {
    list-style: none
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%
}

a,
button {
    cursor: pointer
}

h1,
h2,
h3,
h4,
h5,
h6,
em,
strong,
b {
    font-weight: bold
}

a,
a:hover {
    text-decoration: none;
    color: #3887f7
}

body,
input,
button {
    font-family: "Helvetica Neue", Helvetica, sans-serif;
    font-size: .85rem;
    line-height: 1rem;
    color: #333;
    outline: 0
}

body {
    margin-top: var(--xllys-header-offset);
    background-color: #fff;
    background-size: cover;
    padding: 0 var(--xllys-gutter) 12px;
    box-sizing: border-box;
    min-height: 100vh
}

textarea {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: -10;
}

/* 顶栏：全宽独立模块（fixed 贴齐视口左右，不受 body/--xllys-gutter 限制；仅刘海安全区内缩） */
header.top_nav,
.top_nav {
    position: fixed;
    z-index: 900;
    top: var(--xl-appdl-offset, 0px);
    left: 0;
    right: 0;
    width: 100%;
    max-width: none;
    margin: 0;
    box-sizing: border-box;
    padding-top: env(safe-area-inset-top, 0px);
    padding-left: env(safe-area-inset-left, 0px);
    padding-right: env(safe-area-inset-right, 0px);
    padding-bottom: 0;
    background-color: #fff;
    border-radius: 0;
    border: 0;
    box-shadow: none;
    overflow: hidden;
    font-family: Helvetica, Tahoma, Arial, "Microsoft YaHei", sans-serif;
}

/* 顶栏内容区：PC 与 main.vwbg 同版心；窄屏拉满宽度，使首行菜单/搜索图标贴齐屏幕左右缘 */
.xl-topnav-inner {
    box-sizing: border-box;
    width: 100%;
    max-width: min(var(--xllys-page-max), calc(100vw - 2 * var(--xllys-gutter)));
    margin-left: auto;
    margin-right: auto;
}
@media (max-width: 959px) {
    .xl-topnav-inner {
        max-width: none;
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
}

/* public/head：顶栏首行（三列网格，无多余包裹层） */
.xl-topbar {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 6px;
    width: 100%;
    min-height: 46px;
    box-sizing: border-box;
}
.xl-topbar__logo {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 0;
    position: relative;
    overflow: hidden;
}
.xl-topbar__logo::after{
    content: none;
}
@keyframes xl-logo-scan{
    /* 一轮：左→右→左→右（两次往返），末尾留空档 */
    0%   { left: -70%; opacity: 0; }
    8%   { left: -70%; opacity: 0; }

    14%  { left: -70%; opacity: .75; }  /* 第 1 次：开始 */
    34%  { left: 130%; opacity: .35; }  /* 第 1 次：扫到右侧 */
    40%  { left: 130%; opacity: 0; }    /* 短停顿 */

    46%  { left: 130%; opacity: .70; }  /* 第 2 次：从右往左 */
    66%  { left: -70%; opacity: .35; }  /* 第 2 次：扫到左侧 */
    72%  { left: -70%; opacity: 0; }    /* 短停顿 */

    78%  { left: -70%; opacity: .65; }  /* 第 3 次：再来一次左→右（让更明显） */
    92%  { left: 130%; opacity: .28; }
    100% { left: 130%; opacity: 0; }
}
@media (prefers-reduced-motion: reduce){
    .xl-topbar__logo::after{ animation: none; display:none; }
}
.xl-topbar__logo img {
    display: block;
    max-height: 30px;
    width: auto;
    max-width: min(146px, 54vw);
    margin: 0 auto;
}
.xl-topbar__btn {
    border-radius: 10px;
    border: none;
    background: transparent;
    color: var(--xllys-accent, #f97316);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    padding: 0;
    margin: 0;
    cursor: pointer;
    box-sizing: border-box;
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
}
button.xl-topbar__btn { font: inherit; }
a.xl-topbar__btn { -webkit-tap-highlight-color: transparent; }
.xl-topbar__btn:hover { background: rgba(249,115,22,.08); }
.xl-topbar__btn:active { transform: scale(0.96); }
.xl-topbar__btn svg {
    display: block;
    flex-shrink: 0;
    width: 28px;
    height: 28px;
}

/* 左侧抽屉菜单 */
.xllys-menu-backdrop {
    position: fixed;
    inset: 0;
    z-index: 20022;
    background: rgba(0,0,0,.45);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
}
.xllys-menu-backdrop.is-open {
    opacity: 1;
    visibility: visible;
}
.xllys-menu-backdrop:not(.is-open) { pointer-events: none; }
.xllys-menu-panel {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100vh;
    height: 100dvh;
    max-height: 100%;
    width: min(300px, 88vw);
    z-index: 20023;
    /* 左侧菜单面板：纯白背景（不做毛玻璃） */
    background: #fff;
    box-shadow: 12px 0 56px rgba(0,0,0,.20);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    border-right: 0;
    transform: translateX(-105%);
    transition: transform .3s cubic-bezier(.18,.9,.25,1);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-sizing: border-box;
    -webkit-overflow-scrolling: touch;
}
.xllys-menu-panel::before{ content:none; }
.xllys-menu-panel > *{ position: relative; z-index: 1; }
.xllys-menu-panel.is-open { transform: translateX(0); }
.xllys-menu-panel:not(.is-open) { pointer-events: none; }
.xllys-menu-panel__topbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 10px 10px 0;
    flex-shrink: 0;
}
.xllys-menu-panel__close {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 10px;
    background: rgba(255,255,255,.42);
    color: rgba(0,0,0,.62);
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    -webkit-backdrop-filter: blur(12px) saturate(180%);
    backdrop-filter: blur(12px) saturate(180%);
    box-shadow: 0 10px 26px rgba(0,0,0,.12);
}
.xllys-menu-panel__close:hover{ background: rgba(255,255,255,.58); color: rgba(0,0,0,.78); }
.xllys-menu-panel__brand {
    padding: 0 18px 10px;
    text-align: center;
    border-bottom: 1px solid rgba(255,255,255,.22);
    flex-shrink: 0;
}
.xllys-menu-panel__brand .xllys-menu-panel__logo img {
    display: block;
    max-height: 48px;
    width: auto;
    max-width: 100%;
    margin: -2px auto 0;
}
.xllys-menu-panel__name { display: none; }
.xllys-menu-panel__nav {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding: 12px 12px 24px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.xllys-menu-panel__item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 800;
    color: #222;
    text-decoration: none;
    border: none;
    background: rgba(255,255,255,.62);
    -webkit-backdrop-filter: blur(10px) saturate(160%);
    backdrop-filter: blur(10px) saturate(160%);
    box-shadow: 0 10px 24px rgba(0,0,0,.08);
    transition: transform .16s ease, background .18s ease, box-shadow .18s ease, color .18s ease;
    -webkit-tap-highlight-color: transparent;
}
.xllys-menu-panel__item:hover{
    background: rgba(255,255,255,.76);
    box-shadow: 0 14px 30px rgba(0,0,0,.10);
    transform: translateY(-1px);
    color: rgba(0,0,0,.86);
}
.xllys-menu-panel__item:active{
    transform: translateY(0);
    background: rgba(255,255,255,.70);
    box-shadow: 0 10px 24px rgba(0,0,0,.09);
}
.xllys-menu-panel__item svg {
    flex-shrink: 0;
    color: #f97316;
}
/* 搜索：与分类二级（xllys-subnav-*）同锚点——遮罩/面板均从固定顶栏下沿开始，不盖住顶栏 */
.xllys-search-modal {
position: fixed;
left: 0;
right: 0;
top: 0;
bottom: 0;
z-index: 20015;
display: none;
box-sizing: border-box;
pointer-events: none;
}
.xllys-search-modal.is-open {
display: block;
pointer-events: auto;
}
.xllys-search-modal__backdrop {
display: none;
position: fixed;
left: 0;
right: 0;
top: 0;
bottom: 0;
background: rgba(0,0,0,0.12);
z-index: 0;
}
.xllys-search-modal.is-open .xllys-search-modal__backdrop {
display: block;
animation: xllysSubnavFadeIn 0.38s ease both;
}
.xllys-search-modal__layer {
display: none;
position: fixed;
left: 0;
right: 0;
z-index: 1;
background: transparent;
border-bottom: 0;
box-shadow: none;
max-height: 70vh;
overflow-x: hidden;
overflow-y: auto;
-webkit-overflow-scrolling: touch;
box-sizing: border-box;
}
.xllys-search-modal.is-open .xllys-search-modal__layer {
display: block;
animation: xllysSubnavLayerIn 0.35s ease both;
}
.xllys-search-modal__content {
width: 100%;
max-width: var(--xllys-page-max, 960px);
margin: 0 auto;
box-sizing: border-box;
background: #fff;
border: 0;
border-radius: 0 0 12px 12px;
box-shadow: 0 6px 12px rgba(0,0,0,0.08);
}
.xllys-search-modal.is-open .xllys-search-modal__content {
animation: xllysSubnavPop 0.58s cubic-bezier(0.22, 1, 0.36, 1) both;
}
@media (prefers-reduced-motion: reduce) {
.xllys-search-modal.is-open .xllys-search-modal__backdrop,
.xllys-search-modal.is-open .xllys-search-modal__layer,
.xllys-search-modal.is-open .xllys-search-modal__content {
animation: none !important;
}
}

/* 收藏网址弹窗（参考 tsvod_seo） */
.xllys-copytoast {
    position: fixed;
    inset: 0;
    /* ads/dibucaidan 底栏 z-index 很高（约 100080），这里必须更高 */
    z-index: 101200;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 12px;
    box-sizing: border-box;
}
.xllys-copytoast.is-open { display: flex; }
.xllys-copytoast.is-open .xllys-copytoast__content{
    animation: xllysCopyToastIn .42s cubic-bezier(0.22, 1, 0.36, 1) both;
    will-change: transform, opacity;
}
.xllys-copytoast.is-open .xllys-copytoast__overlay{
    animation: xllysCopyToastFade .36s ease both;
}
.xllys-copytoast__overlay {
    position: absolute;
    inset: 0;
    background: rgba(6, 8, 12, 0.62);
    backdrop-filter: blur(18px) saturate(165%);
}
.xllys-copytoast__content {
    position: relative;
    width: 100%;
    max-width: 520px;
    max-height: 92vh;
    overflow: hidden;
    background: rgba(255,255,255,0.60);
    border: 1px solid rgba(255,255,255,0.42);
    backdrop-filter: blur(22px) saturate(175%);
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0,0,0,0.40);
}
@keyframes xllysCopyToastIn{
    0%{ transform: translateY(26px) scale(.975); opacity: 0; }
    100%{ transform: translateY(0) scale(1); opacity: 1; }
}
@keyframes xllysCopyToastFade{
    0%{ opacity: 0; }
    100%{ opacity: 1; }
}
@keyframes xllysCopyToastPaneIn{
    0%{ opacity: 0; transform: translateY(10px); }
    100%{ opacity: 1; transform: translateY(0); }
}
.xllys-copytoast__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    border-bottom: 1px solid rgba(0,0,0,.06);
    background: transparent;
}
.xllys-copytoast__header h3 { margin: 0; font-size: 14px; font-weight: 900; color: rgba(0,0,0,.80); letter-spacing: .01em; }
.xllys-copytoast__close {
    border: 0;
    background: rgba(255,255,255,0.45);
    border: 1px solid rgba(0,0,0,0.06);
    cursor: pointer;
    width: 30px;
    height: 30px;
    border-radius: 999px;
    padding: 0;
    color: rgba(0,0,0,.55);
    font-size: 22px;
    line-height: 28px;
}
.xllys-copytoast__body { padding: 10px 12px 12px; overflow: auto; max-height: calc(92vh - 46px); }
.xllys-copytoast__tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 10px; }
.xllys-copytoast__tab {
    padding: 7px 10px;
    border-radius: 10px;
    border: 1px solid rgba(0,0,0,0.08);
    background: rgba(255,255,255,0.55);
    color: rgba(0,0,0,.62);
    font-size: 11px;
    font-weight: 800;
    cursor: pointer;
}
.xllys-copytoast__tab.is-active {
    background: linear-gradient(135deg, var(--xllys-accent, #f97316), color-mix(in srgb, var(--xllys-accent, #f97316) 70%, #ffffff));
    color: #fff;
    border-color: transparent;
}
.xllys-copytoast__pane { display: none; }
.xllys-copytoast__pane.is-active { display: block; animation: xllysCopyToastPaneIn .30s ease both; }
.xllys-copytoast__list { display: flex; flex-direction: column; gap: 8px; }
.xllys-copytoast__item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 8px;
    border-radius: 12px;
    background: rgba(255,255,255,0.38);
    border: 1px solid rgba(255,255,255,0.32);
    -webkit-backdrop-filter: blur(14px) saturate(165%);
    backdrop-filter: blur(14px) saturate(165%);
}
.xllys-copytoast__no{
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--xllys-accent, #f97316) 18%, transparent);
    color: var(--xllys-accent, #f97316);
    font-weight: 900;
    font-size: 10px;
}
.xllys-copytoast__url {
    flex: 1;
    min-width: 0;
    font-size: 11px;
    color: rgba(0,0,0,.78);
    font-weight: 800;
    word-break: break-all;
}
.xllys-copytoast__btn {
    flex: 0 0 auto;
    border: 0;
    border-radius: 10px;
    padding: 6px 8px;
    background: rgba(0,0,0,0.08);
    color: rgba(0,0,0,.72);
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    cursor: pointer;
    white-space: nowrap;
}
.xllys-copytoast__btn{
    color: rgba(0,0,0,.72);
}
.xllys-copytoast__btn:active{ transform: scale(0.98); }
.xllys-copytoast__success {
    display: none;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    width: fit-content;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(0, 194, 80, 0.16);
    color: rgba(0, 132, 58, 0.98);
    border: 1px solid rgba(0, 132, 58, 0.16);
    font-weight: 900;
    font-size: 11px;
    pointer-events: none;
}
.xllys-copytoast__success.is-show { display: block; }
.xllys-copytoast__tips {
    margin-top: 8px;
    font-size: 11px;
    color: rgba(0,0,0,.50);
    line-height: 1.5;
    text-align: center;
}
.xllys-copytoast__actions{
    display:flex;
    justify-content:center;
    gap:8px;
    margin-top: 8px;
}
.xllys-copytoast__action{
    border:0;
    border-radius: 12px;
    padding: 8px 12px;
    font-size: 11px;
    font-weight: 900;
    cursor:pointer;
    white-space: nowrap;
}
.xllys-copytoast__action--primary{ background: linear-gradient(135deg, var(--xllys-accent, #f97316), color-mix(in srgb, var(--xllys-accent, #f97316) 70%, #ffffff)); color:#fff; }
.xllys-copytoast__action--ghost{ background: rgba(255,255,255,0.55); color: rgba(0,0,0,.68); border:1px solid rgba(0,0,0,0.10); }
.xllys-copytoast__action:active{ transform: scale(0.98); }
.xllys-search-modal__header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 12px 14px;
border-bottom: 1px solid rgba(0,0,0,.06);
background: #fafafa;
border-radius: 0;
}
.xllys-search-modal__header h3 {
margin: 0;
font-size: 16px;
font-weight: 600;
color: #333
}
.xllys-search-modal__close {
border: 0;
background: transparent;
color: #888;
font-size: 24px;
line-height: 1;
cursor: pointer;
padding: 4px 8px;
line-height: 0.6
}
.xllys-search-modal__body { padding: 14px; }
.xllys-search-modal__stats {
font-size: 12px;
color: #666;
margin: 0 0 10px
}
.xllys-search-modal__stats strong { color: #f97316; }
.xllys-search-modal__row {
display: flex;
gap: 8px;
margin-bottom: 12px
}
.xllys-search-modal__row input {
flex: 1;
min-width: 0;
padding: 8px 10px;
border: 1px solid #ddd;
border-radius: 6px;
font-size: 14px;
box-sizing: border-box
}
.xllys-search-modal__row input:focus {
border-color: #f97316;
outline: none
}
.xllys-search-modal__submit {
flex-shrink: 0;
padding: 8px 16px;
background: #f97316;
color: #fff;
border: none;
border-radius: 6px;
font-size: 14px;
cursor: pointer
}
.xllys-search-modal__hot-title {
font-size: 12px;
color: #999;
margin-bottom: 6px
}
.xllys-search-modal__hot-tags { display: flex; flex-wrap: wrap; gap: 6px }
.xllys-search-modal__tag {
display: inline-block;
padding: 4px 10px;
font-size: 12px;
color: #f97316;
border: 1px solid #f97316;
border-radius: 20px;
cursor: pointer;
background: #fff
}
.xllys-search-modal__tag:active { opacity: 0.85 }
.xllys-search-modal__retui {
margin-top: 12px;
padding-top: 12px;
border-top: 1px solid #eee
}
.xllys-search-modal__retui-hd {
font-size: 12px;
font-weight: 600;
color: #f97316;
margin: 0 0 8px
}
.xllys-search-modal__retui-list { display: flex; flex-direction: column; gap: 6px }
.xllys-search-modal__retui-item {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 10px;
border-radius: 8px;
background: #f7f7f7;
text-decoration: none;
color: #333;
font-size: 12px;
font-weight: 600
}
.xllys-search-modal__retui-item:hover, .xllys-search-modal__retui-item:active { background: #f0f0f0 }
.xllys-search-modal__retui-dot {
width: 6px;
height: 6px;
border-radius: 50%;
background: #f97316;
flex-shrink: 0
}
.xllys-search-modal__retui-txt {
flex: 1;
min-width: 0;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis
}
.xllys-search-modal__retui-arr { flex-shrink: 0; color: #999; font-size: 16px; line-height: 1 }

/* 顶栏下方二级分类展开：遮罩淡入 + 面板自上而下展开（仅面板位移动画，避免与容器双重位移） */
@keyframes xllysSubnavFadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes xllysSubnavLayerIn {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes xllysSubnavPop {
from {
    opacity: 0;
    transform: translateY(-56px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}
@media (prefers-reduced-motion: reduce) {
.xllys-subnav-backdrop.is-open,
.xllys-subnav-layer.is-open,
.xllys-subnav-panel.is-active {
    animation: none !important;
}
}
.xllys-subnav-panel{
    --xllysSubnavAccent: #f97316;
    --xllysSubnavAccent2: #fb923c;
}
.xllys-subnav-backdrop {
display: none;
position: fixed;
left: 0;
right: 0;
top: 0;
bottom: 0;
z-index: 20010;
background: rgba(0,0,0,0.12);
}
.xllys-subnav-backdrop.is-open { display: block; animation: xllysSubnavFadeIn 0.38s ease both; }
.xllys-subnav-layer {
display: none;
position: fixed;
left: 0;
right: 0;
z-index: 20011;
background: transparent;
border-bottom: 0;
box-shadow: none;
    max-height: 70vh;
overflow-x: hidden;
overflow-y: auto;
-webkit-overflow-scrolling: touch;
box-sizing: border-box;
}
.xllys-subnav-layer.is-open { display: block; animation: xllysSubnavLayerIn 0.35s ease both; }
.xllys-subnav-panel {
display: none;
padding: 0.55rem 2.5% 0.85rem;
max-width: var(--xllys-page-max, 960px);
margin: 0 auto;
box-sizing: border-box;
background: #fff;
border: 0;
border-top: 0;
border-radius: 0 0 12px 12px;
box-shadow: 0 6px 12px rgba(0,0,0,0.08);
}
.xllys-subnav-panel.is-active { display: block; animation: xllysSubnavPop 0.58s cubic-bezier(0.22, 1, 0.36, 1) both; }
.xllys-subnav-chips {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 5px;
padding: 2px 0;
}
@media (min-width: 520px) {
.xllys-subnav-chips {
grid-template-columns: repeat(auto-fill, minmax(86px, 1fr));
}
}
.xllys-subnav-chips a {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 0;
width: 100%;
min-height: 1.72rem;
padding: 0.16rem 0.2rem;
font-size: 0.55rem;
line-height: 1.2;
font-weight: 500;
color: #555;
border: 1px solid color-mix(in srgb, var(--xllysSubnavAccent) 48%, transparent);
border-radius: 6px;
text-align: center;
box-sizing: border-box;
background: #fff;
}
.xllys-subnav-chips__label{
    display: block;
    width: 100%;
    max-width: 100%;
    order: 0;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 500;
    line-height: 1.2;
}
/* 数量：标题下方、更小字号，与标题整体在按钮内水平垂直居中 */
.xllys-subnav-chips__cnt{
    display: block;
    width: 100%;
    order: 1;
    margin-top: 1px;
    text-align: center;
    font-size: 8px;
    line-height: 1.15;
    font-weight: 400;
    color: rgba(0,0,0,.34);
    letter-spacing: 0;
    white-space: nowrap;
}
.xllys-subnav-chips a:hover .xllys-subnav-chips__cnt{
    color: var(--xllysSubnavAccent);
    opacity: 1;
}
.xllys-subnav-chips a:hover {
border-color: var(--xllysSubnavAccent);
color: var(--xllysSubnavAccent);
}
.xllys-subnav-chips a:active {
transform: translateY(0) scale(0.98);
box-shadow: 0 6px 14px rgba(0,0,0,0.10);
border-color: var(--xllysSubnavAccent);
background: color-mix(in srgb, var(--xllysSubnavAccent) 10%, white);
}
.xllys-subnav-chips a:focus-visible {
outline: 2px solid color-mix(in srgb, var(--xllysSubnavAccent) 35%, transparent);
outline-offset: 2px;
}
.xllys-subnav-chips a.xllys-subnav-all { color: var(--xllysSubnavAccent); font-weight: 500; border-color: var(--xllysSubnavAccent); }
.xllys-subnav-chips a.is-on {
background: linear-gradient(90deg, var(--xllysSubnavAccent), var(--xllysSubnavAccent2));
color: #fff;
border-color: transparent;
font-weight: 500;
}
.xllys-subnav-chips a.is-on .xllys-subnav-chips__cnt{
    color: rgba(255,255,255,.78);
}

.vwbg {
    margin: 0 auto;
    position: relative;
    width: 100%;
    max-width: var(--xllys-page-max);
    background-color: #fff;
    box-sizing: border-box
}

.mynav {
    float: none;
    width: 100%;
    min-width: 0;
    /* 顶部一级导航：高度略加，避免选中态指示条/加粗时显得拥挤 */
    min-height: 1.75rem;
    background-color: #fff;
    border-bottom: 0;
    /* 与顶栏同宽贴齐：不再额外产生左右缩进 */
    padding-left: 0;
    padding-right: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    gap: 0.15rem;
    box-sizing: border-box
}

.mynav::-webkit-scrollbar {
    height: 3px
}

.mynav::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, .2);
    border-radius: 2px
}

.mynav a {
    float: none;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    height: 1.75rem;
    line-height: 1.75rem;
    padding: 0 0.45rem;
    display: block;
    font-size: .65rem;
    font-weight: 500;
    text-align: center;
    color: #888;
    white-space: nowrap;
    position: relative;
    border-radius: 6px;
    transition: color 0.28s ease
}

/* 首项与其它项统一左右内边距，避免选中下划线相对文字偏心 */
.mynav a:first-child {
    padding-left: 0.45rem;
}

.mynav .on {
    color: var(--xllysTopAccent, #f97316);
    /* 选中才加粗 */
    font-weight: 800;
    border-bottom: 0
}

.mynav a::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 2px;
    width: min(2.4em, calc(100% - 0.5rem));
    height: 3px;
    margin-left: 0;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--xllysTopAccent, #f97316), var(--xllysTopAccent2, #fdba74));
    transform: translateX(-50%) scaleX(0.65);
    transform-origin: center;
    opacity: 0;
    transition: transform 0.35s ease, opacity 0.35s ease;
    pointer-events: none
}

.mynav .on::after {
    transform: translateX(-50%) scaleX(1);
    opacity: 1
}

/* PC：一级导航下方灰条 —— 多为横向滚动条轨道或细分界线；隐藏滚动条并去掉顶栏区描边 */
@media (min-width: 960px) {
    .xl-topbar,
    .xl-topnav-inner,
    nav.mynav {
        border: 0 !important;
        box-shadow: none !important;
    }
    .mynav {
        scrollbar-width: none;
        -ms-overflow-style: none;
    }
    .mynav::-webkit-scrollbar {
        height: 0;
        display: none;
    }
}

input::-webkit-input-placeholder {
    color: #bbb
}

input::-moz-input-placeholder {
    color: #bbb
}

input:-ms-input-placeholder {
    color: #bbb
}

.mybbs {
    float: left;
    width: 95%;
    padding: .6rem 2.5%;
    background-color: #fffbbb;
    font-weight: bold;
    text-align: center;
    font-size: .75rem;
    line-height: 1.1rem;
    color: #ffffff;
    border-bottom: 1px solid #efefef;
    background: linear-gradient(80deg,rgb(249 115 22),rgb(254 186 116));
    overflow: hidden
}

.myrst {
    float: left;
    width: 95%;
    padding: .6rem 2.5%;
    background-color: #fff;
    font-size: .7rem;
    line-height: 1.1rem;
    color: #f10606;
    border-bottom: 1px solid #efefef;
    overflow: hidden
}

.myvod {
    float: left;
    width: 95%;
    padding: 0.6rem 2.5% 0;
    margin-bottom: 10px;
    border-radius: 2px;
    background-color: #fff;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, .05);
}

/* 新：分区头部 + 两列视频卡片（整块与上下模块留白） */
.xl-section{
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 0 auto 20px;
    padding: 0 0 4px;
    background: transparent;
    clear: both;
    box-sizing: border-box;
}

/* 搜索页 / 播放页等：面包屑（无外框，扁平与主题橙呼应） */
.xl-crumb{
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 0 auto 12px;
    padding: 10px 0 12px;
    background: transparent;
    border: none;
    border-radius: 0;
    font-size: 12px;
    line-height: 1.65;
    color: #374151;
    box-sizing: border-box;
    clear: both;
}
.xl-crumb a{
    color: #1f2937;
    font-weight: 800;
}
.xl-crumb a:hover{
    color: var(--xllys-accent, #ea580c);
}
.xl-crumb__muted{
    color: rgba(0, 0, 0, 0.48);
    font-weight: 600;
}
.xl-crumb__sep{
    margin: 0 5px;
    color: rgba(249, 115, 22, 0.38);
    font-weight: 700;
}

.xl-search__hint{
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 8px auto 12px;
    padding: 8px 0;
    background: rgba(0,0,0,.03);
    border-radius: 12px;
    border: 1px solid rgba(0,0,0,.05);
    font-size: 12px;
    color:#666;
    box-sizing: border-box;
    clear: both;
}

/* 播放页：播放器外层（与版心同宽；高度按 16:9，禁止固定 260px） */
.xl-play-stage {
    width: 100%;
    max-width: min(var(--xllys-page-max), calc(100vw - 2 * var(--xllys-gutter)));
    margin: 0 auto 12px;
    box-sizing: border-box;
    background: #000;
    border-radius: 10px;
    overflow: hidden;
}
.xl-play-stage .MacPlayer {
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
    min-height: 180px;
    box-sizing: border-box;
}

/* 播放页：猜你喜欢/相关视频 tabs */
.xl-rel{
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 12px auto 0;
    box-sizing: border-box;
    clear: both;
}
.xl-rel__head{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 10px;
    margin: 10px 0 8px;
    flex-wrap: wrap;
}
.xl-rel__title{
    font-size: 15px;
    font-weight: 900;
    color: #111;
    letter-spacing: .02em;
}
.xl-rel__tabs{
    display:flex;
    align-items:center;
    gap: 4px;
    padding: 2px;
    background: rgba(255,255,255,.58);
    border: 0;
    border-radius: 999px;
    overflow: auto;
    max-width: 100%;
    -webkit-backdrop-filter: blur(10px) saturate(160%);
    backdrop-filter: blur(10px) saturate(160%);
    box-shadow: 0 10px 26px rgba(0,0,0,.10);
    position: relative;
    z-index: 2;
    pointer-events: auto;
    margin: 4px 0;
}
.xl-rel__tabs--rank{
    padding: 2px;
    gap: 4px;
}
.xl-rel__tab{
    appearance:none;
    border: 0;
    background: transparent;
    color: rgba(0,0,0,.62);
    font-size: 12px;
    font-weight: 700;
    padding: 6px 9px;
    margin: 2px 0;
    border-radius: 999px;
    cursor: pointer;
    white-space: nowrap;
    transition: transform .12s ease, background .18s ease, color .18s ease;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
}
.xl-rel__tab:active{ transform: scale(.98); }
.xl-rel__tab.is-on{
    background: rgba(255,255,255,.92);
    color: #111;
    box-shadow: 0 10px 22px rgba(0,0,0,.10);
}
.xl-rel__pane{ animation: xlRelPaneIn .42s cubic-bezier(.18,.9,.25,1) both; }
@keyframes xlRelPaneIn{
    from{ opacity: 0; transform: translateY(10px); }
    to{ opacity: 1; transform: translateY(0); }
}

/* 播放页：切换线路入口条 */
.xl-play-lines {
    position: relative;
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 10px auto 12px;
    padding: 0;
    background: linear-gradient(135deg, #fff 0%, #fffaf5 55%, #fff7ed 100%);
    border: 1px solid rgba(249, 115, 22, 0.2);
    border-radius: 14px;
    box-shadow: 0 8px 28px rgba(249, 115, 22, 0.08);
    box-sizing: border-box;
    overflow: hidden;
    clear: both;
}
.xl-play-lines__accent {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, var(--xllys-accent, #f97316), #fb923c);
    border-radius: 14px 0 0 14px;
}
.xl-play-lines__inner {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px 12px 16px;
    flex-wrap: wrap;
}
.xl-play-lines__icon {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: rgba(249, 115, 22, 0.12);
    color: var(--xllys-accent, #f97316);
}
.xl-play-lines__body {
    flex: 1 1 160px;
    min-width: 0;
}
.xl-play-lines__title {
    font-size: 14px;
    font-weight: 900;
    color: #1a1a1a;
    letter-spacing: 0.02em;
    margin-bottom: 4px;
}
.xl-play-lines__desc {
    margin: 0;
    font-size: 11px;
    line-height: 1.45;
    color: rgba(0, 0, 0, 0.48);
}
.xl-play-lines__action {
    flex-shrink: 0;
    margin-left: auto;
}
.xl-play-lines__btn {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0;
    padding: 7px 12px;
    border-radius: 999px;
    background: linear-gradient(135deg, #fb923c, var(--xllys-accent, #f97316));
    color: #fff !important;
    text-decoration: none !important;
    font-size: 12px;
    font-weight: 900;
    border: none;
    box-shadow: 0 4px 14px rgba(249, 115, 22, 0.35);
    box-sizing: border-box;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    white-space: nowrap;
}
.xl-play-lines__btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(249, 115, 22, 0.42);
    color: #fff !important;
}
.xl-play-lines__btn:active {
    transform: translateY(0);
}
.xl-play-lines__btn-inner {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.xl-play-lines__btn-label {
    line-height: 1.2;
}
.xl-play-lines__btn-sep {
    opacity: 0.55;
    font-weight: 700;
    font-size: 11px;
}
.xl-play-lines__btn-meta {
    font-size: 11px;
    font-weight: 800;
    opacity: 0.95;
    letter-spacing: 0.02em;
}
.xl-play-lines__solo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 12px;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 800;
    color: #9a3412;
    background: rgba(255, 255, 255, 0.75);
    border: 1px dashed rgba(249, 115, 22, 0.35);
}
.xl-play-lines:has(.xl-play-lines__solo) .xl-play-lines__icon {
    background: rgba(0, 0, 0, 0.06);
    color: rgba(0, 0, 0, 0.35);
}

/* 播放页：线路选择底栏 */
#xllysLineSheet.xl-play-line-sheet {
    position: fixed;
    inset: 0;
    z-index: var(--xllys-sheet-z, 101000);
    box-sizing: border-box;
}
#xllysLineSheet .xl-play-line-sheet__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 18, 28, 0.52);
    opacity: 0;
    transition: opacity 0.26s ease;
}
#xllysLineSheet.is-open .xl-play-line-sheet__backdrop {
    opacity: 1;
}
#xllysLineSheet .xl-play-line-sheet__panel {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%) translateY(104%);
    width: 100%;
    max-width: var(--xllys-page-max);
    max-height: 78vh;
    background: #fff;
    border-radius: 18px 18px 0 0;
    box-shadow: 0 -12px 40px rgba(0, 0, 0, 0.18);
    box-sizing: border-box;
    overflow: hidden;
    opacity: 0;
    transition: transform 0.32s cubic-bezier(0.18, 0.9, 0.25, 1), opacity 0.22s ease;
    will-change: transform, opacity;
}
#xllysLineSheet.is-open .xl-play-line-sheet__panel {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
}
#xllysLineSheet .xl-play-line-sheet__handle {
    width: 36px;
    height: 4px;
    margin: 10px auto 6px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.12);
}
#xllysLineSheet .xl-play-line-sheet__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 4px 16px 12px;
    border-bottom: 1px solid rgba(249, 115, 22, 0.14);
    background: linear-gradient(180deg, #fff7ed 0%, #fff 100%);
}
#xllysLineSheet .xl-play-line-sheet__title {
    font-size: 16px;
    font-weight: 900;
    color: #111827;
    margin: 0 0 4px;
    letter-spacing: 0.02em;
}
#xllysLineSheet .xl-play-line-sheet__sub {
    margin: 0;
    font-size: 11px;
    line-height: 1.45;
    color: rgba(0, 0, 0, 0.45);
    max-width: 42em;
}
#xllysLineSheet .xl-play-line-sheet__close {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid rgba(249, 115, 22, 0.22);
    background: #fff;
    border-radius: 11px;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    color: #6b7280;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
#xllysLineSheet .xl-play-line-sheet__close:hover {
    background: #fff7ed;
    color: #ea580c;
    border-color: rgba(249, 115, 22, 0.4);
}
#xllysLineSheet .xl-play-line-sheet__scroll {
    padding: 12px 14px calc(14px + env(safe-area-inset-bottom, 0px));
    overflow: auto;
    max-height: calc(78vh - 120px);
    box-sizing: border-box;
}
#xllysLineSheet .xl-play-line-sheet__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
#xllysLineSheet .xl-play-line-sheet__list > li {
    margin: 0;
    width: 100%;
}
#xllysLineSheet .xl-play-line-sheet__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    padding: 12px 14px;
    border-radius: 12px;
    border: 1px solid rgba(249, 115, 22, 0.18);
    background: #fffaf5;
    color: #1f2937 !important;
    text-decoration: none !important;
    font-size: 14px;
    font-weight: 800;
    box-sizing: border-box;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.12s ease;
}
#xllysLineSheet .xl-play-line-sheet__row:hover {
    border-color: rgba(249, 115, 22, 0.45);
    background: #fff7ed;
    box-shadow: 0 4px 14px rgba(249, 115, 22, 0.12);
}
#xllysLineSheet .xl-play-line-sheet__name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#xllysLineSheet .xl-play-line-sheet__pill {
    flex-shrink: 0;
    font-size: 11px;
    font-weight: 800;
    padding: 4px 9px;
    border-radius: 999px;
    letter-spacing: 0.02em;
}
#xllysLineSheet .xl-play-line-sheet__pill--off {
    color: #c2410c;
    background: rgba(249, 115, 22, 0.12);
    border: 1px solid rgba(249, 115, 22, 0.2);
}
#xllysLineSheet .xl-play-line-sheet__pill--on {
    color: #fff;
    background: rgba(255, 255, 255, 0.22);
    border: 1px solid rgba(255, 255, 255, 0.35);
}
#xllysLineSheet .xllys-line-item.is-active .xl-play-line-sheet__row {
    background: linear-gradient(135deg, #fb923c, var(--xllys-accent, #f97316)) !important;
    border-color: transparent !important;
    color: #fff !important;
    box-shadow: 0 8px 22px rgba(249, 115, 22, 0.4);
}
#xllysLineSheet .xllys-line-item.is-active .xl-play-line-sheet__pill--on {
    background: rgba(255, 255, 255, 0.22);
    border-color: rgba(255, 255, 255, 0.4);
    color: #fff;
}

/* 播放页：热门标签（取当前影片 tag）— 无外框、小号文字与 pill */
.xl-play-tags{
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 0 auto 10px;
    padding: 8px 0 10px;
    background: transparent;
    border-radius: 0;
    border: none;
    box-sizing: border-box;
    clear: both;
}
.xl-play-tags__title{
    font-size: 11px;
    font-weight: 800;
    color: rgba(0,0,0,.45);
    letter-spacing: .02em;
    margin-bottom: 6px;
}
.xl-play-tags__list{
    display:flex;
    flex-wrap: wrap;
    gap: 6px;
}
.xl-play-tags__list a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height: 24px;
    line-height: 1.2;
    padding: 4px 9px;
    border-radius: 999px;
    border: none;
    background: color-mix(in srgb, var(--xl-playTagC, #64748b) 14%, #fff);
    color: var(--xl-playTagC, #334155);
    font-size: 11px;
    font-weight: 500;
    max-width: 100%;
    box-sizing: border-box;
}
.xl-play-tags__list a:nth-child(8n+1){ --xl-playTagC:#f97316; }
.xl-play-tags__list a:nth-child(8n+2){ --xl-playTagC:#ef4444; }
.xl-play-tags__list a:nth-child(8n+3){ --xl-playTagC:#a855f7; }
.xl-play-tags__list a:nth-child(8n+4){ --xl-playTagC:#3b82f6; }
.xl-play-tags__list a:nth-child(8n+5){ --xl-playTagC:#06b6d4; }
.xl-play-tags__list a:nth-child(8n+6){ --xl-playTagC:#10b981; }
.xl-play-tags__list a:nth-child(8n+7){ --xl-playTagC:#f59e0b; }
.xl-play-tags__list a:nth-child(8n+8){ --xl-playTagC:#6366f1; }
.xl-play-tags__list a:hover{
    background: color-mix(in srgb, var(--xl-playTagC, #f97316) 22%, #fff);
    color: var(--xl-playTagC, #ea580c);
}

/* 播放页：分享区（与主题橙统一，非默认蓝链） */
.xl-play-share{
    position: relative;
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 0 auto 12px;
    padding: 10px 12px 12px;
    background: #fff;
    border-radius: 12px;
    border: 1px solid rgba(249,115,22,0.18);
    box-sizing: border-box;
    clear: both;
}
.xl-play-share__head{
    padding: 0 2px 8px;
}
.xl-play-share__title{
    display: block;
    font-size: 13px;
    font-weight: 900;
    color: #1a1a1a;
    margin-bottom: 4px;
}
.xl-play-share__hint{
    font-size: 11px;
    color: rgba(0,0,0,.48);
    line-height: 1.45;
}
.xl-play-share__actions{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
.xl-play-share__btn{
    appearance: none;
    cursor: pointer;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 800;
    padding: 8px 14px;
    border: 1px solid rgba(249,115,22,0.35);
    background: #fff;
    color: #c2410c;
    box-sizing: border-box;
}
.xl-play-share__btn--primary{
    background: #f97316;
    border-color: #f97316;
    color: #fff;
}
.xl-play-share__btn--primary:hover{
    background: #ea580c;
    border-color: #ea580c;
    color: #fff;
}
.xl-play-share__btn--ghost:hover{
    background: #fff7ed;
    border-color: #f97316;
    color: #ea580c;
}
.xl-play-share__toast{
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%) translateY(8px);
    padding: 8px 14px;
    border-radius: 10px;
    background: rgba(0,0,0,.78);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
    opacity: 0;
    transition: opacity .2s ease, transform .2s ease;
    pointer-events: none;
    z-index: 2;
}
.xl-play-share__toast.is-in{
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.xl-section__head{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 10px;
    background: transparent;
    border-radius: 0;
    /* 页面主体已在 body 预留左右间距，这里不再重复留白 */
    padding: 10px 0;
    box-shadow: none;
    border: 0;
}

.xl-section__right{
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.xl-section__count{
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 600;
    color: rgba(0,0,0,.62);
    padding: 4px 10px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid rgba(0,0,0,.06);
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.xl-section__count::before{
    content:'';
    width: 6px;
    height: 6px;
    border-radius: 99px;
    background: #f97316;
    opacity: .9;
}
.xl-section__count .mac_total{
    font-weight: 900;
    color: #111;
    margin: 0 1px;
}

.xl-section__title{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    font-size: .75rem;
    font-weight: 950;
    color:#111;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.xl-section__icon{
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
    border-radius: 4px;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* 没有分类图片时的默认占位图标（走模板文件，避免写死 base64） */
.xl-section__title:not(.xl-section__title--hasIcon){
    padding-left: 28px;
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 20px 20px;
    background-image: url("../images/type-default.svg");
}
.xl-section__title.xl-section__title--hasIcon{
    padding-left: 0;
    background-image: none;
}

.xl-section__titleText{
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.xl-section__more{
    flex: 0 0 auto;
    font-size: .65rem;
    font-weight: 700;
    color: #f97316;
    padding: 0;
    border-radius: 0;
    background: transparent !important;
    border: 0;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.xl-section__more::after{
    content: '›';
    display: inline-block;
    line-height: 1;
    opacity: .75;
    transform: translateY(-0.5px);
}
.xl-section__more:hover{
    text-decoration: underline;
    text-underline-offset: 2px;
}


.xl-video-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    clear: both;
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 8px auto;
    box-sizing: border-box;
}
@media (min-width: 680px) {
    .xl-video-grid{
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }
}
/* PC：更宽屏显示 4 列 */
@media (min-width: 960px) {
    .xl-video-grid{
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* ========== 友情链接（新布局，替换旧 myhot/ff-site-hot） ========== */
.xl-links{
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 6px auto 0;
    /* 外层卡片尽量“满版心”，内边距下沉到内部元素，避免视觉变窄 */
    padding: 0;
    box-sizing: border-box;
    border-radius: 14px;
    background: linear-gradient(180deg, #fff7ed 0%, #ffffff 55%, #ffffff 100%);
    border: 1px solid rgba(249, 115, 22, 0.14);
}
.xl-links__apply{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    line-height: 30px;
    padding: 0 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
    background: linear-gradient(135deg, #fb923c, var(--xllys-accent, #f97316));
    color: #fff !important;
    box-shadow: 0 10px 26px rgba(249,115,22,.18);
    border: 0;
    white-space: nowrap;
}
.xl-links__apply:active{ transform: scale(.98); }
.xl-links__group{ margin-top: 0; padding: 10px 10px 12px; }
.xl-links__group:first-child{ padding-top: 12px; }
.xl-links__group + .xl-links__group{
    border-top: 1px solid rgba(0,0,0,.05);
}
.xl-links__more{
    display:flex;
    justify-content:center;
    padding: 10px 0 2px;
}
.xl-links__moreBtn{
    appearance: none;
    border: 1px solid rgba(249,115,22,.22);
    background: rgba(249,115,22,.10);
    color: #9a3412;
    height: 30px;
    line-height: 30px;
    padding: 0 14px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 950;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}
.xl-links__moreBtn:active{ transform: scale(.98); }
.xl-links__item.is-hidden{ display:none !important; }
.xl-links__groupHead{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 10px;
    margin: 0 2px 8px;
}
.xl-links__groupTitle{
    font-size: 12px;
    font-weight: 950;
    color: #111;
    letter-spacing: .02em;
}
.xl-links__groupMeta{
    font-size: 10px;
    font-weight: 900;
    color: rgba(0,0,0,.45);
    padding: 4px 8px;
    line-height: 1;
    border-radius: 999px;
    background: rgba(0,0,0,.04);
    border: 1px solid rgba(0,0,0,.06);
}
.xl-links__grid{
    /* 友链项按内容自适应宽度：用 flex-wrap 代替固定列 grid */
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.xl-links__grid--pic{ gap: 10px; }
.xl-links__item{
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 36px;
    line-height: 1;
    padding: 8px 10px;
    border-radius: 12px;
    background: rgba(255,255,255,.82);
    border: 1px solid rgba(0,0,0,.06);
    color: rgba(0,0,0,.70);
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-sizing: border-box;
    transition: transform .14s ease, background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
    -webkit-tap-highlight-color: transparent;
    gap: 8px;
    /* 自适应宽度，但不要撑破容器 */
    width: auto;
    max-width: 100%;
}
.xl-links__ico{
    width: 18px;
    height: 18px;
    border-radius: 6px;
    flex: 0 0 auto;
    display: inline-flex;
    align-items:center;
    justify-content:center;
    background: rgba(249,115,22,.10);
    border: 1px solid rgba(249,115,22,.14);
    box-sizing: border-box;
    position: static;
    transform: none;
}
.xl-links__ico img{
    width: 14px;
    height: 14px;
    border-radius: 4px;
    display:block;
}
.xl-links__name{
    padding: 0;
    text-align: left;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 1.2;
}
.xl-links__item--pic{
    justify-content: center;
    padding: 8px 10px;
}
.xl-links__picWrap{
    width: 46px;
    height: 26px;
    border-radius: 10px;
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(0,0,0,.06);
    overflow: hidden;
    flex: 0 0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    box-sizing: border-box;
    position: static;
    transform: none;
}
.xl-links__pic{
    width: 100%;
    height: 100%;
    object-fit: contain;
    display:block;
}
.xl-links__item:hover{
    color: #c2410c;
    background: #fff;
    border-color: rgba(249,115,22,.35);
    box-shadow: 0 10px 26px rgba(249,115,22,.10);
    transform: translateY(-1px);
}
.xl-links__item:active{
    transform: translateY(0) scale(.99);
}
/* 分区内的网格：底部留白交给 .xl-section，避免与下一模块间距叠得过厚 */
.xl-section .xl-video-grid{
    margin: 6px auto 0;
}

.xl-video-card{
    background:#fff;
    border-radius: 8px;
    overflow:hidden;
    box-shadow: none;
    border: none;
    position: relative;
    transform: translateZ(0);
    transition: transform .22s cubic-bezier(.2,.9,.2,1);
}

/* 列表“最近点击”高亮：让用户知道刚点了哪个卡片（无阴影，用描边区分） */
.xl-video-card.is-last-clicked{
    transform: translateY(-1px);
    box-shadow: none;
    outline: 2px solid rgba(249, 115, 22, 0.28);
    outline-offset: 0;
}
.xl-video-card.is-last-clicked::before{ opacity: 1; }
.xl-video-card.is-last-clicked::after{
    opacity: .55;
    transform: rotate(18deg) translateX(260%);
    transition: transform .75s ease, opacity .22s ease 0s;
}

.xl-video-card.is-last-clicked::selection{ background: transparent; }

.xl-video-card.is-last-clicked .xl-video-card__thumb::before{
    opacity: .7;
}

.xl-video-card.is-last-clicked::marker{ content: ''; }

.xl-video-card.is-last-clicked::before{
    filter: saturate(1.15);
}

.xl-video-card.is-last-clicked::after{
    opacity: .60;
}

.xl-video-card.is-last-clicked::before{
    /* 叠加更明显的光晕 */
    background:
      radial-gradient(140px 90px at 18% 0%, rgba(249,115,22,.30), rgba(255,255,255,0) 62%),
      radial-gradient(190px 140px at 92% 10%, rgba(59,130,246,.18), rgba(255,255,255,0) 68%);
}

/* 右上角小提示点（不写字，更高级） */
.xl-video-card.is-last-clicked .xl-video-card__meta{
    position: relative;
}
.xl-video-card.is-last-clicked .xl-video-card__meta::after{
    content:'';
    position:absolute;
    top: 10px;
    right: 8px;
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #f97316;
    box-shadow: none;
    opacity: .9;
}

/* wgvod_seo 同款：光影 + 悬浮放大 */
.xl-video-card::before{
    content:'';
    position:absolute;
    inset:-2px;
    background: radial-gradient(120px 80px at 20% 0%, rgba(249,115,22,.18), rgba(255,255,255,0) 60%),
                radial-gradient(160px 120px at 90% 10%, rgba(59,130,246,.10), rgba(255,255,255,0) 65%);
    opacity:.0;
    transition: opacity .22s ease;
    pointer-events:none;
    z-index: 4; /* 提到内容之上，确保可见 */
}

.xl-video-card::after{
    content:'';
    position:absolute;
    top:-40%;
    left:-60%;
    width: 55%;
    height: 180%;
    background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.55), rgba(255,255,255,0));
    transform: rotate(18deg) translateX(-30%);
    opacity: 0;
    /* 默认：先回扫，再淡出（opacity 延迟） */
    transition: transform .75s ease, opacity .22s ease .55s;
    pointer-events:none;
    z-index: 5; /* 扫光在最上层 */
}

.xl-video-card > *{ position: relative; z-index: 2; }

/* 让封面链接在移动端更“像按钮” */
.xl-video-card__thumb{
    touch-action: manipulation;
    -webkit-tap-highlight-color: rgba(249,115,22,.12);
}

/* 扫光/高光放到 thumb 上，移动端必生效 */
.xl-video-card__thumb::before{
    content:'';
    position:absolute;
    inset:-2px;
    background: radial-gradient(120px 80px at 20% 0%, rgba(249,115,22,.16), rgba(255,255,255,0) 60%),
                radial-gradient(160px 120px at 90% 10%, rgba(59,130,246,.10), rgba(255,255,255,0) 65%);
    opacity:.35;
    transition: opacity .22s ease;
    pointer-events:none;
    z-index: 2;
}
.xl-video-card__thumb::after{
    content:'';
    position:absolute;
    top:-40%;
    left:-60%;
    width: 55%;
    height: 180%;
    background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.55), rgba(255,255,255,0));
    transform: rotate(18deg) translateX(-20%);
    opacity: 0;
    pointer-events:none;
    z-index: 3;
}

@media (hover:hover) and (pointer:fine){
    .xl-video-card:hover{
        transform: translateY(-2px) scale(1.02);
        box-shadow: none;
    }
    .xl-video-card:hover::before{ opacity: 1; }
    .xl-video-card:hover::after{
        opacity: .55;
        transform: rotate(18deg) translateX(260%);
        /* hover 时：立刻淡入 + 扫过去 */
        transition: transform .75s ease, opacity .22s ease 0s;
    }
    .xl-video-card:hover .xl-video-card__thumb img{
        transform: scale(1.05);
    }
}

.xl-video-card__thumb img{
    transition: transform .35s cubic-bezier(.2,.9,.2,1);
    will-change: transform;
}

/* 移动端：无 hover，也给出同款触感特效 */
@media (hover:none){
    /* 轻点/按住时：上浮变大 + 扫光（命中 thumb） */
    .xl-video-card:active{
        transform: translateY(-1px) scale(1.015);
        box-shadow: none;
    }
    .xl-video-card:active::before{ opacity: 1; }
    .xl-video-card:active::after{
        opacity: .55;
        transform: rotate(18deg) translateX(260%);
        transition: transform .75s ease, opacity .22s ease 0s;
    }
    .xl-video-card:active .xl-video-card__thumb img{
        transform: scale(1.04);
    }
}

@media (prefers-reduced-motion: reduce){
    .xl-video-card,
    .xl-video-card__thumb img{
        transition: none !important;
    }
    .xl-video-card::after{ display:none; }
}

.xl-video-card__thumb{
    position: relative;
    display:block;
    overflow:hidden;
    border-radius: 8px;
    height: 0;
    padding-bottom: 56.25%;
    background: #edf0f9;
}

.xl-video-card__thumb img{
    position: absolute;
    inset: 0;
    width:100%;
    height:100%;
    object-fit: cover;
    border-radius: 8px;
    display:block;
}

.xl-video-card__duration{
    position:absolute;
    right: 8px;
    bottom: 8px;
    z-index: 2;
    font-size: 11px;
    line-height: 18px;
    padding: 0 8px;
    height: 18px;
    border-radius: 6px;
    color:#fff;
    background: rgba(0,0,0,.55);
    backdrop-filter: blur(6px);
}

/* 与封面同宽：取消左右内边距，避免标题比缩略图多缩进 */
.xl-video-card__meta{
    padding: 10px 0 12px;
}

.xl-video-card__title{
    font-size: 13px;
    font-weight: 500;
    color:#111;
    line-height: 1.5;
    max-height: 39px; /* 13px * 1.5 * 2 = 39px */
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    word-break: break-word;
    min-width: 0;
}

.xl-video-card__sub{
    margin-top: 6px;
    font-size: 11px;
    color:#777;
    display:flex;
    align-items:center;
    gap: 6px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.xl-video-card__cat,
.xl-video-card__date{
    overflow:hidden;
    text-overflow: ellipsis;
}

.xl-video-card__dot{ opacity:.6; }

/* 广告卡：允许图像铺满但不影响普通卡片 */
.xl-video-card--ad .xl-video-card__thumb img{
    object-fit: fill;
}

/* 广告卡整卡可点：透明覆盖链接 */
.xl-video-card--ad .xl-video-card__cover{
    position:absolute;
    inset:0;
    z-index: 6;
    display:block;
    border-radius: inherit;
    background: transparent;
}

.uzimg {
    position: relative;
    display: block;
    float: left;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    background: #edf0f9;
    border-radius: 2px;
    overflow: hidden
}

.uzimg img {
    width: 100%;
    height: 170px;
    height: auto;
    object-fit: cover;
}

/* 视频框广告位：整图拉满画框、不裁切，允许形变以适配 16:9 容器 */
.uzimg.uzimg-ad img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: fill;
    object-position: center;
    display: block;
}

@media(max-width:767px) {
    .uzimg img {
        width: 100%;
        height: 110px;
        object-fit: cover;
    }
    .uzimg.uzimg-ad img {
        width: 100%;
        height: 100%;
        object-fit: fill;
    }
}

.uzimg span {
/*    position: absolute;
    bottom: 0;
    right: 0;
    font-size: .55rem;
    line-height: .75rem;
    color: #eee;
    background: rgba(0, 0, 0, .0);
    border-top-left-radius: 2px;
    overflow: hidden*/
    font-size: 10px;
    line-height: 18px;
    height: 18px;
    overflow: hidden;
    position: absolute;
    overflow: hidden;
    background-color: rgba(0, 0, 0, 0.6);
    color: #fff;
    bottom: 5px;
    right: 5px;
    padding: 0px 5px;
    border-radius: 5px;
}

.myvod h4 {
    font-size: .65rem;
    font-weight: normal;
    width: 100%;
    height: 1.35rem;
    line-height: 1.35rem;
    white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis
}

.myvod h4 a {
    color: #333
}

.myhot {
    float: left;
    width: 95%;
    padding: 5px 2.5%;
    background-color: #fff;
    border-top: 1px solid #efefef
}

.myhot p {
    float: left;
    width: 100%;
    padding: .6rem 0 .4rem;
    font-size: .7rem;
    line-height: 1.1rem;
    color: #f10606;
}

.myhot a {
    float: left;
    margin-right: 2.5%;
    margin-bottom: .5rem;
    padding: 0 .5rem;
    line-height: 1.5rem;
    font-size: .65rem;
    color: #777;
    border: 1px solid #ececec;
    border-radius: .5rem
}

/* ========== art/type.html 内联样式迁移（文章分类页） ========== */
.myvod ul li{
    float: left;
    width: 100% !important;
    margin-right: 2.6%;
}
.myvod h4{
    width: 84%;
    float: left;
}
.arttitle{
    float: left;
    font-size: 12px;
    color: #888;
    height: 1.7rem;
    line-height: 1.35rem;
}

.mypage {
    float: left;
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 18px auto 0;
    padding: 10px 0 12px;
    background: transparent;
    border-top: 0;
    display: flex;
    gap: 8px;
    justify-content: space-between;
    box-sizing: border-box;
    clear: both;
}

.mypage em,
.mypage a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    line-height: 36px;
    border-radius: 12px;
    font-size: 13px;
    text-align: center;
    font-weight: 900;
    font-style: normal;
    border: 1px solid rgba(0,0,0,.08);
    color: #333;
    background: #fff;
    box-sizing: border-box;
    flex: 1 1 0;
    min-width: 0;
    margin-left: 0;
}

.mypage em {
    border: 1px solid rgba(0,0,0,.06);
    color: rgba(0,0,0,.28);
    background: rgba(0,0,0,.03);
}

.mypage a:hover{
    border-color: rgba(249,115,22,.35);
    color: #f97316;
}

.mycate {
    float: left;
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 8px auto 0;
    padding: 10px 0 2px;
    background: transparent;
    border-top: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    box-sizing: border-box;
    clear: both;
}

.mycate a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 34px;
    line-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    font-size: 13px;
    text-align: center;
    font-weight: 900;
    font-style: normal;
    border: 1px solid rgba(0,0,0,.08);
    color: #333;
    background: #fff;
    box-sizing: border-box;
    max-width: 100%;
}

.mycate a:hover{
    border-color: rgba(249,115,22,.35);
    color: #f97316;
}

.myplayer {
    float: left;
    position: relative;
    display: block;
    overflow: hidden;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    background-color: #000;
    z-index: 999
}

.myplayer iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0
}

.mymenu {
    float: left;
    width: 95%;
    padding: .3rem 2.5%;
    height: 1.6rem;
    background-color: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.mymenu a {
    float: left;
    width: 23.125%;
    height: 1.6rem;
    line-height: 1.6rem;
    display: block;
    font-size: .7rem;
    text-align: center;
    color: #fff;
    background-color: #f97316;
    border-radius: 2px
}

.myant {
    float: left;
    width: 95%;
    padding: .6rem 2.5% 2.8rem;
    background-color: #fff;
    border-top: 1px solid #efefef
}

.myant a {
    float: left;
    width: 48.2%;
    padding-left: 0.5%;
    margin-bottom: .3rem;
    margin-right: 2.6%;
    height: 1.6rem;
    line-height: 1.6rem;
    display: block;
    background-color: #e6eaf1;
    border-radius: 2px;
    font-size: .65rem;
    color: #333;
    white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis
}

.myant a:nth-child(2n) {
    margin-right: 0
}

.myant .on {
    color: #f97316
}

.myft,
footer.xl-site-footer.myft {
    float: none;
    width: 100%;
    max-width: min(var(--xllys-page-max), calc(100vw - 2 * var(--xllys-gutter)));
    margin-left: auto;
    margin-right: auto;
    /* body 已有左右 gutter；这里再 padding 会导致页脚整体看起来变窄 */
    padding: 5px 0 calc(12px + var(--xllys-bottom-nav-spacer));
    box-sizing: border-box;
    background: transparent;
    border-top: 0;
    clear: both;
}

.myft p {
    text-align: center;
    font-size: .5rem;
    color: rgba(0,0,0,.55)
}

/* ========== 页脚免责声明（新布局） ========== */
.xl-footer{
    width: 100%;
    max-width: min(var(--xllys-page-max), calc(100vw - 2 * var(--xllys-gutter)));
    margin: 0 auto;
    /* 外层卡片满版心；内边距放到内部块，避免看起来比别的模块窄 */
    padding: 0;
    box-sizing: border-box;
    color: rgba(0,0,0,.72);
    border-radius: 16px;
    background: linear-gradient(180deg, #fff7ed 0%, #ffffff 55%, #ffffff 100%);
    border: 1px solid rgba(249,115,22,.16);
}
.xl-footer__top{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    padding: 12px 12px 10px;
}
.xl-footer__brand{
    display:flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}
.xl-footer__name{
    font-size: 14px;
    font-weight: 950;
    letter-spacing: .02em;
    color: #111;
}
.xl-footer__badges{ display:flex; gap: 6px; flex-wrap: wrap; }
.xl-footer__badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height: 22px;
    line-height: 22px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    color: rgba(0,0,0,.62);
    background: rgba(0,0,0,.04);
    border: 1px solid rgba(0,0,0,.06);
}
.xl-footer__badge--accent{
    color: #9a3412;
    background: rgba(249,115,22,.12);
    border-color: rgba(249,115,22,.22);
}
.xl-footer__actions{
    display:flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items:center;
    margin-left: auto;
}
.xl-footer__btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height: 32px;
    line-height: 32px;
    padding: 0 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
    color: rgba(0,0,0,.72) !important;
    background: rgba(255,255,255,.86);
    border: 1px solid rgba(0,0,0,.08);
    box-sizing: border-box;
    transition: transform .14s ease, background .18s ease, border-color .18s ease;
    -webkit-tap-highlight-color: transparent;
    white-space: nowrap;
}
.xl-footer__btn:hover{
    background: #fff;
    border-color: rgba(249,115,22,.30);
}
.xl-footer__btn:active{ transform: scale(.98); }
.xl-footer__btn--primary{
    background: linear-gradient(135deg, #fb923c, var(--xllys-accent, #f97316));
    border-color: rgba(249,115,22,.25);
    color:#fff !important;
    box-shadow: 0 10px 26px rgba(249,115,22,.18);
}
.xl-footer__btn--ghost{
    background: rgba(255,255,255,.72);
}
.xl-footer__btn--tg{
    background: rgba(0,0,0,.06);
    border-color: rgba(0,0,0,.10);
    color: rgba(0,0,0,.72) !important;
}
.xl-footer__desc{
    padding: 10px 12px 6px;
    border-top: 1px solid rgba(0,0,0,.06);
}
.xl-footer__p{
    margin: 8px 0 0;
    font-size: 12px;
    line-height: 1.6;
    color: rgba(0,0,0,.56);
}
.xl-footer__p strong{ color: rgba(0,0,0,.78); font-weight: 950; }
.xl-footer__links{
    display:grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 12px 12px 6px;
}
@media (min-width: 520px){
    .xl-footer__links{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 960px){
    .xl-footer__links{ grid-template-columns: repeat(6, minmax(0, 1fr)); }
}
.xl-footer__link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height: 30px;
    line-height: 30px;
    padding: 0 10px;
    border-radius: 12px;
    text-decoration: none;
    color: rgba(0,0,0,.62) !important;
    background: rgba(255,255,255,.78);
    border: 1px solid rgba(0,0,0,.08);
    font-size: 11px;
    font-weight: 900;
    box-sizing: border-box;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: transform .14s ease, background .18s ease, border-color .18s ease, color .18s ease;
}
.xl-footer__link:hover{
    color: #9a3412 !important;
    background: rgba(249,115,22,.12);
    border-color: rgba(249,115,22,.24);
    transform: translateY(-1px);
}
.xl-footer__link:active{ transform: translateY(0) scale(.99); }
.xl-footer__bottom{
    /* 底部版权区：居中 + 紧凑；底部导航占位只留在 footer.myft（避免双重留白） */
    display:flex;
    flex-direction: column;
    align-items:center;
    justify-content: center;
    gap: 6px;
    flex-wrap: wrap;
    padding: 12px 12px 12px;
    border-top: 1px solid rgba(0,0,0,.06);
    margin-top: 10px;
    text-align: center;
}
.xl-footer__copy{
    font-size: 11px;
    color: rgba(0,0,0,.45);
    font-weight: 800;
}
.xl-footer__tj{
    font-size: 11px;
    color: rgba(0,0,0,.45);
    font-weight: 800;
}
/* 兼容旧 myft 的 p：新布局不需要它们 */
.xl-footer .myft p{ display:none; }

.art-content img {
    width: 98%!important;
}

.mytitle {
    background-color: #fff;
    margin-top: 0px;
    color: #000;
    font-size: 17px;
    height: 32px;
    line-height: 32px;
    /* body 已含左右 gutter，避免与 .mytitle 再叠一层导致与内容区不对齐 */
    padding: 5px 0;
    width: 100%;
    box-sizing: border-box;
    float: none;
    font-weight: bold;
    border-bottom: 1px solid #f6f6f6;
}
/* ===========================
   ads/wenzi：站长推荐（模块化）
   =========================== */
.wb-wenzi__grid{
    width: 100%;
    overflow: hidden;
    display: grid;
    margin: 0;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 4px;
}
.wb-wenzi__grid a{
    width: auto;
    float: none;
    border-radius: 4px;
    line-height: 28px;
    height: 28px;
    text-align: center;
    font-size: 12px;
    color: #fff;
    display: block;
    margin: 0;
    transition: background .18s ease, transform .18s ease, filter .18s ease;
    text-decoration: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}
.wb-wenzi__grid a:hover{
    filter: brightness(.96);
    transform: translateY(-1px);
}
.wb-wenzi__grid a:active{
    transform: translateY(0) scale(.98);
}
@media screen and (max-width: 1000px) {
    .wb-wenzi__grid a{
        font-size: 11px;
        line-height: 26px;
        height: 26px;
        border-radius: 4px;
    }
    .wb-wenzi__grid{
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 4px;
    }
}
.wb-wenzi__noscript{
    padding: 10px 12px;
    font-size: 12px;
    color: #666;
    background: rgba(0,0,0,.03);
    border-radius: 10px;
    border: 1px solid rgba(0,0,0,.06);
}

/* ===========================
   ads/frame：统一广告框架（标题 + 内容）
   =========================== */
.wb-adframe{
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 0 auto 18px;
    padding: 0;
    background: #fff;
    border-radius: 0;
    border: 0;
    box-shadow: none;
    overflow: hidden;
    box-sizing: border-box;
}
.wb-adframe__hd{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 10px;
    padding: 12px 0 10px;
    background: #fff;
    border-bottom: 0;
}
.wb-adframe__title{
    font-size: 14px;
    font-weight: 950;
    color: #111;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.wb-adframe__sub{
    font-size: 12px;
    font-weight: 800;
    color: rgba(0,0,0,.55);
    flex: 0 0 auto;
    white-space: nowrap;
}
.wb-adframe__bd{
    padding: 12px 0;
    margin: 0;
    box-sizing: border-box;
}

/* ===========================
   ads/tubiao：图标导航（配置驱动）
   =========================== */
.wb-tubiao{
    width: 100%;
    background: #fff;
}
.wb-tubiao__grid{
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    /* 让首列/末列贴住容器两侧：列宽固定为图标宽度，剩余空间分配到列间 */
    grid-template-columns: repeat(10, 66px);
    justify-content: space-between;
    gap: 2px;
}
.wb-tubiao__item{
    margin: 0;
    padding: 0;
}
.wb-tubiao__item a{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    color: #666;
    /* 文字稍小，避免 PC 端长文案换行撑开布局 */
    font-size: 0.5rem;
    text-decoration: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    transition: transform 0.18s ease, color 0.18s ease, filter 0.18s ease;
}

.wb-tubiao__item a span{
    margin-top: 2px;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.wb-tubiao__item a:hover{
    color: #f97316;
    transform: translateY(-1px);
}
.wb-tubiao__item a:active{
    transform: translateY(0) scale(0.98);
}
.wb-tubiao__item img{
    width: 66px;
    height: 66px;
    display: block;
    background: #ffffff;
    border-radius: 5px;
    padding: 0;
    box-sizing: border-box;
}
@media screen and (max-width:640px) {
    .wb-tubiao__grid{
        /* 手机端更紧凑：6 列 */
        grid-template-columns: repeat(6, 56px);
        justify-content: space-between;
        gap: 2px;
    }
    .wb-tubiao__item img{
        width: 56px;
        height: 56px;
    }
}

/* 更窄屏：放不下 5 列时自动降列数，仍保持两侧贴边 */
@media screen and (max-width:360px) {
    .wb-tubiao__grid{
        grid-template-columns: repeat(5, 56px);
        justify-content: space-between;
    }
}
@media screen and (max-width:320px) {
    .wb-tubiao__grid{
        grid-template-columns: repeat(4, 56px);
        justify-content: space-between;
    }
}

/* shipinkuang：内联插入视频网格，容器不占位 */
.wb-shipinkuang-slot{
    display: contents;
}

/* 广告图片加载失败提示（视频广告卡片通用） */
.wb-ad-img-fallback{
    position: absolute;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 10px;
    box-sizing: border-box;
    background: rgba(0,0,0,.06);
    color: rgba(0,0,0,.55);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.4;
}

/* ===========================
   ads/hengfu：横幅（配置驱动）
   =========================== */
.wb-hengfu{
    display: block;
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 0 auto 14px;
    box-sizing: border-box;
}
/* 分类页等外层包裹横幅 */
div.hengfu{
    margin-bottom: 14px;
    clear: both;
}
.wb-hengfu img{
    width: 100%;
    border-radius: 2px;
    margin-bottom: 5px;
    display: block;
}

/* ===========================
   ads/lunbotu：首页轮播（Swiper，配置见 ads/config.html）
   =========================== */
.wb-lunbotu{
    width: 100%;
    max-width: var(--xllys-page-max);
    margin: 0 auto 14px;
    box-sizing: border-box;
    clear: both;
    --swiper-theme-color: #f97316;
    --swiper-pagination-color: #f97316;
    --swiper-pagination-bullet-inactive-color: #fff;
    --swiper-pagination-bullet-inactive-opacity: 0.55;
}
.wb-lunbotu__swiper{
    width: 100%;
    height: var(--wb-lunbotu-h, 120px);
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
}
.wb-lunbotu__swiper .swiper-slide > a{
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}
.wb-lunbotu__swiper .swiper-slide img{
    width: 100%;
    height: 100%;
    object-fit: fill;
    display: block;
}
.wb-lunbotu__pagination.swiper-pagination-bullets{
    bottom: 6px !important;
}
.wb-hengfu img{ height: var(--wb-hengfu-item-h, var(--wb-hengfu-h, 60px)); }
@media screen and (max-width:640px) {
    .wb-hengfu img{ height: var(--wb-hengfu-item-hm, var(--wb-hengfu-hm, 45px)); }
}
.vodtitle {
    font-size: 12px;
    color: #999;
    line-height: 14px;
    height: 14px;
    width: 100%;
    margin-bottom: 5px;
}
