*{box-sizing:border-box}body{margin:0;background:#f4f6fb;color:#222;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.app{max-width:780px;margin:0 auto;background:#f7f8fb;min-height:100vh;padding-bottom:60px}.top-header{height:56px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid #eee;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:22px}.site-small-icon{width:28px;height:28px;border-radius:8px}.top-link{color:#2f80ff;font-size:14px}.page{padding:14px}.hero-title{font-size:22px;font-weight:700;margin:4px 0 14px}.banner-slider{position:relative;overflow:hidden;border-radius:18px;margin-bottom:16px}.banner-track{display:flex;transition:transform .4s ease}.banner-slide{min-width:100%;aspect-ratio:16/9;display:block;background:#dfe7f5}.banner-slide img{width:100%;height:100%;object-fit:cover}.banner16x9.placeholder{display:flex;align-items:center;justify-content:center;color:#6d7a90;background:#dfe7f5;border-radius:18px;aspect-ratio:16/9}.banner-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px}.banner-dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.55)}.banner-dots i.active{background:#fff;width:18px;border-radius:999px}.quick-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}.quick-card{background:#fff;border-radius:18px;padding:14px 6px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.04);font-size:14px}.circle{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:16px;background:#f5f7fb;color:#fff;font-weight:700;margin:0 auto 8px}.c1,.c2,.c3,.c4{background:#f5f7fb}.section-h{font-size:22px;font-weight:700;margin:16px 0 12px}.app-list{display:flex;flex-direction:column;gap:12px}.app-item{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;padding:14px;border-radius:18px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.left{display:flex;align-items:center;gap:12px;min-width:0}.app-icon{width:66px;height:66px;border-radius:16px;background:#eef3fb;object-fit:cover;flex:none}.meta{min-width:0}.name{font-size:18px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sub,.downline{font-size:13px;color:#666;margin-top:6px}.badge-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.soft-badge{font-size:12px;padding:4px 8px;border-radius:10px;background:#edf8ef;color:#46a060}.coin-badge{font-size:12px;padding:4px 8px;border-radius:10px;background:#fff5dd;color:#b27b12}.btn-view,.download-pill{display:inline-flex;align-items:center;justify-content:center;height:46px;min-width:86px;border-radius:23px;background:linear-gradient(90deg,#5a31ff,#1e8cff);color:#fff}.search-wrap{display:flex;gap:10px;margin-bottom:14px}.search-wrap input{flex:1;border:none;background:#fff;border-radius:16px;padding:14px 16px;box-shadow:0 2px 8px rgba(0,0,0,.04);font-size:15px}.search-wrap button{width:110px;border:none;border-radius:16px;background:linear-gradient(90deg,#5a31ff,#1e8cff);color:#fff;font-size:18px}.cat-layout{display:grid;grid-template-columns:110px 1fr;gap:12px;min-height:520px}.cat-side{background:linear-gradient(180deg,#f8fbff,#f2f6fc);border-radius:18px;padding:10px;display:flex;flex-direction:column;gap:8px;border:1px solid #edf1f7}.cat-link{padding:15px 10px;border-radius:14px;background:transparent;text-align:center;font-size:17px;color:#536075}.cat-link.active{background:#fff;color:#2f80ff;font-weight:700;box-shadow:0 4px 12px rgba(47,128,255,.08)}.cat-main{display:flex;flex-direction:column;gap:16px}.cat-app{display:flex;align-items:center;gap:12px;background:#fff;padding:10px 12px;border-radius:18px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.download-pill{margin-left:auto;width:90px}.mini-purple{display:inline-block;background:#8c1fff;color:#fff;font-size:12px;padding:2px 7px;border-radius:6px;margin-top:8px}.panel,.menu-panel,.auth-card{background:#fff;border-radius:18px;padding:16px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.detail-head{display:flex;gap:14px;align-items:center;background:#fff;border-radius:18px;padding:16px;margin-bottom:12px}.detail-icon{width:82px;height:82px;border-radius:18px}.shot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.shot-grid a,.shot-grid img{width:100%;height:260px;object-fit:cover;border-radius:12px}.detail-desc{line-height:1.8;color:#666}.meta-table{margin-top:14px}.meta-table div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f1f1f1}.download-bar{position:sticky;bottom:70px;background:#fff;border-radius:18px;padding:14px;margin-top:12px;display:flex;align-items:center;gap:12px;box-shadow:0 2px 10px rgba(0,0,0,.06)}.price-left{min-width:120px;color:#c28712;font-size:22px;font-weight:700}.big-download{flex:1;height:54px;border-radius:16px;background:#1986ff;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;border:none}.big-download.disabled{background:#c4d2eb}.news-item{background:#fff;border-radius:18px;padding:14px;box-shadow:0 2px 8px rgba(0,0,0,.04);display:flex;gap:14px;margin-bottom:12px}.news-item img{width:112px;height:84px;border-radius:12px;object-fit:cover}.news-title{font-size:18px;font-weight:700}.news-time,.news-more{font-size:13px;color:#666;margin-top:6px}.article-cover-big{width:100%;border-radius:14px;margin:12px 0}.article-content img,.article-content video{max-width:100%;height:auto;border-radius:12px}.user-card{background:linear-gradient(135deg,#1986ff,#0860d3);padding:18px;border-radius:20px;color:#fff;margin-bottom:14px}.user-top{display:flex;align-items:center;gap:14px}.avatar-big{width:78px;height:78px;border-radius:50%;background:#fff;padding:6px}.uid{font-size:34px;line-height:1.1}.user-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.user-badges span{background:rgba(255,255,255,.16);padding:8px 14px;border-radius:999px}.menu-row{display:flex;align-items:center;justify-content:space-between;padding:20px 4px;border-bottom:1px solid #f0f0f0;font-size:19px}.menu-row:last-child{border-bottom:none}.menu-label{display:flex;align-items:center;gap:10px}.logout-btn,.buy-link,.auth-form button,.full-btn{display:flex;align-items:center;justify-content:center;width:100%;height:52px;border:none;border-radius:16px;background:#2f80ff;color:#fff;font-size:18px;margin-top:14px}.logout-btn{background:#fff;color:#d27b52;border:1px solid #e3b095}.buy-link{background:#eef5ff;color:#2f80ff}.auth-card{max-width:520px;margin:20px auto}.auth-form{display:flex;flex-direction:column;gap:12px}.auth-form input,.auth-form textarea,.auth-form select{height:50px;border:1px solid #e2e8f4;border-radius:14px;padding:0 14px;font-size:16px;background:#fff}.auth-form textarea{height:auto;padding:14px}.auth-foot{text-align:center;margin-top:12px;color:#666}.auth-foot a{color:#2f80ff}.notice{background:#f4f8ff;color:#2f80ff;padding:12px 14px;border-radius:12px;margin-bottom:12px}.checkbox-row{display:flex;gap:8px;align-items:flex-start;color:#666;font-size:14px}.checkbox-row input{margin-top:4px}.tabbar{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:min(780px,100%);height:58px;background:#fff;border-top:1px solid #e8edf4;display:grid;grid-template-columns:repeat(4,1fr);z-index:20}.tab{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#777;font-size:13px;gap:2px}.tab .ico{font-size:20px;line-height:1;height:var(--nav-icon-size);display:flex;align-items:center;justify-content:center}.tab.active{color:#1986ff}.empty{padding:30px 10px;text-align:center;color:#888}.icon-img{width:1em;height:1em;object-fit:cover}.nav-icon.icon-img{width:var(--nav-icon-size);height:var(--nav-icon-size)}.quick-icon.icon-img{width:var(--quick-icon-size);height:var(--quick-icon-size);border-radius:0}.menu-label .nav-icon.icon-img{width:var(--menu-icon-size);height:var(--menu-icon-size)}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.82);display:none;align-items:center;justify-content:center;z-index:80;padding:14px}.lightbox.show{display:flex}.lightbox img{max-width:100%;max-height:100%;border-radius:12px}.customer-links{display:flex;flex-direction:column;gap:12px}.customer-btn{display:flex;align-items:center;justify-content:center;height:48px;border-radius:14px;background:#eef5ff;color:#2f80ff;font-weight:700}.gray-mode .top-header,.gray-mode .tabbar,.gray-mode .page > *:not(.lottery-float):not(.redeem-float-btn){filter:grayscale(100%)}.lottery-float{position:fixed;right:12px;bottom:92px;top:auto;left:auto;width:62px;height:62px;background:transparent;color:#fff;display:flex;align-items:center;justify-content:center;z-index:25;animation:lotteryFloatGlow 1.8s ease-in-out infinite}.lottery-float.icon-only{border-radius:0;box-shadow:none}.lottery-float:before{content:"";position:absolute;inset:10px;border-radius:18px;background:linear-gradient(135deg,rgba(255,122,24,.15),rgba(255,60,120,.22),rgba(97,96,255,.18));filter:blur(10px);z-index:-1;animation:lotteryFloatAura 2.2s linear infinite}.lottery-float-icon{font-size:50px;line-height:1;filter:drop-shadow(0 8px 18px rgba(255,92,138,.35))}.lottery-float-img{width:56px;height:56px;border-radius:0;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(255,92,138,.35))}@keyframes lotteryFloatGlow{0%,100%{transform:translateY(0) scale(1);filter:hue-rotate(0deg)}50%{transform:translateY(-4px) scale(1.06);filter:hue-rotate(20deg)}}@keyframes lotteryFloatAura{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.lottery-wrap{display:flex;flex-direction:column;gap:16px}.lottery-card{background:#fff;border-radius:22px;padding:18px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.lottery-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lottery-meta .item{background:#f6f8fc;border-radius:14px;padding:12px}.service-grid{display:flex;flex-direction:column;gap:12px}.dialog{position:fixed;inset:0;background:rgba(0,0,0,.45);display:none;align-items:center;justify-content:center;padding:20px;z-index:60}.dialog.show{display:flex}.dialog-box{background:#fff;padding:18px;border-radius:18px;max-width:420px;width:100%}.dialog-actions{display:flex;gap:10px;margin-top:14px}.dialog-actions a,.dialog-actions button{flex:1;height:44px;border:none;border-radius:12px;background:#2f80ff;color:#fff;display:flex;align-items:center;justify-content:center}.dialog-actions .muted{background:#eef5ff;color:#2f80ff}.security-grid{display:grid;grid-template-columns:1fr;gap:14px}.info-card{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.info-card .item{background:#f7f9fd;border-radius:14px;padding:12px}.forgot-inline{display:flex;justify-content:flex-end;font-size:14px}.forgot-inline a{color:#2f80ff}.policy-box{line-height:1.85;color:#444}.lottery-history{display:flex;flex-direction:column;gap:10px;margin-top:14px}.lottery-history .row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f0f0f0}
@media (max-width:640px){.cat-layout{grid-template-columns:96px 1fr}.cat-link{font-size:16px;padding:14px 8px}.uid{font-size:28px}.price-left{font-size:20px;min-width:92px}.btn-view,.download-pill{min-width:78px;height:42px}.quick-card{font-size:13px}.news-item{align-items:center}.circle{width:48px;height:48px}}

/* 2026-04 patch */
.app{padding-bottom:52px}
.tabbar{height:52px}
.tab{font-size:12px;gap:1px}
.tab .ico{font-size:18px}
.banner-slider{touch-action:pan-y;user-select:none}
.search-wrap{align-items:center}
.cat-layout{grid-template-columns:96px 1fr}
.cat-link{font-size:14px;line-height:1.25;white-space:normal;word-break:keep-all;padding:14px 8px}
.cat-link.active{box-shadow:0 4px 12px rgba(47,128,255,.06)}
.checkbox-row{gap:10px;align-items:center;font-size:14px;line-height:1.6}
.checkbox-row input{width:18px;height:18px;margin:0;accent-color:#2f80ff;flex:none}
.policy-link{color:#2f80ff}
.auth-card h2{margin-top:0}
.forgot-inline{text-align:right;margin:-2px 2px 2px}
.info-card{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.info-card .item{background:#fff;border-radius:16px;padding:14px;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.muted-tip{color:#7c8597;font-size:13px;margin-bottom:6px}
.dialog-box h3{font-size:18px;margin:0 0 14px}
.dialog-box .muted-tip{font-size:15px;line-height:1.7;color:#333}
.dialog-actions .muted,.dialog-actions a,.dialog-actions button{font-size:18px;font-weight:600}
@media (max-width:640px){.dialog-actions .muted,.dialog-actions a,.dialog-actions button{font-size:16px}}

.search-wrap{align-items:stretch}.search-wrap input,.search-wrap button{height:56px}.search-wrap button{padding:0 22px;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.cat-layout{grid-template-columns:126px 1fr}
.cat-side{padding:16px 12px;gap:12px}
.cat-link{padding:0;min-height:auto;height:86px;width:100%;display:flex;align-items:center;justify-content:center;line-height:1.35;font-size:16px;word-break:keep-all;white-space:normal;overflow:hidden;text-overflow:ellipsis;text-align:center}
.cat-link.active{padding:0}
.cat-side,.cat-link{box-sizing:border-box}
.sign-btn.done{background:#edf5ff;color:#2f80ff}.sign-btn.done:hover{opacity:1}
.security-list{display:flex;flex-direction:column;gap:14px}.security-entry{background:#fff;border-radius:18px;padding:18px 16px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 8px rgba(0,0,0,.04);font-size:18px;font-weight:600}.security-entry small{display:block;font-size:13px;color:#7a8599;font-weight:400;margin-top:6px}.security-entry b{font-size:26px;color:#8da2c7}.dialog-box.large{max-width:560px}.dialog-box .q-grid{display:grid;grid-template-columns:1fr;gap:12px}
@media (max-width:640px){.cat-layout{grid-template-columns:118px 1fr}.cat-side{padding:14px 10px}.cat-link{padding:0;font-size:15px;height:82px;min-height:auto}}

.home-marquee{display:flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:12px 14px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.04);margin:8px 0 14px}
.marquee-icon{width:28px;height:28px;border-radius:10px;background:#f5f7fb;display:flex;align-items:center;justify-content:center;flex:none}
.marquee-track{display:flex;min-width:0;white-space:nowrap;overflow:hidden;position:relative;flex:1}
.marquee-track div{display:inline-block;padding-right:80px;animation:marq 14s linear infinite;color:#333;font-size:16px;font-weight:650;line-height:1.45}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-100%)}}
.quick-row{gap:10px;margin:12px 0}.quick-card{padding:12px 6px;font-size:13px}.circle{width:46px;height:46px;margin-bottom:6px}.section-h{font-size:20px}.app-item{padding:12px}.app-icon{width:58px;height:58px}.name{font-size:16px}.btn-view,.download-pill{height:42px;min-width:80px}.banner-slider{border-radius:16px}.banner-slide{aspect-ratio:16/8.5}

/* ===== 分类页最终固定尺寸版 ===== */
.cat-layout{grid-template-columns:100px 1fr;gap:10px;min-height:480px}
.cat-side{background:#f3f5f9;padding:8px;border:none;gap:8px}
.cat-link{width:100%;height:80px;padding:0;display:flex;align-items:center;justify-content:center;text-align:center;font-size:15px;line-height:1.25;color:#566173;background:transparent;border-left:3px solid transparent;border-radius:12px;white-space:normal;word-break:keep-all;overflow:hidden;box-sizing:border-box}
.cat-link span{display:block;padding:0 6px;width:100%}
.cat-link.active{background:#fff;color:#2f80ff;border-left-color:#2f80ff;box-shadow:none}

.search-wrap{align-items:stretch}.search-wrap input,.search-wrap button{height:54px}.search-wrap button{width:96px;font-size:16px}.cat-app{padding:12px;border-radius:16px}.cat-app .name{white-space:nowrap;font-size:17px}.cat-app .app-icon{width:54px;height:54px}.mini-purple{margin-top:6px}
.panel + .panel{margin-top:14px}.shot-grid{margin-top:10px}.detail-desc{margin-top:8px}.detail-head h2{margin:0 0 6px}.detail-head{margin-bottom:14px}.download-bar{margin-top:16px}
.lottery-wrap{display:flex;flex-direction:column;gap:16px}.lottery-wheel-box{position:relative;width:320px;height:320px;margin:6px auto 0}.lottery-wheel{width:100%;height:100%;border-radius:50%;position:relative;transition:transform 4.2s cubic-bezier(.2,.9,.2,1);box-shadow:inset 0 0 0 10px #fff,0 8px 30px rgba(0,0,0,.08)}.lottery-pointer{position:absolute;left:50%;top:-6px;transform:translateX(-50%);width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-bottom:34px solid #ff5a5f;z-index:3}.lottery-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:96px;height:96px;border:none;border-radius:50%;background:linear-gradient(135deg,#5a31ff,#1e8cff);color:#fff;font-size:28px;font-weight:700;z-index:3;box-shadow:0 10px 25px rgba(47,128,255,.3)}.segment-label{display:none}.lottery-result{line-height:1.8}
.tabbar{height:56px}.app{padding-bottom:56px}.tab{font-size:11px}.nav-icon.icon-img{width:var(--nav-icon-size);height:var(--nav-icon-size)}
.notice{background:#edf6ff;color:#2f80ff;padding:12px 14px;border-radius:12px;margin-bottom:12px}
.dialog-actions button,.dialog-actions a{font-size:16px}
@media (max-width:640px){
  .cat-layout{grid-template-columns:96px 1fr;min-height:460px}
  .cat-side{padding:8px;gap:8px}
  .cat-link{height:74px;font-size:14px}
}




/* ===== 分类按钮：保留原布局，只改按钮大小 + App滑块效果 ===== */

/* 左侧分类栏本身不改布局，只加相对定位 */
.cat-side{
    position: relative;
    overflow: hidden;
}

/* 分类按钮本体 */
.cat-link{
    position: relative;
    z-index: 2;
    width: 100%;              /* 按钮宽度跟随左侧栏宽度，不改整体布局 */
    height: 60px;             /* ⭐ 这里改：电脑端按钮高度 */
    padding: 0 12px;          /* ⭐ 这里改：左右内边距，影响按钮“宽松感” */
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;

    border-radius: 14px;
    background: transparent;
    border-left: 3px solid transparent;

    font-size: 15px;
    line-height: 1.3;
    color: #566173;

    transition:
        transform .22s ease,
        background-color .22s ease,
        color .22s ease,
        box-shadow .22s ease,
        border-color .22s ease;
}

/* 文字 */
.cat-link span{
    display: block;
    width: 100%;
    padding: 0 2px;
}

/* 悬停/点击时轻微动效 */
.cat-link:active{
    transform: scale(0.98);
}

/* 选中效果：像 App 滑块卡片 */
.cat-link.active{
    background: linear-gradient(180deg,#ffffff,#f8fbff);
    color: #2f80ff;
    border-left-color: #2f80ff;
    box-shadow:
        0 6px 16px rgba(47,128,255,.10),
        inset 0 0 0 1px rgba(47,128,255,.06);
    transform: translateX(2px);
    font-weight: 700;
}

/* 选中按钮左侧小滑块高亮 */
.cat-link.active::before{
    content: "";
    position: absolute;
    left: -3px;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 34px;             /* ⭐ 这里改：滑块高度 */
    border-radius: 999px;
    background: linear-gradient(180deg,#5aa8ff,#2f80ff);
}

/* 未选中时更干净 */
.cat-link:not(.active){
    box-shadow: none;
}

/* 手机端单独设置 */
@media (max-width: 640px){
    .cat-link{
        height: 45px;         /* ⭐ 这里改：手机端按钮高度 */
        padding: 0 10px;      /* ⭐ 这里改：手机端左右内边距 */
        font-size: 14px;
        border-radius: 12px;
    }

    .cat-link.active::before{
        height: 30px;         /* ⭐ 这里改：手机端滑块高度 */
    }
}



.checkbox-row{
    display:flex;
    align-items:center;
    gap:10px;
    cursor:pointer;
}

.checkbox-row input[type="checkbox"]{
    display:none;
}

.check-box{
    width:18px;
    height:18px;
    min-width:18px;
    border:2px solid #c9d2e3;
    border-radius:5px;
    background:#fff;
    position:relative;
    flex-shrink:0;
}

.checkbox-row input[type="checkbox"]:checked + .check-box{
    background:#2f80ff;
    border-color:#2f80ff;
}

.checkbox-row input[type="checkbox"]:checked + .check-box::after{
    content:"";
    position:absolute;
    left:5px;
    top:1px;
    width:5px;
    height:10px;
    border:2px solid #fff;
    border-top:none;
    border-left:none;
    transform:rotate(45deg);
}

.check-text{
    font-size:14px;
    color:#666;
    line-height:1.6;
}

.check-text a,
.policy-link{
    color:#2f80ff;
}
.menu-label{display:flex;align-items:center;gap:12px}
.menu-label .nav-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px}
.auth-form{display:flex;flex-direction:column;gap:14px}.auth-submit.disabled{background:#b9d0ff!important;color:#fff;cursor:not-allowed}.invite-panel{display:flex;flex-direction:column;gap:14px}.invite-balance-row{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:18px}.invite-balance{font-size:46px;font-weight:800;color:#e64f74}.invite-withdraw-btn{height:46px;border:none;border-radius:14px;background:#2f80ff;color:#fff;padding:0 22px}.invite-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.invite-share-box{background:#fff;border-radius:18px;padding:16px}.invite-copy-row{display:flex;gap:10px;align-items:center}.invite-copy-row input{flex:1;height:46px;border:1px solid #e6e6e6;border-radius:14px;padding:0 12px}.invite-copy-row button{height:46px;border:none;border-radius:14px;background:#eef5ff;color:#2f80ff;padding:0 18px}.invite-log-list{display:flex;flex-direction:column;gap:12px}.invite-log-card{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:16px;padding:14px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.invite-status{display:inline-flex;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:700}.invite-status.ok{background:#e8f7ec;color:#1f9c52}.invite-status.no{background:#fff3e8;color:#d27618}.app-icon-wrap{position:relative}.top-tag{position:absolute;left:-4px;top:-6px;background:#ff5f6d;color:#fff;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700;z-index:2}.banner-slider,.banner-slide{aspect-ratio:16/9}.banner-slide img{width:100%;height:100%;object-fit:cover}.lottery-float,.redeem-float-btn{touch-action:manipulation}
@media(max-width:640px){.invite-stats-grid{grid-template-columns:1fr 1fr}.invite-balance{font-size:38px}.invite-copy-row{flex-direction:column;align-items:stretch}}

.checkbox-row{position:relative;padding-left:2px;flex-wrap:wrap}.checkbox-row.shake{animation:shake .25s 2}.check-box{width:18px;height:18px;border:1.5px solid #c7d2e5;border-radius:5px;display:inline-block;position:relative;flex:none;margin-top:1px}.checkbox-row input{position:absolute;opacity:0;pointer-events:none}.checkbox-row input:checked + .check-box{background:#2f80ff;border-color:#2f80ff}.checkbox-row input:checked + .check-box:after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.auth-submit.disabled{background:#c8d6f0!important;color:#fff}.auth-form .warn-inline{display:none;color:#ff5b5b;font-size:13px;width:100%}.checkbox-row.shake .warn-inline{display:block}.hero-ad,.banner-slide{overflow:hidden}.hero-ad img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:18px}@keyframes shake{0%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}100%{transform:translateX(0)}}

.menu-row{display:flex;align-items:center;justify-content:space-between;min-height:58px}
.menu-label{display:flex;align-items:center;gap:12px}
.menu-label .nav-icon,.menu-label .icon-img{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;object-fit:contain}
.invite-panel-pro{gap:18px}.invite-balance-pro{padding:6px 0}.invite-threshold{margin-top:8px;color:#e14b63;font-weight:700}.invite-reward-box{margin-top:8px;padding:12px 14px;border-radius:14px;background:#f5f8ff;color:#2f80ff;line-height:1.7}.invite-field-title{margin-top:14px;margin-bottom:8px;color:#6b7280;font-weight:700}.invite-copy-card{display:flex;flex-direction:column;gap:10px}.invite-copy-card input,.invite-copy-card textarea{width:100%;border:1px solid #e5e7eb;border-radius:14px;padding:12px 14px;background:#fff;font-size:16px}.invite-copy-card textarea{min-height:72px;resize:none;line-height:1.6}.invite-copy-card button{height:46px;border:none;border-radius:14px;background:#eef4ff;color:#2f80ff;font-weight:700}.invite-log-card-pro{border:1px solid #edf0f6}

@media(max-width:640px){.invite-copy-card textarea{min-height:88px}}


.tab {
    color: #777;
}

.tab.active {
    color: #1986ff;
}

.tab .icon-img {
    width: var(--nav-icon-size);
    height: var(--nav-icon-size);
    object-fit: contain;
    transition: filter .2s ease, opacity .2s ease;
    filter: brightness(0) saturate(100%) invert(33%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(40%) contrast(95%);
}

.tab.active .icon-img {
    filter: brightness(0) saturate(100%) invert(48%) sepia(98%) saturate(2284%) hue-rotate(199deg) brightness(101%) contrast(101%) !important;
}


/* 2026-04-14 UI优化 */
.code-row{display:flex;align-items:stretch;gap:10px}.code-row input{flex:1;min-width:0}.code-row .code-btn{width:128px;flex:0 0 128px;height:48px;border:none;border-radius:12px;background:#2f80ff;color:#fff;font-weight:700}.auth-card{max-width:520px;margin:0 auto}.auth-form input,.auth-form textarea,.auth-form select{width:100%}.notice{line-height:1.7}.full-btn{display:flex;align-items:center;justify-content:center;height:46px;border-radius:14px;background:#2f80ff;color:#fff;text-decoration:none}
@media(max-width:640px){.code-row{gap:8px}.code-row .code-btn{width:118px;flex-basis:118px;height:46px;font-size:14px}}


/* register / email code row refine */
.code-row{display:flex;align-items:center;gap:12px;width:100%}
.code-row input{flex:1 1 auto;min-width:0;height:50px}
.code-row .code-btn{flex:0 0 150px;width:150px;max-width:150px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1}
@media(max-width:640px){.code-row{gap:10px}.code-row .code-btn{flex-basis:138px;width:138px;max-width:138px;height:48px;font-size:15px}}


/* 2026-04-14 final email code row fix */
.code-row{display:flex !important;align-items:center !important;gap:12px !important;width:100% !important;margin:0 !important}
.code-row input,.code-row .auth-form input{margin:0 !important}
.code-row input{flex:1 1 auto !important;min-width:0 !important;width:auto !important;height:50px !important}
.auth-form .code-row .code-btn,.code-row .code-btn{flex:0 0 150px !important;width:150px !important;max-width:150px !important;height:50px !important;margin:0 !important;padding:0 12px !important;border:none !important;border-radius:14px !important;background:#2f80ff !important;color:#fff !important;font-weight:700 !important;display:flex !important;align-items:center !important;justify-content:center !important;line-height:1 !important;white-space:nowrap !important}
@media (max-width:640px){.auth-form .code-row .code-btn,.code-row .code-btn{flex-basis:138px !important;width:138px !important;max-width:138px !important;height:48px !important;font-size:15px !important}}

/* final email code row alignment */
.auth-form .code-row{display:grid !important;grid-template-columns:minmax(0,1fr) 150px !important;align-items:center !important;gap:12px !important;width:100% !important;margin:0 !important}
.auth-form .code-row input{width:100% !important;min-width:0 !important;height:50px !important;margin:0 !important}
.auth-form .code-row .code-btn{width:150px !important;height:50px !important;margin:0 !important;padding:0 12px !important;align-self:stretch !important;display:flex !important;align-items:center !important;justify-content:center !important;border:none !important;border-radius:14px !important;background:#2f80ff !important;color:#fff !important;font-weight:700 !important;line-height:1 !important;white-space:nowrap !important}
@media (max-width:640px){.auth-form .code-row{grid-template-columns:minmax(0,1fr) 138px !important;gap:10px !important}.auth-form .code-row .code-btn{width:138px !important;height:48px !important;font-size:15px !important}}


/* auth password eye + turnstile */
.pwd-wrap{position:relative;width:100%}
.pwd-wrap input{padding-right:54px!important}
.eye-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;background:transparent;color:#8b8b8b;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin:0}
.turnstile-box{margin:4px 0 2px}
.turnstile-box .cf-turnstile{display:block;max-width:100%;overflow:hidden}
.auth-form .auth-submit.disabled{opacity:.55}
.auth-form .code-row{display:grid!important;grid-template-columns:minmax(0,1fr) 138px!important;gap:10px!important;align-items:center!important;width:100%}
.auth-form .code-row .code-input{width:100%!important;min-width:0!important;height:50px!important;margin:0!important}
.auth-form .code-row .code-btn{width:138px!important;height:50px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important}
@media (min-width:641px){.auth-form .code-row{grid-template-columns:minmax(0,1fr) 150px!important}.auth-form .code-row .code-btn{width:150px!important}}


/* fix password eye button + turnstile auth layout */
.auth-form .pwd-wrap{position:relative;width:100%}
.auth-form .pwd-wrap input{padding-right:56px!important}
.auth-form .pwd-wrap .eye-btn{
  position:absolute!important;
  right:14px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  border:none!important;
  background:transparent!important;
  color:#8b8b8b!important;
  font-size:22px!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  z-index:3!important;
}
.auth-form .pwd-wrap .eye-btn:hover,
.auth-form .pwd-wrap .eye-btn:focus,
.auth-form .pwd-wrap .eye-btn:active{
  background:transparent!important;
  color:#555!important;
  box-shadow:none!important;
  outline:none!important;
}
.auth-form .turnstile-box{
  margin:10px 0 6px!important;
  width:100%!important;
}
.auth-form .turnstile-box .cf-turnstile{
  display:flex!important;
  justify-content:flex-start!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.auth-form .turnstile-box iframe{
  max-width:100%!important;
}
@media (max-width:640px){
  .auth-form .turnstile-box{
    transform-origin:left top;
  }
}



/* eye icon svg */
.eye-btn{color:#8f8f99!important}
.eye-btn .eye-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px}
.eye-btn .eye-icon svg{display:block;width:22px;height:22px}
.eye-btn:hover{background:transparent!important;box-shadow:none!important}
.eye-btn:focus{outline:none;background:transparent!important}


/* final eye svg icons */
.eye-btn{
  width:28px!important;
  height:28px!important;
  right:16px!important;
  border-radius:0!important;
}
.eye-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:22px!important;
  height:22px!important;
  color:#7c7b83!important;
}
.eye-btn .eye-icon svg{
  display:block!important;
  width:22px!important;
  height:22px!important;
}

/* auto toast */
.mini-toast{position:fixed;left:50%;top:84px;transform:translateX(-50%);z-index:1200;min-width:180px;max-width:min(88vw,420px);padding:12px 16px;border-radius:14px;background:rgba(34,34,34,.92);color:#fff;font-size:14px;line-height:1.5;text-align:center;box-shadow:0 10px 26px rgba(0,0,0,.18);opacity:0;pointer-events:none;transition:all .22s ease}.mini-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.mini-toast.ok{background:rgba(39,174,96,.95)}.mini-toast.err{background:rgba(217,76,76,.95)}


/* floating bottom nav */
.tabbar-float{
  position:fixed!important;
  position:fixed;
  left:50%;
  bottom:calc(env(safe-area-inset-bottom,0px) + 18px);
  transform:translateX(-50%);
  width:min(92vw,520px);
  z-index:60;
  pointer-events:none;
}
.tabbar-float .tabbar-shell{
  position:relative;
  pointer-events:auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:4px;
  padding:4px;
  border-radius:999px;
  background:rgba(255,255,255,.42);
  border:1px solid rgba(255,255,255,.32);
  box-shadow:0 8px 18px rgba(15,23,42,.07), inset 0 1px 0 rgba(255,255,255,.68);
  backdrop-filter:blur(22px) saturate(155%);
  -webkit-backdrop-filter:blur(22px) saturate(155%);
  overflow:hidden;
}
.tabbar-float .tabbar-shell:before{
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(180deg, rgba(255,255,255,.24), rgba(255,255,255,.06));
  pointer-events:none;
}
.tabbar{display:none!important}
.tabbar-float .tab{
  position:relative;
  z-index:1;
  min-height:52px;
  border-radius:999px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  color:#26262d;
  text-decoration:none;
  transition:all .18s ease;
  -webkit-tap-highlight-color:transparent;
}
.tabbar-float .tab .ico{
  width:18px;
  height:18px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.tabbar-float .tab .ico img,
.tabbar-float .tab .ico svg{
  max-width:18px;
  max-height:18px;
}
.tabbar-float .tab .txt{
  font-size:10px;
  font-weight:700;
  line-height:1;
}
.tabbar-float .tab.active{
  color:#2f6fe4;
  background:rgba(233,236,242,.70);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88);
}
.tabbar-float .tab:active{
  transform:scale(.975);
}
.page,.page-wrap,main.main{
  padding-bottom:72px!important;
}
@media (max-width:640px){
  .tabbar-float{
  position:fixed!important;
    width:calc(100vw - 18px);
    bottom:calc(env(safe-area-inset-bottom,0px) + 16px);
  }
  .tabbar-float .tabbar-shell{
    gap:4px;
    padding:4px;
    backdrop-filter:blur(24px) saturate(160%);
    -webkit-backdrop-filter:blur(24px) saturate(160%);
  }
  .tabbar-float .tab{
    min-height:50px;
    gap:2px;
  }
  .tabbar-float .tab .ico{
    width:18px;
    height:18px;
  }
  .tabbar-float .tab .ico img,
  .tabbar-float .tab .ico svg{
    max-width:18px;
    max-height:18px;
  }
  .tabbar-float .tab .txt{
    font-size:10px;
  }
  .page,.page-wrap,main.main{
    padding-bottom:76px!important;
  }
}


/* fix category page float */
body,html{overflow-x:hidden;}


/* category page bottom cover fix */
.category-page,
.category-layout,
.category-main,
.category-soft-list,
.soft-list,
.category-right{
  padding-bottom: 0 !important;
}
body.page-category .page,
body.page-category .page-wrap,
body.page-category main.main{
  padding-bottom: 118px !important;
}
body.page-category .category-main,
body.page-category .category-right,
body.page-category .category-soft-list,
body.page-category .soft-list{
  padding-bottom: 132px !important;
  box-sizing: border-box;
}
body.page-category .lottery-float{
  bottom: 126px !important;
}
@media (max-width:640px){
  body.page-category .page,
  body.page-category .page-wrap,
  body.page-category main.main{
    padding-bottom: 126px !important;
  }
  body.page-category .category-main,
  body.page-category .category-right,
  body.page-category .category-soft-list,
  body.page-category .soft-list{
    padding-bottom: 148px !important;
  }
  body.page-category .lottery-float{
    bottom: 126px !important;
  }
}



.app-icon-wrap{position:relative;flex:none}
.app-item{padding:10px 12px;border-radius:16px}
.app-list{gap:10px}
.app-item .left{gap:10px}
.app-item .meta{display:flex;flex-direction:column;justify-content:center}
.app-item .app-meta-ext{font-size:12px;color:#98a2b3;margin-top:4px}
.app-item .btn-view{height:40px;min-width:74px;border-radius:20px;font-size:14px}

.cat-app{padding:10px 12px;border-radius:16px;justify-content:space-between}
.cat-app .meta{min-width:0;flex:1}
.cat-app .name{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cat-app .download-pill{height:40px;min-width:72px;border-radius:20px;font-size:14px}

.detail-hero{padding:18px 18px 20px;border-radius:26px}
.detail-hero-top{display:flex;align-items:flex-start;gap:16px}
.detail-main{min-width:0;flex:1;padding-top:2px}
.detail-main h2{margin:0;font-size:34px;line-height:1.12;word-break:break-all}
.detail-tag-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.detail-tag{font-size:13px;padding:5px 14px;border-radius:18px;background:#f1f2f7;color:#55639a}
.detail-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;margin-bottom:18px}
.detail-stat{text-align:center}
.detail-stat-value{font-size:30px;font-weight:800;line-height:1.15}
.detail-stat-value.publish{font-size:24px;color:#d39a1f}
.detail-stat-value.downloads{font-size:28px;color:#111a3a}
.detail-stat-label{font-size:12px;color:#a2a7b7;margin-top:8px}
.big-download{width:100%;height:72px;border-radius:36px;font-size:26px;font-weight:800;box-shadow:none}
.big-download.disabled{background:#c8d7f2;color:#ffffff}
.detail-head{display:none}
.download-bar{display:none}
.meta-table div:last-child{border-bottom:none}

@media (max-width:640px){
  .app-item{padding:9px 11px}
  .app-item .app-icon{width:54px;height:54px;border-radius:14px}
  .app-item .name{font-size:16px}
  .app-item .btn-view{height:38px;min-width:68px;font-size:13px}
  .cat-app .app-icon{width:52px;height:52px;border-radius:14px}
  .cat-app .name{font-size:16px}
  .detail-hero{padding:16px 16px 18px;border-radius:24px}
  .detail-hero-top{gap:14px}
  .detail-icon{width:108px;height:108px;border-radius:24px}
  .detail-main h2{font-size:30px}
  .detail-tag-row{margin-top:8px}
  .detail-tag{font-size:12px;padding:5px 14px}
  .detail-stats{margin-top:14px;margin-bottom:16px}
  .detail-stat-value{font-size:24px}
  .detail-stat-value.publish{font-size:20px}
  .detail-stat-value.downloads{font-size:24px}
  .detail-stat-label{font-size:11px;margin-top:6px}
  .big-download{height:66px;font-size:24px}
}


/* 2026-04-16 detail/list refine */
.app-item .app-meta-ext,.days-line{font-size:12px;color:#98a2b3;margin-top:5px}
.detail-hero-top{gap:18px}
.detail-icon{width:92px;height:92px;border-radius:22px}
.detail-main{padding-top:6px}
.detail-main h2{font-size:30px;line-height:1.16}
.detail-tag-row{margin-top:14px}
.detail-stats{margin-top:28px;margin-bottom:18px}
.detail-stat-value{font-size:24px}
.detail-stat-value.publish{font-size:20px}
.detail-stat-value.downloads{font-size:22px}
.big-download{font-size:24px}
@media (max-width:640px){
  .detail-hero-top{gap:15px}
  .detail-icon{width:84px;height:84px;border-radius:20px}
  .detail-main{padding-top:4px}
  .detail-main h2{font-size:25px;line-height:1.18}
  .detail-tag-row{margin-top:12px}
  .detail-stats{margin-top:24px;margin-bottom:16px}
  .detail-stat-value{font-size:20px}
  .detail-stat-value.publish{font-size:17px}
  .detail-stat-value.downloads{font-size:18px}
  .big-download{font-size:22px}
}

/* 2026-04-16 user/detail visual tune */
.detail-tag,
.detail-tag.coin-badge,
.detail-tag.soft-badge{
  background:#fff6cf !important;
  color:#d6a11a !important;
}
.user-top > div{min-width:0;flex:1}
.uid{
  font-size:24px;
  line-height:1.2;
  word-break:break-all;
  overflow-wrap:anywhere;
}
.user-badges{
  gap:8px;
  margin-top:8px;
}
.user-badges span{
  font-size:13px;
  padding:6px 12px;
  line-height:1.2;
}
@media (max-width:640px){
  .uid{font-size:18px}
  .user-badges span{font-size:12px;padding:5px 10px}
}


/* 2026-04-16 button refine */
.big-download{max-width:calc(100% - 40px);margin:0 auto;height:58px !important;border-radius:30px !important;font-size:22px !important;font-weight:800}.btn-view,.download-pill{height:34px !important;min-width:62px !important;padding:0 14px !important;border-radius:17px !important;font-size:13px !important}@media(max-width:640px){.big-download{height:54px !important;font-size:20px !important;max-width:calc(100% - 24px)}.btn-view,.download-pill{height:32px !important;min-width:58px !important;font-size:12px !important;padding:0 12px !important}}


/* 2026-04-16 detail/meta/icon-size final fix */
.detail-info-panel .detail-info-title{font-size:15px;font-weight:700;color:#202939;margin-top:2px}
.detail-info-panel .detail-desc{margin-top:10px}
.detail-info-panel .meta-table{margin-top:12px}
.detail-info-panel .meta-table div{font-size:15px}
.detail-info-panel .meta-table span{color:#6b7280}
.tab .ico,
.tab .nav-icon,
.tab .icon-text,
.tab .icon-img{
  width: var(--nav-icon-size) !important;
  height: var(--nav-icon-size) !important;
}
.tab .ico{font-size:var(--nav-icon-size) !important;line-height:1}
.tab .icon-text{display:flex !important;align-items:center;justify-content:center;font-size:var(--nav-icon-size) !important;line-height:1}
.tab .icon-img{object-fit:contain !important;max-width:none !important;max-height:none !important;display:block}

.ad-box{margin:18px 0;padding:16px;border-radius:22px;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border:1px solid #e7eef8;box-shadow:0 10px 30px rgba(64,128,255,.08)}
.ad-box .ad-tag{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 12px;border-radius:999px;background:#edf5ff;color:#2f80ff;font-size:12px;font-weight:700;margin-bottom:12px}
.ad-box img,.ad-box iframe{max-width:100%;border-radius:16px;overflow:hidden}
.ad-box a{color:#2f80ff}
.ad-box>*:last-child{margin-bottom:0}
@media(max-width:640px){.ad-box{padding:14px;border-radius:18px}}

.ad-box{margin:14px 0;padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,#fff,#fafcff);border:1px solid #edf1f7}.ad-box .ad-tag{display:inline-block;margin-bottom:10px;padding:4px 10px;border-radius:999px;background:#f3f6fb;color:#8a94a6;font-size:12px}.ad-box img{max-width:100%;border-radius:14px;display:block}
.gray-mode .lottery-float{position:fixed!important;right:12px!important;bottom:92px!important;top:auto!important;left:auto!important;transform:none!important;filter:none!important}
body.page-category.gray-mode .lottery-float{bottom:92px!important;top:auto!important}

.site-footer-links{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 12px 92px;color:#8b94a7;font-size:13px}.site-footer-links a{color:#8b94a7}.site-footer-links span{color:#8b94a7}

/* v11 ad/footer/customer refine */
.site-footer-links{display:none!important}
.ad-soft-slot{position:relative;overflow:hidden}.ad-soft-slot .ad-icon-box{display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:#2f80ff;background:linear-gradient(135deg,#eef5ff,#f8fbff);border:1px dashed #cfe0ff}.ad-soft-slot .ad-inline-html{margin-top:8px;font-size:13px;color:#6f7b8c;line-height:1.65;max-width:100%;overflow:hidden}.ad-soft-slot .ad-inline-html img,.ad-soft-slot .ad-inline-html iframe,.ad-soft-slot .ad-inline-html video{width:100%;max-width:100%;border-radius:14px;display:block}.ad-soft-slot .ad-view-tag{background:linear-gradient(90deg,#7d9bff,#4aa3ff)!important}.ad-soft-item .name,.ad-soft-item-cat .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-hero{display:flex;gap:14px;align-items:center;background:linear-gradient(135deg,#ffffff,#f4f8ff);border:1px solid #eaf0fb;border-radius:22px;padding:18px;box-shadow:0 10px 24px rgba(25,134,255,.06);margin-bottom:14px}.customer-hero-icon{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#2f80ff,#69a7ff);display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;box-shadow:0 10px 24px rgba(47,128,255,.22)}.customer-hero-main h2{margin:0 0 6px;font-size:24px}.customer-hero-main p{margin:0;color:#6f7b8c;line-height:1.8}.customer-card-list{display:flex;flex-direction:column;gap:12px}.customer-card-btn{display:flex;align-items:center;gap:12px;padding:16px 18px;border-radius:20px;background:#fff;border:1px solid #edf2f8;box-shadow:0 4px 14px rgba(0,0,0,.04)}.customer-card-icon{width:46px;height:46px;border-radius:16px;background:#eef5ff;color:#2f80ff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700}.customer-card-text{display:flex;flex-direction:column;min-width:0;flex:1}.customer-card-text b{font-size:18px;color:#1f2937}.customer-card-text small{font-size:12px;color:#94a3b8;margin-top:4px}.customer-card-arrow{font-size:28px;color:#9fb6dd}.customer-card-btn:active{transform:scale(.99)}@media(max-width:640px){.customer-hero{padding:16px;border-radius:20px}.customer-hero-main h2{font-size:21px}.customer-card-btn{padding:14px 16px;border-radius:18px}}

/* v12 ad card */
.ad-soft-slot{position:relative;overflow:hidden}
.ad-soft-slot .left{min-width:0;flex:1}
.ad-soft-slot .app-icon-wrap{position:relative}
.ad-soft-slot .meta{overflow:hidden}
.ad-soft-slot .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ad-soft-slot .app-meta-ext,.ad-soft-slot .days-line{font-size:13px;color:#667085;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;line-height:1.45;max-height:38px}
.ad-card-badge{position:absolute;left:4px;bottom:4px;background:rgba(25,134,255,.92);color:#fff;padding:2px 6px;border-radius:8px;font-size:11px;box-shadow:0 2px 6px rgba(25,134,255,.2)}
.ad-soft-slot .btn-view,.ad-soft-slot .download-pill{flex:none}

/* v13: 首页快捷入口图标不单独触发点击效果，只让整个快捷入口有反馈 */
.quick-card .circle,.quick-card .circle *,.quick-card .icon-img{pointer-events:none!important;-webkit-tap-highlight-color:transparent!important;user-select:none!important;}
.quick-card .circle:active,.quick-card:active .circle,.quick-card:active .icon-img{transform:none!important;filter:none!important;}
.operation-uptime{margin:12px auto 6px;text-align:center;color:#64748b;font-size:13px;line-height:1.5;background:rgba(255,255,255,.78);border:1px solid #eef2f7;border-radius:999px;padding:8px 14px;width:max-content;max-width:92%;box-shadow:0 4px 14px rgba(15,23,42,.04)}

/* v20_1 front compact tuning */
.page{padding:12px}
.panel,.menu-panel,.auth-card{border-radius:16px;padding:14px}
.app-item{padding:12px;border-radius:16px;gap:10px}
.app-icon{width:60px;height:60px;border-radius:15px}
.name{font-size:17px}
.sub,.downline{font-size:12px;margin-top:5px}
.menu-row{padding:15px 4px;font-size:17px}
.logout-btn,.buy-link,.auth-form button,.full-btn{height:48px;font-size:16px;border-radius:15px}
.detail-hero{padding:15px 15px 18px;border-radius:22px}
.detail-main h2{font-size:28px}
.detail-icon{width:72px;height:72px;border-radius:16px}
.detail-stats{gap:12px;margin-top:14px;margin-bottom:14px}
.detail-stat-value{font-size:24px}
.big-download{height:50px;font-size:18px;border-radius:15px}
.section-h{font-size:18px}
@media(max-width:640px){
  .page{padding:11px}
  .panel,.menu-panel,.auth-card{padding:13px;border-radius:15px}
  .app-item{padding:11px}
  .app-icon{width:56px;height:56px}
  .menu-row{padding:13px 4px;font-size:16px}
  .detail-main h2{font-size:24px}
  .detail-icon{width:64px;height:64px}
  .detail-hero-top{gap:12px}
}

/* v20_2 unified front notice + return button fix */
.tips,.notice{
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:13px 14px 13px 42px;
  border-radius:16px;
  margin:0 0 14px;
  line-height:1.65;
  font-size:14px;
  box-shadow:0 10px 26px rgba(47,128,255,.08);
  border:1px solid #dbeafe;
}
.tips{background:linear-gradient(135deg,#f0f7ff,#ffffff);color:#2563eb}
.notice{background:linear-gradient(135deg,#fff6f6,#ffffff);color:#e0526b;border-color:#ffd6dc}
.tips:before,.notice:before{
  content:"✓";
  position:absolute;
  left:14px;
  top:13px;
  width:20px;
  height:20px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:12px;
  font-weight:900;
  background:#2f80ff;
}
.notice:before{content:"!";background:#e0526b}
.page-back-title a,.back-mini a{
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-family:Arial,Helvetica,sans-serif!important;
  padding:0 0 4px 0!important;
}

/* v21 frontend UI tweaks */
.quick-row{gap:9px;margin:12px 0}
.quick-card{border-radius:15px;padding:10px 4px;font-size:13px}
.circle{width:44px;height:44px;border-radius:14px;margin-bottom:6px}
.circle .quick-icon.icon-img{width:min(var(--quick-icon-size),30px);height:min(var(--quick-icon-size),30px)}
.app-item{padding:13px 14px}
.app-icon{width:74px;height:74px;border-radius:18px}
.name{font-size:16px;font-weight:700}
.btn-view{height:40px;min-width:74px;border-radius:20px;font-size:14px}
.page-category .search-wrap{gap:8px;margin-bottom:8px}
.page-category .search-wrap input{height:40px;padding:0 13px;border-radius:13px;font-size:14px}
.page-category .search-wrap button{height:40px;width:86px;border-radius:13px;font-size:15px}
.operation-uptime{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:14px auto 8px;
  width:max-content;
  max-width:92%;
  padding:9px 16px;
  border-radius:999px;
  color:#2563eb;
  font-size:13px;
  font-weight:800;
  background:linear-gradient(135deg,rgba(239,246,255,.96),rgba(255,255,255,.92));
  border:1px solid rgba(96,165,250,.22);
  box-shadow:0 10px 26px rgba(47,128,255,.10);
}
.operation-uptime:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:#22c55e;
  box-shadow:0 0 0 5px rgba(34,197,94,.12);
  flex:none;
}
.page-back-title a,.back-mini a{
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 0 4px!important;
}
@media(max-width:640px){
  .quick-card{padding:9px 3px;font-size:12px}
  .circle{width:40px;height:40px;border-radius:12px}
  .circle .quick-icon.icon-img{width:27px;height:27px}
  .app-icon{width:72px;height:72px;border-radius:18px}
  .name{font-size:15.5px}
  .app-item{padding:12px 13px}
}

/* v21_1 fix: 首页软件列表恢复上一版，下载详情页单独调整 */
.app-list .app-icon{
  width:60px!important;
  height:60px!important;
  border-radius:15px!important;
}
.app-list .name{
  font-size:17px!important;
}
.detail-icon{
  width:86px!important;
  height:86px!important;
  border-radius:20px!important;
}
.detail-main h2{
  font-size:24px!important;
  line-height:1.25!important;
}
@media(max-width:640px){
  .app-list .app-icon{
    width:56px!important;
    height:56px!important;
    border-radius:15px!important;
  }
  .app-list .name{
    font-size:17px!important;
  }
  .detail-icon{
    width:78px!important;
    height:78px!important;
    border-radius:18px!important;
  }
  .detail-main h2{
    font-size:22px!important;
  }
}


/* 登录/注册密码显示隐藏图标不做点击动效 */
.eye-btn,
.eye-btn:hover,
.eye-btn:active,
.eye-btn:focus{
    transform:none!important;
    box-shadow:none!important;
    filter:none!important;
    outline:none!important;
    -webkit-tap-highlight-color:transparent!important;
}
.eye-btn .eye-icon,
.eye-btn svg{
    pointer-events:none!important;
}


/* v21 eight-point fixes */
.app-icon-wrap{position:relative;display:inline-block;flex:none}.top-ribbon,.mini-top,.ad-card-badge{position:absolute!important;left:0!important;top:0!important;bottom:auto!important;background:#ef4444!important;color:#fff!important;font-size:11px!important;font-weight:800!important;padding:2px 8px!important;border-radius:12px 0 12px 0!important;z-index:2!important;box-shadow:none!important;line-height:1.4!important}.home-marquee{width:100%;border:0;text-align:left;cursor:pointer;appearance:none;-webkit-appearance:none;font:inherit}.home-marquee .marquee-more{flex:none;font-size:12px;font-weight:800;color:#2f80ff;background:#eef5ff;border-radius:999px;padding:6px 10px}.marquee-dialog .dialog-box{border-radius:26px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 20px 55px rgba(31,91,180,.16)}.marquee-dialog-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.marquee-dialog-head span{width:42px;height:42px;border-radius:16px;background:#eef5ff;display:flex;align-items:center;justify-content:center}.marquee-dialog-head strong{font-size:20px;color:#1f2937}.marquee-dialog-content{white-space:pre-wrap;line-height:1.9;color:#475467;background:#fff;border:1px solid #edf2fb;border-radius:18px;padding:16px;max-height:50vh;overflow:auto}.lottery-win-modal .image-box{min-height:180px;display:flex!important;align-items:center!important;justify-content:center!important}.lottery-win-modal img{display:block;margin:0 auto}.lottery-win-note{margin-top:12px;padding:12px 14px;border-radius:16px;background:#fff7e6;color:#d97706;font-size:14px;font-weight:800;line-height:1.7}.tips.success,.security-success{background:linear-gradient(135deg,#f0fff4,#ffffff)!important;color:#16a34a!important;border-color:#bbf7d0!important}.tips.success:before,.security-success:before{background:#22c55e!important;content:"✓"!important}
@media(max-width:780px){.app-item,.news-item,.quick-card,.panel,.menu-panel,.auth-card{content-visibility:auto;contain-intrinsic-size:80px}}