/* ========================================
   GammaForce Matrix - 移动端响应式样式
   统一的移动端UI适配
   ======================================== */

/* ==================== 
   通用移动端基础样式 
   ==================== */

/* 横屏导航栏默认隐藏 */
.landscape-nav {
    display: none !important;
}

/* 横屏菜单相关元素默认隐藏 */
.landscape-menu,
.landscape-menu-overlay,
.landscape-hamburger {
    display: none !important;
}

/* 横屏Replay控制栏默认隐藏 */
.landscape-replay-bar {
    display: none !important;
}

/* 防止宽度溢出 - 全局限制 */
@media (max-width: 768px) {
    html {
        overflow-x: hidden !important;
        width: 100% !important;
    }
    
    body {
        overflow-x: hidden !important;
        width: 100% !important;
        max-width: 100vw !important;
        min-width: 0 !important;
    }
    
    /* 所有元素防止溢出 - 更强力的约束 */
    *, *::before, *::after {
        max-width: 100vw !important;
        box-sizing: border-box !important;
        min-width: 0 !important;
    }
    
    /* 图片和媒体自适应 */
    img, video, iframe, svg {
        max-width: 100% !important;
        height: auto !important;
    }
    
    /* Canvas 特别处理 */
    canvas {
        max-width: 100% !important;
        width: 100% !important;
    }
    
    /* 预格式化文本允许换行 */
    pre, code {
        white-space: pre-wrap;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }
    
    /* 表格容器滚动 */
    table {
        display: block;
        max-width: 100%;
        overflow-x: auto;
    }
}

/* 确保触摸友好的最小点击区域 */
@media (max-width: 768px) {
    button, a, input, select, .clickable {
        min-height: 44px;
    }
}

/* 移动端滚动优化 */
@supports (-webkit-overflow-scrolling: touch) {
    body {
        -webkit-overflow-scrolling: touch;
    }
}

/* ==================== 
   landing.html 移动端适配
   ==================== */

/* 移动端汉堡菜单样式 */
.mobile-menu-btn {
    display: none;
    flex-direction: column;
    justify-content: space-around;
    width: 30px;
    height: 24px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 1001;
}

.mobile-menu-btn span {
    width: 100%;
    height: 3px;
    background: #fff;
    border-radius: 2px;
    transition: all 0.3s ease;
}

.mobile-menu-btn.active span:nth-child(1) {
    transform: rotate(45deg) translate(6px, 6px);
}

.mobile-menu-btn.active span:nth-child(2) {
    opacity: 0;
}

.mobile-menu-btn.active span:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px);
}

.mobile-nav-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: rgba(10, 10, 15, 0.98);
    backdrop-filter: blur(20px);
    padding: 20px;
    flex-direction: column;
    gap: 15px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

.mobile-nav-menu.active {
    display: flex;
}

.mobile-nav-menu a {
    color: #a0a0b0;
    text-decoration: none;
    font-size: 1rem;
    padding: 10px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    transition: color 0.3s ease;
}

.mobile-nav-menu a:hover {
    color: #fff;
}

.mobile-nav-divider {
    height: 1px;
    background: rgba(255, 255, 255, 0.1);
    margin: 10px 0;
}

.mobile-nav-login {
    color: #8b5cf6 !important;
}

.mobile-nav-start {
    background: linear-gradient(135deg, #8b5cf6, #3b82f6);
    color: #fff !important;
    border-radius: 8px;
    padding: 12px 20px !important;
    text-align: center;
    border: none !important;
}

/* 平板适配 */
@media (max-width: 1024px) {
    body.landing-page .hero-content {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 40px;
    }
    
    body.landing-page .hero-text {
        max-width: 100%;
    }
    
    body.landing-page .hero-stats {
        justify-content: center;
    }
    
    body.landing-page .hero-image {
        order: -1;
    }
    
    body.landing-page .hero-screenshot {
        max-width: 100%;
        height: auto;
    }
    
    body.landing-page .features-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    body.landing-page .showcase-item {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    body.landing-page .showcase-item:nth-child(even) {
        direction: ltr;
    }
    
    body.landing-page .showcase-content {
        max-width: 100%;
    }
    
    body.landing-page .pricing-grid {
        grid-template-columns: repeat(2, 1fr);
        max-width: 700px;
    }
    
    body.landing-page .pricing-card.featured {
        transform: none;
    }
    
    body.landing-page .footer-content {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* 手机适配 */
@media (max-width: 768px) {
    /* Landing页面全局宽度控制 */
    body.landing-page {
        overflow-x: hidden;
        width: 100%;
        max-width: 100vw;
    }
    
    body.landing-page * {
        max-width: 100%;
    }
    
    /* 导航栏 */
    body.landing-page .navbar {
        padding: 12px 15px;
        flex-wrap: wrap;
        gap: 10px;
        width: 100%;
        max-width: 100%;
    }
    
    body.landing-page .nav-links {
        display: none;
    }
    
    body.landing-page .nav-right {
        display: none;
    }
    
    body.landing-page .mobile-menu-btn {
        display: flex;
    }
    
    body.landing-page .btn-login,
    body.landing-page .btn-start {
        padding: 8px 16px;
        font-size: 0.85rem;
    }
    
    body.landing-page .logo {
        font-size: 1.2rem;
    }
    
    body.landing-page .logo-icon {
        width: 32px;
        height: 32px;
        font-size: 1rem;
    }
    
    /* 英雄区域 */
    body.landing-page .hero {
        padding: 80px 15px 50px;
        min-height: auto;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.landing-page .hero-content {
        width: 100%;
        max-width: 100%;
    }
    
    body.landing-page .hero h1 {
        font-size: 1.8rem;
        line-height: 1.3;
        word-wrap: break-word;
    }
    
    body.landing-page .hero-subtitle {
        font-size: 1rem;
        line-height: 1.6;
    }
    
    body.landing-page .hero-buttons {
        flex-direction: column;
        gap: 10px;
        width: 100%;
    }
    
    body.landing-page .btn-primary,
    body.landing-page .btn-secondary {
        width: 100%;
        justify-content: center;
        padding: 14px 24px;
    }
    
    body.landing-page .hero-stats {
        flex-direction: column;
        gap: 20px;
        align-items: center;
        width: 100%;
    }
    
    body.landing-page .stat-item {
        text-align: center;
    }
    
    body.landing-page .stat-value {
        font-size: 1.5rem;
    }
    
    /* 标的区域 */
    body.landing-page .symbols-section {
        padding: 40px 15px;
        width: 100%;
        overflow: hidden;
    }
    
    body.landing-page .symbols-scroll {
        flex-direction: column;
        align-items: center;
        gap: 15px !important;
        animation: none !important;
        width: 100%;
    }
    
    body.landing-page .symbol-item {
        margin: 0 !important;
        transform: scale(1) !important;
    }
    
    /* 功能区域 */
    body.landing-page .features {
        padding: 60px 15px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.landing-page .section-header {
        width: 100%;
        max-width: 100%;
        padding: 0 10px;
    }
    
    body.landing-page .features-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        width: 100%;
        max-width: 100%;
    }
    
    body.landing-page .feature-card {
        padding: 25px 20px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.landing-page .section-header h2 {
        font-size: 1.6rem;
        word-wrap: break-word;
    }
    
    body.landing-page .section-header p {
        font-size: 0.95rem;
        word-wrap: break-word;
    }
    
    /* 功能展示 */
    body.landing-page .feature-showcase {
        padding: 60px 15px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.landing-page .showcase-item {
        margin-bottom: 60px;
        width: 100%;
        max-width: 100%;
    }
    
    body.landing-page .showcase-content {
        width: 100%;
        max-width: 100%;
    }
    
    body.landing-page .showcase-content h3 {
        font-size: 1.5rem;
        word-wrap: break-word;
    }
    
    body.landing-page .showcase-screenshot {
        max-width: 100%;
        height: auto;
        display: block;
    }
    
    /* 定价区域 */
    body.landing-page .pricing {
        padding: 60px 15px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.landing-page .pricing-grid {
        grid-template-columns: 1fr;
        max-width: 100%;
        width: 100%;
    }
    
    body.landing-page .pricing-card {
        padding: 25px 20px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.landing-page .pricing-amount {
        font-size: 2.5rem;
    }
    
    /* CTA区域 */
    body.landing-page .cta {
        padding: 60px 15px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.landing-page .cta h2 {
        font-size: 1.8rem;
        word-wrap: break-word;
    }
    
    body.landing-page .cta p {
        font-size: 1rem;
        word-wrap: break-word;
    }
    
    /* 页脚 */
    body.landing-page .footer {
        padding: 40px 15px 20px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.landing-page .footer-content {
        grid-template-columns: 1fr;
        gap: 30px;
        width: 100%;
    }
    
    body.landing-page .footer-brand {
        max-width: 100%;
        text-align: center;
    }
    
    body.landing-page .footer-column {
        text-align: center;
        width: 100%;
    }
    
    body.landing-page .footer-bottom {
        flex-direction: column;
        gap: 15px;
        text-align: center;
        width: 100%;
    }
    
    body.landing-page .risk-warning {
        font-size: 0.75rem;
        padding: 15px;
        width: 100%;
        max-width: 100%;
        word-wrap: break-word;
    }
}

/* 小手机适配 */
@media (max-width: 375px) {
    body.landing-page .hero h1 {
        font-size: 1.5rem;
    }
    
    body.landing-page .pricing-amount {
        font-size: 2rem;
    }
}


/* ==================== 
   index.html (Dashboard) 移动端适配
   ==================== */

/* 平板适配 */
@media (max-width: 1200px) {
    body.dashboard-page .container {
        grid-template-columns: 1fr;
        padding: 10px;
    }
    
    body.dashboard-page .kline-section {
        grid-row: auto;
    }
    
    body.dashboard-page .right-panel {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
    
    body.dashboard-page .calculator-container {
        grid-template-columns: 1fr;
    }
}

/* ==================== 
   移动端汉堡菜单样式
   ==================== */

/* 汉堡菜单按钮 - 默认隐藏 */
.mobile-menu-btn {
    display: none;
}

/* 移动端菜单和遮罩 - 默认隐藏 */
.mobile-menu-overlay,
.mobile-menu {
    display: none;
}

@media (max-width: 768px) {
    /* 汉堡菜单按钮 - 固定在右上角 */
    .mobile-menu-btn {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 4px;
        width: 40px;
        height: 40px;
        background: rgba(22, 33, 62, 0.95);
        border: 1px solid #444;
        border-radius: 8px;
        cursor: pointer;
        padding: 10px;
        position: fixed !important;
        top: 10px;
        right: 10px;
        z-index: 10000;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
    }
    
    .mobile-menu-btn span {
        display: block;
        width: 18px;
        height: 2px;
        background: var(--text-primary, #e8e8e8);
        border-radius: 1px;
        transition: all 0.3s ease;
    }
    
    .mobile-menu-btn.open span:nth-child(1) {
        transform: rotate(45deg) translate(5px, 5px);
    }
    
    .mobile-menu-btn.open span:nth-child(2) {
        opacity: 0;
    }
    
    .mobile-menu-btn.open span:nth-child(3) {
        transform: rotate(-45deg) translate(5px, -5px);
    }
    
    /* 遮罩层 */
    .mobile-menu-overlay {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0, 0, 0, 0.6);
        z-index: 9998;
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, visibility 0.3s ease;
    }
    
    .mobile-menu-overlay.open {
        opacity: 1;
        visibility: visible;
    }
    
    /* 侧边菜单 */
    .mobile-menu {
        display: flex;
        flex-direction: column;
        position: fixed;
        top: 0;
        right: 0;
        width: 280px;
        max-width: 85vw;
        height: 100vh;
        background: linear-gradient(180deg, #1a1a2e 0%, #16213e 100%);
        border-left: 1px solid #333;
        z-index: 9999;
        transform: translateX(100%);
        transition: transform 0.3s ease;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    .mobile-menu.open {
        transform: translateX(0);
    }
    
    /* 菜单头部 */
    .mobile-menu-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 15px 20px;
        border-bottom: 1px solid #333;
        background: rgba(0, 0, 0, 0.2);
    }
    
    .mobile-menu-title {
        font-size: 16px;
        font-weight: 600;
        color: var(--text-primary, #e8e8e8);
    }
    
    .mobile-menu-close {
        width: 32px;
        height: 32px;
        background: transparent;
        border: 1px solid #444;
        border-radius: 6px;
        color: var(--text-secondary, #a0a0a0);
        font-size: 18px;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    /* 菜单分区 */
    .mobile-menu-section {
        padding: 15px 20px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    }
    
    .mobile-menu-section-title {
        font-size: 11px;
        color: var(--text-muted, #6b7280);
        text-transform: uppercase;
        letter-spacing: 1px;
        margin-bottom: 12px;
    }
    
    /* 用户信息 */
    .mobile-menu-user-info {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
    }
    
    .mobile-user-name {
        font-size: 14px;
        font-weight: 500;
        color: var(--text-primary, #e8e8e8);
    }
    
    .mobile-user-badge {
        font-size: 10px;
        padding: 2px 8px;
        border-radius: 4px;
        background: var(--accent-purple, #9b59b6);
        color: white;
    }
    
    .mobile-user-days {
        font-size: 11px;
        padding: 3px 8px;
        border-radius: 4px;
        background: var(--accent-blue, #3742fa);
        color: white;
    }
    
    /* 菜单项 */
    .mobile-menu-item {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 12px 0;
        color: var(--text-primary, #e8e8e8);
        text-decoration: none;
        font-size: 14px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.05);
        cursor: pointer;
    }
    
    .mobile-menu-item:last-child {
        border-bottom: none;
    }
    
    .mobile-menu-item:active {
        background: rgba(255, 255, 255, 0.05);
        margin: 0 -20px;
        padding: 12px 20px;
    }
    
    .mobile-menu-icon {
        font-size: 18px;
        width: 24px;
        text-align: center;
    }
    
    /* 功能开关 */
    .mobile-menu-toggles {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }
    
    .mobile-toggle-item {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 12px;
        background: rgba(255, 255, 255, 0.05);
        border-radius: 8px;
        font-size: 13px;
        color: var(--text-primary, #e8e8e8);
        cursor: pointer;
    }
    
    .mobile-toggle-item input[type="checkbox"] {
        width: 18px;
        height: 18px;
        accent-color: var(--accent-green, #00d26a);
    }
    
    /* 语言切换 */
    .mobile-lang-switch {
        flex-wrap: wrap;
    }
    
    .mobile-lang-switcher {
        width: 100%;
        margin-top: 10px;
    }
    
    /* 退出按钮 */
    .mobile-menu-footer {
        margin-top: auto;
        border-top: 1px solid #333;
        border-bottom: none;
    }
    
    .mobile-logout-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: 100%;
        padding: 12px;
        background: transparent;
        border: 1px solid var(--accent-red, #ff4757);
        border-radius: 8px;
        color: var(--accent-red, #ff4757);
        font-size: 14px;
        cursor: pointer;
        transition: all 0.2s;
    }
    
    .mobile-logout-btn:active {
        background: rgba(255, 71, 87, 0.1);
    }
    
    /* 隐藏桌面端的用户信息和部分状态栏元素 */
    body.dashboard-page .header .user-info-container,
    body.dashboard-page .header .market-status,
    body.dashboard-page .header #timezone-select,
    body.dashboard-page .header #current-time {
        display: none !important;
    }
    
    /* 简化header布局 */
    body.dashboard-page .header {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        padding: 8px 10px !important;
        padding-right: 55px !important; /* 为固定的汉堡按钮留空间 */
        gap: 4px;
        flex-wrap: nowrap;
    }
    
    body.dashboard-page .header h1 {
        flex: 0 0 auto !important;
        font-size: 11px !important;
        margin: 0 !important;
        margin-right: 4px !important;
    }
    
    body.dashboard-page .header .status {
        flex: 1;
        display: flex !important;
        justify-content: flex-start;
        align-items: center;
        gap: 2px;
        overflow: visible !important;
        flex-wrap: nowrap !important;
    }
    
    /* SPY/SPX切换按钮统一大小 */
    body.dashboard-page .header .symbol-switch {
        flex-shrink: 0;
        display: flex !important;
        gap: 2px !important;
        margin-right: 2px !important;
    }
    
    body.dashboard-page .header .symbol-switch .symbol-tab {
        padding: 3px 6px !important;
        font-size: 10px !important;
        min-width: 28px;
        text-align: center;
    }
    
    /* 功能开关统一大小 - 包括语言按钮 */
    body.dashboard-page .header .text-toggle-group {
        flex-shrink: 0;
        display: flex !important;
        gap: 2px !important;
        flex-wrap: nowrap !important;
    }
    
    body.dashboard-page .header .text-toggle {
        font-size: 10px !important;
        padding: 3px 6px !important;
        min-width: 28px;
        text-align: center;
        white-space: nowrap;
    }
    
    /* K线图表标题在移动端隐藏 */
    body.dashboard-page .kline-section .card-title .title-icon,
    body.dashboard-page .kline-section .card-title .title-text {
        display: none !important;
    }

    body.dashboard-page .kline-section .card-title {
        justify-content: flex-end !important;
    }

    /* Top Delta 显示优化 */
    body.dashboard-page #top-gex-changes {
        font-size: 10px !important;
        gap: 4px !important;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
}

/* 手机适配 */
@media (max-width: 768px) {
    /* 顶栏 - 移动端不固定，改为相对定位 */
    body.dashboard-page {
        padding-top: 0 !important; /* 取消顶部留空 */
    }
    
    body.dashboard-page .fixed-top-bar {
        position: relative !important; /* 取消固定定位 */
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 100%;
        max-width: 100vw;
        overflow-x: hidden;
    }
    
    /* Symbol tabs */
    body.dashboard-page .symbol-tabs {
        padding: 8px 10px;
        gap: 5px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        flex-wrap: nowrap;
        width: 100%;
        max-width: 100%;
    }
    
    body.dashboard-page .symbol-tab {
        padding: 6px 12px;
        font-size: 12px;
        white-space: nowrap;
        flex-shrink: 0;
    }
    
    /* 浮动信息栏 - 移动端也改为相对定位 */
    body.dashboard-page .floating-info-bar {
        position: relative !important;
        top: auto !important;
        padding: 5px 10px;
        font-size: 10px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        width: 100%;
        max-width: 100vw;
        flex-wrap: nowrap;
    }
    
    body.dashboard-page .floating-info-bar.with-replay {
        top: auto !important;
    }
    
    body.dashboard-page .floating-info-item {
        flex-shrink: 0;
        white-space: nowrap;
    }
    
    body.dashboard-page .floating-info-item .label {
        font-size: 9px;
    }
    
    body.dashboard-page .floating-info-item .value {
        font-size: 11px;
    }
    
    /* 主容器布局 */
    body.dashboard-page .container {
        display: block;
        width: 100%;
        max-width: 100%;
        padding: 10px;
        overflow-x: hidden;
    }
    
    /* 卡片通用样式 */
    body.dashboard-page .card {
        padding: 12px;
        border-radius: 8px;
        width: 100%;
        max-width: 100%;
        margin-bottom: 10px;
        overflow: hidden;
    }
    
    body.dashboard-page .card-title {
        font-size: 14px;
        margin-bottom: 10px;
    }
    
    body.dashboard-page .card-title .title-icon {
        width: 24px;
        height: 24px;
        font-size: 14px;
    }
    
    /* Key Levels 网格 */
    body.dashboard-page .key-levels {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px;
        width: 100%;
    }
    
    body.dashboard-page .key-level {
        padding: 8px;
        height: auto;
        min-height: 65px;
    }
    
    body.dashboard-page .key-level .label {
        font-size: 10px;
    }
    
    body.dashboard-page .key-level .value {
        font-size: 16px;
    }
    
    body.dashboard-page .key-level.total-gex .value {
        font-size: 18px;
    }
    
    body.dashboard-page .key-level .change-value {
        font-size: 10px;
    }
    
    /* VIX 显示 */
    body.dashboard-page .vix-value {
        font-size: 20px;
    }
    
    body.dashboard-page .vix-changes {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 6px;
        width: 100%;
    }
    
    body.dashboard-page .vix-change-item {
        padding: 6px;
    }
    
    body.dashboard-page .vix-change-label {
        font-size: 8px;
    }
    
    body.dashboard-page .vix-change-value {
        font-size: 11px;
    }
    
    /* K线图区域 */
    body.dashboard-page .kline-section {
        grid-row: auto;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.dashboard-page .kline-chart-container {
        min-height: 300px;
        width: 100%;
        max-width: 100%;
        overflow: visible;
    }
    
    /* 隐藏K线图拖拽调整高度手柄 - 移动端不需要 */
    body.dashboard-page .kline-resize-handle {
        display: none !important;
    }
    
    /* 右侧面板 - 转为单列 */
    body.dashboard-page .right-panel {
        display: flex;
        flex-direction: column;
        gap: 10px;
        width: 100%;
        max-width: 100%;
    }
    
    /* GEX 图表 */
    body.dashboard-page .gex-chart-container {
        height: 250px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    /* Summary Grid */
    body.dashboard-page .summary-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
        width: 100%;
    }
    
    body.dashboard-page .summary-item {
        padding: 8px;
        overflow: hidden;
    }
    
    body.dashboard-page .summary-item .label {
        font-size: 9px;
    }
    
    body.dashboard-page .summary-item .value {
        font-size: 14px;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    
    /* 期权计算器 */
    body.dashboard-page .calculator-container {
        display: block;
        width: 100%;
        max-width: 100%;
    }
    
    body.dashboard-page .calc-config {
        gap: 10px;
        width: 100%;
    }
    
    body.dashboard-page .calc-row {
        width: 100%;
    }
    
    body.dashboard-page .calc-row label {
        font-size: 11px;
    }
    
    body.dashboard-page .calc-select,
    body.dashboard-page .calc-input {
        padding: 10px 12px;
        font-size: 14px;
        width: 100%;
        max-width: 100%;
    }
    
    body.dashboard-page #price-type-selector {
        gap: 4px;
        flex-wrap: wrap;
    }
    
    body.dashboard-page .price-type-btn {
        font-size: 10px;
        padding: 4px 8px;
    }
    
    body.dashboard-page .legs-config {
        max-height: 250px;
        padding: 10px;
        width: 100%;
        overflow-x: hidden;
        overflow-y: auto;
    }
    
    body.dashboard-page .leg-item {
        display: grid;
        grid-template-columns: 60px 1fr;
        gap: 6px;
        width: 100%;
    }
    
    body.dashboard-page .leg-label {
        font-size: 11px;
    }
    
    body.dashboard-page .leg-select {
        padding: 5px;
        font-size: 11px;
        width: 100%;
        max-width: 100%;
    }
    
    /* 计算结果 */
    body.dashboard-page .calc-results {
        width: 100%;
        max-width: 100%;
    }
    
    body.dashboard-page .result-metrics {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
        width: 100%;
    }
    
    body.dashboard-page .result-item {
        padding: 10px;
        overflow: hidden;
    }
    
    body.dashboard-page .result-label {
        font-size: 10px;
    }
    
    body.dashboard-page .result-value {
        font-size: 14px;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    
    /* Greeks 网格 */
    body.dashboard-page .result-greeks {
        width: 100%;
    }
    
    body.dashboard-page .greeks-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
        width: 100%;
    }
    
    body.dashboard-page .greek-label {
        font-size: 10px;
    }
    
    body.dashboard-page .greek-value {
        font-size: 13px;
    }
    
    /* PnL 图表 */
    body.dashboard-page .pnl-chart-container {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.dashboard-page .pnl-chart-wrapper {
        height: 180px;
        width: 100%;
    }
    
    /* 计算器滑动条修复 - Time和IV - 减小粗细高度 */
    body.dashboard-page .slider-row {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        height: 36px !important;
        min-height: 36px !important;
        max-height: 40px !important;
        padding: 6px 0 !important;
        width: 100% !important;
        gap: 8px !important;
        margin-bottom: 6px !important;
    }
    
    body.dashboard-page .slider-row label {
        font-size: 10px !important;
        min-width: 95px !important;
        width: 95px !important;
        flex: 0 0 95px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    
    body.dashboard-page .slider-row input[type="range"] {
        flex: 1 1 auto !important;
        min-width: 50px !important;
        width: auto !important;
        height: 6px !important;
        max-height: 6px !important;
        margin: 0 !important;
        padding: 0 !important;
        -webkit-appearance: none !important;
        appearance: none !important;
        background: linear-gradient(to right, #666, #888) !important;
        border-radius: 3px !important;
        outline: none !important;
        /* 增加触摸区域 */
        touch-action: none !important;
        cursor: pointer !important;
    }
    
    body.dashboard-page .slider-row input[type="range"]::-webkit-slider-runnable-track {
        height: 6px !important;
        border-radius: 3px !important;
        cursor: pointer !important;
    }
    
    body.dashboard-page .slider-row input[type="range"]::-webkit-slider-thumb {
        -webkit-appearance: none !important;
        appearance: none !important;
        width: 20px !important;
        height: 20px !important;
        border-radius: 50% !important;
        background: #fff !important;
        cursor: pointer !important;
        margin-top: -7px !important;
        box-shadow: 0 2px 6px rgba(0,0,0,0.4) !important;
        border: 2px solid #ddd !important;
        /* 增大点击区域 */
        touch-action: none !important;
    }
    
    body.dashboard-page .slider-row input[type="range"]::-moz-range-track {
        height: 6px !important;
        border-radius: 3px !important;
        cursor: pointer !important;
    }
    
    body.dashboard-page .slider-row input[type="range"]::-moz-range-thumb {
        width: 20px !important;
        height: 20px !important;
        border-radius: 50% !important;
        background: #fff !important;
        cursor: pointer !important;
        border: 2px solid #ddd !important;
        box-shadow: 0 2px 6px rgba(0,0,0,0.4) !important;
    }
    
    body.dashboard-page .slider-value {
        font-size: 10px !important;
        min-width: 40px !important;
        width: 40px !important;
        flex: 0 0 40px !important;
        text-align: right !important;
    }
    
    /* Time和IV滑动条特定样式 - 保持渐变色 */
    body.dashboard-page #time-slider {
        background: linear-gradient(to right, #ff4757, #ffc107, #00d26a) !important;
    }
    
    body.dashboard-page #iv-slider {
        background: linear-gradient(to right, #3498db, #9b59b6, #e74c3c) !important;
    }
    
    body.dashboard-page .pnl-sliders-container {
        padding: 8px 0 !important;
    }
    
    body.dashboard-page .pnl-key-metrics {
        flex-wrap: wrap;
        gap: 8px;
        width: 100%;
    }
    
    body.dashboard-page .pnl-metric {
        flex: 1 1 45%;
    }
    
    body.dashboard-page .pnl-metric-label {
        font-size: 9px;
    }
    
    body.dashboard-page .pnl-metric-value {
        font-size: 12px;
    }
    
    /* Leg Volatility */
    body.dashboard-page .leg-vol-metrics {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 6px;
        width: 100%;
    }
    
    body.dashboard-page .leg-vol-metric {
        padding: 5px;
    }
    
    body.dashboard-page .leg-vol-metric-label {
        font-size: 9px;
    }
    
    body.dashboard-page .leg-vol-metric-value {
        font-size: 12px;
    }
    
    /* 最后更新时间 */
    body.dashboard-page .last-update {
        font-size: 11px;
        padding: 3px 8px;
    }
    
    body.dashboard-page .last-update .time-ago {
        display: block;
        margin-left: 0;
        margin-top: 2px;
    }
    
    /* Full width section */
    body.dashboard-page .full-width {
        grid-column: 1;
    }
    
    /* ===== 移动端竖屏各模块宽度修复 ===== */
    
    /* 通用容器宽度约束 - 更强力的规则 */
    body.dashboard-page .container {
        width: calc(100vw - 20px) !important;
        max-width: calc(100vw - 20px) !important;
        margin: 0 auto !important;
        padding: 10px !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }
    
    body.dashboard-page .card,
    body.dashboard-page .full-width {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }
    
    /* 右侧面板强制单列 */
    body.dashboard-page .right-panel {
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
    }
    
    /* K线图区域 - 强制宽度限制 */
    body.dashboard-page .kline-section {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }
    
    /* K线图标题栏竖屏优化 */
    body.dashboard-page .kline-section .card-title {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 8px !important;
    }
    
    /* Top Delta - 竖屏显示占满整行，正负值分为2行 */
    body.dashboard-page #top-gex-changes {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        margin-left: 0 !important;
        gap: 4px !important;
        font-size: 9px !important;
        align-items: stretch !important;
    }
    
    /* 隐藏Top Delta标签和分隔线 */
    body.dashboard-page #top-gex-changes > span:first-child,
    body.dashboard-page #top-gex-changes > span[style*="color: #666"] {
        display: none !important;
    }
    
    /* 正值和负值各占一行 */
    body.dashboard-page #top-gex-changes > div {
        width: 100% !important;
        flex: none !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 3px !important;
        padding: 3px 6px !important;
        justify-content: space-between !important;
    }
    
    body.dashboard-page #top-gex-changes .top-gex-item {
        min-width: 0 !important;
        flex: 1 1 18% !important;
        font-size: 8px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        text-align: center !important;
    }
    
    body.dashboard-page .kline-chart-container {
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
        height: 280px !important;
        min-height: 280px !important;
    }
    
    body.dashboard-page #kline-chart {
        width: 100% !important;
        max-width: 100% !important;
        height: 100% !important;
    }
    
    /* OHLCV 数据显示 - 竖屏不重叠，更小字体更紧凑 */
    body.dashboard-page #kline-ohlcv {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 2px 6px !important;
        font-size: 8px !important;
        padding: 3px 5px !important;
        width: 100% !important;
        line-height: 1.3 !important;
    }
    
    body.dashboard-page #kline-ohlcv > span {
        min-width: 0 !important;
        white-space: nowrap !important;
        font-size: 8px !important;
        flex: 0 0 auto !important;
    }
    
    body.dashboard-page #kline-ohlcv > span > span {
        font-size: 8px !important;
    }
    
    /* 时间显示 */
    body.dashboard-page #kline-ohlcv > span:last-child {
        width: 100% !important;
        text-align: right !important;
        margin-left: 0 !important;
        font-size: 7px !important;
        margin-top: 2px !important;
    }
    
    /* GEX Strike 图表 - 强制宽度限制 */
    body.dashboard-page .gex-chart-container {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
        height: 220px !important;
    }
    
    body.dashboard-page #gex-strike-chart {
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Key Levels 区域 - 强制为1列，覆盖内联样式 */
    body.dashboard-page .key-levels,
    body.dashboard-page .key-levels[style] {
        width: 100% !important;
        max-width: 100% !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 3px !important;
        overflow: hidden !important;
    }
    
    body.dashboard-page .key-level {
        min-width: 0 !important;
        overflow: hidden !important;
        padding: 5px 10px !important;
        min-height: auto !important;
        height: auto !important;
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        gap: 8px !important;
    }
    
    body.dashboard-page .key-level .label {
        font-size: 10px !important;
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }
    
    body.dashboard-page .key-level .value {
        font-size: 13px !important;
        flex: 1 1 auto !important;
        text-align: right !important;
    }
    
    body.dashboard-page .key-level .change-value {
        font-size: 9px !important;
        flex: 0 0 auto !important;
        margin-left: 4px !important;
        white-space: nowrap !important;
    }
    
    body.dashboard-page .key-level.total-gex .value {
        font-size: 14px !important;
    }
    
    /* Fear Index VIX 区域 - 1列布局，覆盖内联样式 */
    body.dashboard-page .vix-changes,
    body.dashboard-page .vix-changes[style] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 2px !important;
        width: 100% !important;
    }
    
    body.dashboard-page .vix-value {
        font-size: 18px !important;
    }
    
    body.dashboard-page .vix-change-item {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 4px 8px !important;
    }
    
    body.dashboard-page .vix-change-label {
        font-size: 9px !important;
    }
    
    body.dashboard-page .vix-change-value {
        font-size: 11px !important;
    }
    
    /* GEX Strike card 标题样式 */
    body.dashboard-page .gex-chart-toggles {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 4px !important;
    }
    
    /* Battle Summary 网格 - 1列，自适应字体防止溢出 */
    body.dashboard-page .summary-grid,
    body.dashboard-page .summary-grid[style] {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 2px !important;
    }
    
    body.dashboard-page .summary-item {
        min-width: 0 !important;
        overflow: hidden !important;
        padding: 5px 10px !important;
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        box-sizing: border-box !important;
    }
    
    body.dashboard-page .summary-item .label {
        font-size: 10px !important;
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }
    
    body.dashboard-page .summary-item .value {
        font-size: 10px !important;
        flex: 0 1 auto !important;
        text-align: right !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        max-width: 55% !important;
        /* 自适应缩小字体 */
        font-size: clamp(8px, 2.5vw, 11px) !important;
    }
    
    /* Option Strategy Calculator */
    body.dashboard-page #option-calculator {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }
    
    body.dashboard-page .calculator-container {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 10px !important;
    }
    
    body.dashboard-page .calc-config,
    body.dashboard-page .calc-results {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
    
    body.dashboard-page .calc-row {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 4px !important;
        width: 100% !important;
    }
    
    body.dashboard-page .calc-row label {
        font-size: 11px !important;
    }
    
    body.dashboard-page .calc-select,
    body.dashboard-page .calc-input {
        width: 100% !important;
        max-width: 100% !important;
        font-size: 13px !important;
        padding: 8px !important;
        box-sizing: border-box !important;
    }
    
    /* 策略腿配置 */
    body.dashboard-page .legs-config {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }
    
    body.dashboard-page .leg-item {
        display: grid !important;
        grid-template-columns: 50px 1fr !important;
        gap: 4px !important;
        width: 100% !important;
    }
    
    body.dashboard-page .leg-select {
        width: 100% !important;
        max-width: 100% !important;
        font-size: 11px !important;
        padding: 4px !important;
    }
    
    /* 计算结果区域 */
    body.dashboard-page .result-metrics {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 6px !important;
        width: 100% !important;
    }
    
    body.dashboard-page .result-item {
        min-width: 0 !important;
        padding: 8px !important;
    }
    
    body.dashboard-page .result-value {
        font-size: 13px !important;
        word-break: break-all;
    }
    
    /* Greeks 网格 */
    body.dashboard-page .greeks-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 6px !important;
        width: 100% !important;
    }
    
    body.dashboard-page .greek-item {
        min-width: 0 !important;
    }
    
    /* PnL 图表 */
    body.dashboard-page .pnl-chart-container,
    body.dashboard-page .pnl-chart-wrapper,
    body.dashboard-page #pnl-chart {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }
    
    body.dashboard-page .pnl-chart-wrapper {
        height: 150px !important;
    }
    
    /* PnL 指标 */
    body.dashboard-page .pnl-metrics {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 4px !important;
        width: 100% !important;
    }
    
    body.dashboard-page .pnl-metric {
        min-width: 0 !important;
        padding: 4px !important;
    }
    
    body.dashboard-page .pnl-metric-value {
        font-size: 11px !important;
    }
    
    /* Strategy Recommendations */
    body.dashboard-page .recommendations-section {
        width: 100% !important;
        max-width: 100vw !important;
    }
    
    body.dashboard-page .recommendations-grid,
    body.dashboard-page #recommendations-container {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 10px !important;
    }
    
    body.dashboard-page .recommendation-card {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
    
    body.dashboard-page .recommendation-header {
        flex-wrap: wrap !important;
        gap: 4px !important;
    }
    
    body.dashboard-page .recommendation-name {
        font-size: 12px !important;
    }
    
    body.dashboard-page .recommendation-details {
        font-size: 10px !important;
    }
    
    /* 滑动条 */
    body.dashboard-page .slider-row {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 4px !important;
    }
    
    body.dashboard-page .slider-row input[type="range"] {
        width: 100% !important;
    }
    
    /* 按钮组 */
    body.dashboard-page .button-group,
    body.dashboard-page .calc-buttons {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        width: 100% !important;
    }
    
    body.dashboard-page .button-group button,
    body.dashboard-page .calc-buttons button {
        flex: 1 1 45% !important;
        min-width: 0 !important;
        font-size: 11px !important;
        padding: 8px !important;
    }
}

/* 小手机适配 */
@media (max-width: 375px) {
    /* 汉堡按钮稍微小一点 */
    .mobile-menu-btn {
        width: 36px;
        height: 36px;
        padding: 8px;
        top: 8px;
        right: 8px;
    }
    
    /* header更紧凑 */
    body.dashboard-page .header {
        padding: 6px 8px !important;
        padding-right: 50px !important;
        gap: 4px;
    }
    
    body.dashboard-page .header h1 {
        font-size: 11px !important;
    }
    
    body.dashboard-page .header .symbol-switch .symbol-tab {
        padding: 3px 6px !important;
        font-size: 10px !important;
        min-width: 32px;
    }
    
    body.dashboard-page .header .text-toggle {
        padding: 3px 6px !important;
        font-size: 10px !important;
        min-width: 32px;
    }
    
    body.dashboard-page .key-levels {
        grid-template-columns: repeat(2, 1fr);
    }
    
    body.dashboard-page .summary-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    body.dashboard-page .result-metrics {
        grid-template-columns: 1fr;
    }
    
    body.dashboard-page .greeks-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* ==================== 
   login.html 移动端适配
   ==================== */

@media (max-width: 480px) {
    body.login-page {
        padding: 15px;
        overflow-x: hidden;
    }
    
    body.login-page .auth-container {
        max-width: 100%;
        width: 100%;
        margin: 0;
        border-radius: 12px;
        overflow: hidden;
    }
    
    body.login-page .auth-header {
        padding: 25px 20px;
        width: 100%;
    }
    
    body.login-page .auth-header h1 {
        font-size: 22px;
        word-wrap: break-word;
    }
    
    body.login-page .auth-header p {
        font-size: 13px;
        word-wrap: break-word;
    }
    
    body.login-page .auth-body {
        padding: 25px 20px;
        width: 100%;
    }
    
    body.login-page .tab-switcher {
        margin-bottom: 20px;
        width: 100%;
    }
    
    body.login-page .tab-btn {
        padding: 10px;
        font-size: 14px;
    }
    
    body.login-page .form-group {
        margin-bottom: 16px;
        width: 100%;
    }
    
    body.login-page .form-group label {
        font-size: 13px;
    }
    
    body.login-page .form-group input {
        padding: 12px 14px;
        font-size: 14px;
        width: 100%;
        max-width: 100%;
    }
    
    body.login-page .captcha-group {
        flex-direction: column;
        gap: 15px;
    }
    
    body.login-page .captcha-image-wrapper {
        align-self: center;
    }
    
    body.login-page .captcha-image {
        height: 45px;
    }
    
    body.login-page .captcha-refresh {
        font-size: 10px;
    }
    
    body.login-page .submit-btn {
        padding: 12px;
        font-size: 15px;
    }
    
    body.login-page .google-btn {
        padding: 10px;
        font-size: 13px;
    }
    
    body.login-page .social-login-title {
        font-size: 12px;
    }
    
    body.login-page .trial-info {
        padding: 10px;
        font-size: 12px;
    }
    
    body.login-page .message {
        padding: 10px 14px;
        font-size: 13px;
    }
    
    body.login-page .footer-text {
        font-size: 12px;
    }
    
    body.login-page .verification-icon {
        font-size: 48px;
    }
    
    body.login-page .verification-notice h3 {
        font-size: 18px;
    }
}


/* ==================== 
   pricing.html 移动端适配
   ==================== */

@media (max-width: 768px) {
    body.pricing-page {
        overflow-x: hidden;
    }
    
    body.pricing-page .header {
        padding: 15px 20px;
        flex-wrap: wrap;
        gap: 10px;
        width: 100%;
        max-width: 100%;
    }
    
    body.pricing-page .logo {
        font-size: 1.2rem;
    }
    
    body.pricing-page .container {
        padding: 30px 15px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.pricing-page .page-title h1 {
        font-size: 1.5rem;
    }
    
    body.pricing-page .page-title p {
        font-size: 0.9rem;
    }
    
    body.pricing-page .current-plan-banner {
        flex-direction: column;
        gap: 15px;
        text-align: center;
        padding: 15px;
        width: 100%;
        max-width: 100%;
    }
    
    body.pricing-page .plans-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px;
        width: 100%;
        max-width: 100%;
    }
    
    body.pricing-page .plan-card {
        padding: 14px 12px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }

    body.pricing-page .plan-card .plan-header {
        margin-bottom: 10px;
    }

    body.pricing-page .plan-card .plan-name {
        font-size: 0.9rem;
        margin-bottom: 6px;
    }

    body.pricing-page .plan-card .plan-amount {
        font-size: 1.8rem;
    }

    body.pricing-page .plan-card .plan-currency {
        font-size: 1rem;
    }

    body.pricing-page .plan-card .plan-subtitle {
        font-size: 0.7rem;
    }

    body.pricing-page .plan-card .plan-features {
        margin-top: 10px;
    }

    body.pricing-page .plan-card .plan-features li {
        padding: 3px 0;
        font-size: 0.75rem;
        gap: 6px;
    }

    body.pricing-page .plan-card .plan-radio-indicator {
        width: 16px;
        height: 16px;
        top: 10px;
        right: 10px;
    }

    body.pricing-page .plan-card.popular::before,
    body.pricing-page .plan-card.featured::before,
    body.pricing-page .plan-card.lifetime::before {
        font-size: 0.65rem;
        padding: 2px 10px;
        top: -10px;
    }

    body.pricing-page .plan-card .promo-ribbon {
        width: 38px;
        height: 38px;
        font-size: 0.55rem;
        top: -8px;
        left: -8px;
    }
    
    body.pricing-page .section-title {
        font-size: 1.1rem;
        flex-wrap: wrap;
        width: 100%;
    }
    
    body.pricing-page .section-title .step {
        width: 24px;
        height: 24px;
        font-size: 0.8rem;
    }
}


/* ==================== 
   help.html & faq.html 移动端适配
   ==================== */

@media (max-width: 768px) {
    body.help-page,
    body.faq-page {
        overflow-x: hidden;
    }
    
    body.help-page .header,
    body.faq-page .header {
        padding: 15px 20px;
        flex-wrap: wrap;
        gap: 10px;
        width: 100%;
        max-width: 100%;
    }
    
    body.help-page .logo,
    body.faq-page .logo {
        font-size: 1.2rem;
    }
    
    body.help-page .header-right,
    body.faq-page .header-right {
        width: 100%;
        justify-content: space-between;
    }
    
    body.help-page .container,
    body.faq-page .container {
        padding: 40px 15px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.help-page h1,
    body.faq-page h1 {
        font-size: 1.8rem;
        word-wrap: break-word;
    }
    
    body.help-page .subtitle,
    body.faq-page .subtitle {
        font-size: 1rem;
        word-wrap: break-word;
    }
    
    body.help-page .section,
    body.faq-page .faq-category {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.help-page .section h2,
    body.faq-page .faq-category h2 {
        font-size: 1.2rem;
    }
    
    body.help-page .section h3 {
        font-size: 1.1rem;
    }
    
    body.help-page .feature-card {
        padding: 20px;
        width: 100%;
        max-width: 100%;
    }
    
    body.help-page .tip-box,
    body.help-page .warning-box {
        padding: 12px 15px;
        width: 100%;
        max-width: 100%;
    }
    
    body.faq-page .faq-item {
        width: 100%;
        max-width: 100%;
    }
    
    body.faq-page .faq-question {
        padding: 15px 20px;
        font-size: 0.95rem;
        width: 100%;
    }
    
    body.faq-page .faq-answer-content {
        padding: 0 20px 15px;
        width: 100%;
        word-wrap: break-word;
    }
    
    body.faq-page .contact-box {
        padding: 25px 20px;
        width: 100%;
        max-width: 100%;
    }
}


/* ==================== 
   contact.html, terms.html, privacy.html, disclaimer.html 移动端适配
   ==================== */

@media (max-width: 768px) {
    body.static-page {
        overflow-x: hidden;
    }
    
    body.static-page .header {
        padding: 15px 20px;
        flex-wrap: wrap;
        gap: 10px;
        width: 100%;
        max-width: 100%;
    }
    
    body.static-page .logo {
        font-size: 1.2rem;
    }
    
    body.static-page .header-right,
    body.static-page .header-actions {
        width: 100%;
        justify-content: space-between;
    }
    
    body.static-page .container {
        padding: 40px 15px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.static-page h1,
    body.static-page .page-title {
        font-size: 1.8rem;
        word-wrap: break-word;
    }
    
    body.static-page h2 {
        font-size: 1.3rem;
        word-wrap: break-word;
    }
    
    body.static-page .section,
    body.static-page .content {
        padding: 20px 15px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.static-page .data-table {
        font-size: 0.85rem;
        display: block;
        overflow-x: auto;
        width: 100%;
    }
    
    body.static-page .data-table th,
    body.static-page .data-table td {
        padding: 8px 10px;
    }
    
    body.static-page .footer {
        padding: 20px 15px;
        width: 100%;
        max-width: 100%;
    }
    
    body.static-page .footer a {
        margin: 0 10px;
        font-size: 0.85rem;
    }
}


/* ==================== 
   admin_payment.html 移动端适配
   ==================== */

@media (max-width: 768px) {
    body.admin-page {
        overflow-x: hidden;
    }
    
    body.admin-page .admin-container {
        padding: 15px;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    body.admin-page .admin-header {
        flex-direction: column;
        gap: 15px;
        text-align: center;
        width: 100%;
    }
    
    body.admin-page .admin-header h1 {
        font-size: 1.3rem;
    }
    
    body.admin-page .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        width: 100%;
        max-width: 100%;
    }
    
    body.admin-page .stat-card {
        padding: 15px;
        width: 100%;
        overflow: hidden;
    }
    
    body.admin-page .stat-card h3 {
        font-size: 0.85rem;
    }
    
    body.admin-page .stat-card .value {
        font-size: 1.5rem;
    }
    
    body.admin-page .table-container {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        width: 100%;
        max-width: 100%;
    }
    
    body.admin-page table {
        min-width: 600px;
    }
    
    body.admin-page th, 
    body.admin-page td {
        padding: 10px 8px;
        font-size: 12px;
    }
    
    body.admin-page .action-btn {
        padding: 6px 10px;
        font-size: 11px;
    }
    
    body.admin-page .filter-section {
        flex-direction: column;
        gap: 10px;
        width: 100%;
        max-width: 100%;
    }
    
    body.admin-page .filter-section select,
    body.admin-page .filter-section input {
        width: 100%;
        max-width: 100%;
    }
}


/* ==================== 
   通用组件移动端适配
   ==================== */

/* 弹窗/模态框 */
@media (max-width: 768px) {
    .modal,
    .popup,
    .dialog {
        width: 95% !important;
        max-width: 100% !important;
        margin: 10px !important;
        padding: 20px !important;
    }
    
    .modal-header,
    .popup-header {
        font-size: 1.1rem;
    }
    
    .modal-body,
    .popup-body {
        font-size: 0.9rem;
    }
}

/* 表格响应式 */
@media (max-width: 768px) {
    .responsive-table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    .responsive-table table {
        min-width: 500px;
    }
}

/* 按钮组 */
@media (max-width: 480px) {
    .btn-group {
        flex-direction: column;
        gap: 8px;
    }
    
    .btn-group .btn {
        width: 100%;
    }
}

/* 表单 */
@media (max-width: 480px) {
    .form-row {
        flex-direction: column;
        gap: 10px;
    }
    
    .form-row > * {
        width: 100%;
    }
}

/* 下拉菜单 */
@media (max-width: 768px) {
    .dropdown-menu {
        position: fixed;
        left: 10px !important;
        right: 10px !important;
        width: auto !important;
        max-height: 60vh;
        overflow-y: auto;
    }
}


/* ==================== 
   用户菜单移动端适配
   ==================== */

@media (max-width: 768px) {
    .user-menu {
        position: relative;
    }
    
    .user-menu-dropdown {
        position: fixed;
        top: auto !important;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        max-height: 70vh;
        border-radius: 16px 16px 0 0;
        padding-bottom: env(safe-area-inset-bottom);
    }
    
    .user-menu-item {
        padding: 14px 20px;
        font-size: 15px;
    }
}


/* ==================== 
   图表工具提示移动端适配
   ==================== */

@media (max-width: 768px) {
    .chart-tooltip {
        max-width: 200px;
        font-size: 11px;
        padding: 8px;
    }
}


/* ==================== 
   回放控制栏移动端适配
   ==================== */

@media (max-width: 768px) {
    .replay-controls {
        padding: 8px 10px;
        flex-wrap: wrap;
        gap: 8px;
    }
    
    .replay-controls button {
        padding: 6px 10px;
        font-size: 11px;
    }
    
    .replay-controls input[type="range"] {
        width: 100%;
        order: 10;
    }
    
    .replay-time-display {
        font-size: 11px;
    }
}


/* ==================== 
   消息通知移动端适配
   ==================== */

@media (max-width: 768px) {
    .notification,
    .toast {
        left: 15px !important;
        right: 15px !important;
        width: auto !important;
        max-width: none !important;
    }
}


/* ==================== 
   横屏优化 - 三页布局
   ==================== */

@media (max-width: 896px) and (orientation: landscape) {
    /* 横屏时允许轻微滚动以隐藏浏览器地址栏 */
    html, body {
        overflow-y: auto !important;
        overflow-x: hidden !important;
        height: auto !important;
        min-height: 100vh !important;
        background: #0a0a0a !important;
    }
    
    body.dashboard-page {
        padding-top: 0 !important;
        min-height: 100vh !important;
        height: auto !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        display: flex !important;
        flex-direction: column !important;
        background: #0a0a0a !important;
    }
    
    /* 隐藏原始header，使用横屏专用导航 */
    body.dashboard-page .fixed-top-bar {
        display: none !important;
    }
    
    /* 隐藏原始汉堡菜单按钮 */
    .mobile-menu-btn {
        display: none !important;
    }
    
    /* ===== 横屏专用导航栏 ===== */
    .landscape-nav {
        display: flex !important;
        position: relative !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        height: 36px !important;
        background: linear-gradient(180deg, #1a1a2e 0%, #16213e 100%) !important;
        border-bottom: 1px solid #333 !important;
        z-index: 10000 !important;
        align-items: center !important;
        padding: 0 10px !important;
        gap: 6px !important;
        flex-shrink: 0 !important;
    }
    
    /* 汉堡菜单按钮 */
    .landscape-nav .landscape-hamburger {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 4px !important;
        width: 28px !important;
        height: 28px !important;
        background: transparent !important;
        border: none !important;
        cursor: pointer !important;
        padding: 4px !important;
        border-radius: 4px !important;
        flex-shrink: 0 !important;
    }
    
    .landscape-nav .landscape-hamburger:hover {
        background: rgba(255, 255, 255, 0.1) !important;
    }
    
    .landscape-nav .landscape-hamburger span {
        display: block !important;
        width: 18px !important;
        height: 2px !important;
        background: #e8e8e8 !important;
        border-radius: 1px !important;
        transition: all 0.2s ease !important;
    }
    
    .landscape-nav .landscape-hamburger.open span:nth-child(1) {
        transform: rotate(45deg) translateY(6px) !important;
    }
    
    .landscape-nav .landscape-hamburger.open span:nth-child(2) {
        opacity: 0 !important;
    }
    
    .landscape-nav .landscape-hamburger.open span:nth-child(3) {
        transform: rotate(-45deg) translateY(-6px) !important;
    }
    
    /* 横屏侧边菜单遮罩 */
    .landscape-menu-overlay {
        display: none !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        background: rgba(0, 0, 0, 0.6) !important;
        z-index: 10100 !important;
    }
    
    .landscape-menu-overlay.open {
        display: block !important;
    }
    
    /* 横屏侧边菜单 */
    .landscape-menu {
        display: none !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 220px !important;
        height: 100vh !important;
        background: linear-gradient(180deg, #1a1a2e 0%, #16213e 100%) !important;
        border-right: 1px solid #444 !important;
        z-index: 10200 !important;
        overflow-y: auto !important;
        transform: translateX(-100%) !important;
        transition: transform 0.3s ease !important;
    }
    
    .landscape-menu.open {
        display: block !important;
        transform: translateX(0) !important;
    }
    
    .landscape-menu-header {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 12px !important;
        border-bottom: 1px solid #333 !important;
    }
    
    .landscape-menu-title {
        font-size: 13px !important;
        font-weight: bold !important;
        color: #ffffff !important;
    }
    
    .landscape-menu-close {
        background: transparent !important;
        border: none !important;
        color: #888 !important;
        font-size: 18px !important;
        cursor: pointer !important;
        padding: 4px 8px !important;
    }
    
    .landscape-menu-close:hover {
        color: #fff !important;
    }
    
    .landscape-menu-section {
        padding: 10px 12px !important;
        border-bottom: 1px solid #333 !important;
    }
    
    .landscape-menu-user-info {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        align-items: center !important;
    }
    
    .landscape-user-name {
        font-size: 12px !important;
        color: #e8e8e8 !important;
        font-weight: 500 !important;
    }
    
    .landscape-user-badge {
        font-size: 10px !important;
        padding: 2px 6px !important;
        border-radius: 10px !important;
        background: linear-gradient(135deg, #6366f1, #8b5cf6) !important;
        color: white !important;
    }
    
    .landscape-menu-item {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 10px 8px !important;
        color: #e8e8e8 !important;
        text-decoration: none !important;
        border-radius: 6px !important;
        cursor: pointer !important;
        font-size: 12px !important;
        margin: 4px 0 !important;
    }
    
    .landscape-menu-item:hover {
        background: rgba(255, 255, 255, 0.1) !important;
    }
    
    .landscape-menu-icon {
        font-size: 14px !important;
    }
    
    .landscape-lang-current {
        margin-left: auto !important;
        font-size: 10px !important;
        color: #888 !important;
        background: rgba(255, 255, 255, 0.1) !important;
        padding: 2px 6px !important;
        border-radius: 4px !important;
    }
    
    .landscape-menu-footer {
        margin-top: auto !important;
    }
    
    .landscape-logout-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        width: 100% !important;
        padding: 10px !important;
        background: rgba(239, 68, 68, 0.15) !important;
        border: 1px solid rgba(239, 68, 68, 0.3) !important;
        color: #ef4444 !important;
        border-radius: 6px !important;
        cursor: pointer !important;
        font-size: 12px !important;
    }
    
    .landscape-logout-btn:hover {
        background: rgba(239, 68, 68, 0.25) !important;
    }
    
    .landscape-nav .nav-divider {
        width: 1px !important;
        height: 20px !important;
        background: #444 !important;
        margin: 0 4px !important;
    }
    
    /* 下拉选择框样式 */
    .landscape-nav .nav-select {
        padding: 4px 6px !important;
        font-size: 10px !important;
        border-radius: 4px !important;
        border: 1px solid #555 !important;
        background: rgba(30, 40, 70, 0.95) !important;
        color: #e8e8e8 !important;
        cursor: pointer !important;
        outline: none !important;
    }
    
    /* 导航按钮通用样式 */
    .landscape-nav .nav-btn {
        padding: 4px 8px !important;
        font-size: 10px !important;
        border-radius: 4px !important;
        border: 1px solid #555 !important;
        background: rgba(255, 255, 255, 0.08) !important;
        color: #c0c0c0 !important;
        cursor: pointer !important;
        white-space: nowrap !important;
        transition: all 0.2s ease !important;
    }
    
    .landscape-nav .nav-btn:hover {
        background: rgba(255, 255, 255, 0.15) !important;
        color: #fff !important;
    }
    
    .landscape-nav .nav-btn.active {
        background: var(--accent-blue) !important;
        border-color: var(--accent-blue) !important;
        color: white !important;
    }
    
    /* SPY/SPX 切换按钮特殊样式 */
    .landscape-nav .nav-btn.symbol-btn {
        background: rgba(100, 120, 180, 0.2) !important;
        border-color: #667 !important;
        color: #b0b8d0 !important;
    }
    
    .landscape-nav .nav-btn.symbol-btn:hover {
        background: rgba(100, 120, 180, 0.4) !important;
        color: #fff !important;
    }
    
    .landscape-nav .nav-btn.symbol-btn.active {
        background: linear-gradient(135deg, #6366f1, #8b5cf6) !important;
        border-color: #8b5cf6 !important;
        color: white !important;
    }
    
    /* 更新时间显示 - 带颜色 */
    .landscape-nav .nav-update-time {
        font-size: 9px !important;
        padding: 2px 6px !important;
        border-radius: 3px !important;
        white-space: nowrap !important;
        font-weight: 500 !important;
    }
    
    .landscape-nav .nav-update-time.fresh {
        color: #22c55e !important;
        background: rgba(34, 197, 94, 0.15) !important;
    }
    
    .landscape-nav .nav-update-time.recent {
        color: #eab308 !important;
        background: rgba(234, 179, 8, 0.15) !important;
    }
    
    .landscape-nav .nav-update-time.stale {
        color: #ef4444 !important;
        background: rgba(239, 68, 68, 0.15) !important;
    }
    
    /* 页面切换按钮组 */
    .landscape-nav .page-tabs {
        display: flex !important;
        gap: 4px !important;
        margin-left: auto !important;
    }
    
    .landscape-nav .page-tab {
        padding: 4px 8px !important;
        font-size: 9px !important;
        border-radius: 4px !important;
        border: 1px solid #555 !important;
        background: rgba(255, 255, 255, 0.05) !important;
        color: #a0a0a0 !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
    }
    
    .landscape-nav .page-tab:hover {
        background: rgba(255, 255, 255, 0.15) !important;
        color: #e8e8e8 !important;
    }
    
    .landscape-nav .page-tab.active {
        background: linear-gradient(135deg, var(--accent-purple), var(--accent-blue)) !important;
        border-color: transparent !important;
        color: white !important;
        font-weight: 500 !important;
    }
    
    /* ===== 横屏Replay控制栏 ===== */
    .landscape-replay-bar {
        display: none;
        position: fixed !important;
        top: 36px !important;
        left: 0 !important;
        right: 0 !important;
        height: 28px !important;
        background: linear-gradient(180deg, rgba(26, 26, 46, 0.98) 0%, rgba(22, 33, 62, 0.98) 100%) !important;
        border-bottom: 1px solid #444 !important;
        z-index: 999 !important;
        align-items: center !important;
        padding: 0 10px !important;
        gap: 10px !important;
        font-size: 10px !important;
    }
    
    .landscape-replay-bar.show {
        display: flex !important;
    }
    
    /* Replay开启时调整其他元素位置 */
    body.dashboard-page.landscape-replay-active .container,
    body.dashboard-page.landscape-replay-active #key-levels-card,
    body.dashboard-page.landscape-replay-active .kline-section,
    body.dashboard-page.landscape-replay-active .right-panel {
        top: 64px !important;
        height: calc(100vh - 64px) !important;
    }
    
    /* ===== 横屏页面容器 ===== */
    body.dashboard-page .container {
        position: relative !important;
        width: 100% !important;
        height: calc(100vh - 36px) !important;
        overflow: visible !important;
        padding: 0 !important;
        display: block !important;
    }
    
    /* 默认隐藏所有主要区块 */
    body.dashboard-page .kline-section,
    body.dashboard-page .right-panel,
    body.dashboard-page #battle-summary-card,
    body.dashboard-page #option-calculator,
    body.dashboard-page .recommendations-section {
        display: none !important;
    }
    
    /* ===== K线图页面布局 ===== */
    
    /* 左侧 Key Levels - 使用 fixed 定位脱离父容器 */
    body.dashboard-page.landscape-page-kline #key-levels-card {
        display: flex !important;
        flex-direction: column !important;
        position: fixed !important;
        left: 0 !important;
        top: 36px !important;
        width: 50px !important;
        height: calc(100vh - 36px) !important;
        background: rgba(22, 33, 62, 0.98) !important;
        border-right: 1px solid #444 !important;
        padding: 4px 2px !important;
        z-index: 1000 !important;
        overflow: hidden !important;
        margin: 0 !important;
    }
    
    /* 隐藏 Key Levels 的标题栏 */
    body.dashboard-page.landscape-page-kline #key-levels-card .card-title {
        display: none !important;
    }
    
    /* Key Levels 内容纵向排列 */
    body.dashboard-page.landscape-page-kline #key-levels-card .key-levels {
        display: flex !important;
        flex-direction: column !important;
        gap: 1px !important;
        height: 100% !important;
        padding-top: 2px !important;
    }
    
    /* 显示8个指标: Total GEX, Call Wall, Call %, Max Pain, Put/Call OI, Put Wall, Put %, Gamma Flip */
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level {
        display: none !important;
    }
    
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level.total-gex,
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level.call-wall,
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level.put-wall,
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level.max-pain,
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level.gamma-flip,
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level.put-call-ratio,
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level.call-percent,
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level.put-percent {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 1px !important;
        flex: 1 !important;
        min-height: 0 !important;
    }
    
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level .label {
        font-size: 6px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: 100% !important;
        line-height: 1 !important;
    }
    
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level .value {
        font-size: 9px !important;
        font-weight: bold !important;
        line-height: 1.2 !important;
    }
    
    /* 显示变化值 */
    body.dashboard-page.landscape-page-kline #key-levels-card .key-level .change-value {
        display: block !important;
        font-size: 7px !important;
        line-height: 1 !important;
        margin-top: 1px !important;
        padding: 0 2px !important;
    }
    
    /* K线图区域 - 左侧留出50px给Key Levels */
    body.dashboard-page.landscape-page-kline .kline-section {
        display: flex !important;
        flex-direction: column !important;
        position: fixed !important;
        left: 50px !important;
        top: 36px !important;
        width: calc(65% - 50px) !important;
        height: calc(100vh - 36px) !important;
        padding: 4px !important;
        z-index: 10 !important;
        overflow: hidden !important;
    }
    
    /* 隐藏 K线图的标题栏 */
    body.dashboard-page.landscape-page-kline .kline-section .card-title {
        display: none !important;
    }
    
    /* K线图 OHLCV 信息紧凑显示 */
    body.dashboard-page.landscape-page-kline .kline-section #kline-ohlcv {
        padding: 2px 6px !important;
        font-size: 9px !important;
        gap: 6px !important;
        flex-shrink: 0 !important;
        height: 18px !important;
    }
    
    body.dashboard-page.landscape-page-kline .kline-section .kline-chart-container {
        flex: 1 !important;
        min-height: 60px !important;
        overflow: hidden !important;
        position: relative !important;
    }
    
    /* K线图内部图表 - 限制高度以显示时间轴 */
    body.dashboard-page.landscape-page-kline .kline-section #kline-chart {
        height: calc(100% - 20px) !important;
        width: 100% !important;
    }
    
    /* 右侧面板 - 只包含 GEX/SMILE */
    body.dashboard-page.landscape-page-kline .right-panel {
        display: block !important;
        position: fixed !important;
        right: 0 !important;
        top: 36px !important;
        width: 35% !important;
        height: calc(100vh - 36px) !important;
        overflow: hidden !important;
        padding: 4px !important;
        z-index: 10 !important;
    }
    
    /* 隐藏 VIX 卡片 */
    body.dashboard-page.landscape-page-kline #vix-card {
        display: none !important;
    }
    
    /* GEX/SMILE 卡片填满右侧 - 重置定位 */
    body.dashboard-page.landscape-page-kline #gex-smile-card {
        display: flex !important;
        flex-direction: column !important;
        position: relative !important;
        width: 100% !important;
        height: 100% !important;
        overflow: hidden !important;
        left: auto !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
    }
    
    /* 隐藏 GEX/SMILE 的图标 */
    body.dashboard-page.landscape-page-kline #gex-smile-card .card-title .title-icon {
        display: none !important;
    }
    
    /* GEX/SMILE 标题栏紧凑 */
    body.dashboard-page.landscape-page-kline #gex-smile-card .card-title {
        padding: 4px 8px !important;
        font-size: 10px !important;
        flex-shrink: 0 !important;
        height: 24px !important;
    }
    
    body.dashboard-page.landscape-page-kline #gex-smile-card .gex-chart-container {
        flex: 1 !important;
        min-height: 60px !important;
        height: calc(100% - 28px) !important;
        overflow: hidden !important;
    }
    
    /* 隐藏 Battle Summary */
    body.dashboard-page.landscape-page-kline #battle-summary-card {
        display: none !important;
    }
    
    /* ===== 期权计算器页面布局 ===== */
    body.dashboard-page.landscape-page-calculator #option-calculator {
        display: block !important;
        position: absolute !important;
        left: 8px !important;
        top: 8px !important;
        right: 8px !important;
        bottom: 8px !important;
        overflow-y: auto !important;
    }
    
    /* 计算器标题白色 */
    body.dashboard-page.landscape-page-calculator #option-calculator > .card-title,
    body.dashboard-page.landscape-page-calculator #option-calculator > .card-title .title-text,
    body.dashboard-page.landscape-page-calculator #option-calculator > .card-title .title-icon {
        color: #ffffff !important;
    }
    
    body.dashboard-page.landscape-page-calculator #option-calculator .calculator-container {
        display: flex !important;
        gap: 15px !important;
    }
    
    body.dashboard-page.landscape-page-calculator #option-calculator .calc-config {
        width: 35% !important;
        flex-shrink: 0 !important;
    }
    
    body.dashboard-page.landscape-page-calculator #option-calculator .calc-results {
        flex: 1 !important;
    }
    
    /* ===== 策略推荐页面布局 ===== */
    /* 注意：.recommendations-section 嵌套在 #option-calculator 内部 */
    body.dashboard-page.landscape-page-strategy #option-calculator {
        display: block !important;
        position: fixed !important;
        left: 8px !important;
        top: 44px !important;
        right: 8px !important;
        bottom: 8px !important;
        overflow-y: auto !important;
        background: var(--bg-card) !important;
        border-radius: 8px !important;
        padding: 8px !important;
    }
    
    /* 隐藏 calculator 的标题和计算器部分 */
    body.dashboard-page.landscape-page-strategy #option-calculator > .card-title,
    body.dashboard-page.landscape-page-strategy #option-calculator .calculator-container {
        display: none !important;
    }
    
    /* 只显示策略推荐部分 */
    body.dashboard-page.landscape-page-strategy #option-calculator .recommendations-section {
        display: block !important;
    }
    
    /* 策略推荐标题白色 */
    body.dashboard-page.landscape-page-strategy .recommendations-section .card-title,
    body.dashboard-page.landscape-page-strategy .recommendations-section .card-title .title-text,
    body.dashboard-page.landscape-page-strategy .recommendations-section .card-title .title-icon {
        color: #ffffff !important;
    }

    body.dashboard-page.landscape-page-strategy .recommendations-section .recommendations-grid {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 10px !important;
    }
    
    /* ===== 隐藏浮动信息栏 ===== */
    body.dashboard-page .floating-info-bar {
        display: none !important;
    }
    
    /* ===== 隐藏拖拽调整手柄 ===== */
    body.dashboard-page .kline-resize-handle {
        display: none !important;
    }
    
    /* ===== K线图内部样式优化 ===== */
    body.dashboard-page .kline-section .card-title {
        padding: 4px 8px !important;
        font-size: 11px !important;
    }
    
    body.dashboard-page .kline-section #kline-ohlcv {
        padding: 3px 8px !important;
        font-size: 10px !important;
        gap: 8px !important;
    }
    
    body.dashboard-page .kline-section #top-gex-changes {
        display: none !important;
    }
    
    /* ===== 卡片标题紧凑样式 ===== */
    body.dashboard-page .card .card-title {
        padding: 6px 10px !important;
        font-size: 11px !important;
        margin-bottom: 4px !important;
    }
    
    body.dashboard-page .card .card-title .title-icon {
        font-size: 12px !important;
    }
    
    /* ===== 教程元素在横屏非激活时不阻挡点击 ===== */
    .tutorial-overlay:not(.active),
    .tutorial-tooltip:not(.visible),
    .tutorial-nav:not(.active) {
        pointer-events: none !important;
        display: none !important;
    }
    
    /* 激活状态时正常显示 */
    .tutorial-overlay.active {
        pointer-events: auto !important;
        display: block !important;
    }
    
    .tutorial-tooltip.visible {
        pointer-events: auto !important;
        display: block !important;
    }
    
    .tutorial-nav.active {
        pointer-events: auto !important;
        display: flex !important;
    }
}


/* ==================== 
   安全区域适配 (iPhone X+)
   ==================== */

@supports (padding: env(safe-area-inset-bottom)) {
    body.dashboard-page {
        padding-bottom: env(safe-area-inset-bottom);
    }
    
    .fixed-bottom,
    .navbar-bottom {
        padding-bottom: env(safe-area-inset-bottom);
    }
    
    .modal,
    .popup {
        padding-bottom: calc(20px + env(safe-area-inset-bottom));
    }
}


/* ==================== 
   固定宽度元素移动端修复
   ==================== */

@media (max-width: 768px) {
    /* 持仓监控面板 */
    body.dashboard-page .position-panel {
        width: 100% !important;
        max-width: 100vw !important;
    }
    
    /* 交易对话框 */
    body.dashboard-page .trade-dialog {
        width: 95% !important;
        max-width: calc(100vw - 20px) !important;
        margin: 10px;
    }
    
    /* 下拉选择框 */
    body.dashboard-page select,
    body.dashboard-page input[type="text"],
    body.dashboard-page input[type="number"],
    body.dashboard-page input[type="email"],
    body.dashboard-page input[type="password"] {
        max-width: 100%;
        width: 100%;
    }
    
    /* 图表容器 */
    body.dashboard-page #kline-chart,
    body.dashboard-page #gex-chart,
    body.dashboard-page #pnl-chart {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* 移动端隐藏 GEX Sidebar */
    body.dashboard-page #gex-sidebar-canvas {
        display: none !important;
    }
    
    /* 确保所有fixed元素不超出屏幕 */
    [style*="position: fixed"],
    [style*="position:fixed"] {
        max-width: 100vw !important;
    }
    
    /* 用户设置模态框 */
    body.dashboard-page #user-settings-modal > div,
    body.dashboard-page #subscription-plans-modal > div {
        width: 95% !important;
        max-width: calc(100vw - 20px) !important;
        margin: 10px auto;
    }
    
    /* 模态框内的grid布局 */
    body.dashboard-page #user-settings-modal [style*="grid-template-columns"],
    body.dashboard-page #subscription-plans-modal [style*="grid-template-columns"] {
        grid-template-columns: 1fr !important;
    }
    
    /* 模态框内的flex布局按钮组 */
    body.dashboard-page #user-settings-modal [style*="display: flex"][style*="gap"],
    body.dashboard-page #subscription-plans-modal [style*="display: flex"][style*="gap"] {
        flex-wrap: wrap;
    }
}

/* ==================== 
   防止水平滚动 - 强制约束
   ==================== */

@media (max-width: 768px) {
    /* 强制隐藏水平滚动条 */
    html, body {
        overflow-x: hidden !important;
        width: 100% !important;
        max-width: 100vw !important;
    }
    
    /* 主要内容区域 */
    main,
    .main-content,
    .page-content,
    .content-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }
    
    /* flex容器防止子元素撑开 */
    .flex-container,
    [style*="display: flex"],
    [style*="display:flex"] {
        min-width: 0;
    }
    
    /* grid容器防止子元素撑开 */
    .grid-container,
    [style*="display: grid"],
    [style*="display:grid"] {
        min-width: 0;
    }
    
    /* 子元素防止撑开 */
    .flex-container > *,
    .grid-container > * {
        min-width: 0;
        max-width: 100%;
    }
}


/* ==================== 
   教程模式移动端适配
   ==================== */

@media (max-width: 768px) {
    /* 教程提示框 */
    .tutorial-tooltip {
        position: fixed !important;
        left: 10px !important;
        right: 10px !important;
        top: auto !important;
        bottom: 100px !important;
        max-width: calc(100vw - 20px) !important;
        min-width: auto !important;
        width: auto !important;
        max-height: 50vh !important;
        overflow-y: auto !important;
        padding: 12px 15px;
        font-size: 12px;
        transform: none !important;
    }
    
    /* 所有位置的提示框都固定在底部 */
    .tutorial-tooltip.arrow-top,
    .tutorial-tooltip.arrow-bottom,
    .tutorial-tooltip.arrow-left,
    .tutorial-tooltip.arrow-right {
        top: auto !important;
        bottom: 100px !important;
        left: 10px !important;
        right: 10px !important;
    }
    
    .tutorial-tooltip-header {
        gap: 8px;
        margin-bottom: 10px;
        padding-bottom: 8px;
    }
    
    .tutorial-tooltip-icon {
        font-size: 20px;
    }
    
    .tutorial-tooltip-title {
        font-size: 14px;
    }
    
    .tutorial-tooltip-content {
        font-size: 12px;
        line-height: 1.5;
    }
    
    .tutorial-tooltip-footer {
        margin-top: 10px;
        padding-top: 8px;
        font-size: 10px;
    }
    
    /* 隐藏箭头，因为位置已经重新设置 */
    .tutorial-tooltip::before {
        display: none !important;
    }
    
    /* 教程导航按钮 */
    .tutorial-nav {
        position: fixed !important;
        bottom: 15px !important;
        left: 10px !important;
        right: 10px !important;
        transform: none !important;
        max-width: calc(100vw - 20px) !important;
        width: auto !important;
        padding: 10px 15px;
        gap: 8px;
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .tutorial-nav-btn {
        padding: 8px 12px;
        font-size: 12px;
        flex: 0 0 auto;
    }
    
    .tutorial-progress {
        width: 100%;
        justify-content: center;
        order: -1;
        margin-bottom: 5px;
        font-size: 11px;
    }
    
    /* 高亮元素边框调整 */
    .tutorial-highlight::before {
        border-width: 2px;
    }
}

/* 更小屏幕的教程模式适配 */
@media (max-width: 480px) {
    .tutorial-tooltip {
        left: 5px !important;
        right: 5px !important;
        max-width: calc(100vw - 10px) !important;
        padding: 10px 12px;
        bottom: 90px !important;
    }
    
    .tutorial-nav {
        left: 5px !important;
        right: 5px !important;
        max-width: calc(100vw - 10px) !important;
        padding: 8px 10px;
        gap: 6px;
    }
    
    .tutorial-nav-btn {
        padding: 6px 10px;
        font-size: 11px;
    }
}

/* ====================
   竖屏模式专用样式
   ==================== */
@media (max-width: 768px) and (orientation: portrait) {
    /* 显示网站图标 emoji，隐藏文字 */
    body.dashboard-page .header h1 {
        display: block !important;
        font-size: 16px !important;
        margin: 0 4px 0 0 !important;
        flex-shrink: 0;
    }
    
    body.dashboard-page .header h1 .header-icon {
        display: inline !important;
    }
    
    body.dashboard-page .header h1 .header-text {
        display: none !important;
    }
    
    /* 0DTE 下拉框高度调整 - 覆盖全局 min-height: 44px */
    body.dashboard-page .header .data-source-select select,
    body.dashboard-page .header #expiry-mode-select {
        min-height: unset !important;
        height: auto !important;
        padding: 3px 6px !important;
        font-size: 10px !important;
        min-width: 60px !important;
    }
    
    /* SPY/SPX 按钮与 Vol/GEX 按钮高度一致 - 覆盖全局 min-height: 44px */
    body.dashboard-page .header .symbol-switch .symbol-tab {
        padding: 3px 6px !important;
        font-size: 10px !important;
        min-width: 28px;
        min-height: unset !important;
        height: auto !important;
        text-align: center;
        line-height: 1.2 !important;
    }
    
    /* 确保 text-toggle 按钮样式一致 */
    body.dashboard-page .header .text-toggle {
        padding: 3px 6px !important;
        font-size: 10px !important;
        min-width: 28px;
        min-height: unset !important;
        text-align: center;
        line-height: 1.2 !important;
    }
    
    /* 汉堡菜单按钮缩小尺寸 */
    .mobile-menu-btn {
        width: 28px !important;
        height: 28px !important;
        min-height: unset !important;
        padding: 6px !important;
        top: 8px !important;
        right: 8px !important;
    }
    
    .mobile-menu-btn span {
        width: 14px !important;
        height: 2px !important;
    }
    
    /* 调整 header 右侧 padding 为汉堡按钮留空间 */
    body.dashboard-page .header {
        padding-right: 42px !important;
    }
    
    /* 期权计算器：隐藏 Time 和 IV 滑动条 */
    body.dashboard-page #pnl-sliders-container .slider-row {
        display: none !important;
    }
    
    /* 保留 pnl-key-metrics 显示 */
    body.dashboard-page #pnl-sliders-container .pnl-key-metrics {
        display: flex !important;
    }
}
