/* market-analysis.css - 大盘分析页面专用样式 */

/* 基础样式 */
.container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}
.px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
}
.py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}
.text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
}
.font-bold {
    font-weight: 700;
}
.mb-6 {
    margin-bottom: 1.5rem;
}
.text-gray-800 {
    --tw-text-opacity: 1;
    color: rgb(31 41 55 / var(--tw-text-opacity));
}

/* 指数行情部分样式 */
.mb-8 {
    margin-bottom: 2rem;
}
.text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
}
.font-semibold {
    font-weight: 600;
}
.mb-4 {
    margin-bottom: 1rem;
}
.text-gray-700 {
    --tw-text-opacity: 1;
    color: rgb(55 65 81 / var(--tw-text-opacity));
}
.grid {
    display: grid;
}
.grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}
.gap-4 {
    gap: 1rem;
}
.bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}
.rounded-lg {
    border-radius: 0.5rem;
}
.shadow-md {
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.p-4 {
    padding: 1rem;
}
.border-l-4 {
    border-left-width: 4px;
}
.border-blue-500 {
    --tw-border-opacity: 1;
    border-color: rgb(59 130 246 / var(--tw-border-opacity));
}
.flex {
    display: flex;
}
.justify-between {
    justify-content: space-between;
}
.items-center {
    align-items: center;
}
.mb-2 {
    margin-bottom: 0.5rem;
}
.font-medium {
    font-weight: 500;
}
.text-sm {
    font-size: 0.8rem;
    line-height: 1.25rem;
}
.text-gray-500 {
    --tw-text-opacity: 1;
    color: rgb(107 114 128 / var(--tw-text-opacity));
}
.text-green-600 {
    --tw-text-opacity: 1;
    color: rgb(22 163 74 / var(--tw-text-opacity));
}
.mt-1 {
    margin-top: 0.25rem;
}
.mt-3 {
    margin-top: 0.75rem;
}
.text-xs {
    font-size: 0.75rem;
    line-height: 1rem;
}
.border-green-500 {
    --tw-border-opacity: 1;
    border-color: rgb(34 197 94 / var(--tw-border-opacity));
}
.text-red-600 {
    --tw-text-opacity: 1;
    color: rgb(220 38 38 / var(--tw-text-opacity));
}
.border-red-500 {
    --tw-border-opacity: 1;
    border-color: rgb(239 68 68 / var(--tw-border-opacity));
}
.border-purple-500 {
    --tw-border-opacity: 1;
    border-color: rgb(168 85 247 / var(--tw-border-opacity));
}

/* 资金流动部分样式 - 简化版 */
#capital-flow-container {
    background-color: #ffffff;
    border-radius: 0.5rem; /* 与其他板块一致的圆角 */
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    overflow: hidden;
}

#capital-flow-data {
    padding: 1.5rem;
}

/* 市场卡片容器 */
.market-cards-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem; /* 减小间距 */
    width: 100%;
}

@media (max-width: 768px) {
    .market-cards-container {
        grid-template-columns: 1fr;
    }
}

/* 市场卡片样式 - 简化 */
.market-card {
    background-color: #ffffff; /* 纯白色背景 */
    border-radius: 0.5rem; /* 与其他板块一致 */
    border: 1px solid #e2e8f0;
    padding: 1rem; /* 减小内边距 */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); /* 更柔和的阴影 */
}

/* 移除卡片悬停效果 */
.market-card:hover {
    transform: none; /* 移除上移效果 */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); /* 保持原有阴影 */
}

/* 移除市场卡片特殊样式 */
.shanghai-card,
.shenzhen-card {
    border-top: none; /* 移除顶部粗边框 */
    background: none; /* 移除渐变背景 */
}

/* 市场标题样式 - 简化 */
.market-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #e2e8f0;
}

.market-title h3 {
    font-size: 1rem; /* 减小字体大小 */
    font-weight: 600;
    color: #1e293b;
}

/* 市场标签样式 - 简化 */
.market-tag {
    padding: 0.15rem 0.5rem; /* 减小内边距 */
    border-radius: 4px; /* 更小的圆角 */
    font-size: 0.7rem; /* 减小字体大小 */
    font-weight: 500;
}

/* 简化标签颜色 */
.shanghai-tag {
    background-color: #e0f2fe; /* 浅蓝色背景 */
    color: #0369a1; /* 深蓝色文字 */
}

.shenzhen-tag {
    background-color: #dcfce7; /* 浅绿色背景 */
    color: #166534; /* 深绿色文字 */
}

/* 资金指标样式 - 简化 */
.capital-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0; /* 减小内边距 */
    border-bottom: 1px solid #f3f4f6;
}

/* 移除资金项目悬停效果 */
.capital-item:hover {
    background-color: transparent; /* 移除悬停背景 */
    padding-left: 0; /* 移除左移效果 */
}

.capital-label {
    font-size: 0.875rem;
    color: #64748b;
}

.capital-value {
    font-size: 0.95rem;
    font-weight: 500; /* 减小字重 */
    color: #1e293b;
}

/* 加载状态样式优化 */
#capital-flow-loading {
    padding: 3rem 0;
    text-align: center;
}

#capital-flow-loading .animate-spin {
    height: 2.5rem;
    width: 2.5rem;
    border-width: 3px;
    border-top-color: #3b82f6;
    border-right-color: #3b82f6;
    border-bottom-color: #3b82f6;
    border-left-color: transparent;
    margin: 0 auto 1rem;
}

#capital-flow-loading p {
    color: #64748b;
    font-weight: 500;
}

/* 错误状态样式优化 */
#capital-flow-error {
    padding: 3rem 0;
    text-align: center;
}

#capital-flow-error i {
    font-size: 2.5rem;
    color: #ef4444;
    margin-bottom: 1rem;
}

#capital-flow-error p {
    color: #64748b;
    font-weight: 500;
    margin-bottom: 1rem;
}

#capital-flow-error button {
    background-color: #3b82f6;
    color: #ffffff;
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    font-weight: 500;
    transition: all 0.2s ease;
}

#capital-flow-error button:hover {
    background-color: #2563eb;
}

/* 响应式调整 */
@media (max-width: 768px) {
    #capital-flow-data .grid-cols-2 {
        /* 删除或注释掉这部分内容 */
    }
}

/* 响应式工具类 */
@media (min-width: 640px) {
    .sm\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 768px) {
    .md\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .md\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .lg\:grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .lg\:col-span-2 {
        grid-column: span 2 / span 2;
    }
    .lg\:col-span-1 {
        grid-column: span 1 / span 1;
    }
    .lg\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* 自定义工具类 */
.content-auto {
    content-visibility: auto;
}

/* 渐变和动画效果 */
.bg-gradient-to-r {
    background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.from-blue-600 {
    --tw-gradient-from: #2563eb;
    --tw-gradient-to: rgba(37, 99, 235, 0);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.to-blue-700 {
    --tw-gradient-to: #1d4ed8;
}
.hover\:from-blue-700:hover {
    --tw-gradient-from: #1d4ed8;
}
.hover\:to-blue-800:hover {
    --tw-gradient-to: #1e40af;
}
.hover\:scale-105:hover {
    --tw-scale-x: 1.05;
    --tw-scale-y: 1.05;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.hover\:scale-\[1\.02\]:hover {
    --tw-scale-x: 1.02;
    --tw-scale-y: 1.02;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.active\:scale-\[0\.98\]:active {
    --tw-scale-x: 0.98;
    --tw-scale-y: 0.98;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.hover\:translate-y-\[-2px\]:hover {
    --tw-translate-y: -2px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

/* 文章样式 */
.prose {
    max-width: 65ch;
}
.prose p {
    margin-top: 1em;
    margin-bottom: 1em;
}
.prose h3 {
    margin-top: 1.5em;
    margin-bottom: 0.5em;
}
.prose h4 {
    margin-top: 1.5em;
    margin-bottom: 0.5em;
}

/* 定位和布局 */
.rounded-t-lg {
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
}
.sticky {
    position: sticky;
}
.top-6 {
    top: 1.5rem;
}
.h-fit {
    height: fit-content;
}

/* AI分析按钮和结果样式 */
#ai-analysis-btn {
    transition: all 0.3s ease;
}

#ai-analysis-result {
    animation: fadeIn 0.5s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* 图表容器样式 */
#capital-flow-chart {
    position: relative;
    width: 100%;
    overflow: hidden;
}

/* 响应式调整 */
@media (max-width: 768px) {
    .table-responsive {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    /* 确保三模块在移动端垂直排列 */
    .lg\:grid-cols-3 {
        grid-template-columns: 1fr;
    }
}

/* 自定义滚动条 */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #a1a1a1;
}
/* 热门股票表格样式 */
#hot-stocks-table th {
    font-size: 0.9rem;
    padding: 0.5rem;
}

#hot-stocks-table td {
    font-size: 0.95rem;
    padding: 0.5rem;
    height: 50px;
}

/* 确保价格和涨跌幅列有足够空间 */
#hot-stocks-table th:nth-child(3),
#hot-stocks-table th:nth-child(4),
#hot-stocks-table td:nth-child(3),
#hot-stocks-table td:nth-child(4) {
    text-align: right;
}

/* 跑马灯新闻样式 */
.news-ticker {
    height: 40px;
    background-color: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 0.375rem;
    margin: 1rem 0;
    position: relative;
    overflow: hidden;
    display: flex; /* 添加flex布局 */
    align-items: center; /* 垂直居中内容 */
}

/* 添加跑马灯链接样式 */
.news-link {
    color: #1e293b; /* 深灰色文字 */
    font-weight: 500; /* 中等字重 */
    text-decoration: none;
    transition: all 0.2s;
    display: inline-block; /* 确保链接表现一致 */
    line-height: 1.5; /* 设置合适的行高 */
}

.news-link:hover {
    color: #3b82f6; /* 蓝色高亮 */
    text-decoration: underline;
}

/* 移除market-analysis.css中的重复跑马灯样式 */
@keyframes ticker {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-20%);
    }
}

/* 跑马灯基础样式 */
.news-ticker-container {
    display: flex;
    animation: ticker linear infinite;
    white-space: nowrap;
    align-items: center; /* 确保内容垂直居中 */
    height: 100%; /* 继承父容器高度 */
}

/* 跑马灯项目样式 - 添加间隔和优化字体 */
.news-ticker-item {
    display: flex;
    align-items: center; /* 垂直居中 */
    padding: 0 1rem;
    margin-right: 2rem; /* 添加新闻之间的间隔 */
    font-size: 0.9rem;
    line-height: 1.5; /* 调整行高以确保垂直居中 */
    color: #1e293b;
    height: 100%; /* 确保项目高度充满容器 */
}

/* 跑马灯响应式调整 */
@media (max-width: 640px) {
    .news-ticker {
        height: 36px;
    }
    
    .news-ticker-item {
        padding: 0 0.8rem;
        margin-right: 1.5rem; /* 移动端适当减少间隔 */
        font-size: 0.8rem;
    }
}
/* 指数行情模块移动端优化 */
@media (max-width: 640px) {
    #index-container {
        display: flex;
        overflow-x: hidden; /* 禁用滚动 */
        flex-wrap: nowrap;
        padding: 0.5rem 0;
        grid-template-columns: none;
        justify-content: space-between; /* 均匀分布卡片 */
    }
    
    #index-container > div {
        min-width: 31%; /* 确保三个卡片一行显示 */
        margin-right: 0.1rem;
        padding: 0.4rem;
    }
    
    /* 覆盖指数数值的字体大小 */
    #index-container .text-2xl {
        font-size: 0.9rem !important;
        line-height: 1.1;
    }
    
    /* 调整指数名称的字体大小 */
    #index-container .font-medium {
        font-size: 0.9rem !important;
    }
    
    /* 调整涨跌幅的字体大小 */
    #index-container .text-sm {
        font-size: 0.65rem !important;
    }
    
    /* 隐藏非核心数据 */
    #index-container .grid {
        display: none;
    }
    #index-container .text-xl,
    #index-container .text-green-600,
    #index-container .text-red-600,
    #index-container .font-medium {
        display: block;
    }
    
    /* 隐藏非核心数据 */
    #index-container .text-xs,
    #index-container .text-sm:not(.font-medium) {
        display: none;
    }
    
    /* 调整核心数据样式 */
    #index-container .text-xl {
        font-size: 0.7rem;
        margin-bottom: 0.15rem !important;
    }
    
    #index-container .font-medium {
        font-size: 0.7rem;
        margin-bottom: 0.1rem;
    }
    
    #index-container .text-green-600,
    #index-container .text-red-600 {
        font-size: 0.6rem;
    }
    
    #index-container .flex {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* 龙虎榜工具提示样式 */
.tooltip:hover .tooltip-text {
    opacity: 1;
    visibility: visible;
}

/* 龙虎榜表格样式优化 */
#dragon-tiger-table th,
#dragon-tiger-table td {
    padding: 0.5rem;
}

#dragon-tiger-table tbody tr:nth-child(odd) {
    background-color: #f9fafb;
}

#dragon-tiger-table tbody tr:hover {
    background-color: #f3f4f6;
}

/* 刷新按钮样式 */
#refresh-dragon-tiger {
    cursor: pointer;
}

#refresh-dragon-tiger:hover {
    text-decoration: underline;
}
/* 添加到 CSS 文件末尾 */
.opacity-100 {
    opacity: 1 !important;
}

/* 确保资金流动数据区域可见 */
#capital-flow-data {
    display: block !important;
    opacity: 1 !important;
}

/* 为资金流动数据项添加过渡效果 */
#capital-flow-data .flex.justify-between.items-center {
    transition: opacity 0.5s ease-in-out;
}

/* 市场情绪模块样式 */
#sentimentChart {
    width: 100%;
    height: auto;
}

/* 优化响应式显示 */
@media (max-width: 768px) {
    .market-cards-container {
        grid-template-columns: 1fr;
    }
}

/* 市场情绪指示器优化 */
#sentimentIndicator {
    transition: width 0.5s ease, background-color 0.5s ease;
    position: relative;
    z-index: 10;
}

/* 下方标签样式 */
.relative > div:last-child > div {
    font-size: 10px;
    color: #6b7280;
}

/* 中性标签样式优化 */
.relative + .flex > span {
    font-size: 10px;
    color: #6b7280;
    white-space: nowrap;
    pointer-events: none;
}

/* 确保父容器相对定位 */
.flex.items-center.justify-between {
    position: relative;
}

