#createDataModal .upload-input {
    display: flex;
}

#createDataModal input[name="jw_icon"] {
    flex:1;
}
#createDataModal input[name="jw_bgimg"] {
    flex:1;
}

#createDataModal .input-group-text {
    /*width: 120px;*/
    height: 38px;
    margin-left: 10px;
    position: relative;
    border: none;
    color: rgb(59,94,225);
    background: rgba(59,94,225,0.1);
    text-align: center;
    border-radius: 10px;
}

#createDataModal .input-group-text span {
    width: 100%;
}

#createDataModal .input-group-text input {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    opacity: 0;
}

.form-control {
    border-radius: 8px;
}

#editDataModal .upload-input {
    display: flex;
}

#editDataModal input[name="jw_icon"] {
    flex:1;
}
#editDataModal input[name="jw_bgimg"] {
    flex:1;
}

#editDataModal .input-group-text {
    /*width: 120px;*/
    height: 38px;
    margin-left: 10px;
    position: relative;
    border: none;
    color: rgb(59,94,225);
    background: rgba(59,94,225,0.1);
    text-align: center;
    border-radius: 10px;
}

#editDataModal .input-group-text span {
    width: 100%;
}

#editDataModal .input-group-text input {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    opacity: 0;
}

.how-to-get {
    color: #ccc;
    font-size: 14px;
    text-decoration: none;
}

.jumpPlatform {
    width: 100%;
    margin: 20px auto;
}

.jumpPlatform .not-selecte {
    background: #eee;
    color: #999;
}
.jumpPlatform .is-selected {
    color: rgb(59,94,225);
    background: rgba(59,94,225,0.1);
}

.jumpMiniPro {
    padding: 10px;
    background: #ccc;
    border-radius: 10px;
    margin-right: 8px;
    font-size: 15px;
    cursor: pointer;
}
.jumpMiniPro img {
    width: 15px;
    height: 15px;
    margin-right: 5px;
}


/*投放平台*/
.toufang_Platform {
    width: 100%;
    margin: 20px auto;
}

.toufang_Platform .not-select {
    background: #eee;
    color: #999;
}
.toufang_Platform .is-selected {
    color: rgb(59,94,225);
    background: rgba(59,94,225,0.1);
}

.toufang_Platform_tag {
    padding: 10px;
    background: #ccc;
    border-radius: 10px;
    margin-right: 8px;
    font-size: 15px;
    cursor: pointer;
}
.toufang_Platform_tag img {
    width: 15px;
    height: 15px;
    margin-right: 5px;
}

.params-tips {
    font-size: 14px;
    color: #999;
    text-align: center;
    line-height: 20px;
    display: block;
}

.URLScheme_input {
    max-width: 200px;
    border: none;
    padding: 3px 10px;
    outline: none;
    background: #eee!important;
    border: 1px solid #ccc;
    color: #999;
    font-size: 15px;
    border-radius: 8px;
}

#chooseIMG {
    cursor: pointer;
}

/*分享*/
#shareDataModal .modal-body .box{
    width: 95%;
    margin:0 auto;
}
#shareDataModal .modal-body .box .longUrl{
    width: 100%;
    margin:0 auto;
    padding:15px 15px;
    font-size: 15px;
    color: #333;
    overflow: hidden;
    word-wrap: break-word;
    background: #f6f6f6;
    border-radius: 10px;
}
#shareDataModal .modal-body .box .longUrl .text{
    display: block;
    height:20px;
    margin:0 0 0 0;
}
#shareDataModal .modal-body .box .shortUrl{
    width: 100%;
    margin:0 auto;
    padding:15px 15px;
    font-size: 15px;
    color: #333;
    overflow: hidden;
    word-wrap: break-word;
    background: #f6f6f6;
    border-radius: 10px;
    margin-top: 10px;
}
#shareDataModal .modal-body .box .shortUrl .text{
    display: block;
    height:20px;
    margin:0 0 0 0;
}
#shareDataModal .modal-body .box .Qrcode{
    width: 200px;
    height: 200px;
    margin:20px auto 10px;
}
#shareDataModal .modal-body .box .Qrcode img{
    width: 200px;
    height: 200px;
}
#shareDataModal .modal-footer button{
    display: block;
    margin: 10px auto 0;
}

/* 视频外链弹窗、标签、空状态细节优化 */
#createDataModal .modal-dialog,
#editDataModal .modal-dialog,
#userDefaultConfigModal .modal-dialog,
#templateLabelConfigModal .modal-dialog {
    max-width: 680px!important;
}

#createDataModal .modal-body,
#editDataModal .modal-body,
#userDefaultConfigModal .modal-body,
#templateLabelConfigModal .modal-body {
    padding: 22px 28px 10px;
    max-height: 70vh;
    overflow-y: auto;
}

.slice-form-grid2 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 10px;
}

.slice-form-grid2 label {
    display: block;
    min-width: 0;
    margin: 0;
}

#createDataModal .modal-title,
#editDataModal .modal-title,
#userDefaultConfigModal .modal-title,
#templateLabelConfigModal .modal-title,
#shareDataModal .modal-title,
#delDataModal .modal-title {
    font-size: 18px;
    font-weight: 700;
    color: #263248;
}

#createDataModal .modal-body .text,
#editDataModal .modal-body .text,
#userDefaultConfigModal .modal-body .text,
#templateLabelConfigModal .modal-body .text {
    color: #526075;
    font-size: 14px;
    font-weight: 600;
    margin: 10px auto 6px;
}

#createDataModal .form-control,
#editDataModal .form-control,
#userDefaultConfigModal .form-control,
#templateLabelConfigModal .form-control {
    height: 40px;
    border-radius: 11px;
    border-color: #dfe5f2;
    color: #263248;
}

#createDataModal .form-control::placeholder,
#editDataModal .form-control::placeholder,
#userDefaultConfigModal .form-control::placeholder,
#templateLabelConfigModal .form-control::placeholder {
    color: #a8b1c2!important;
    font-size: 13px!important;
}

.form-tip {
    margin: 0 0 16px;
    padding: 10px 12px;
    color: #657389;
    font-size: 13px;
    line-height: 1.7;
    background: #f8faff;
    border: 1px solid #edf0f7;
    border-radius: 12px;
}

/* 创建弹窗严格对齐工具切片版，覆盖主网站全局 ylb.css 的旧文字和按钮样式。 */
#app #createDataModal .modal-dialog {
    max-width: 680px!important;
    margin: 38px auto;
}
#app #createDataModal .modal-content {
    overflow: hidden;
    border: 0;
    border-radius: 18px;
    color: #263248;
    background: #fff;
    box-shadow: 0 22px 55px rgba(24,33,52,.28);
}
#app #createDataModal .modal-header {
    min-height: 58px;
    padding: 0 16px;
    align-items: center;
    border-bottom: 1px solid #e8ebf1;
}
#app #createDataModal .modal-title {
    color: #111827!important;
    font-size: 18px;
    font-weight: 700;
}
#app #createDataModal .modal-header .close {
    margin: 0 0 0 auto;
    padding: 8px;
    color: #777!important;
    font-size: 27px;
    font-weight: 600;
    line-height: 1;
    opacity: 1;
}
#app #createDataModal .modal-body {
    max-height: none;
    padding: 22px 28px 10px;
    overflow: visible;
}
#app #createDataModal .modal-body .text {
    display: block;
    width: 100%;
    height: 20px;
    margin: 10px auto 6px;
    color: #526075!important;
    font-size: 14px;
    font-weight: 600;
}
#app #createDataModal .form-control {
    height: 40px;
    padding: 7px 13px;
    border: 1px solid #dfe5f2;
    border-radius: 11px;
    color: #263248!important;
    background: #fff;
    box-shadow: none;
    font-size: 14px;
}
#app #createDataModal .form-control::placeholder {
    color: #a8b1c2!important;
    font-size: 13px!important;
}
#app #createDataModal .form-control:focus {
    border-color: #8da4eb;
    box-shadow: 0 0 0 3px rgba(59,94,225,.09);
}
#app #createDataModal .modal-footer {
    min-height: 70px;
    padding: 14px 16px;
    border-top: 1px solid #e8ebf1;
}
#app #createDataModal .modal-footer .footer-btn {
    width: 100%;
    height: 40px;
}
#app #createDataModal .faq {
    width: 22px;
    height: 22px;
    margin-top: 10px;
    border: 0;
    color: #fff;
    background: #3b5ee1;
    box-shadow: none;
    font-size: 12px;
    line-height: 22px;
}
#app #createDataModal .modal-footer .default-btn {
    padding: 7px 17px;
    border-radius: 8px;
    color: #fff;
    background: linear-gradient(135deg,#3b5ee1,#654fe8);
    box-shadow: 0 8px 18px rgba(59,94,225,.22);
    font-size: 15px;
}
/* 默认创建配置、模板文案配置底部没有「?」教程按钮，按钮区要占满整行，保存按钮才能贴右边 */
#app #userDefaultConfigModal .modal-footer .footer-btn .btnnav,
#app #templateLabelConfigModal .modal-footer .footer-btn .btnnav {
    width: 100%;
}
#app #createDataModal .domain-auth-tip {
    margin: 10px 0;
    padding: 12px;
    border: 1px solid #ffd5a3;
    border-radius: 8px;
    color: #9a4f00;
    background: #fff8ee;
}
#app #createDataModal .domain-auth-tip b,
#app #createDataModal .domain-auth-tip span { display: block; }
#app #createDataModal .domain-auth-tip span { margin: 4px 0 9px; font-size: 12px; }
#app #createDataModal .domain-auth-tip > div { display: flex; gap: 7px; }
@media (max-width:700px) {
    .slice-form-grid2 { grid-template-columns: 1fr; gap: 0; }
    #app #createDataModal .modal-dialog { width: calc(100% - 20px); margin: 18px auto; }
    #app #createDataModal .modal-body { max-height: calc(100vh - 150px); padding: 16px 18px 8px; overflow-y: auto; }
    #app #createDataModal .domain-auth-tip > div { flex-direction: column; }
}

#delDataModal .del-confirm-body {
    display: flex;
    align-items: flex-start;
    padding: 28px 30px;
}
.confirm-icon {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    text-align: center;
    line-height: 38px;
    font-size: 22px;
    font-weight: 700;
    margin-right: 14px;
}
.confirm-icon.danger {
    color: #ef4444;
    background: rgba(239,68,68,0.12);
}
.confirm-title {
    color: #263248;
    font-size: 17px;
    font-weight: 700;
    margin-bottom: 6px;
}
.confirm-desc {
    color: #7b8798;
    font-size: 14px;
    line-height: 1.7;
}
#delDataModal .modal-footer {
    justify-content: flex-end;
}
#delDataModal .modal-footer .default-btn {
    background: linear-gradient(135deg, #ef4444 0%, #f97316 100%);
    box-shadow: 0 8px 18px rgba(239,68,68,0.18);
}

.share-card {
    padding: 4px 0 0;
}
#shareDataModal .shortUrl {
    background: #f8faff;
    border: 1px solid #edf0f7;
    border-radius: 12px;
}
#shareDataModal .shortUrl .text {
    color: #7b8798;
    font-weight: 600;
    margin-right: 8px;
}
#shareDataModal .Qrcode {
    width: 200px!important;
    height: 200px!important;
    padding: 10px;
    margin: 16px auto 8px!important;
    background: #fff;
    border: 1px solid #edf0f7;
    border-radius: 16px;
    box-shadow: 0 10px 25px rgba(24,39,75,0.06);
    box-sizing: border-box;
    overflow: hidden;
}
#shareDataModal .Qrcode img,
#shareDataModal .Qrcode canvas,
#shareDataModal .Qrcode table {
    width: 180px!important;
    height: 180px!important;
    max-width: 180px!important;
    max-height: 180px!important;
    display: block!important;
    margin: 0 auto!important;
}
#shareDataModal .Qrcode table {
    table-layout: fixed!important;
    border-collapse: collapse!important;
}
#shareDataModal .Qrcode table td {
    padding: 0!important;
    margin: 0!important;
    line-height: 0!important;
}
.share-tip {
    text-align: center;
    font-size: 14px;
    color: #7b8798;
    margin-top: 12px;
}
#shareDataModal .modal-footer {
    justify-content: flex-end;
}

.empty-state {
    padding: 34px 0 26px;
    text-align: center;
}
.empty-state .noData {
    margin-top: 0!important;
}
.empty-title {
    margin: 8px 0 4px;
    color: #263248;
    font-size: 17px;
    font-weight: 700;
}
.empty-create-btn {
    margin-top: 14px;
}

/* ===== 视频外链列表（20261103 列表改版） ===== */
#right .sl-card{padding:18px 18px 16px}
#sliceApp .sl-topbar{align-items:center;gap:10px;padding-bottom:16px;border-bottom:1px solid #eef1f6}
#sliceApp .sl-nav{flex-shrink:0;height:40px;padding:0 20px;border:0;border-radius:9px;background:#3157d5;color:#fff;font-size:15px;font-weight:600;cursor:default}
/* 普通外链 / 任务解锁外链 两个大页签（原视频解锁并入）放在列表卡片顶部左边，每个页签下面一行小字说明用途，没选中的是白底描边按钮。
   标题和页签这一段和 videoUnlock/app.css 里的一模一样，两个页面标题长得一样、页签也一样 */
#right>h3.vx-head{display:flex!important;align-items:center!important;margin:0 0 18px!important;padding-left:0!important;border-left:0!important;color:#172033!important;font-size:22px!important;font-weight:800!important;line-height:32px!important;letter-spacing:0!important}
#right>h3.vx-head::before{content:'';flex-shrink:0;width:4px;height:22px;margin-right:10px;border-radius:4px;background:#3157d5}
#right>h3.vx-head .vx-title{white-space:nowrap}
#right>h3.vx-head .mianbaoxie_a{color:#4b5f82!important;text-decoration:none}
#right>h3.vx-head .mbx{color:#172033!important}
#right .vx-tabs{flex-shrink:0;display:inline-flex;gap:8px;margin:0;padding:0;font-weight:400;line-height:1}
#right .vx-tabs>*{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;min-width:168px;height:58px;padding:0 20px;border:2px solid #d0d5dd;border-radius:12px;background:#fff;color:#1d2939;line-height:1;white-space:nowrap;text-decoration:none;transition:all .15s}
#right .vx-tabs b{font-size:17px;font-weight:700}
#right .vx-tabs small{color:#667085;font-size:13px;font-weight:400}
#right .vx-tabs>a{cursor:pointer}
#right .vx-tabs>a:hover{border-color:#3157d5;background:#f5f7ff;color:#3157d5;text-decoration:none}
#right .vx-tabs>a:hover small{color:#3157d5}
#right .vx-tabs>.on{border-color:#3157d5;background:#3157d5;color:#fff;box-shadow:0 2px 8px rgba(49,87,213,.28);cursor:default}
#right .vx-tabs>.on small{color:rgba(255,255,255,.88)}
@media (max-width:700px){
    #right>h3.vx-head{font-size:19px!important}
    #right .vx-tabs{width:100%}
    #right .vx-tabs>*{flex:1;min-width:0;height:auto;min-height:58px;padding:8px 10px;line-height:1.3;white-space:normal}
    #right .vx-tabs b{font-size:16px}
    #right .vx-tabs small{font-size:12px}
}
#sliceApp .sl-fn{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-left:auto}
#sliceApp .sl-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 16px;border:1px solid #d0d5dd;border-radius:9px;background:#fff;color:#344054;font-size:14px;font-weight:500;line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;transition:all .15s}
#sliceApp .sl-btn:hover{border-color:#3157d5;color:#3157d5}
#sliceApp .sl-btn.primary{border-color:#3157d5;background:#3157d5;color:#fff;font-weight:600}
#sliceApp .sl-btn.primary:hover{background:#2849b8;color:#fff}
#sliceApp .sl-btn[disabled]{opacity:.45;cursor:not-allowed}
#sliceApp .sl-btn[disabled]:hover{border-color:#d0d5dd;color:#344054}
#sliceApp .sl-btn svg{flex-shrink:0}

/* 工具行：共 N 条 + 搜索 + 分段筛选；勾选后整行换成批量条，高度不变 */
#sliceApp .sl-tool{display:flex;align-items:center;gap:12px;height:44px;margin:16px 0 12px}
#sliceApp .sl-cnt{color:#667085;font-size:14px;white-space:nowrap}
#sliceApp .sl-cnt b{color:#1d2939;font-weight:700}
#sliceApp .sl-tool.selecting>:not(.sl-sel){display:none}
#sliceApp .sl-sel{display:none;flex:1;align-items:center;gap:14px;height:44px;padding:0 6px 0 16px;border:1px solid #c7d2fe;border-radius:10px;background:#f5f7ff;color:#344054;font-size:14px;animation:slSelIn .16s ease-out}
#sliceApp .sl-sel.on{display:flex}
@keyframes slSelIn{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
#sliceApp .sl-sel-n b{margin:0 2px;color:#3157d5;font-size:15px;font-weight:700}
#sliceApp .sl-clr{height:30px;padding:0 4px;border:0;background:none;color:#3157d5;font-size:14px;cursor:pointer}
#sliceApp .sl-clr:hover{text-decoration:underline}
#sliceApp .sl-acts{display:flex;gap:8px;margin-left:auto}
#sliceApp .sl-sb{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 13px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;color:#344054;font-size:14px;font-weight:500;white-space:nowrap;cursor:pointer;transition:all .15s}
#sliceApp .sl-sb:hover{border-color:#3157d5;color:#3157d5}
#sliceApp .sl-sb.danger{border-color:#fecaca;color:#e5484d}
#sliceApp .sl-sb.danger:hover{border-color:#e5484d;background:#fef2f2;color:#e5484d}
#sliceApp .sl-search{display:flex;align-items:center;gap:8px;width:280px;height:40px;margin-left:auto;padding:0 12px;border:1px solid #d0d5dd;border-radius:9px;background:#fff;color:#98a2b3;transition:border-color .15s}
#sliceApp .sl-search:focus-within{border-color:#3157d5}
#sliceApp .sl-search input{flex:1;min-width:0;height:32px;min-height:0;margin:0;padding:0;border:0;outline:0;background:none;box-shadow:none;color:#344054;font-size:14px}
#sliceApp .sl-seg{display:flex;padding:3px;border-radius:9px;background:#f2f4f7}
#sliceApp .sl-seg button{height:34px;padding:0 14px;border:0;border-radius:7px;background:none;color:#667085;font-size:14px;white-space:nowrap;cursor:pointer}
#sliceApp .sl-seg button.on{background:#fff;color:#1d2939;font-weight:600;box-shadow:0 1px 2px rgba(16,24,40,.08)}

/* ===== 表格：一项一列、居中；笔记本上不左右滑，跟着宽度收 ===== */
#sliceApp .sl-table-wrap{width:100%;margin:0;overflow:auto;border:1px solid #e8ecf2;border-radius:12px;background:#fff;container-type:inline-size}
#sliceApp .sl-table{width:100%;min-width:900px;margin:0;border-collapse:separate;border-spacing:0;color:#344054}
#sliceApp .sl-table th{height:50px;padding:0 12px;border:0;border-bottom:1px solid #e8ecf2;background:#f8fafc;color:#475467;font-size:14px;font-weight:600;line-height:1.3;text-align:center;vertical-align:middle;white-space:nowrap}
#sliceApp .sl-table td{height:64px;padding:8px 12px;border:0;border-bottom:1px solid #edf0f4;color:#344054;font-size:15px;line-height:1.4;text-align:center;vertical-align:middle;white-space:nowrap;transition:background .14s}
#sliceApp .sl-table tr:last-child td{border-bottom:0}
#sliceApp .sl-table tbody tr:hover{background:none}
#sliceApp .sl-table tbody tr:hover td{background:#f8faff}
#sliceApp .sl-table tbody tr.checked td{background:#f5f8ff}
#sliceApp .sl-table tbody tr.checked td:first-child{box-shadow:inset 3px 0 0 #3157d5}
#sliceApp .sl-table tbody tr.off td,#sliceApp .sl-table tbody tr.off .sl-ttl,#sliceApp .sl-table tbody tr.off .sl-pwd{color:#98a2b3}
#sliceApp .sl-table .sl-ck{width:52px;padding-right:0}
/* 操作列只占按钮本身宽度，宽屏多出来的空间均匀分给其它列 */
#sliceApp .sl-table th:last-child,#sliceApp .sl-table td:last-child{width:1%}
/* 全局 input 样式会把勾选框盖掉，这里强制还原成原生勾选框 */
#sliceApp .sl-table input[type=checkbox]{display:inline-block!important;visibility:visible!important;opacity:1!important;position:static!important;width:18px!important;min-width:18px!important;height:18px!important;min-height:0!important;margin:0!important;padding:0!important;box-shadow:none!important;-webkit-appearance:checkbox!important;appearance:auto!important;accent-color:#3157d5;cursor:pointer;vertical-align:middle!important}
#sliceApp .sl-empty-td{height:140px!important;color:#98a2b3!important}
#sliceApp .sl-id{color:#667085;font-variant-numeric:tabular-nums}
#sliceApp .sl-usr{display:inline-block;max-width:120px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
#sliceApp .sl-ttl{display:inline-block;max-width:220px;overflow:hidden;color:#1d2939;font-weight:600;text-overflow:ellipsis;vertical-align:middle}
#sliceApp .sl-rm{display:inline-block;max-width:140px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
#sliceApp .sl-none{color:#b4bbc6;font-size:14px}
#sliceApp .sl-tag{display:inline-flex;align-items:center;height:26px;padding:0 11px;border-radius:13px;font-size:13.5px;font-weight:600;white-space:nowrap}
#sliceApp .sl-tag.t-green{background:#e9f7ef;color:#16a34a}
#sliceApp .sl-tag.t-orange{background:#fff4e5;color:#d97706}
#sliceApp .sl-tag.t-red{background:#fdecec;color:#e5484d}
#sliceApp .sl-tag.t-blue{background:rgba(49,87,213,.1);color:#3157d5}
#sliceApp .sl-tag.t-gray{background:#f2f4f7;color:#667085}
#sliceApp .sl-pwd{display:inline-block;max-width:140px;height:28px;padding:0 10px;overflow:hidden;line-height:28px;text-overflow:ellipsis;vertical-align:middle;border-radius:7px;color:#1d2939;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer}
#sliceApp .sl-pwd:hover{background:#f2f4f7;color:#3157d5}
#sliceApp .sl-pv{color:#1d2939;font-weight:700;font-variant-numeric:tabular-nums}
#sliceApp tr.off .sl-pv:not(.zero){color:#98a2b3}
#sliceApp .sl-pv.zero{color:#c0c6d2;font-weight:500}
#sliceApp .sl-pv.ok{color:#16a34a}
#sliceApp .sl-tm{font-variant-numeric:tabular-nums}
#sliceApp .sl-st{display:inline-flex;align-items:center;gap:8px;vertical-align:middle;cursor:pointer;user-select:none}
#sliceApp .sl-sw{position:relative;width:44px;height:24px;border-radius:12px;background:#cfd5df;transition:background .18s}
#sliceApp .sl-sw::after{content:"";position:absolute;left:2px;top:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(16,24,40,.2);transition:left .18s}
#sliceApp .sl-st.on .sl-sw{background:#3157d5}
#sliceApp .sl-st.on .sl-sw::after{left:22px}
#sliceApp .sl-st>span:last-child{color:#98a2b3;font-size:14px}
#sliceApp .sl-st.on>span:last-child{color:#16a34a;font-weight:600}
#sliceApp .sl-ops{display:flex;justify-content:center;gap:8px}
#sliceApp .sl-op{display:inline-flex;align-items:center;gap:5px;height:36px;padding:0 13px;border:0;border-radius:8px;font-size:14px;font-weight:600;white-space:nowrap;cursor:pointer;transition:all .15s}
#sliceApp .sl-op.share{background:rgba(49,87,213,.1);color:#3157d5}
#sliceApp .sl-op.edit{background:#eef2f7;color:#526075}
#sliceApp .sl-op.share:hover,#sliceApp .sl-op.edit:hover{background:#3157d5;color:#fff}
#sliceApp .sl-op.del{background:none;color:#e5484d}
#sliceApp .sl-op.del:hover{background:rgba(239,68,68,.1);color:#e5484d}
#sliceApp .sl-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;color:#667085;font-size:14px}
#sliceApp .sl-pg{display:flex;align-items:center;gap:8px}
#sliceApp .sl-pager .sl-btn{height:36px;padding:0 14px}
#sliceApp .sl-pager select{width:auto;height:36px;min-height:0;margin:0 0 0 8px;padding:0 10px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;color:#344054;font-size:14px;outline:0}
/* 笔记本：表格框变窄时自动收紧，不用左右滑 */
@container (max-width:1379px){
    #sliceApp .sl-table th,#sliceApp .sl-table td{padding-left:8px;padding-right:8px}
    #sliceApp .sl-table td{font-size:14px}
    #sliceApp .sl-st>span:last-child{display:none}
    #sliceApp .sl-op{padding:0 11px}
    #sliceApp .sl-op svg{display:none}
    #sliceApp .sl-pwd{max-width:100px;padding:0 6px}
    #sliceApp .sl-ttl{max-width:160px}
}
@container (max-width:1149px){
    #sliceApp .sl-table th{padding:0 4px;font-size:13px}
    #sliceApp .sl-table td{padding:4px}
    #sliceApp .sl-table .sl-ck{width:40px}
    #sliceApp .sl-tm .t1,#sliceApp .sl-tm .t2{display:block}
    #sliceApp .sl-tm .t2{color:#98a2b3;font-size:12.5px}
    #sliceApp .sl-tag{padding:0 9px;font-size:13px}
    /* 操作有 5 个按钮，窄了排成两行（上 3 下 2），不然表格要左右滑 */
    #sliceApp .sl-ops{display:grid;grid-template-columns:repeat(3,auto);gap:4px}
    #sliceApp .sl-op{justify-content:center;height:28px;padding:0 8px;font-size:13px}
    #sliceApp .sl-op.del{padding:0 6px}
    #sliceApp .sl-pwd{max-width:64px}
    #sliceApp .sl-ttl{max-width:96px}
    #sliceApp .sl-rm{max-width:64px}
    #sliceApp .sl-usr{max-width:86px}
}
@media (max-width:1180px){#sliceApp .sl-search{width:220px}}
@media (max-width:700px){
    #right .sl-card{padding:14px 12px}
    #sliceApp .sl-topbar{flex-wrap:wrap}
    #sliceApp .sl-fn{justify-content:flex-start;margin-left:0}
    #sliceApp .sl-tool{flex-wrap:wrap;height:auto}
    #sliceApp .sl-search{order:3;width:100%;margin-left:0}
    #sliceApp .sl-seg{margin-left:auto}
    #sliceApp .sl-sel{flex-wrap:wrap;height:auto;padding:8px 10px}
    #sliceApp .sl-pager{flex-wrap:wrap}
}

/* ===== 顶部统计卡片 + 「数据」弹窗（和 videoUnlock 的 .vu-stat / .vu-data-grid 同一套样子） ===== */
#sliceApp .sl-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:16px 0 0}
#sliceApp .sl-stats:empty{display:none}
#sliceApp .sl-stat{position:relative;min-width:0;padding:16px 18px;border:1px solid #eef1f6;border-radius:12px;background:#f8fafc}
#sliceApp .sl-stat small{display:flex;align-items:center;gap:8px;color:#667085;font-size:14px;font-weight:500;white-space:nowrap}
#sliceApp .sl-stat small i{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:#f2f4f7;color:#667085;font-style:normal}
#sliceApp .sl-stat b{display:block;margin-top:10px;color:#1d2939;font-size:30px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}
#sliceApp .sl-stat.brand small i{background:rgba(49,87,213,.1);color:#3157d5}
#sliceApp .sl-stat.success small i{background:#e9f7ef;color:#16a34a}
#sliceApp .sl-stat.success b{color:#16a34a}
#sliceApp .sl-stat.rate b{color:#3157d5}
#sliceApp .sl-prog{height:6px;margin-top:10px;border-radius:3px;background:#eef2f7;overflow:hidden}
#sliceApp .sl-prog span{display:block;height:100%;border-radius:3px;background:#3157d5}
@media (max-width:1280px){#sliceApp .sl-stat b{font-size:26px}}
@media (max-width:900px){#sliceApp .sl-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){#sliceApp .sl-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#sliceApp .sl-stat{padding:12px}#sliceApp .sl-stat small{gap:6px}#sliceApp .sl-stat b{font-size:22px}}
#sliceDataModal .sl-data-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
#sliceDataModal .sl-data-grid div{padding:20px 10px;border-radius:12px;background:#f2f5ff;text-align:center}
#sliceDataModal .sl-data-grid b{display:block;color:#3b5ee1;font-size:27px;font-variant-numeric:tabular-nums}
#sliceDataModal .sl-data-grid span{color:#475467;font-size:14px}
#sliceDataModal .sl-data-grid .na{background:#f5f6f8}
#sliceDataModal .sl-data-grid .na b{color:#b4bbc6}
#sliceDataModal .sl-data-grid .na span{color:#98a2b3;font-size:13px}
#sliceDataModal .sl-daily{width:100%;margin-top:16px;border-collapse:collapse}
#sliceDataModal .sl-daily td,#sliceDataModal .sl-daily th{padding:11px;border-bottom:1px solid #edf0f7;text-align:center;font-size:14px;font-variant-numeric:tabular-nums}
#sliceDataModal .sl-daily th{color:#475467;font-weight:600}
#sliceDataModal .sl-data-tip{margin:12px 0 0;color:#98a2b3;font-size:13px;line-height:1.6}
