* { margin: 0; padding: 0; box-sizing: border-box; }
:root {
  --primary: #40b4f7;
  --primary-dark: #1a9ae0;
  --bg: #f2f2f2;
  --bg-white: #fff;
  --text: #333;
  --text-light: #666;
  --border: #e8e8e8;
  --tag-red: #e55a5a;
}
body { font-family: "Microsoft YaHei", "PingFang SC", sans-serif; background: var(--bg); color: var(--text); font-size: 14px; line-height: 1.6; }

/* 内容 */
.container { padding: 10px 12px; max-width: 750px; margin: 0 auto; width: auto; }

/* 焦点图 */
.focus-section { background: var(--bg-white); border-radius: 6px; padding: 12px; margin-bottom: 10px; overflow: hidden; }
.focus-section h2 { font-size: 15px; color: var(--text); margin-bottom: 10px; font-weight: bold; border-left: 3px solid var(--primary); padding-left: 8px; }
.focus-main { display: block; height: 170px; margin-bottom: 10px; padding: 0; background: #1a2a3a center center/cover no-repeat; border-radius: 6px; overflow: hidden; position: relative; text-decoration: none; }
.focus-main::before { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 105px; background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,.76)); }
.focus-main .tag { position: absolute; left: 10px; bottom: 58px; z-index: 1; height: 22px; line-height: 22px; padding: 0 8px; background: var(--primary); color: #fff; border-radius: 3px; font-size: 12px; }
.focus-main h3 { position: absolute; left: 0; right: 0; bottom: 10px; z-index: 1; height: 22px; margin: 0; padding: 0 10px; overflow: hidden; color: #fff; font-size: 15px; line-height: 22px; font-weight: bold; white-space: nowrap; text-overflow: ellipsis; }
.focus-list { display: block; border: 1px solid #e6e6e6; border-radius: 6px; overflow: hidden; background: #fff; }
.focus-item { position: relative; display: block; min-height: 70px; padding: 10px 10px 9px 13px; border-bottom: 1px dashed #e6e6e6; background: #fff; overflow: hidden; }
.focus-item:last-child { border-bottom: 0; }
.focus-item:before { content: ""; position: absolute; left: 0; top: 0; width: 3px; height: 100%; background: #e8f4fd; }
.focus-item .info h4 { height: 20px; line-height: 20px; margin: 0 0 4px; overflow: hidden; font-size: 14px; color: #333; font-weight: bold; white-space: nowrap; text-overflow: ellipsis; }
.focus-item .info h4 a { color: #333; text-decoration: none; }
.focus-item .info span { display: block; height: 18px; line-height: 18px; overflow: hidden; font-size: 12px; color: #999; }

/* 快讯 */
.news-ticker { background: var(--bg-white); border-radius: 6px; padding: 12px; margin-bottom: 10px; }
.news-ticker h2 { font-size: 15px; font-weight: bold; border-left: 3px solid var(--tag-red); padding-left: 8px; margin-bottom: 10px; display: flex; align-items: center; gap: 6px; }
.news-ticker h2 .live { background: var(--tag-red); color: #fff; padding: 1px 6px; border-radius: 8px; font-size: 12px; animation: pulse 2s infinite; }
@keyframes pulse { 0%,100% { opacity: 1; } 50% { opacity: 0.5; } }
.ticker-list { display: flex; flex-direction: column; gap: 8px; }
.ticker-item { display: flex; gap: 8px; font-size: 13px; }
.ticker-item .time { color: var(--primary); font-weight: bold; flex-shrink: 0; }
.ticker-item .txt { min-width: 0; flex: 1; overflow: hidden; color: #555; line-height: 20px; white-space: nowrap; text-overflow: ellipsis; }
.ticker-item .txt a { color: #333; text-decoration: none; }

/* 快捷分类 */
.quick-cats { background: var(--bg-white); border-radius: 6px; padding: 12px; margin-bottom: 10px; }
.quick-cats h2 { font-size: 15px; color: var(--text); margin-bottom: 10px; font-weight: bold; border-left: 3px solid var(--primary); padding-left: 8px; }
.cat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.cat-item { background: linear-gradient(135deg, #40b4f7, #6dc4f9); color: #fff; text-align: center; padding: 10px 5px; border-radius: 6px; text-decoration: none; display: flex; flex-direction: column; align-items: center; gap: 4px; }
.cat-item:link,.cat-item:visited,.cat-item:active { color: #fff; text-decoration: none; }
.cat-item .icon { width: 28px; height: 28px; }
.cat-item .name { font-size: 12px; font-weight: bold; }

/* 文章区块 */
.article-section { background: var(--bg-white); border-radius: 6px; padding: 12px; margin-bottom: 10px; }
.section-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.section-header h2 { font-size: 15px; font-weight: bold; border-left: 3px solid var(--primary); padding-left: 8px; color: var(--text); }
.section-header .more { color: var(--primary); text-decoration: none; font-size: 12px; }
.article-list { display: flex; flex-direction: column; gap: 10px; }
.article-item { display: flex; gap: 10px; }
.article-item .thumb { width: 90px; height: 65px; background: #eee; border-radius: 4px; flex-shrink: 0; display: block; overflow: hidden; color: #ccc; font-size: 12px; }
.article-item .thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.article-item .content { flex: 1; min-width: 0; }
.article-item h3 { height: 20px; line-height: 20px; margin-bottom: 4px; overflow: hidden; color: #333; font-size: 13px; white-space: nowrap; text-overflow: ellipsis; }
.article-item h3 a { color: #333; text-decoration: none; }
.article-item .desc { font-size: 12px; color: #888; margin-bottom: 4px; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.article-item .meta { font-size: 12px; color: #aaa; }
.article-item .meta .tag { background: #e8f4fc; color: var(--primary); padding: 1px 5px; border-radius: 3px; margin-right: 5px; }

/* 交易所 */
.exchange-section { background: var(--bg-white); border-radius: 6px; padding: 12px; margin-bottom: 10px; }
.exchange-section h2 { font-size: 15px; font-weight: bold; border-left: 3px solid var(--primary); padding-left: 8px; margin-bottom: 10px; }
.exchange-scroll { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.exchange-card { display: block; min-width: 0; border: 1px solid var(--border); border-radius: 6px; padding: 8px 5px; background: #fff; text-align: center; text-decoration: none; overflow: hidden; }
.exchange-card .icon { display: block; width: 42px; height: 42px; border-radius: 9px; background: #f5f5f5; overflow: hidden; margin: 0 auto 6px; }
.exchange-card .icon img { display: block; width: 100%; height: 100%; object-fit: cover; }
.exchange-info { display: block; min-width: 0; }
.exchange-info strong { display: block; height: 20px; line-height: 20px; overflow: hidden; color: #333; font-size: 13px; font-weight: bold; white-space: nowrap; text-overflow: ellipsis; }
.exchange-info em { display: block; height: 18px; line-height: 18px; margin-top: 2px; overflow: hidden; color: #999; font-size: 12px; font-style: normal; white-space: nowrap; text-overflow: ellipsis; }

/* 标签云 */
.hot-tags { background: var(--bg-white); border-radius: 6px; padding: 12px; margin-bottom: 10px; }
.hot-tags h2 { font-size: 15px; font-weight: bold; border-left: 3px solid var(--primary); padding-left: 8px; margin-bottom: 10px; }
.tag-cloud { display: flex; flex-wrap: wrap; gap: 6px; }
.tag-cloud a { background: #f0f0f0; color: #555; padding: 4px 10px; border-radius: 15px; text-decoration: none; font-size: 12px; }

/* 百科/术语 */
.baike-card,.term-section { background: var(--bg-white); border-radius: 6px; padding: 12px; margin-bottom: 10px; }
.baike-card h2,.term-section h2 { font-size: 15px; font-weight: bold; border-left: 3px solid var(--primary); padding-left: 8px; margin-bottom: 10px; color: #333; }
.side-news-list { display: block; }
.side-news-item { display: flex; align-items: center; gap: 7px; height: 34px; line-height: 34px; border-bottom: 1px dashed #e6e6e6; overflow: hidden; font-size: 13px; }
.side-news-item:last-child { border-bottom: 0; }
.side-news-item:before { content: ""; width: 4px; height: 4px; background: var(--primary); flex-shrink: 0; }
.side-news-item a { min-width: 0; flex: 1; overflow: hidden; color: #333; text-decoration: none; text-overflow: ellipsis; white-space: nowrap; }
.side-news-item span { color: #999; font-size: 12px; flex-shrink: 0; }
