    .daily-event-modal-overlay {
        animation: fadeInOverlay 0.25s ease-out forwards;
    }

    .daily-event-card {
        animation: scaleInCard 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
    }

    .daily-side-btn {
        background: rgba(255, 255, 255, 0.03);
        border: 1px solid rgba(255, 255, 255, 0.1);
        color: #cbd5e1;
        padding: 12px 10px;
        border-radius: 12px;
        font-weight: 700;
        cursor: pointer;
        transition: all 0.2s ease;
        flex: 1;
        text-align: center;
        font-size: 0.9em;
    }

    .daily-side-btn:hover {
        background: rgba(255, 255, 255, 0.07);
        border-color: rgba(255, 255, 255, 0.2);
    }

    .daily-side-btn.active {
        background: rgba(56, 189, 248, 0.12);
        border-color: #38bdf8;
        color: #38bdf8;
        box-shadow: 0 0 12px rgba(56, 189, 248, 0.25);
    }

    .daily-preset-btn {
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #94a3b8;
        padding: 6px 14px;
        border-radius: 8px;
        font-size: 0.8em;
        cursor: pointer;
        transition: all 0.2s ease;
        font-weight: bold;
    }

    .daily-preset-btn:hover {
        background: rgba(255, 255, 255, 0.08);
        color: #fff;
    }

    .daily-preset-btn.active {
        background: rgba(56, 189, 248, 0.15);
        border-color: #38bdf8;
        color: #38bdf8;
    }

    #daily-bet-input:focus {
        border-color: rgba(56, 189, 248, 0.5) !important;
        box-shadow: 0 0 8px rgba(56, 189, 248, 0.2);
    }

    @keyframes fadeInOverlay {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    @keyframes scaleInCard {
        from {
            transform: scale(0.92) translateY(15px);
            opacity: 0;
        }

        to {
            transform: scale(1) translateY(0);
            opacity: 1;
        }
    }

    /* ============================================================
   🆕 v5.28: 签到后预测卡 (#checkin-event-modal) 主题适配
   痛点: 原 card 硬编码深色玻璃样式 (radial-gradient + rgba(0,0,0,0.3)),
         浅色模式 / fun-mode 下显得"异物", 不融入背景
   修复: 3 套主题完整覆盖
     1. 浅色 (默认):            白底深字 + 浅灰边
     2. 深色 (dark / lucky):    维持现有深色玻璃 (无变化)
     3. fun-mode:               珍珠白 + 香槟金边 + 深巧克力文字
   ============================================================ */

    /* ===== 1) 浅色 (默认, 非 dark / lucky / fun) ===== */
    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .modal-content {
        background: #ffffff !important;
        color: #1f2937 !important;
        border: 1px solid #e5e7eb !important;
        box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15) !important;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .modal-header {
        border-bottom-color: #e5e7eb !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .modal-header h3 {
        color: #0e7490 !important;
        text-shadow: none !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .close-btn {
        background: #f3f4f6 !important;
        color: #4b5563 !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .close-btn:hover {
        background: #e5e7eb !important;
    }

    /* 事件详情卡 (白底 + 浅边) */
    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal>.modal-content>div[style*="rgba(255, 255, 255, 0.02)"] {
        background: #f9fafb !important;
        border: 1px solid #e5e7eb !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal #daily-event-category {
        background: #e0f2fe !important;
        color: #0c4a6e !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal #daily-event-time {
        color: #6b7280 !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal #daily-event-title {
        color: #111827 !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal #daily-event-title span {
        color: #0e7490 !important;
    }

    /* 段落标签 (color: #94a3b8 / #64748b) — 覆盖到嵌套 div */
    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal>.modal-content div[style*="color: #94a3b8"] {
        color: #4b5563 !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal>.modal-content div[style*="color: #64748b"] {
        color: #6b7280 !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal #daily-user-balance {
        color: #1f2937 !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal #daily-bet-input {
        background: #ffffff !important;
        border: 1px solid #d1d5db !important;
        color: #111827 !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal #daily-bet-input:focus {
        border-color: #0ea5e9 !important;
        box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.12) !important;
    }

    /* 预估回报盒 (黑底 → 浅灰底) */
    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal>.modal-content>div[style*="rgba(0,0,0,0.25)"] {
        background: #f3f4f6 !important;
        border: 1px solid #e5e7eb !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal #daily-calc-shares {
        color: #0e7490 !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal #daily-calc-price {
        color: #1f2937 !important;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal #daily-calc-roi {
        color: #047857 !important;
    }

    /* side btn + preset btn */
    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .daily-side-btn {
        background: #ffffff;
        border: 1px solid #e5e7eb;
        color: #4b5563;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .daily-side-btn:hover {
        background: #f9fafb;
        border-color: #d1d5db;
        color: #1f2937;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .daily-side-btn.active {
        background: #e0f2fe;
        border-color: #0ea5e9;
        color: #0c4a6e;
        box-shadow: inset 0 0 0 1px #0ea5e9, 0 0 12px rgba(14, 165, 233, 0.15);
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .daily-preset-btn {
        background: #f9fafb;
        border: 1px solid #e5e7eb;
        color: #6b7280;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .daily-preset-btn:hover {
        background: #f3f4f6;
        color: #111827;
    }

    body:not(.dark-mode):not(.is-lucky-mode):not(.fun-mode) #checkin-event-modal .daily-preset-btn.active {
        background: #e0f2fe;
        border-color: #0ea5e9;
        color: #0c4a6e;
    }

    /* ===== 2) 深色 (dark-mode / is-lucky-mode): 维持现有深色玻璃 ===== */
    body.dark-mode #checkin-event-modal .modal-content,
    body.is-lucky-mode #checkin-event-modal .modal-content {
        background: radial-gradient(circle at 50% 0%, rgba(30, 34, 53, 0.98), rgba(11, 15, 25, 0.98)) !important;
        color: #fff !important;
        border: 1px solid rgba(56, 189, 248, 0.35) !important;
        box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6), inset 0 0 20px rgba(56, 189, 248, 0.1) !important;
        backdrop-filter: saturate(150%) blur(24px) !important;
        -webkit-backdrop-filter: saturate(150%) blur(24px) !important;
    }

    body.dark-mode #checkin-event-modal .modal-header h3,
    body.is-lucky-mode #checkin-event-modal .modal-header h3 {
        color: #38bdf8 !important;
        text-shadow: 0 0 8px rgba(56, 189, 248, 0.4) !important;
    }

    body.dark-mode #checkin-event-modal .close-btn,
    body.is-lucky-mode #checkin-event-modal .close-btn {
        background: rgba(255, 255, 255, 0.1) !important;
        color: #fff !important;
    }

    body.dark-mode #checkin-event-modal .close-btn:hover,
    body.is-lucky-mode #checkin-event-modal .close-btn:hover {
        background: rgba(255, 255, 255, 0.2) !important;
    }

    body.dark-mode #checkin-event-modal .daily-side-btn,
    body.is-lucky-mode #checkin-event-modal .daily-side-btn {
        background: rgba(255, 255, 255, 0.03);
        border: 1px solid rgba(255, 255, 255, 0.1);
        color: #cbd5e1;
    }

    body.dark-mode #checkin-event-modal .daily-side-btn:hover,
    body.is-lucky-mode #checkin-event-modal .daily-side-btn:hover {
        background: rgba(255, 255, 255, 0.07);
        border-color: rgba(255, 255, 255, 0.2);
    }

    body.dark-mode #checkin-event-modal .daily-side-btn.active,
    body.is-lucky-mode #checkin-event-modal .daily-side-btn.active {
        background: rgba(56, 189, 248, 0.12);
        border-color: #38bdf8;
        color: #38bdf8;
        box-shadow: 0 0 12px rgba(56, 189, 248, 0.25);
    }

    body.dark-mode #checkin-event-modal .daily-preset-btn,
    body.is-lucky-mode #checkin-event-modal .daily-preset-btn {
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        color: #94a3b8;
    }

    body.dark-mode #checkin-event-modal .daily-preset-btn:hover,
    body.is-lucky-mode #checkin-event-modal .daily-preset-btn:hover {
        background: rgba(255, 255, 255, 0.08);
        color: #fff;
    }

    body.dark-mode #checkin-event-modal .daily-preset-btn.active,
    body.is-lucky-mode #checkin-event-modal .daily-preset-btn.active {
        background: rgba(56, 189, 248, 0.15);
        border-color: #38bdf8;
        color: #38bdf8;
    }

    /* ===== 3) fun-mode: 珍珠白 + 香槟金边 + 深巧克力文字 ===== */
    body.fun-mode #checkin-event-modal .modal-content {
        background: linear-gradient(135deg, var(--fun-lux-white) 0%, var(--fun-lux-cream) 100%) !important;
        color: var(--fun-lux-text) !important;
        border: 1.5px solid var(--fun-lux-border) !important;
        box-shadow: var(--fun-lux-shadow) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    body.fun-mode #checkin-event-modal .modal-header {
        border-bottom-color: var(--fun-lux-border) !important;
    }

    body.fun-mode #checkin-event-modal .modal-header h3 {
        color: var(--fun-lux-text) !important;
        text-shadow: none !important;
    }

    body.fun-mode #checkin-event-modal .close-btn {
        background: var(--fun-lux-cream) !important;
        color: var(--fun-lux-text) !important;
    }

    body.fun-mode #checkin-event-modal .close-btn:hover {
        background: var(--fun-lux-border-strong) !important;
    }

    body.fun-mode #checkin-event-modal .daily-event-detail-card {
        background: var(--fun-lux-card) !important;
        border: 1px solid var(--fun-lux-border) !important;
        box-shadow: var(--fun-lux-shadow-sm) !important;
    }

    body.fun-mode #checkin-event-modal #daily-event-category {
        background: rgba(184, 134, 11, 0.15) !important;
        color: var(--fun-lux-gold) !important;
    }

    body.fun-mode #checkin-event-modal #daily-event-time {
        color: var(--fun-lux-text-soft) !important;
    }

    body.fun-mode #checkin-event-modal #daily-event-title {
        color: var(--fun-lux-text) !important;
    }

    body.fun-mode #checkin-event-modal #daily-event-title span {
        color: var(--fun-lux-gold) !important;
    }

    body.fun-mode #checkin-event-modal>.modal-content div[style*="color: #94a3b8"] {
        color: var(--fun-lux-text-soft) !important;
    }

    body.fun-mode #checkin-event-modal>.modal-content div[style*="color: #64748b"] {
        color: var(--fun-lux-text-mute) !important;
    }

    body.fun-mode #checkin-event-modal #daily-user-balance {
        color: var(--fun-lux-text) !important;
    }

    body.fun-mode #checkin-event-modal #daily-bet-input {
        background: var(--fun-lux-card) !important;
        border: 1px solid var(--fun-lux-border) !important;
        color: var(--fun-lux-text) !important;
    }

    body.fun-mode #checkin-event-modal #daily-bet-input:focus {
        border-color: var(--fun-lux-gold) !important;
        box-shadow: 0 0 0 3px rgba(184, 134, 11, 0.12) !important;
    }

    body.fun-mode #checkin-event-modal .daily-calc-preview-card {
        background: var(--fun-lux-cream) !important;
        border: 1px solid var(--fun-lux-border) !important;
    }

    body.fun-mode #checkin-event-modal #daily-calc-shares {
        color: var(--fun-lux-gold) !important;
    }

    body.fun-mode #checkin-event-modal #daily-calc-price {
        color: var(--fun-lux-text) !important;
    }

    body.fun-mode #checkin-event-modal #daily-calc-roi {
        color: #2E7D32 !important;
    }

    body.fun-mode #checkin-event-modal .daily-side-btn {
        background: var(--fun-lux-card);
        border: 1px solid var(--fun-lux-border);
        color: var(--fun-lux-text);
    }

    body.fun-mode #checkin-event-modal .daily-side-btn:hover {
        background: var(--fun-lux-cream);
        border-color: var(--fun-lux-border-strong);
    }

    body.fun-mode #checkin-event-modal .daily-side-btn.active {
        background: rgba(184, 134, 11, 0.18);
        border-color: var(--fun-lux-gold);
        color: var(--fun-lux-text);
        box-shadow: inset 0 0 0 1px var(--fun-lux-gold), 0 0 12px rgba(184, 134, 11, 0.25);
    }

    body.fun-mode #checkin-event-modal .daily-preset-btn {
        background: var(--fun-lux-card);
        border: 1px solid var(--fun-lux-border);
        color: var(--fun-lux-text-soft);
    }

    body.fun-mode #checkin-event-modal .daily-preset-btn:hover {
        background: var(--fun-lux-cream);
        color: var(--fun-lux-text);
    }

    body.fun-mode #checkin-event-modal .daily-preset-btn.active {
        background: rgba(184, 134, 11, 0.18);
        border-color: var(--fun-lux-gold);
        color: var(--fun-lux-text);
    }

    /* 🆕 v5.28 修复: 减少移动端动效损耗, 跟其他 modal 一致 */
    @media (max-width: 640px) {
        #checkin-event-modal .modal-content {
            backdrop-filter: none;
            -webkit-backdrop-filter: none;
        }

        body.dark-mode #checkin-event-modal .modal-content,
        body.is-lucky-mode #checkin-event-modal .modal-content {
            background: #1e2235 !important;
        }
    }

    /* ===== 🆕 v6.04 移动端竖屏保底 (≤480px 细节优化) =====
       双轨方案「保底轨」: 布局层已有 900/768px 单列兜底, 此处补触控/安全区/输入细节。
       本块只做「不难用」的最低标准。 */
    @media (max-width: 480px) {
        /* ① 触控热区 ≥44px (iOS HIG / Material 规范, 防误触) */
        .market-prob-btn,
        .market-opt-row {
            min-height: 44px;
        }
        /* ② 去除 iOS 点击高亮 (点按钮不闪灰块) */
        button,
        a,
        [role="button"],
        .clickable {
            -webkit-tap-highlight-color: transparent;
        }
        /* ③ 安全区: iPhone 刘海/底部手势条留白 */
        body {
            padding-bottom: env(safe-area-inset-bottom, 0px);
        }
        .app-container {
            padding-left: max(12px, env(safe-area-inset-left));
            padding-right: max(12px, env(safe-area-inset-right));
        }
        /* ④ iOS 聚焦缩放防护: input/select <16px 会被 Safari 自动放大视口 */
        input,
        select,
        textarea {
            font-size: 16px !important;
        }
        /* ⑥ 资产组合大弹窗 (#payout-popover): 移动端全宽 + 更高屏占比 */
        #payout-popover .modal-content {
            width: 100%;
            max-width: 100vw;
            max-height: 92vh;
            padding: 16px;
        }
        #payout-popover .portfolio-tabs {
            gap: 14px;
            font-size: 0.95em;
        }
    }
