* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* 强制暗黑主题 - 覆盖 Telegram 和系统主题 - 竞品深蓝风格 */
:root {
    --tg-theme-bg-color: #0b141e !important; /* 深海蓝背景 */
    --tg-theme-text-color: #ffffff !important;
    --tg-theme-hint-color: #8b9bb4 !important; /* 蓝灰色提示字 */
    --tg-theme-link-color: #FFD700 !important;
    --tg-theme-button-color: #FFD700 !important;
    --tg-theme-button-text-color: #000000 !important;
    --tg-theme-secondary-bg-color: #152232 !important; /* 卡片背景色 */
    --tg-theme-card-border: #1e2f45 !important; /* 卡片边框 */
    /* 底部导航栏高度（不含安全区），用于给页面内容预留空间，避免被 fixed 的导航栏遮挡 */
    --bottom-nav-height: 70px;
    /* 固定底部操作栏（如“提交凭证/立即支付”）的预留高度，避免内容被遮挡 */
    --action-footer-height: 96px;
}

/* 防止页面溢出 */
html {
    overflow-x: hidden;
    width: 100%;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    background: var(--tg-theme-bg-color) !important;
    color: var(--tg-theme-text-color) !important;
    margin: 0;
    padding: 0;
    min-height: 100vh;
    /* 为底部导航栏（fixed）+ iPhone 安全区留出空间，避免页面底部内容被“埋” */
    padding-bottom: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));
    overflow-x: hidden;
    width: 100%;
    max-width: 100%;
}

#page-home {
    padding-bottom: 0;
}

.app-wrapper {
    min-height: 100vh;
    position: relative;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

.container {
    max-width: 600px;
    margin: 0 auto;
    padding: 12px 24px !important; /* 强制左右留白 */
    box-sizing: border-box;
}

/* 确保所有全宽元素都受 container 约束 */
.tasks-main, .stats-grid, .membership-cards, .progress-section, .rewards-section {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.container:has(#page-tasks.active),
.container:has(#page-subscribe.active),
.container:has(#page-profile.active),
.container:has(#page-recharge-record.active),
.container:has(#page-earnings-center.active),
.container:has(#page-withdrawal-record.active),
.container:has(#page-payment-methods.active),
.container:has(#page-country-region.active),
.container:has(#page-language-settings.active),
.container:has(#page-customer-service.active),
.container:has(#page-ad-withdrawal.active),
.container:has(#page-add-account.active),
.container:has(#page-payment.active),
.container:has(#page-bitcoin-payment.active),
.container:has(#page-ethereum-payment.active),
.container:has(#page-usdt-trc20-payment.active),
.container:has(#page-usdt-erc20-payment.active),
.container:has(#page-upload-voucher.active),
.container:has(#page-telegram-stars.active) {
    padding: 0 !important;
    max-width: 100% !important;
}

.container:has(#page-pyusd-payment.active) {
    padding: 0 !important;
    max-width: 100% !important;
}

/* 任务页布局调整 */
#page-tasks .container {
    padding: 0;
}

/* 首页容器全屏 */
#page-home.active ~ *,
.container:has(#page-home.active),
body:has(#page-home.active) .container {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

#page-home .container,
#page-home {
    padding: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    width: 100% !important;
}

/* 页面切换 */
.page {
    display: none;
    position: relative;
    z-index: 1;
}

.page.active {
    display: block;
}

header {
    text-align: center;
    margin-bottom: 30px;
}

header h1 {
    font-size: 24px;
    color: var(--tg-theme-text-color, #000000);
}

/* 首页样式 - 已移除，使用全屏视频样式 */

.user-info {
    background: var(--tg-theme-secondary-bg-color, #f0f0f0);
    padding: 20px;
    border-radius: 12px;
    margin-bottom: 20px;
}

.user-info p {
    margin: 8px 0;
    font-size: 14px;
}

.user-info strong {
    color: var(--tg-theme-hint-color, #999999);
}

.actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 30px;
}

.btn {
    background: var(--tg-theme-button-color, #3390ec);
    color: var(--tg-theme-button-text-color, #ffffff);
    border: none;
    padding: 14px 24px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    transition: opacity 0.2s;
}

.btn:hover {
    opacity: 0.9;
}

.btn:active {
    opacity: 0.8;
}

.info-section {
    background: var(--tg-theme-secondary-bg-color, #f0f0f0);
    padding: 20px;
    border-radius: 12px;
}

.info-section h2 {
    font-size: 18px;
    margin-bottom: 15px;
    color: var(--tg-theme-text-color, #000000);
}

.info-section p {
    font-size: 14px;
    margin: 8px 0;
    word-break: break-all;
}

.info-section code {
    background: rgba(0, 0, 0, 0.1);
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 12px;
}

/* 内容卡片 */
.content-card {
    background: var(--tg-theme-secondary-bg-color, #f0f0f0);
    padding: 20px;
    border-radius: 12px;
    margin-bottom: 15px;
}

.content-card h2 {
    font-size: 18px;
    margin-bottom: 10px;
    color: var(--tg-theme-text-color, #000000);
}

.content-card p {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
}

/* 订阅列表 */
.subscribe-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.subscribe-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #f0f0f0);
    border-radius: 12px;
    cursor: pointer;
    transition: opacity 0.2s;
}

.subscribe-item:active {
    opacity: 0.7;
}

.subscribe-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--tg-theme-button-color, #3390ec);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    flex-shrink: 0;
}

.subscribe-content {
    flex: 1;
}

.subscribe-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 6px;
}

.subscribe-name {
    font-weight: 600;
    font-size: 16px;
    color: var(--tg-theme-text-color, #000000);
}

.subscribe-status {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 12px;
    background: var(--tg-theme-hint-color, rgba(0, 0, 0, 0.1));
    color: var(--tg-theme-hint-color, #999999);
}

.subscribe-status.active {
    background: var(--tg-theme-button-color, #3390ec);
    color: var(--tg-theme-button-text-color, #ffffff);
}

.subscribe-desc {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
}

/* 任务页面 */
.tasks-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px; /* 增加下边距 */
    padding: 0 12px;
    margin-top: 30px; /* 大幅增加顶部间距，让标题下移 */
}

.tasks-title-section {
    flex: 1;
    padding-left: 8px; /* 标题/小字整体向右一点，更靠中间 */
}

.tasks-main-title {
    font-size: 20px; /* 稍微加大标题 */
    font-weight: 800;
    color: #FFD700;
    margin-bottom: 4px;
    letter-spacing: 0.5px;
}

.tasks-subtitle {
    font-size: 11px;
    color: var(--tg-theme-text-color, #ffffff);
    opacity: 0.8;
}

.tasks-user-icon {
    width: 40px;  /* 32px * 1.25 ≈ 40px */
    height: 40px; /* 32px * 1.25 ≈ 40px */
    border-radius: 50%;
    background: radial-gradient(circle at 35% 30%, #fff4b8 0%, #FFD700 45%, #f2b200 100%);
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
    transform: translateX(-8px); /* 头像向左一点，更靠中间 */
    overflow: hidden; /* 裁剪头像图片 */
    box-shadow: 0 10px 22px rgba(0, 0, 0, 0.35);
}

.tasks-main {
    display: flex;
    flex-direction: column;
    gap: 8px;
    /* 底部导航栏为 fixed，给内容区补足底部空间，避免广告卡片/按钮被“埋”在导航栏下面 */
    padding: 0 12px calc(16px + 56px + env(safe-area-inset-bottom));
}

/* 会员等级卡片 */
.membership-cards {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    padding-bottom: 8px;
    /* 让滚动区域全宽，但内容起始位置对齐 */
    margin: 0 -12px;
    padding-left: 12px;
    padding-right: 12px;
}

.membership-cards::-webkit-scrollbar {
    display: none;
}

.membership-card {
    position: relative;
    width: 100px !important;  /* 强制固定宽度 */
    height: 100px !important; /* 强制固定高度 */
    min-width: 100px !important; /* 强制最小宽度 */
    padding: 12px;
    background: var(--tg-theme-secondary-bg-color);
    border: 1px solid var(--tg-theme-card-border);
    border-radius: 16px;
    text-align: center;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-sizing: border-box; /* 确保 padding 不撑大盒子 */
}

/* 选中状态 - 用户点击选中时高亮 */
.membership-card.selected {
    background: #FFD700;
    border: none;
}

.membership-card.selected .membership-name {
    color: #000000;
    font-weight: 800;
}

.membership-card.selected .membership-price {
    color: rgba(0, 0, 0, 0.7);
    font-weight: 600;
}

.membership-card.selected .membership-action {
    color: rgba(0, 0, 0, 0.7);
    font-weight: 600;
}

.membership-lock {
    position: absolute;
    top: 8px;
    right: 8px;
    font-size: 12px;
    color: var(--tg-theme-hint-color);
}

.membership-name {
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 4px;
    color: #ffffff;
}

.membership-price {
    font-size: 12px;
    color: var(--tg-theme-hint-color);
}

/* 统计卡片 - 4宫格 */
.stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px; /* 间距保持 */
    margin-top: 16px; /* 增加与上方的距离 */
    margin-bottom: 16px;
}

.stat-card {
    background: var(--tg-theme-secondary-bg-color);
    border: 1px solid var(--tg-theme-card-border);
    border-radius: 16px; /* 圆角加大 */
    padding: 16px; /* 内边距加大 */
    text-align: center;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100px; /* 恢复高度 */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2); /* 增加阴影，增强悬浮感 */
    margin: 0; /* 由 grid gap 控制间距 */
}

.stat-card.highlight {
    border: 1px solid rgba(255, 215, 0, 0.5);
    background: linear-gradient(180deg, rgba(255, 215, 0, 0.05) 0%, var(--tg-theme-secondary-bg-color) 100%);
}

.stat-icon {
    font-size: 20px; /* 恢复图标大小 */
    margin-bottom: 6px;
    display: block;
    line-height: 1;
    color: #FFD700;
}

/* 仿竞品：绿色对勾图标 */
.stat-card:nth-child(1) .stat-icon {
    color: #4ade80; 
}

.stat-value {
    font-size: 24px; /* 恢复大字体 */
    font-weight: 800;
    color: #ffffff;
    margin-bottom: 4px;
    line-height: 1.1;
    font-family: 'Roboto', sans-serif;
}

.stat-card.highlight .stat-value {
    color: #FFD700;
}

.stat-label {
    font-size: 11px; /* 标签字体缩小 */
    color: var(--tg-theme-hint-color);
    line-height: 1.2;
    font-weight: 500;
}

/* 进度区域 */
.progress-section {
    background: var(--tg-theme-secondary-bg-color);
    border: 1px solid var(--tg-theme-card-border);
    border-radius: 16px;
    padding: 16px;
    margin-top: 16px;
}

.progress-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.progress-title {
    font-size: 16px;
    font-weight: 700;
    color: #ffffff;
}

.progress-text {
    font-size: 14px;
    color: var(--tg-theme-hint-color);
}

.progress-bar-wrapper {
    display: flex;
    align-items: center;
    gap: 16px;
}

.progress-bar {
    flex: 1;
    height: 8px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    overflow: hidden;
}

.progress-fill {
    height: 100%;
    background: #FFD700;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.claim-btn {
    padding: 8px 20px;
    background: #FFD700;
    color: #000000;
    border: none;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    transition: opacity 0.2s;
    box-shadow: 0 2px 8px rgba(255, 215, 0, 0.3);
}

.claim-btn:active {
    opacity: 0.8;
}

/* 品牌广告区域 */
.brand-ads-section {
    margin-top: 12px;
}

.section-header {
    margin-bottom: 12px;
}

.section-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
}

.brand-ads-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.brand-ad-card {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
    overflow: hidden;
}

.brand-ad-image {
    position: relative;
    width: 100%;
    height: 150px;
    background: linear-gradient(135deg, #1a1a1a, #2a2a2a);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.brand-logo-overlay {
    font-size: 60px;
    opacity: 0.3;
    filter: blur(2px);
}

.brand-ad-content {
    padding: 12px;
}

.brand-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.brand-info {
    display: flex;
    align-items: center;
    gap: 6px;
}

.brand-icon {
    font-size: 20px;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 215, 0, 0.2);
    border-radius: 6px;
}

.brand-name {
    font-size: 15px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
}

.experience-btn {
    background: #FFD700;
    color: #000000;
    border: none;
    padding: 6px 14px;
    border-radius: 16px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.2s;
}

.experience-btn:active {
    opacity: 0.8;
}

.brand-stats {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.stat-bar {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px;
    border-radius: 6px;
    font-size: 13px;
}

.stat-deposit {
    background: rgba(76, 175, 80, 0.2);
    color: #4caf50;
}

.stat-participants {
    background: rgba(156, 39, 176, 0.2);
    color: #9c27b0;
}

.stat-commission {
    background: rgba(255, 152, 0, 0.2);
    color: #ff9800;
}

.stat-watch {
    background: rgba(76, 175, 80, 0.2);
    color: #4caf50;
    cursor: pointer;
}

.stat-watch:active {
    opacity: 0.7;
}

/* Brand stats specific overrides */
.stat-bar .stat-icon {
    font-size: 18px;
    width: 24px;
    text-align: center;
    margin-bottom: 0;
    color: inherit;
}

.stat-bar .stat-label {
    flex: 1;
    font-weight: 500;
    font-size: 13px;
}

.stat-bar .stat-value {
    font-weight: 700;
    font-size: 16px;
    color: inherit;
    margin-bottom: 0;
}

/* 实时奖励区域 */
.rewards-section {
    background: var(--tg-theme-secondary-bg-color);
    border: 1px solid var(--tg-theme-card-border);
    border-radius: 16px;
    padding: 16px;
    margin-top: 16px;
}

.rewards-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.rewards-title {
    font-size: 16px;
    font-weight: 700;
    color: #FFD700;
}

.rewards-subtitle {
    font-size: 12px;
    color: var(--tg-theme-hint-color);
}

.rewards-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-height: 160px;
    overflow: hidden;
    touch-action: none;
    pointer-events: none;
    user-select: none;
}

/* 奖励列表内容容器 - 用于 CSS 动画滚动 */
.rewards-list-inner {
    display: flex;
    flex-direction: column;
    gap: 10px;
    animation: rewards-scroll 40s linear infinite;
    will-change: transform;
}

@keyframes rewards-scroll {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-50%);
    }
}

.rewards-list::-webkit-scrollbar {
    width: 4px;
}

.rewards-list::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.1);
    border-radius: 2px;
}

.rewards-list::-webkit-scrollbar-thumb {
    background: rgba(255, 215, 0, 0.3);
    border-radius: 2px;
}

.rewards-list::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 215, 0, 0.5);
}

.reward-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 8px;
}

.reward-avatar {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: var(--tg-theme-button-color, #3390ec);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    flex-shrink: 0;
}

.reward-content {
    flex: 1;
}

.reward-name {
    font-size: 11px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 1px;
}

.reward-action {
    font-size: 9px;
    color: var(--tg-theme-hint-color, #999999);
}

.reward-amount {
    font-size: 12px;
    font-weight: 600;
    color: #4ade80;
}

/* 设置列表 */
.settings-list {
    margin-top: 20px;
}

.setting-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #f0f0f0);
    border-radius: 12px;
    margin-bottom: 12px;
    cursor: pointer;
    transition: opacity 0.2s;
}

.setting-item:active {
    opacity: 0.7;
}

.setting-item span:first-child {
    font-size: 16px;
    color: var(--tg-theme-text-color, #000000);
}

.setting-item span:last-child {
    font-size: 20px;
    color: var(--tg-theme-hint-color, #999999);
}

/* 底部导航栏 */
.bottom-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--tg-theme-bg-color); /* 统一深色 */
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    display: flex;
    justify-content: space-around;
    align-items: center;
    height: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));
    padding: 12px 0 calc(12px + env(safe-area-inset-bottom)); /* 兼容 iPhone 底部安全区 */
    z-index: 1000;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.4);
}

.nav-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 4px;
    background: none;
    border: none;
    cursor: pointer;
    transition: all 0.2s;
    color: var(--tg-theme-hint-color);
}

.nav-item.active {
    color: #FFD700;
    transform: translateY(-2px);
}

.nav-icon {
    font-size: 24px; /* 图标加大 */
    font-weight: 700;
    line-height: 1;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    margin-bottom: 2px;
}

.nav-label {
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.5px;
}

/* 订阅页面 */
.subscribe-main {
    /* 底部导航栏为 fixed，给内容区补足底部空间，避免卡片被“埋”在导航栏下面 */
    padding: 16px 12px calc(16px + var(--bottom-nav-height) + env(safe-area-inset-bottom));
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* BLACK GOLD MEMBERSHIP 横幅 */
.membership-banner {
    background: linear-gradient(135deg, #1a1a2e, #16213e);
    border-radius: 16px;
    padding: 24px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    overflow: hidden;
}

.membership-banner::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -20%;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(255, 215, 0, 0.1) 0%, transparent 70%);
    border-radius: 50%;
}

.banner-content {
    flex: 1;
    z-index: 1;
}

.banner-title {
    font-size: 28px;
    font-weight: 800;
    color: #FFD700;
    margin-bottom: 8px;
    letter-spacing: 1px;
}

.banner-subtitle {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.9);
}

.banner-icon {
    font-size: 48px;
    z-index: 1;
    filter: drop-shadow(0 0 10px rgba(255, 215, 0, 0.5));
}

/* 黑金专属特权 */
.privileges-section {
    margin-top: 8px;
}

.section-title {
    font-size: 18px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 6px;
}

.section-desc {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
    margin-bottom: 16px;
}

.privileges-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.privilege-card {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
    padding: 16px;
    text-align: center;
}

.privilege-icon {
    font-size: 32px;
    margin-bottom: 12px;
    display: block;
}

.privilege-name {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 6px;
}

.privilege-desc {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
    line-height: 1.4;
}

/* 会员等级选择 */
.membership-levels-section {
    margin-top: 8px;
}

/* VIP 卡片 */
.vip-card {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 16px;
    padding: 20px;
    margin-bottom: 16px;
}

.vip-1 {
    background: linear-gradient(135deg, #8b4513, #654321);
}

.vip-2 {
    background: linear-gradient(135deg, #2d5016, #1a3009);
}

.vip-3 {
    background: linear-gradient(135deg, #1a237e, #0d47a1);
}

.vip-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
}

.vip-icon {
    width: 48px;
    height: 48px;
    background: #FFD700;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 700;
    color: #000000;
    flex-shrink: 0;
}

.vip-info {
    flex: 1;
}

.vip-name {
    font-size: 24px;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 4px;
}

.vip-level {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.8);
}

.vip-pricing {
    text-align: right;
}

.vip-price {
    font-size: 28px;
    font-weight: 700;
    color: #FFD700;
    margin-bottom: 4px;
}

.vip-discount {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.discount-badge {
    background: #ff4444;
    color: #ffffff;
    font-size: 12px;
    padding: 2px 8px;
    border-radius: 12px;
    font-weight: 600;
}

.original-price {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.6);
    text-decoration: line-through;
}

.vip-benefits {
    margin-bottom: 20px;
}

.benefit-item {
    font-size: 14px;
    color: #ffffff;
    margin-bottom: 8px;
    padding-left: 20px;
    position: relative;
    line-height: 1.5;
}

.benefit-item::before {
    content: '•';
    position: absolute;
    left: 0;
    color: #FFD700;
    font-size: 18px;
}

.vip-subscribe-btn {
    width: 100%;
    padding: 16px;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.vip-1-btn {
    background: #FFD700;
    color: #000000;
}

.vip-2-btn {
    background: #20b2aa;
    color: #ffffff;
}

.vip-3-btn {
    background: #4169e1;
    color: #ffffff;
}

.vip-subscribe-btn:active {
    opacity: 0.8;
}

/* 已订阅状态的按钮 */
.vip-subscribe-btn.vip-subscribed {
    background: #4a4a4a;
    color: #888888;
    cursor: not-allowed;
    opacity: 0.7;
}

.vip-subscribe-btn.vip-subscribed:active {
    opacity: 0.7;
}

/* 已拥有的VIP卡片 */
.vip-card.vip-owned {
    opacity: 0.85;
    position: relative;
}

.vip-card.vip-owned::after {
    content: '✓';
    position: absolute;
    top: 12px;
    right: 12px;
    width: 28px;
    height: 28px;
    background: #4CAF50;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: bold;
}

/* 订阅说明 */
.subscribe-note {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
    padding: 20px;
    margin-top: 8px;
}

.note-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 12px;
}

.note-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.note-item {
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
    line-height: 1.5;
}

/* 我的页面 */
.profile-main {
    padding: 16px 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-bottom: 100px;
}

/* 用户信息卡片 */
/* 我的页面新布局 */
.profile-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px 12px;
    text-align: center;
}

.profile-avatar-large {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #FFD700;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 50px;
    margin-bottom: 16px;
    border: 3px solid #FFD700;
}

.profile-name {
    font-size: 20px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 8px;
}

.profile-id {
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 16px;
}

.recharge-btn {
    background: linear-gradient(135deg, #FFD700, #FFA500);
    border: none;
    border-radius: 12px;
    padding: 12px 32px;
    color: #000000;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.2s;
}

.recharge-btn:active {
    opacity: 0.8;
}

/* 收益卡片区域 */
.earnings-cards {
    display: flex;
    gap: 12px;
    padding: 0 12px;
    margin-bottom: 16px;
}

.earnings-card {
    flex: 1;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border: 2px solid #FFD700;
    border-radius: 12px;
    padding: 16px;
    position: relative;
}

.card-header {
    display: flex;
    justify-content: space-between;
    align-items: center; /* 改为 center 垂直居中 */
    margin-bottom: 12px;
}

.card-actions {
    display: flex;
    gap: 8px;
}

.card-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    background: #FFD700;
    color: #000000;
}

.withdraw-btn-small {
    background: linear-gradient(135deg, #FFD700 0%, #FFA500 50%, #FFD700 100%);
    background-size: 200% 100%;
    border: none;
    border-radius: 10px;
    padding: 10px 20px;
    color: #000000;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    animation: goldShimmerSmall 2s ease-in-out infinite;
    box-shadow: 0 3px 12px rgba(255, 215, 0, 0.4);
}

/* 金色波纹闪烁动画 - 小按钮版 */
@keyframes goldShimmerSmall {
    0% {
        background-position: 200% 0;
        box-shadow: 0 3px 12px rgba(255, 215, 0, 0.4);
    }
    50% {
        background-position: 0% 0;
        box-shadow: 0 3px 18px rgba(255, 215, 0, 0.6);
    }
    100% {
        background-position: -200% 0;
        box-shadow: 0 3px 12px rgba(255, 215, 0, 0.4);
    }
}

/* 光波扫过效果 - 小按钮版 */
.withdraw-btn-small::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.4),
        transparent
    );
    animation: waveShineSmall 2s ease-in-out infinite;
}

@keyframes waveShineSmall {
    0% {
        left: -100%;
    }
    50%, 100% {
        left: 100%;
    }
}

.withdraw-btn-small:active {
    opacity: 0.9;
    transform: scale(0.96);
}

.card-title {
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 8px;
}

.card-amount {
    font-size: 24px;
    font-weight: 700;
    color: #FFD700;
    margin-bottom: 8px;
}

.card-expiry {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

/* 实时提现动态卡片 */
.withdrawal-status-card {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
    padding: 16px;
    margin: 0 12px 16px;
}

.status-header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 16px;
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
}

.status-title,
.status-auto-refresh {
    font-weight: 600;
}

.withdrawal-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-height: 200px;
    overflow: hidden;
    touch-action: none;
    pointer-events: none;
    user-select: none;
}

/* 提现列表内容容器 - 用于 CSS 动画滚动 */
.withdrawal-list-inner {
    display: flex;
    flex-direction: column;
    gap: 12px;
    animation: withdrawal-scroll 90s linear infinite;
    will-change: transform;
}

@keyframes withdrawal-scroll {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-50%);
    }
}

.withdrawal-item {
    display: flex;
    align-items: center;
    gap: 12px;
}

.withdrawal-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #FFD700;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.withdrawal-content {
    flex: 1;
}

.withdrawal-user {
    font-size: 14px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 2px;
}

.withdrawal-action {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.withdrawal-right {
    text-align: right;
}

.withdrawal-amount {
    font-size: 14px;
    font-weight: 600;
    color: #FFD700;
    margin-bottom: 2px;
}

.withdrawal-time {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.user-profile-card {
    background: linear-gradient(135deg, #2a2a2a, #1a1a1a);
    border-radius: 16px;
    padding: 20px;
    display: flex;
    gap: 16px;
    margin-bottom: 8px;
}

.user-avatar-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.user-avatar {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff6b9d, #4ecdc4);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 40px;
    border: 3px solid #FFD700;
    flex-shrink: 0;
}

.user-badge {
    background: #FFD700;
    color: #000000;
    font-size: 12px;
    padding: 4px 12px;
    border-radius: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.user-info-section {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
}

.user-name {
    font-size: 20px;
    font-weight: 700;
    color: #ffffff;
}

.user-id {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
}

.user-balance {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.balance-label {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
}

.balance-amount {
    font-size: 24px;
    font-weight: 700;
    color: #FFD700;
}

/* 最近活动 */
.recent-activity {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.activity-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
}

.activity-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--tg-theme-button-color, #3390ec);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}

.activity-content {
    flex: 1;
}

.activity-title {
    font-size: 14px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 4px;
}

.activity-user {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
    margin-bottom: 2px;
}

.activity-amount {
    font-size: 16px;
    font-weight: 600;
    color: #FFD700;
}

.activity-time {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

/* 我的工具 */
.tools-section {
    margin-top: 8px;
    padding: 0 12px;
}

.tools-title {
    font-size: 18px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.tools-close {
    font-size: 24px;
    color: #ff4444;
    cursor: pointer;
    line-height: 1;
}

.tools-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.tool-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
    cursor: pointer;
    transition: opacity 0.2s;
}

.tool-item:active {
    opacity: 0.7;
}

.tool-icon {
    font-size: 24px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.tool-content {
    flex: 1;
}

.tool-name {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 4px;
}

.tool-desc {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

/* 支付页面 */
#page-payment {
    padding: 0;
    padding-bottom: 100px;
}

.payment-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 12px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.back-btn {
    background: none;
    border: none;
    color: #FFD700;
    font-size: 24px;
    cursor: pointer;
    padding: 4px;
    line-height: 1;
}

.payment-title-section {
    flex: 1;
}

.payment-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 4px;
}

.payment-subtitle {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.payment-icon {
    font-size: 24px;
    color: #FFD700;
}

.payment-main {
    padding: 20px 16px calc(20px + var(--action-footer-height));
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* 金额输入 */
.amount-input-section {
    margin-bottom: 8px;
}

.amount-input {
    width: 100%;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    color: var(--tg-theme-text-color, #ffffff);
    font-size: 16px;
    text-align: center;
}

/* 金额选择 */
.amount-selection {
    margin-top: 8px;
}

.section-label {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 12px;
}

.amount-buttons {
    display: flex;
    gap: 12px;
}

.amount-btn {
    flex: 1;
    padding: 14px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border: 2px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    color: var(--tg-theme-text-color, #ffffff);
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.amount-btn.active {
    background: #FFD700;
    color: #000000;
    border-color: #FFD700;
}

.amount-btn:active {
    opacity: 0.8;
}

/* 支付方式 */
.payment-methods {
    margin-top: 8px;
}

.methods-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.method-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border: 2px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s;
}

.method-item.active {
    border-color: #FFD700;
    background: rgba(255, 215, 0, 0.1);
}

.method-icon {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
    flex-shrink: 0;
}

.method-icon.bitcoin {
    background: #f7931a;
    color: #ffffff;
}

.method-icon.ethereum {
    background: #627eea;
    color: #ffffff;
}

.method-icon.paypal {
    background: #0070ba;
    color: #ffffff;
}

.method-icon.usdt {
    background: #26a17b;
    color: #ffffff;
}

/* USDT 在支付方式列表里使用的是 usdt-trc20 / usdt-erc20 类名，补齐绿色背景 */
.method-icon.usdt-trc20,
.method-icon.usdt-erc20 {
    background: #26a17b;
    color: #ffffff;
}

/* 内联 SVG 图标统一尺寸（例如 PYUSD） */
.method-icon svg {
    width: 26px;
    height: 26px;
    display: block;
}

.method-icon.pyusd {
    background: transparent;
    padding: 0;
}

/* PYUSD 图标视觉上更“细”，单独放大一点以匹配其它币种 */
.method-icon.pyusd svg {
    width: 38px;
    height: 38px;
}

.method-icon.stars {
    background: #FFD700;
    color: #000000;
}

.method-info {
    flex: 1;
}

.method-name {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 4px;
}

.method-desc {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.method-radio {
    flex-shrink: 0;
}

.method-radio input[type="radio"] {
    width: 20px;
    height: 20px;
    accent-color: #FFD700;
    cursor: pointer;
}

/* 支付按钮 */
.payment-footer {
    position: fixed;
    bottom: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));
    left: 0;
    right: 0;
    padding: 16px;
    background: var(--tg-theme-bg-color, #1a1a1a);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    z-index: 999;
}

.pay-now-btn {
    width: 100%;
    padding: 16px;
    background: #FFD700;
    color: #000000;
    border: none;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: opacity 0.2s;
}

.pay-now-btn:active {
    opacity: 0.8;
}

.pay-icon {
    font-size: 20px;
}

/* 工具页面通用样式 */
.page-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 12px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.page-title-section {
    flex: 1;
}

.page-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 4px;
}

.page-subtitle {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.page-icon {
    font-size: 24px;
    color: #FFD700;
}

/* 充值记录页 */
.record-main {
    padding: 16px 12px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.record-summary {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    padding: 16px;
    border-radius: 12px;
}

.summary-item {
    text-align: center;
}

.summary-label {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
    margin-bottom: 8px;
}

.summary-value {
    font-size: 18px;
    font-weight: 700;
    color: #FFD700;
}

.filter-buttons {
    display: flex;
    gap: 8px;
    overflow-x: auto;
}

.filter-btn {
    padding: 8px 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    color: var(--tg-theme-text-color, #ffffff);
    font-size: 14px;
    white-space: nowrap;
    cursor: pointer;
}

.filter-btn.active {
    background: #FFD700;
    color: #000000;
    border-color: #FFD700;
}

.record-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.record-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
}

.record-icon {
    font-size: 24px;
    width: 40px;
    text-align: center;
}

.record-content {
    flex: 1;
}

.record-name {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 4px;
}

.record-time {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
    margin-bottom: 4px;
}

.record-order {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.record-amount {
    text-align: right;
}

.amount {
    font-size: 16px;
    font-weight: 700;
    color: #FFD700;
    margin-bottom: 4px;
}

.status {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 12px;
    display: inline-block;
}

.status.processing {
    background: rgba(255, 152, 0, 0.2);
    color: #ff9800;
}

.status.success {
    background: rgba(76, 175, 80, 0.2);
    color: #4caf50;
}

.status.failed {
    background: rgba(244, 67, 54, 0.2);
    color: #f44336;
}

.no-more {
    text-align: center;
    color: var(--tg-theme-hint-color, #999999);
    font-size: 14px;
    padding: 20px;
}

/* 收益中心页 */
.earnings-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 12px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.earnings-title-section {
    flex: 1;
}

.earnings-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 4px;
}

.earnings-subtitle {
    font-size: 12px;
    color: var(--tg-theme-text-color, #ffffff);
}

.refresh-btn {
    background: #FFD700;
    border: none;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.earnings-main {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.earnings-summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.earnings-label {
    font-size: 16px;
    font-weight: 600;
    color: #FFD700;
}

.earnings-count {
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
}

.earnings-records-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.earnings-record-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
}

.earnings-record-icon {
    width: 48px;
    height: 48px;
    background: #FFD700;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
}

.earnings-icon-inner {
    width: 24px;
    height: 24px;
    background: #FFD700;
    border: 2px solid rgba(0, 0, 0, 0.2);
    border-radius: 50%;
}

.earnings-record-content {
    flex: 1;
    min-width: 0;
}

.earnings-record-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 6px;
}

.earnings-record-tag {
    display: inline-block;
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
    padding: 2px 8px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 12px;
    margin-bottom: 8px;
}

.earnings-record-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.earnings-record-number {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.earnings-record-time {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.earnings-record-amount {
    text-align: right;
    flex-shrink: 0;
}

.earnings-amount-value {
    font-size: 18px;
    font-weight: 700;
    color: #4caf50;
    margin-bottom: 8px;
}

.earnings-status {
    display: inline-block;
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 12px;
    font-weight: 500;
}

.earnings-status.credited {
    background: rgba(76, 175, 80, 0.2);
    color: #4caf50;
    border: 1px solid rgba(76, 175, 80, 0.3);
}

/* 提现记录页 */
.empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    text-align: center;
}

.empty-icon {
    font-size: 64px;
    margin-bottom: 16px;
    opacity: 0.5;
}

.empty-text {
    font-size: 16px;
    color: var(--tg-theme-hint-color, #999999);
}

/* 收款方式页 */
.payment-methods-main {
    padding: 16px 12px;
}

.saved-accounts-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    color: var(--tg-theme-text-color, #ffffff);
    font-size: 16px;
    font-weight: 600;
}

.add-account-btn {
    background: #FFD700;
    color: #000000;
    border: none;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

.empty-accounts {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    padding: 40px 20px;
    border-radius: 12px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.empty-accounts .empty-icon {
    font-size: 48px;
    margin-bottom: 8px;
}

.empty-accounts .empty-text {
    font-size: 16px;
    color: var(--tg-theme-text-color, #ffffff);
    font-weight: 600;
}

.empty-desc {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
    margin-bottom: 8px;
}

.add-account-btn-large {
    background: #FFD700;
    color: #000000;
    border: none;
    padding: 12px 24px;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    margin-top: 8px;
}

/* 银行账户卡片样式 */
.bank-accounts-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 16px;
}

.bank-account-card {
    background: linear-gradient(135deg, rgba(255, 215, 0, 0.15) 0%, rgba(255, 215, 0, 0.05) 100%);
    border: 1px solid rgba(255, 215, 0, 0.3);
    border-radius: 16px;
    padding: 20px;
    transition: all 0.3s ease;
    position: relative;
    overflow: visible;
}

.bank-account-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #FFD700 0%, rgba(255, 215, 0, 0.5) 100%);
}

.bank-account-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(255, 215, 0, 0.2);
    border-color: rgba(255, 215, 0, 0.5);
}

.account-card-header {
    display: flex;
    align-items: center;
    gap: 16px;
}

.account-icon-wrapper {
    width: 56px;
    height: 56px;
    background: linear-gradient(135deg, #FFD700 0%, #FFA500 100%);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(255, 215, 0, 0.3);
}

.account-icon {
    font-size: 28px;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

.account-main-info {
    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
}

.account-name-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    flex-wrap: wrap;
}

.account-bank-name {
    font-size: 18px;
    font-weight: 700;
    color: var(--tg-theme-text-color, #ffffff);
    letter-spacing: 0.3px;
}

.default-badge {
    background: linear-gradient(135deg, #FFD700 0%, #FFA500 100%);
    color: #000000;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 6px rgba(255, 215, 0, 0.4);
}

.account-number-display {
    font-size: 20px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    letter-spacing: 2px;
    margin-bottom: 6px;
    font-family: 'Courier New', monospace;
}

.account-country-badge {
    display: inline-block;
    background: rgba(255, 255, 255, 0.1);
    color: var(--tg-theme-hint-color, #999999);
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 8px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* 账户详情按钮 - 右下角小长方形 */
.account-detail-btn {
    position: absolute;
    right: 12px;
    bottom: 12px;
    background: rgba(255, 255, 255, 0.15);
    border: none;
    border-radius: 6px;
    padding: 6px 10px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 14px;
    color: #ffffff;
}

.account-detail-btn:hover {
    background: rgba(255, 215, 0, 0.3);
}

/* 账户详情弹窗 */
.account-detail-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    animation: fadeIn 0.2s ease;
}

.account-detail-modal.closing {
    animation: fadeOut 0.2s ease forwards;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeOut {
    from { opacity: 1; }
    to { opacity: 0; }
}

.account-detail-content {
    background: var(--tg-theme-bg-color, #1a1a1a);
    border: 1px solid rgba(255, 215, 0, 0.3);
    border-radius: 16px;
    width: 90%;
    max-width: 360px;
    overflow: hidden;
    animation: slideUp 0.2s ease;
}

.account-detail-modal.closing .account-detail-content {
    animation: slideDown 0.2s ease forwards;
}

@keyframes slideUp {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

@keyframes slideDown {
    from { transform: translateY(0); opacity: 1; }
    to { transform: translateY(20px); opacity: 0; }
}

.account-detail-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    background: linear-gradient(135deg, rgba(255, 215, 0, 0.2) 0%, rgba(255, 215, 0, 0.05) 100%);
    border-bottom: 1px solid rgba(255, 215, 0, 0.2);
}

.account-detail-header h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
}

.account-detail-close {
    background: transparent;
    border: none;
    color: var(--tg-theme-hint-color, #999);
    font-size: 20px;
    cursor: pointer;
    padding: 4px 8px;
    transition: color 0.2s ease;
}

.account-detail-close:hover {
    color: var(--tg-theme-text-color, #ffffff);
}

.account-detail-body {
    padding: 20px;
}

.account-detail-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.account-detail-row:last-child {
    border-bottom: none;
}

.detail-label {
    color: var(--tg-theme-hint-color, #999);
    font-size: 14px;
    flex-shrink: 0;
}

.detail-value {
    color: var(--tg-theme-text-color, #ffffff);
    font-size: 14px;
    font-weight: 500;
    text-align: right;
    word-break: break-all;
    max-width: 60%;
}

.detail-value.card-number-value {
    font-family: 'Monaco', 'Consolas', monospace;
    letter-spacing: 1px;
}

.account-card-actions {
    display: flex;
    gap: 12px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.account-action-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 16px;
    border: none;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.account-action-btn.edit-btn {
    background: rgba(255, 215, 0, 0.2);
    color: #FFD700;
    border: 1px solid rgba(255, 215, 0, 0.3);
}

.account-action-btn.edit-btn:active {
    background: rgba(255, 215, 0, 0.3);
    transform: scale(0.98);
}

.account-action-btn.delete-btn {
    background: rgba(255, 59, 48, 0.15);
    color: #ff3b30;
    border: 1px solid rgba(255, 59, 48, 0.3);
}

.account-action-btn.delete-btn:active {
    background: rgba(255, 59, 48, 0.25);
    transform: scale(0.98);
}

.action-icon {
    font-size: 16px;
}

.action-text {
    font-size: 14px;
}

/* 新增收款账户页 */
#page-add-account {
    padding: 12px;
    padding-bottom: 100px;
}

#page-add-account .add-account-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 12px;
    background: #FFD700;

    border-bottom: none;
    border-radius: 16px !important;
    margin: 0;
    overflow: hidden; /* 强制裁剪圆角 */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); /* 加一点阴影增加立体感 */
}

.add-account-header .back-btn {
    color: #000000;
    font-size: 24px;
    font-weight: 600;
    flex-shrink: 0;
}

.add-account-title-section {
    flex: 1;
}

.add-account-title {
    font-size: 20px;
    font-weight: 700;
    color: #000000;
    margin-bottom: 4px;
}

.add-account-subtitle {
    font-size: 12px;
    color: rgba(0, 0, 0, 0.8);
}

.menu-btn {
    background: none;
    border: none;
    color: #000000;
    font-size: 20px;
    cursor: pointer;
    padding: 4px;
    line-height: 1;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    flex-shrink: 0;
}

.add-account-main {
    padding: 20px 12px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.form-section {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.form-label {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 8px;
}

.bank-select-field {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
    cursor: pointer;
    transition: opacity 0.2s;
}

.bank-select-field:active {
    opacity: 0.7;
}

.bank-select-content {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}

.bank-icon {
    font-size: 24px;
    color: #FFD700;
    width: 32px;
    text-align: center;
}

.bank-select-text {
    flex: 1;
}

.bank-placeholder {
    font-size: 16px;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 4px;
}

.bank-country {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.select-arrow {
    font-size: 24px;
    color: var(--tg-theme-hint-color, #999999);
    flex-shrink: 0;
}

.form-input-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.input-label {
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
    font-weight: 500;
}

.form-input {
    width: 100%;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    color: var(--tg-theme-text-color, #ffffff);
    font-size: 16px;
    outline: none;
}

.form-input::placeholder {
    color: var(--tg-theme-hint-color, #999999);
}

/* 银行卡 BIN 查询结果显示 */
.bank-lookup-result {
    min-height: 24px;
    padding: 8px 0;
    font-size: 14px;
    color: #4CAF50;
    font-weight: 500;
}

.bank-lookup-result:empty {
    display: none;
}

.bank-lookup-result.loading {
    color: var(--tg-theme-hint-color, #999999);
}

.bank-lookup-result.error {
    color: #FF9800;
}

/* 默认账户复选框样式 */
.default-checkbox-group {
    margin-top: 8px;
}

.checkbox-label-large {
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    font-size: 18px;
    font-weight: 500;
    color: var(--tg-theme-text-color, #ffffff);
}

.checkbox-large {
    width: 24px;
    height: 24px;
    accent-color: #4FC3F7;
    cursor: pointer;
}

.add-account-footer {
    position: fixed;
    bottom: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));
    left: 0;
    right: 0;
    padding: 16px;
    background: var(--tg-theme-bg-color, #1a1a1a);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    z-index: 999;
}

.save-account-btn {
    width: 100%;
    padding: 16px;
    background: #FFD700;
    color: #000000;
    border: none;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: opacity 0.2s;
}

.save-account-btn:active {
    opacity: 0.8;
}

.save-icon {
    font-size: 20px;
    font-weight: 700;
}

/* 上传支付凭证页面 */
#page-upload-voucher {
    padding: 0;
    padding-bottom: 100px;
}

.voucher-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 12px;
    background: linear-gradient(135deg, #1a237e, #0d47a1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.voucher-title-section {
    flex: 1;
}

.voucher-title {
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 4px;
}

.voucher-subtitle {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.8);
}

.voucher-icon {
    font-size: 24px;
    color: #FFD700;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 215, 0, 0.2);
    border-radius: 50%;
    flex-shrink: 0;
}

.voucher-main {
    /* 预留固定的 voucher-footer 空间，避免最后一节被按钮“埋” */
    padding: 20px 16px calc(20px + var(--action-footer-height));
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.voucher-section {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
    padding: 16px;
}

.voucher-section-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 12px;
}

.voucher-amount {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.voucher-amount-crypto {
    font-size: 24px;
    font-weight: 700;
    color: #4caf50;
}

.voucher-amount-usd {
    font-size: 16px;
    color: var(--tg-theme-text-color, #ffffff);
}

.exchange-rates {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.rate-item {
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
    line-height: 1.5;
}

.recipient-info {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
}

.upload-area {
    border: 2px dashed rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    padding: 40px 20px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s;
    background: rgba(255, 255, 255, 0.05);
}

.upload-area:active {
    opacity: 0.7;
}

.upload-icon {
    font-size: 48px;
    color: #FFD700;
    margin-bottom: 12px;
    font-weight: 300;
}

.upload-text {
    font-size: 16px;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 8px;
    font-weight: 500;
}

.upload-hint {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.upload-preview {
    max-width: 100%;
    max-height: 200px;
    border-radius: 8px;
    margin-bottom: 12px;
}

.upload-note {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.note-icon {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    flex-shrink: 0;
}

.voucher-footer {
    position: fixed;
    bottom: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));
    left: 0;
    right: 0;
    padding: 16px;
    background: var(--tg-theme-bg-color, #1a1a1a);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    z-index: 999;
}

.submit-voucher-btn {
    width: 100%;
    padding: 16px;
    background: linear-gradient(135deg, #8b6914, #d4af37);
    color: #ffffff;
    border: none;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: opacity 0.2s;
}

.submit-voucher-btn:active {
    opacity: 0.8;
}

/* Telegram Stars 支付页面 */
#page-telegram-stars {
    padding: 0;
    padding-bottom: 100px;
}

.stars-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.stars-title {
    flex: 1;
    font-size: 18px;
    font-weight: 700;
    color: var(--tg-theme-text-color, #ffffff);
}

.stars-main {
    padding: 20px 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.stars-icon-wrapper {
    display: flex;
    justify-content: center;
    margin: 20px 0;
}

.stars-icon {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: rgba(255, 215, 0, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 64px;
    filter: drop-shadow(0 0 20px rgba(255, 215, 0, 0.5));
}

.stars-intro {
    text-align: center;
    margin-bottom: 8px;
}

.stars-intro-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 8px;
}

.stars-intro-desc {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
}

.stars-purchase-card,
.stars-exchange-card,
.stars-steps-card,
.stars-reminder-card {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
    padding: 20px;
    position: relative;
}

.stars-amount {
    font-size: 32px;
    font-weight: 700;
    color: #FFD700;
    margin-bottom: 8px;
}

.stars-price {
    font-size: 20px;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 8px;
}

.stars-region {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
}

.stars-vip-badge {
    position: absolute;
    top: 16px;
    right: 16px;
    background: rgba(0, 0, 0, 0.5);
    color: #ffffff;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}

.card-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 12px;
}

.exchange-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.exchange-line {
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
}

.steps-desc {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
    margin-bottom: 16px;
}

.steps-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.step-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.step-number {
    width: 32px;
    height: 32px;
    background: #FFD700;
    color: #000000;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    flex-shrink: 0;
}

.step-text {
    flex: 1;
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
    line-height: 1.5;
    padding-top: 6px;
}

.reminder-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.reminder-item {
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
    line-height: 1.5;
}

.stars-footer {
    position: fixed;
    bottom: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));
    left: 0;
    right: 0;
    padding: 16px;
    background: var(--tg-theme-bg-color, #1a1a1a);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    z-index: 999;
}

.stars-pay-btn {
    width: 100%;
    padding: 16px;
    background: #FFD700;
    color: #000000;
    border: none;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: opacity 0.2s;
}

.stars-pay-btn:active {
    opacity: 0.8;
}

/* 视频页容器去除内边距，但保留一点边距让视频不完全贴边 */
body:has(#page-brand-video.active) .container {
    padding: 12px !important;
}

/* 视频页本身去除内边距 */
#page-brand-video {
    padding: 0;
    margin: 0 -12px; /* 抵消容器的部分 padding */
    width: calc(100% + 24px); /* 宽度补回 */
    background: var(--tg-theme-bg-color, #1a1a1a);
    min-height: 100vh;
    display: none;
    flex-direction: column;
    position: relative;
    z-index: 1;
}

/* 防止声音按钮文字换行 */
.video-control-btn span {
    white-space: nowrap;
}

#page-brand-video.active {
    display: flex;
}

.video-player-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    background: var(--tg-theme-bg-color, #1a1a1a);
}

.video-brand-info {
    flex: 1;
}

.video-brand-name {
    font-size: 20px;
    font-weight: 700;
    color: #FFD700;
    margin-bottom: 4px;
}

.video-brand-level {
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
}

.video-close-btn {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.5);
    border: none;
    color: #ffffff;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.video-player-container {
    position: relative;
    width: 100%;
    background: #000000;
    aspect-ratio: 16 / 9;
    overflow: hidden !important; /* 强制裁剪，防止溢出 */
    border-radius: 12px; /* 加个圆角美观一点 */
    z-index: 1; /* 确保层级 */
}

/* YouTube 预览图：在 iframe 真正加载前显示，避免出现红色播放按钮/Logo */
.youtube-poster {
    position: absolute;
    inset: 0;
    background: #000;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 40;
}

/* 当视频加载后，永久隐藏预览图（不会因为暂停而重新显示） */
.video-player-container.video-loaded .youtube-poster {
    display: none !important;
}

/* 视频播放器容器已在上面定义，这里只添加 iframe 放大样式 */

/* 透明覆盖层，屏蔽点击视频本身（只允许按钮控制） */
.video-player-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: transparent;
    z-index: 50;
    pointer-events: auto;
    cursor: default;
}

/* 自定义播放按钮覆盖层 - 遮挡 YouTube 红色播放按钮 */
.youtube-play-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100px;
    height: 100px;
    background: rgba(0, 0, 0, 0.85);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 60;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);
}

.youtube-play-overlay::before {
    content: '';
    width: 0;
    height: 0;
    border-left: 35px solid #FFD700;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    margin-left: 8px;
}

.youtube-play-overlay:hover {
    background: rgba(0, 0, 0, 0.95);
    transform: translate(-50%, -50%) scale(1.1);
}

/* 视频播放时隐藏覆盖层 */
.video-player-container.playing .youtube-play-overlay {
    display: none;
}

.brand-video-player {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* YouTube iframe 样式 - 放大裁剪隐藏品牌元素 */
.video-player-container .youtube-iframe {
    position: absolute !important;
    width: 100% !important;
    height: 100% !important;
    top: 0 !important;
    left: 0 !important;
    border: none !important;
    /* 放大并向右下偏移，让右下角超出容器被裁掉 */
    /* scale: 放大倍数 | translate(右移%, 下移%) */
    /* 当前值：放大18%，右移7%，下移6% - 刚好裁掉logo且损失较少内容 */
    transform: scale(1.21) translate(8%, 8%) !important;
    transform-origin: center center !important;
    /* 优化渲染，防止画面冻结 */
    will-change: transform, opacity;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.video-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 200; /* 确保在放大的 iframe 之上 */
}

.video-countdown {
    position: absolute;
    top: 16px;
    right: 16px;
    background: rgba(0, 0, 0, 0.7);
    color: #ffffff;
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 14px;
    z-index: 201; /* 确保可见 */
    font-weight: 600;
}

.video-progress-bar {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: rgba(255, 255, 255, 0.2);
}

.video-progress-fill {
    height: 100%;
    background: #3390ec;
    width: 0%;
    transition: width 0.1s;
}

.video-controls {
    display: flex;
    gap: 12px;
    padding: 16px;
    background: var(--tg-theme-bg-color, #1a1a1a);
}

.video-control-btn {
    flex: 1;
    padding: 14px;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.video-control-btn:active {
    opacity: 0.8;
}

.play-btn {
    background: #4ecdc4;
    color: #ffffff;
}

.sound-btn {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    color: var(--tg-theme-text-color, #ffffff);
}

.video-reward-info {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    margin: 0 16px;
    border-radius: 12px;
}

.reward-icon {
    font-size: 24px;
}

.reward-text {
    flex: 1;
    font-size: 16px;
    color: var(--tg-theme-text-color, #ffffff);
}

.reward-amount {
    font-size: 18px;
    font-weight: 700;
    color: #FFD700;
}

.video-tip {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 16px;
    color: var(--tg-theme-hint-color, #999999);
    font-size: 14px;
}

.tip-icon {
    font-size: 18px;
    color: #FFD700;
}

/* 广告提现页面 */
#page-ad-withdrawal {
    padding: 0;
    padding-bottom: 100px;
}

.withdrawal-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 12px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.withdrawal-title-section {
    flex: 1;
}

.withdrawal-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 4px;
}

.withdrawal-subtitle {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.withdrawal-main {
    padding: 20px 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* 可提现余额卡片 */
.withdrawal-balance-card {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border: 2px solid #FFD700;
    border-radius: 16px;
    padding: 20px;
    display: flex;
    gap: 16px;
    position: relative;
}

.balance-card-icon {
    width: 40px;
    height: 40px;
    background: #FFD700;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 700;
    color: #000000;
    flex-shrink: 0;
}

.balance-card-content {
    flex: 1;
}

.balance-card-title {
    font-size: 18px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 8px;
}

.balance-label {
    font-size: 14px;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 8px;
}

.balance-amount-large {
    font-size: 32px;
    font-weight: 700;
    color: #FFD700;
    margin-bottom: 8px;
}

.balance-expiry {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

/* 收款账户部分 */
.withdrawal-account-section {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border: 2px solid #FFD700;
    border-radius: 16px;
    padding: 20px;
}

.account-section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.account-section-title {
    font-size: 18px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
}

.add-account-link {
    background: none;
    border: none;
    color: var(--tg-theme-text-color, #ffffff);
    font-size: 14px;
    cursor: pointer;
    padding: 4px 8px;
}

.account-select-field {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px;
    background: rgba(255, 215, 0, 0.1);
    border-radius: 12px;
    cursor: pointer;
    transition: opacity 0.2s;
    margin-bottom: 12px;
}

.account-select-field:active {
    opacity: 0.7;
}

.account-select-content {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}

.account-icon {
    font-size: 24px;
    color: #FFD700;
    width: 32px;
    text-align: center;
}

.account-select-text {
    font-size: 16px;
    color: var(--tg-theme-text-color, #ffffff);
    font-weight: 500;
}

.select-arrow {
    font-size: 24px;
    color: var(--tg-theme-text-color, #ffffff);
    flex-shrink: 0;
}

.account-hint {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

/* 提现金额部分 */
.withdrawal-amount-section {
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border: 2px solid #FFD700;
    border-radius: 16px;
    padding: 20px;
}

.amount-section-title {
    font-size: 18px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 16px;
}

.withdrawal-amount-wrapper {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.withdrawal-amount-input {
    width: 100%;
    background: #ffffff;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    padding: 18px 20px;
    font-size: 28px;
    font-weight: 600;
    color: #000000;
    text-align: center;
    outline: none;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: textfield;
}

.withdrawal-amount-input::-webkit-outer-spin-button,
.withdrawal-amount-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.withdrawal-amount-input:focus {
    border-color: #FFD700;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(255, 215, 0, 0.2), 0 4px 12px rgba(0, 0, 0, 0.2);
    transform: translateY(-2px);
}

.withdrawal-amount-input::placeholder {
    color: #999999;
    font-weight: 400;
    opacity: 0.7;
}

.withdrawal-amount-display {
    font-size: 36px;
    font-weight: 700;
    color: var(--tg-theme-text-color, #ffffff);
    text-align: center;
    padding: 12px 0;
    letter-spacing: 2px;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.withdrawal-amount-hint {
    margin-top: 12px;
    padding: 8px 12px;
    background: rgba(255, 68, 68, 0.1);
    border-radius: 8px;
    border-left: 3px solid #ff4444;
    font-size: 12px;
    line-height: 1.4;
}

.withdrawal-footer {
    position: fixed;
    bottom: calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));
    left: 0;
    right: 0;
    padding: 16px;
    background: var(--tg-theme-bg-color, #1a1a1a);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    z-index: 999;
}

.submit-withdrawal-btn {
    width: 100%;
    padding: 16px;
    background: linear-gradient(135deg, #FFD700 0%, #FFA500 50%, #FFD700 100%);
    background-size: 200% 100%;
    color: #000000;
    border: none;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    animation: goldShimmer 2s ease-in-out infinite;
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.4);
}

/* 金色波纹闪烁动画 */
@keyframes goldShimmer {
    0% {
        background-position: 200% 0;
        box-shadow: 0 4px 15px rgba(255, 215, 0, 0.4);
    }
    50% {
        background-position: 0% 0;
        box-shadow: 0 4px 25px rgba(255, 215, 0, 0.6);
    }
    100% {
        background-position: -200% 0;
        box-shadow: 0 4px 15px rgba(255, 215, 0, 0.4);
    }
}

/* 光波扫过效果 */
.submit-withdrawal-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.4),
        transparent
    );
    animation: waveShine 2s ease-in-out infinite;
}

@keyframes waveShine {
    0% {
        left: -100%;
    }
    50%, 100% {
        left: 100%;
    }
}

.submit-withdrawal-btn:active {
    opacity: 0.9;
    transform: scale(0.98);
}

/* 提现按钮金额显示 */
.submit-withdrawal-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.withdrawal-btn-amount {
    font-size: 22px;
    font-weight: 800;
    color: #000000;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.3);
}

/* 国家/地区页 */
.country-main {
    padding: 16px 12px;
}

.country-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    color: var(--tg-theme-text-color, #ffffff);
    font-size: 16px;
    font-weight: 600;
}

.country-count {
    background: #FFD700;
    color: #000000;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}

.search-box {
    display: flex;
    align-items: center;
    gap: 12px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    padding: 12px 16px;
    border-radius: 12px;
    margin-bottom: 16px;
}

.search-icon {
    font-size: 20px;
    color: var(--tg-theme-hint-color, #999999);
}

.search-input {
    flex: 1;
    background: none;
    border: none;
    color: var(--tg-theme-text-color, #ffffff);
    font-size: 14px;
    outline: none;
}

.search-input::placeholder {
    color: var(--tg-theme-hint-color, #999999);
}

.country-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.country-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
    cursor: pointer;
    transition: opacity 0.2s;
}

.country-item:active {
    opacity: 0.7;
}

.country-flag {
    font-size: 24px;
    width: 32px;
    text-align: center;
}

.country-name {
    flex: 1;
    font-size: 16px;
    color: var(--tg-theme-text-color, #ffffff);
}

.country-code {
    font-size: 14px;
    color: var(--tg-theme-hint-color, #999999);
}

/* 语言设置页 */
.language-main {
    padding: 16px 12px;
}

.language-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    color: var(--tg-theme-text-color, #ffffff);
    font-size: 16px;
    font-weight: 600;
}

.language-count {
    background: #FFD700;
    color: #000000;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}

.language-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.language-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s;
}

.language-item.active {
    border: 2px solid #FFD700;
    background: rgba(255, 215, 0, 0.1);
}

.language-flag {
    font-size: 24px;
    width: 32px;
    text-align: center;
}

.language-name {
    flex: 1;
    font-size: 16px;
    color: var(--tg-theme-text-color, #ffffff);
}

.language-check {
    color: #FFD700;
    font-size: 20px;
    font-weight: 700;
}

/* 客服中心页 */
.service-main {
    padding: 16px 12px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.service-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: var(--tg-theme-secondary-bg-color, #2a2a2a);
    border-radius: 12px;
}

.service-icon {
    font-size: 24px;
    width: 40px;
    text-align: center;
}

.service-content {
    flex: 1;
}

.service-name {
    font-size: 16px;
    font-weight: 600;
    color: var(--tg-theme-text-color, #ffffff);
    margin-bottom: 4px;
}

.service-desc {
    font-size: 12px;
    color: var(--tg-theme-hint-color, #999999);
}

.service-open-btn {
    background: var(--tg-theme-button-color, #3390ec);
    color: #ffffff;
    border: none;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

/* 深色模式 - 已强制启用，不再跟随系统 */
/* 暗黑主题样式（始终生效） */
body {
    background: #1a1a1a !important;
    color: #ffffff !important;
}

.bottom-nav {
    background: #1a1a1a !important;
    border-top-color: rgba(255, 255, 255, 0.1) !important;
}

/* 首页视频部分 - 全屏显示 */
#page-home.active {
    padding: 0 !important;
    margin: 0 !important;
    height: calc(100vh - (var(--bottom-nav-height) + env(safe-area-inset-bottom))) !important; /* 减去底部导航栏高度 + 安全区 */
    overflow: hidden !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    z-index: 1;
    display: block !important;
}

/* 确保其他页面正常显示，不被首页覆盖 */
.page.active:not(#page-home) {
    display: block !important;
    position: relative !important;
    z-index: 2 !important;
}

/* 当首页激活时，容器也要全屏 */
#page-home.active ~ *,
body:has(#page-home.active) .container,
.container:has(#page-home.active) {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.home-video-section {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    height: 100% !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    background: #000;
}

.home-video-container {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: #000;
    z-index: 1;
}

.home-youtube-iframe {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: none;
    overflow: hidden;
}

/* 隐藏首页 YouTube 播放器中的品牌链接 */
.home-video-container {
    position: relative;
    overflow: hidden;
}

/* 禁止点击首页 YouTube 右下角 logo（透明覆盖层，不遮挡视觉） */
.home-video-container::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 120px;
    height: 50px;
    background: transparent;
    z-index: 100;
    pointer-events: auto; /* 拦截点击 */
    cursor: default;
}

/* 首页视频播放器（普通视频） */
.home-video-player {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}

.home-video-loading {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: rgba(0, 0, 0, 0.9);
    z-index: 10;
}

.loading-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid rgba(255, 255, 255, 0.3);
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

/* 首页视频播放器（普通视频） */
.home-video-player {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

