/* 现代化美化增强 v2 — 更大胆的配色、圆角与层次（UTF-8，置于既有 CSS 之后） */

:root {
  --jhy-primary: #0ea5e9;
  --jhy-primary-deep: #0284c7;
  --jhy-primary-dark: #0c4a6e;
  --jhy-accent: #fb923c;
  --jhy-accent-hot: #f97316;
  --jhy-surface: #ffffff;
  --jhy-surface-2: #f0f9ff;
  --jhy-border: rgba(14, 165, 233, 0.18);
  --jhy-text: #0f172a;
  --jhy-muted: #64748b;
  --jhy-radius: 14px;
  --jhy-radius-sm: 10px;
  --jhy-shadow: 0 12px 40px -12px rgba(15, 23, 42, 0.12);
  --jhy-shadow-hover: 0 20px 50px -15px rgba(14, 165, 233, 0.35);
  --jhy-glow: 0 0 0 1px rgba(255, 255, 255, 0.12) inset;
}

/* 页面基底：冷色网格 + 柔和渐变 */
html {
  scroll-behavior: smooth;
}

body {
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", "Helvetica Neue", Arial, sans-serif !important;
  color: var(--jhy-text) !important;
  line-height: 1.65 !important;
  background-color: #e0f2fe !important;
  background-image:
    radial-gradient(ellipse 120% 80% at 50% -20%, rgba(14, 165, 233, 0.22), transparent 55%),
    radial-gradient(ellipse 80% 50% at 100% 50%, rgba(251, 146, 60, 0.06), transparent 50%),
    linear-gradient(180deg, #f0f9ff 0%, #e0f2fe 35%, #dbeafe 100%) !important;
  background-attachment: fixed !important;
}

::selection {
  background: rgba(14, 165, 233, 0.28);
  color: inherit;
}

/* 顶栏：强对比渐变 + 底部高光线 */
#wrapper #head {
  background: linear-gradient(125deg, #0369a1 0%, #0ea5e9 42%, #0284c7 78%, #075985 100%) !important;
  box-shadow: 0 8px 32px rgba(8, 47, 73, 0.35), var(--jhy-glow) !important;
  position: relative;
}

#wrapper #head::after {
  content: "";
  display: block;
  height: 3px;
  background: linear-gradient(90deg, transparent, rgba(251, 146, 60, 0.95), rgba(255, 255, 255, 0.5), rgba(251, 146, 60, 0.95), transparent);
  opacity: 0.9;
}

#wrapper #head .top {
  background: transparent !important;
}

#wrapper #head .top .TopInfo .tel .phone_number {
  color: #fff !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  font-weight: 700;
  letter-spacing: 0.02em;
}

#wrapper #head .top .TopInfo .link a {
  color: rgba(255, 255, 255, 0.92) !important;
  transition: color 0.2s, transform 0.2s;
  font-weight: 500;
}

#wrapper #head .top .TopInfo .link a:hover {
  color: #fff !important;
  text-decoration: none;
}

/* 导航：玻璃条 + 悬浮态 */
#wrapper #head #NavLink .NavBG {
  background: rgba(0, 0, 0, 0.22) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 0 0 var(--jhy-radius-sm) var(--jhy-radius-sm);
  margin: 0 4px;
}

#wrapper #head #NavLink #sddm li a {
  border-radius: 10px 10px 0 0;
  transition: all 0.28s ease;
  margin: 0 1px;
  font-weight: 500;
}

#wrapper #head #NavLink #sddm li a:hover {
  background: rgba(255, 255, 255, 0.22) !important;
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}

/* 搜索框 */
.SearchBar #search-text {
  border-radius: 24px 0 0 24px !important;
  border: 1px solid rgba(255, 255, 255, 0.35) !important;
  background: rgba(255, 255, 255, 0.18) !important;
  color: #fff !important;
  padding-left: 14px !important;
  transition: all 0.3s;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) inset;
}

.SearchBar #search-text:focus {
  background: rgba(255, 255, 255, 0.3) !important;
  border-color: rgba(255, 255, 255, 0.55) !important;
  outline: none;
}

.SearchBar #search-text::placeholder {
  color: rgba(255, 255, 255, 0.72) !important;
}

.SearchBar #search-submit {
  border-radius: 0 24px 24px 0 !important;
  background: linear-gradient(180deg, rgba(251, 146, 60, 0.95), var(--jhy-accent-hot)) !important;
  border: 1px solid rgba(255, 255, 255, 0.35) !important;
  border-left: none !important;
  color: #fff !important;
  font-weight: 600;
  transition: all 0.3s;
}

.SearchBar #search-submit:hover {
  filter: brightness(1.08);
  box-shadow: 0 4px 16px rgba(249, 115, 22, 0.45);
}

/* 主体 */
#body {
  padding-top: 24px;
  padding-bottom: 28px;
}

/* 与下方 jhyArticleListMainBlock 共用同一外层宽度（1030 = 980 内容区 + 48 内边距 + 2 边框） */
#body .MainBlock {
  background: var(--jhy-surface);
  border-radius: var(--jhy-radius);
  box-shadow: var(--jhy-shadow);
  padding: 22px 24px;
  margin-top: 22px;
  margin-bottom: 22px;
  border: 1px solid var(--jhy-border);
  box-sizing: border-box !important;
  width: 1030px !important;
  max-width: 1030px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#body .right,
#body .left,
#body .right2 {
  border-radius: var(--jhy-radius) !important;
  border: 1px solid var(--jhy-border) !important;
  box-shadow: var(--jhy-shadow) !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease !important;
  overflow: hidden;
  background: var(--jhy-surface) !important;
}

#body .right:hover,
#body .left:hover,
#body .right2:hover {
  box-shadow: var(--jhy-shadow-hover) !important;
  transform: translateY(-4px);
}

/* 区块标题：斜向渐变条 + 强调色左边线 */
#body .topic {
  background: linear-gradient(105deg, var(--jhy-surface-2) 0%, #e0f2fe 55%, #f8fafc 100%) !important;
  border-bottom: 2px solid var(--jhy-primary) !important;
  border-radius: var(--jhy-radius-sm) var(--jhy-radius-sm) 0 0;
}

#body .topic .TopicTitle {
  border-left: 5px solid var(--jhy-accent-hot) !important;
  padding-left: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
}

#body .topic .TopicTitle a {
  color: var(--jhy-primary-deep) !important;
  transition: color 0.2s;
}

#body .topic .TopicTitle a:hover {
  color: var(--jhy-primary-dark) !important;
}

/* 列表 */
#body .MBlockTable td {
  transition: background 0.2s;
}

#body .MBlockTable tr:hover td {
  background: rgba(240, 249, 255, 0.85);
}

#body .MBlockTable .ListTitle a {
  color: var(--jhy-text) !important;
  transition: all 0.2s;
  display: inline-block;
  font-weight: 500;
}

#body .MBlockTable .ListTitle a:hover {
  color: var(--jhy-primary-deep) !important;
  padding-left: 6px;
  text-decoration: none;
}

/* 首页分类块：外层与 MainBlock 同为 1030px（border-box），内层可用宽度仍为 980px */
#body .jhyArticleListMainBlock {
  clear: both !important;
  box-sizing: border-box !important;
  width: 1030px !important;
  max-width: 1030px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  /* 与 MainBlock 左右：1px + 24px，内宽 1030 - 50 = 980px */
  border-left: 1px solid transparent !important;
  border-right: 1px solid transparent !important;
}

#body .jhyArticleListMainBlock > .WidthTab2 {
  width: 20px !important;
  min-width: 20px !important;
}

#body .jhyArticleListMainBlock .juhaoyongALCommonUnitLast {
  float: right !important;
}

/* 第 2～5 行块之间的竖间距 */
#body .jhyArticleListMainBlock + .juhaoyongHeightTab {
  height: 20px !important;
  min-height: 20px !important;
}

/* 首页底部：常见问题（与 MainBlock 同宽） */
#body .jhyHomeFaq {
  box-sizing: border-box !important;
  width: 1030px !important;
  max-width: 1030px !important;
  margin: 8px auto 0 !important;
  padding: 22px 24px 28px !important;
  border: 1px solid var(--jhy-border) !important;
  border-radius: var(--jhy-radius) !important;
  background: var(--jhy-surface) !important;
  box-shadow: var(--jhy-shadow) !important;
}

#body .jhyHomeFaqInner {
  max-width: 100%;
}

#body .jhyHomeFaqTitle {
  margin: 0 0 18px !important;
  padding-bottom: 12px !important;
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  color: var(--jhy-primary-deep) !important;
  border-bottom: 2px solid var(--jhy-primary) !important;
  letter-spacing: 0.04em !important;
}

#body .jhyHomeFaqSections {
  margin: 0 !important;
  padding: 0 !important;
}

#body .jhyHomeFaqSection {
  margin: 0 0 22px !important;
}

#body .jhyHomeFaqSection:last-child {
  margin-bottom: 0 !important;
}

#body .jhyHomeFaqSectionTitle {
  margin: 0 0 12px !important;
  padding: 0 !important;
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  color: var(--jhy-primary) !important;
  letter-spacing: 0.02em !important;
  line-height: 1.45 !important;
}

#body .jhyHomeFaqList {
  margin: 0 !important;
  padding: 0 !important;
}

#body .jhyHomeFaqQ {
  margin: 0 0 6px !important;
  padding: 14px 0 0 !important;
  font-size: 0.98rem !important;
  font-weight: 600 !important;
  color: var(--jhy-text) !important;
  line-height: 1.55 !important;
}

#body .jhyHomeFaqQ:first-child {
  padding-top: 0 !important;
}

#body .jhyHomeFaqA {
  margin: 0 0 14px !important;
  padding: 0 0 14px 14px !important;
  border-left: 3px solid rgba(14, 165, 233, 0.35) !important;
  color: var(--jhy-muted) !important;
  font-size: 0.92rem !important;
  line-height: 1.65 !important;
}

#body .jhyHomeFaqA p {
  margin: 0 !important;
}

#body .jhyHomeFaqAbody {
  margin: 0 !important;
}

/* 题库分类页（如 /tiku/dangjian/）内嵌 FAQ，宽度随主栏 */
#body .inner .main .jhyTikuCategoryFaq {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 22px 0 0 !important;
}

.juhaoyongALCommonUnit1,
.juhaoyongALCommonUnit2 {
  border-radius: var(--jhy-radius) !important;
  border: 1px solid var(--jhy-border) !important;
  box-shadow: var(--jhy-shadow) !important;
  background: var(--jhy-surface) !important;
  transition: all 0.35s ease !important;
  overflow: hidden;
}

.juhaoyongALCommonUnit1:hover,
.juhaoyongALCommonUnit2:hover {
  box-shadow: var(--jhy-shadow-hover) !important;
  transform: translateY(-5px);
}

.juhaoyongALCommonUnit1 .topic,
.juhaoyongALCommonUnit2 .topic {
  background: linear-gradient(105deg, var(--jhy-surface-2) 0%, #e0f2fe 100%) !important;
  border-bottom: 2px solid var(--jhy-primary) !important;
}

.juhaoyongALCommonUnit1 .TopicTitle a,
.juhaoyongALCommonUnit2 .TopicTitle a {
  color: var(--jhy-primary-deep) !important;
  font-weight: 700 !important;
  transition: color 0.2s;
}

.juhaoyongALCommonUnit1 .TopicTitle a:hover,
.juhaoyongALCommonUnit2 .TopicTitle a:hover {
  color: var(--jhy-primary-dark) !important;
}

.JHYBlockTable tr {
  transition: background 0.2s;
}

.JHYBlockTable tr:hover {
  background: rgba(240, 249, 255, 0.85);
}

.JHYBlockTable .ListTitle a {
  color: var(--jhy-text) !important;
  transition: all 0.2s;
  font-weight: 500;
}

.JHYBlockTable .ListTitle a:hover {
  color: var(--jhy-primary-deep) !important;
  padding-left: 6px;
  text-decoration: none;
}

.JHYBlockTable td span {
  color: var(--jhy-muted) !important;
  font-size: 12px;
}

/* 内页侧栏与正文卡片 */
#body .inner .right {
  border-radius: var(--jhy-radius) !important;
  border: 1px solid var(--jhy-border) !important;
  box-shadow: var(--jhy-shadow) !important;
  background: var(--jhy-surface);
}

#body .inner .left .Sbox {
  border-radius: var(--jhy-radius) !important;
  border: 1px solid var(--jhy-border) !important;
  box-shadow: var(--jhy-shadow) !important;
  background: var(--jhy-surface) !important;
  margin-bottom: 18px;
  overflow: hidden;
}

#body .inner .left .Sbox .topic {
  background: linear-gradient(105deg, var(--jhy-surface-2) 0%, #e0f2fe 100%) !important;
  border-left: 5px solid var(--jhy-primary) !important;
  font-weight: 700 !important;
}

#body .inner .left .Sbox .topicCurrent {
  border-left-color: var(--jhy-accent-hot) !important;
  background: linear-gradient(105deg, #fff7ed 0%, #ffedd5 100%) !important;
}

#body .inner .left .Sbox .articleDirTree ul li a {
  transition: all 0.22s;
  border-radius: 8px;
  margin: 3px 8px;
}

#body .inner .left .Sbox .articleDirTree ul li a:hover {
  background: linear-gradient(120deg, var(--jhy-primary) 0%, var(--jhy-primary-deep) 100%) !important;
  padding-left: 36px !important;
  transform: translateX(4px);
  color: #fff !important;
}

/* 文章正文 */
.content .title h3 {
  color: var(--jhy-text) !important;
  font-weight: 700 !important;
  font-size: 22px !important;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 3px solid transparent;
  border-image: linear-gradient(90deg, var(--jhy-primary), var(--jhy-accent)) 1;
}

.content .infos {
  color: var(--jhy-muted) !important;
  font-size: 13px;
  margin-bottom: 22px;
}

.content .maincontent {
  line-height: 1.85 !important;
  color: #334155 !important;
  font-size: 15px;
}

.content .maincontent p {
  margin-bottom: 14px;
}

/* 分页 */
.t_page {
  padding: 22px !important;
  background: linear-gradient(180deg, #f8fafc, #f1f5f9) !important;
  border-radius: var(--jhy-radius-sm);
  margin-top: 22px;
  border: 1px solid var(--jhy-border);
}

.t_page a {
  border-radius: 8px !important;
  border: 1px solid #cbd5e1 !important;
  background: #fff !important;
  transition: all 0.2s;
  padding: 8px 14px !important;
  font-weight: 500;
}

.t_page a:hover {
  background: linear-gradient(180deg, var(--jhy-primary), var(--jhy-primary-deep)) !important;
  color: #fff !important;
  border-color: var(--jhy-primary-deep) !important;
  text-decoration: none;
  box-shadow: 0 4px 14px rgba(14, 165, 233, 0.35);
}

.t_page .FontRed {
  background: linear-gradient(180deg, var(--jhy-primary-deep), #0369a1) !important;
  color: #fff !important;
  border-color: transparent !important;
  border-radius: 8px;
  padding: 8px 14px;
  font-weight: 600;
}

/* 页脚：深色 + 橙色点缀 */
#footer {
  background: linear-gradient(160deg, #0f172a 0%, #1e293b 45%, #0f172a 100%) !important;
  color: rgba(255, 255, 255, 0.88) !important;
  margin-top: 48px;
  padding-top: 36px;
  padding-bottom: 36px;
  box-shadow: 0 -12px 40px rgba(15, 23, 42, 0.35);
}

#footer .inner .BottomNav {
  background: rgba(251, 146, 60, 0.12) !important;
  border-radius: var(--jhy-radius-sm);
  margin-bottom: 22px;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

#footer .inner .BottomNav a {
  color: rgba(255, 255, 255, 0.92) !important;
  transition: color 0.2s;
}

#footer .inner .BottomNav a:hover {
  color: #fdba74 !important;
  text-decoration: none;
}

#footer a {
  color: rgba(255, 255, 255, 0.78) !important;
}

#footer a:hover {
  color: #fff !important;
}

/* 列表页表格 */
.ArticleList table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.ArticleList tr {
  border-bottom: 1px solid #e2e8f0;
  transition: background 0.2s;
}

.ArticleList tr:hover {
  background: rgba(240, 249, 255, 0.75);
}

.ArticleList .fw_t a {
  color: var(--jhy-text) !important;
  transition: all 0.2s;
  display: inline-block;
  font-weight: 500;
}

.ArticleList .fw_t a:hover {
  color: var(--jhy-primary-deep) !important;
  padding-left: 6px;
  text-decoration: none;
}

.ArticleList .fw_s {
  color: var(--jhy-muted) !important;
  font-size: 12px;
}

@media (max-width: 1024px) {
  #wrapper #body {
    width: 95% !important;
    max-width: 980px;
  }

  #body .left,
  #body .right,
  #body .right2 {
    margin-bottom: 16px;
  }
}

img {
  transition: opacity 0.3s, transform 0.35s ease;
  max-width: 100%;
  height: auto;
}

#body .MainBlock .right .img img:hover,
#body .MainBlock .right2 .img img:hover {
  transform: scale(1.02);
}

table {
  border-collapse: separate;
  border-spacing: 0;
}

input[type="submit"],
button {
  cursor: pointer;
  transition: all 0.2s ease;
}

input[type="submit"]:hover,
button:hover {
  opacity: 0.95;
  transform: translateY(-1px);
}

a {
  transition: color 0.2s ease;
}

#body .MainBlock .right .img img,
#body .MainBlock .right2 .img img {
  border-radius: var(--jhy-radius-sm);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
}

/* 首页列表：标题单行 + 省略号（覆盖 body 的 line-height:1.65 与链接 inline-block，避免两行折行） */
#body .juhaoyongCommonUnitArticleList .JHYBlockTable,
#body .MainBlock .left .MBlockTable {
  table-layout: fixed;
  width: 100%;
}

#body .juhaoyongCommonUnitArticleList .JHYBlockTable td,
#body .MainBlock .left .MBlockTable td {
  line-height: 27px !important;
}

#body .juhaoyongCommonUnitArticleList .JHYBlockTable td.ListTitle,
#body .MainBlock .left .MBlockTable td.ListTitle {
  overflow: hidden;
  vertical-align: middle;
}

#body .juhaoyongCommonUnitArticleList .JHYBlockTable .ListTitle a,
#body .MainBlock .left .MBlockTable .ListTitle a {
  display: block !important;
  max-width: 100%;
  box-sizing: border-box;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 27px !important;
  font-weight: normal !important;
}

#body .juhaoyongCommonUnitArticleList .JHYBlockTable .ListTitle a:hover,
#body .MainBlock .left .MBlockTable .ListTitle a:hover {
  padding-left: 0 !important;
}
