* { box-sizing: border-box; }
body { background:#fff; margin:0; padding:0; font-family:"Microsoft YaHei","微软雅黑",Arial,sans-serif; font-size:14px; color:#333; }
a { color:#333; text-decoration:none; }
a:hover { color:#1E9FFF; }

.tq-container { width:1200px; margin:0 auto; }

/* ===== 顶部工具条 ===== */
.tq-topbar { background:#f8f8f8; border-bottom:1px solid #eee; height:30px; line-height:30px; font-size:12px; color:#666; }
.tq-topbar .tq-container { display:flex; justify-content:space-between; }
.tq-topbar a { color:#666; margin:0 8px; }
.tq-topbar a:hover { color:#1E9FFF; }

/* ===== 头部 ===== */
.head_w { background:#fff !important; background-image:none !important; border-bottom:none !important; }
.head_w .headh {
  height:100px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  width:1200px !important;
  margin:0 auto !important;
}
.headh span.logo {
  background:none !important;
  width:auto !important;
  text-align:left !important;
  margin-right:0 !important;
  height:60px !important;
}
.headh span.logo a {
  background:none !important;
  text-indent:0 !important;
  width:auto !important;
  height:60px !important;
  margin-top:0 !important;
  color:#1E9FFF !important;
  font-size:36px !important;
  font-weight:bold !important;
  text-decoration:none !important;
  line-height:60px !important;
  font-family:"Microsoft YaHei","微软雅黑",sans-serif;
}

/* 搜索框 */
.headh .tianqichaxun {
  margin:0 !important;
  float:none !important;
  height:40px !important;
}
.headh .tianqichaxun form { display:flex; }
.headh .tianqichaxun select {
  height:40px;
  border:2px solid #1E9FFF;
  border-right:none;
  background:#fff;
  padding:0 10px;
  color:#333;
  border-radius:0;
  outline:none;
  font-size:14px;
}
.headh .tianqichaxun input[type="text"] {
  background:#fff !important;
  border:2px solid #1E9FFF !important;
  border-left:none !important;
  border-right:none !important;
  border-radius:0 !important;
  color:#333 !important;
  padding:0 15px !important;
  height:40px !important;
  line-height:40px !important;
  width:300px !important;
  font-size:14px;
  outline:none;
}
.headh .tianqichaxun input[type="text"]::placeholder { color:#999; }
.headh .tianqichaxun input[type="submit"],
.headh .tianqichaxun button {
  background:#1E9FFF !important;
  border:2px solid #1E9FFF !important;
  border-radius:0 !important;
  color:#fff !important;
  height:40px !important;
  cursor:pointer;
  padding:0 25px !important;
  font-size:15px;
}

/* 头部右侧信息 */
.headh .bashe_info {
  float:none !important;
  width:auto !important;
  text-align:right !important;
  margin-left:30px !important;
}
.headh .bashe_info strong,
.headh .bashe_info h1 {
  color:#333 !important;
  font-size:16px !important;
  text-shadow:none !important;
  font-weight:normal !important;
}
.headh .bashe_info p {
  color:#999 !important;
  font-size:12px !important;
  margin:5px 0 0 !important;
}

/* ===== 导航菜单 ===== */
.head:not(.headh) { width:100% !important; background:#1E9FFF; }
.head .menu_box {
  background:#1E9FFF !important;
  background-image:none !important;
  height:45px !important;
  border-radius:0 !important;
  box-shadow:none !important;
  border:none !important;
}
.head .menu_box::before { display:none; }
.head .menu_box ul {
  width:1200px !important;
  margin:0 auto !important;
  height:45px;
  display:flex;
  list-style:none;
  padding:0;
}
.head .menu_box li {
  background:none !important;
  background-image:none !important;
  height:45px !important;
  line-height:45px !important;
  font-size:16px !important;
  padding:0 !important;
  font-family:"Microsoft YaHei","微软雅黑",sans-serif !important;
  position:relative;
  flex:none;
  width:auto;
}
.head .menu_box li::after { display:none; }
.head .menu_box li i { display:none !important; }
.head .menu_box li a {
  background:none !important;
  background-image:none !important;
  padding:0 25px !important;
  width:auto !important;
  height:45px !important;
  line-height:45px !important;
  color:#fff !important;
  text-decoration:none !important;
  text-align:center !important;
  font-size:16px;
  transition:background .2s;
  display:block;
}
.head .menu_box li a:hover,
.head .menu_box li a.current {
  background:#0c80dc !important;
  background-image:none !important;
  color:#fff !important;
  text-shadow:none !important;
}
.head .menu_box li.first_item a {
  width:auto !important;
  background:none !important;
  background-image:none !important;
}
.head .menu_box .menu_right,
.head .menu_box .n_l { display:none !important; }

/* ===== 功能横幅 ===== */
.tq-banner {
  background:linear-gradient(to right, #e3f2fd, #f0f7ff, #e3f2fd);
  padding:15px 0;
  margin-bottom:20px;
  border-bottom:1px solid #e8f4ff;
}
.tq-banner .tq-container { display:flex; align-items:center; justify-content:space-between; }
.tq-banner-icons { display:flex; gap:30px; }
.tq-banner-icon { display:flex; flex-direction:column; align-items:center; gap:5px; cursor:pointer; }
.tq-banner-icon .icon {
  width:50px;
  height:50px;
  border-radius:50%;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  box-shadow:0 2px 8px rgba(0,0,0,0.08);
}
.tq-banner-icon .label { font-size:13px; color:#666; }
.tq-banner-qrcode { display:flex; align-items:center; gap:15px; }
.tq-banner-qrcode .qr { width:70px; height:70px; background:#fff; padding:5px; }
.tq-banner-qrcode .qr-text { font-size:12px; color:#666; line-height:1.6; }

/* ===== 主体布局 ===== */
.tq-main { display:flex; gap:20px; }
.tq-left { flex:1; min-width:0; }
.tq-right { width:300px; flex-shrink:0; }

/* ===== 通用卡片 ===== */
.tq-card {
  background:#fff;
  border:1px solid #e8e8e8;
  margin-bottom:20px;
  overflow:hidden;
}
.tq-card-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 15px;
  border-bottom:2px solid #1E9FFF;
  height:40px;
  line-height:40px;
  background:#fff;
}
.tq-card-head h3 {
  font-size:16px;
  color:#333;
  margin:0;
  padding:0;
  font-weight:normal;
  position:relative;
}
.tq-card-head h3::before {
  content:'';
  display:inline-block;
  width:4px;
  height:16px;
  background:#1E9FFF;
  margin-right:10px;
  vertical-align:-3px;
}
.tq-card-head h3 a { color:#333; text-decoration:none; }
.tq-card-head h3 a:hover { color:#1E9FFF; }
.tq-card-head .more { font-size:13px; color:#999; }
.tq-card-head .more:hover { color:#1E9FFF; }
.tq-card-head .tabs { display:flex; gap:20px; }
.tq-card-head .tabs a { font-size:14px; color:#666; line-height:40px; height:40px; }
.tq-card-head .tabs a:hover { color:#1E9FFF; }
.tq-card-head .tabs a.active { color:#1E9FFF; }
.tq-card-body { padding:15px; }

/* ===== 头条新闻 ===== */
.tq-headline { display:flex; gap:15px; padding:15px; border-bottom:1px solid #f0f0f0; }
.tq-headline-img { width:240px; height:160px; overflow:hidden; flex-shrink:0; }
.tq-headline-img img { width:100%; height:100%; object-fit:cover; }
.tq-headline-text { flex:1; }
.tq-headline-text h2 { font-size:20px; margin:0 0 10px; font-weight:normal; line-height:1.4; }
.tq-headline-text h2 a { color:#333; }
.tq-headline-text h2 a:hover { color:#1E9FFF; }
.tq-headline-text p { color:#666; font-size:14px; line-height:1.8; margin:0; }

/* ===== 新闻列表 ===== */
.tq-news-list { list-style:none; padding:0 15px; margin:0; }
.tq-news-list li {
  padding:9px 0;
  border-bottom:1px dashed #f0f0f0;
  display:flex;
  align-items:center;
  font-size:14px;
}
.tq-news-list li:last-child { border-bottom:none; }
.tq-news-list .cat-tag {
  font-size:12px;
  padding:2px 6px;
  margin-right:10px;
  flex-shrink:0;
  font-weight:normal;
  background:#f0f7ff;
  color:#1E9FFF;
}
.tq-news-list a { flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.tq-news-list .date { color:#999; font-size:12px; margin-left:10px; flex-shrink:0; }

/* ===== 带图新闻列表 ===== */
.tq-thumb-news { display:flex; flex-wrap:wrap; gap:15px; padding:15px; }
.tq-thumb-item { width:calc(33.333% - 10px); }
.tq-thumb-item img { width:100%; height:120px; object-fit:cover; }
.tq-thumb-item h4 { font-size:14px; margin:8px 0 0; font-weight:normal; line-height:1.5; }
.tq-thumb-item h4 a { color:#333; }
.tq-thumb-item h4 a:hover { color:#1E9FFF; }

/* ===== 省份天气链接 ===== */
.tq-province-list { display:flex; flex-wrap:wrap; padding:15px; }
.tq-province-list a {
  display:inline-block;
  padding:6px 12px;
  font-size:14px;
  color:#333;
}
.tq-province-list a:hover { color:#1E9FFF; text-decoration:underline; }
.tq-province-list a.red { color:#ff5040; font-weight:bold; }

/* ===== 天气排行榜 ===== */
.tq-rank-bar { display:flex; gap:15px; margin-bottom:20px; }
.tq-rank-card {
  flex:1;
  background:#fff;
  border:1px solid #e8e8e8;
  overflow:hidden;
}
.tq-rank-tabs {
  display:flex;
  border-bottom:2px solid #1E9FFF;
  background:#fff;
  height:40px;
  line-height:40px;
}
.tq-rank-tabs span {
  flex:1;
  text-align:center;
  font-size:15px;
  color:#333;
  cursor:pointer;
  background:#f8f8f8;
  font-weight:normal;
}
.tq-rank-tabs span.active {
  color:#fff;
  background:#1E9FFF;
  font-weight:normal;
}
.tq-rank-list { padding:5px 15px; }
.tq-rank-list ol { list-style:none; padding:0; margin:0; counter-reset:rank; }
.tq-rank-list li {
  counter-increment:rank;
  display:flex;
  align-items:center;
  padding:7px 0;
  border-bottom:1px dashed #f0f0f0;
  font-size:13px;
}
.tq-rank-list li:last-child { border-bottom:none; }
.tq-rank-list li::before {
  content:counter(rank);
  width:18px;
  height:18px;
  line-height:18px;
  text-align:center;
  background:#ccc;
  color:#fff;
  font-size:11px;
  margin-right:10px;
  flex-shrink:0;
}
.tq-rank-list li:nth-child(1)::before { background:#ff5040; }
.tq-rank-list li:nth-child(2)::before { background:#ff8000; }
.tq-rank-list li:nth-child(3)::before { background:#ffc000; color:#333; }
.tq-rank-city { flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.tq-rank-city a { color:#333; }
.tq-rank-city a:hover { color:#1E9FFF; text-decoration:underline; }
.tq-rank-prov { color:#999; font-size:12px; margin-left:5px; }
.tq-rank-val { color:#ff5040; font-size:13px; }

/* ===== 空气质量 ===== */
.tq-aqi-table { width:100%; border-collapse:collapse; font-size:13px; }
.tq-aqi-table th { background:#f8f8f8; color:#666; font-weight:normal; padding:8px; text-align:left; border-bottom:1px solid #eee; }
.tq-aqi-table td { padding:7px 8px; border-bottom:1px dashed #f0f0f0; }
.tq-aqi-table .aqi-val { font-weight:bold; }
.tq-aqi-good { color:#00a050; }
.tq-aqi-mod { color:#ffa000; }
.tq-aqi-bad { color:#ff5040; }
.tq-aqi-poor { color:#9933cc; }

/* ===== 天气预警列表 ===== */
.tq-warning-list { list-style:none; padding:0 15px; margin:0; }
.tq-warning-list li { padding:8px 0; border-bottom:1px dashed #f0f0f0; font-size:13px; }
.tq-warning-list li:last-child { border-bottom:none; }
.tq-warning-list .level {
  display:inline-block;
  padding:2px 6px;
  font-size:11px;
  color:#fff;
  margin-right:8px;
}
.tq-warning-list .level.red { background:#ff5040; }
.tq-warning-list .level.orange { background:#ff8000; }
.tq-warning-list .level.yellow { background:#ffc000; color:#333; }
.tq-warning-list .level.blue { background:#1E9FFF; }
.tq-warning-list a { color:#333; }
.tq-warning-list a:hover { color:#1E9FFF; text-decoration:underline; }

/* ===== 默认城市天气 ===== */
.tq-city-weather { padding:15px; }
.tq-city-weather h3 { margin:0 0 10px; font-size:15px; }
.tq-city-weather h3 a { color:#1E9FFF; }
.tq-city-day { display:flex; align-items:center; padding:8px 0; border-bottom:1px dashed #f0f0f0; }
.tq-city-day:last-child { border-bottom:none; }
.tq-city-day .day-info { flex:1; }
.tq-city-day .day-info .date { font-size:13px; color:#666; }
.tq-city-day .day-info .temp { font-size:15px; margin-top:3px; }
.tq-city-day .day-info .temp .low { color:#1E9FFF; }
.tq-city-day .day-info .temp .high { color:#ff5040; }

/* ===== 便民工具 ===== */
.tq-tools { display:flex; flex-wrap:wrap; padding:10px 15px; }
.tq-tools a { width:50%; padding:6px 0; font-size:13px; color:#333; }
.tq-tools a:hover { color:#1E9FFF; text-decoration:underline; }
.tq-tools a::before { content:"›"; color:#1E9FFF; margin-right:5px; }

/* ===== 友情链接 ===== */
.tq-links { padding:15px; }
.tq-links a { display:inline-block; padding:3px 8px; font-size:13px; color:#666; }
.tq-links a:hover { color:#1E9FFF; text-decoration:underline; }

/* ===== 资讯页布局 ===== */
.tq-news-page { display:flex; gap:20px; margin-top:20px; }
.tq-news-main { flex:1; min-width:0; }
.tq-news-side { width:300px; flex-shrink:0; }

/* ===== 资讯分类导航 ===== */
.tq-cat-nav {
  display:flex;
  background:#fff;
  border:1px solid #e8e8e8;
  margin-bottom:20px;
  margin-top:20px;
  border-bottom:2px solid #1E9FFF;
  overflow:hidden;
}
.tq-cat-nav a {
  padding:0 25px;
  height:42px;
  line-height:42px;
  font-size:15px;
  color:#333;
  border-right:1px solid #f0f0f0;
}
.tq-cat-nav a:last-child { border-right:none; }
.tq-cat-nav a:hover { color:#1E9FFF; }
.tq-cat-nav a.active {
  color:#fff;
  background:#1E9FFF;
}

/* ===== 资讯文章卡片 ===== */
.tq-article-card {
  display:flex;
  gap:15px;
  padding:15px 0;
  border-bottom:1px dashed #f0f0f0;
}
.tq-article-card:last-child { border-bottom:none; }
.tq-article-thumb { width:180px; height:120px; overflow:hidden; flex-shrink:0; }
.tq-article-thumb img { width:100%; height:100%; object-fit:cover; }
.tq-article-info { flex:1; }
.tq-article-info h3 { font-size:18px; margin:0 0 8px; font-weight:normal; }
.tq-article-info h3 a { color:#333; }
.tq-article-info h3 a:hover { color:#1E9FFF; }
.tq-article-info .summary { color:#666; font-size:14px; line-height:1.6; margin:0 0 8px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.tq-article-info .meta { font-size:12px; color:#999; }
.tq-article-info .meta .cat { background:#e8f0fe; color:#1E9FFF; padding:2px 6px; margin-right:8px; }

/* ===== 热榜 ===== */
.tq-hot-list { list-style:none; padding:0 15px; margin:0; counter-reset:hot; }
.tq-hot-list li { counter-increment:hot; padding:8px 0; border-bottom:1px dashed #f0f0f0; font-size:13px; display:flex; align-items:center; }
.tq-hot-list li:last-child { border-bottom:none; }
.tq-hot-list li::before {
  content:counter(hot);
  width:18px;
  height:18px;
  line-height:18px;
  text-align:center;
  background:#ccc;
  color:#fff;
  font-size:11px;
  margin-right:10px;
  flex-shrink:0;
}
.tq-hot-list li:nth-child(1)::before { background:#ff5040; }
.tq-hot-list li:nth-child(2)::before { background:#ff8000; }
.tq-hot-list li:nth-child(3)::before { background:#ffc000; color:#333; }
.tq-hot-list a { flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.tq-hot-list a:hover { color:#1E9FFF; text-decoration:underline; }

/* ===== 分页 ===== */
.tq-pagination { text-align:center; padding:20px 0; }
.tq-pagination a, .tq-pagination span {
  display:inline-block;
  padding:6px 12px;
  margin:0 2px;
  border:1px solid #e8e8e8;
  font-size:14px;
  color:#333;
  background:#fff;
}
.tq-pagination span.current {
  background:#1E9FFF;
  color:#fff;
  border-color:#1E9FFF;
}
.tq-pagination a:hover {
  border-color:#1E9FFF;
  color:#1E9FFF;
}

/* ===== 面包屑 ===== */
.tq-breadcrumb { padding:10px 0; font-size:13px; color:#999; }
.tq-breadcrumb a { color:#999; }
.tq-breadcrumb a:hover { color:#1E9FFF; }

/* ===== 底部 ===== */
.foot { background:#f8f8f8; margin-top:20px; padding:25px 0; border-top:1px solid #eee; text-align:center; color:#666; font-size:12px; line-height:2; }
.foot a { color:#666; }
.foot a:hover { color:#1E9FFF; }
