/* 成语迷 · 馆藏索引主题（预览版，不写入网站） */
:root {
  --paper: #f3f2ee;
  --paper-deep: #e8e8e2;
  --surface: #fffef9;
  --ink: #162a36;
  --ink-soft: #52616a;
  --navy: #173e52;
  --navy-2: #0f303f;
  --vermilion: #b74332;
  --cinnabar: #b74332;
  --vermilion-dark: #923127;
  --rule: #d4d7d2;
  --rule-dark: #aeb8b7;
  --link: #1c6179;
}

* { box-sizing: border-box; }
html { background: var(--paper); }
body {
  background: var(--paper) !important;
  color: var(--ink);
  font: 14px/1.72 -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
}
a { color: var(--link); text-decoration: none; }
a:hover { color: var(--vermilion); text-decoration: none; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 2px solid var(--vermilion); outline-offset: 2px; }
.container { max-width: 1240px !important; }

/* 历史模板将所有词条标为 danger；工具站中它们应是普通索引链接。 */
.has-text-danger { color: var(--link) !important; }
.menu-list a.has-text-danger, .home-panel a.has-text-danger { color: var(--link) !important; }
.menu-list a.has-text-danger:hover, .home-panel a.has-text-danger:hover { color: var(--vermilion) !important; }
.has-text-grey { color: var(--ink-soft) !important; }

/* 一本工具书的书脊：全站唯一的强色块 */
.navbar.is-light {
  min-height: 52px;
  background: var(--navy);
  border: 0;
  border-bottom: 3px solid var(--vermilion);
  box-shadow: none;
}
.navbar-brand { padding-left: 0; }
.navbar-brand .navbar-item { position: relative; gap: 9px; }
.navbar-brand .navbar-item::before {
  content: "成";
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  background: var(--vermilion);
  color: #fff;
  font: 700 15px/1 "STKaiti", "KaiTi", serif;
}
.navbar-item {
  min-height: 49px;
  margin: 0;
  padding: 0 11px !important;
  color: rgba(255,255,255,.84) !important;
  font-size: 14px;
}
.navbar-item .title.is-4 {
  margin: 0;
  color: #fff !important;
  font-family: "STSong", "SimSun", serif;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: .1em;
}
.navbar-item .fa-scroll, .navbar-item .fa-dragon, .navbar-item .fa-book, .navbar-item .fa-layer-group { display: none; }
.navbar-item:hover, .navbar-link:hover { background: rgba(255,255,255,.09) !important; color: #fff !important; }
.navbar.is-light .navbar-link { color: rgba(255,255,255,.84) !important; }
.navbar.is-light .navbar-link:hover { color: #fff !important; }
.navbar-link::after { border-color: rgba(255,255,255,.7) !important; }
.navbar-dropdown { min-width: 126px; padding: 3px 0; border: 1px solid #173e52; border-radius: 0; box-shadow: 0 7px 15px rgba(10,30,40,.22); }
.navbar-dropdown .navbar-item { min-height: 34px; color: var(--ink) !important; padding: 5px 12px !important; }
.navbar-dropdown .navbar-item:hover { background: #edf3f3 !important; color: var(--navy) !important; }
.navbar-burger { color: #fff; }.navbar-burger span { height: 1px; background-color: currentColor; }
.navbar .field { margin-bottom: 0; }.navbar .input { width: 196px; height: 30px; border: 0; border-radius: 1px 0 0 1px; box-shadow: none; font-size: 13px; }
.navbar .input:focus { box-shadow: inset 0 0 0 2px var(--vermilion); }
.navbar .control.has-icons-left .icon { color: var(--ink-soft); }
.button.is-danger { height: 30px; border: 0; border-radius: 0 1px 1px 0; background: var(--vermilion); box-shadow: none; color: #fff !important; font-size: 13px; font-weight: 700; }
.button.is-danger:hover { background: var(--vermilion-dark); }

/* 低调的索引路径 */
.breadcrumb-wrapper { background: #e9ece9; border-bottom: 1px solid var(--rule); box-shadow: none; }
.breadcrumb { margin: 0 !important; padding: 6px 0; font-size: 12px; }.breadcrumb ul { padding: 0; }.breadcrumb li + li::before { color: #81908e; margin: 0 7px; }.breadcrumb a { padding: 0; color: var(--ink-soft) !important; }.breadcrumb .is-active a { color: var(--navy) !important; font-weight: 600; }

main.section { padding: 16px 0 28px; }.main-columns { margin: 0 -9px !important; align-items: flex-start; }.main-columns > .column { padding: 0 9px; }
.main-content { padding: 19px 22px; border: 1px solid var(--rule-dark); border-top: 3px solid var(--navy); border-radius: 0; background: var(--surface); box-shadow: 0 1px 0 rgba(10,30,40,.04); }
.sidebar { padding: 0; background: transparent; }.sidebar .box,.menu.box { margin: 0 0 10px; padding: 0 10px 9px; border: 1px solid var(--rule); border-radius: 0; background: rgba(255,254,249,.72) !important; box-shadow: none; }
.menu-label { margin: 0 -10px 7px; padding: 7px 10px; border-bottom: 1px solid var(--rule); background: #e8ece9; color: var(--navy) !important; font-size: 13px; font-weight: 700; letter-spacing: .05em; }.menu-label i { display: none; }
.grid-cols-2,.grid-cols-4 { display: grid; gap: 0; padding: 0; }.grid-cols-2 { grid-template-columns: repeat(2,minmax(0,1fr)); }.grid-cols-4 { grid-template-columns: repeat(4,minmax(0,1fr)); }.menu-list a { padding: 4px 5px; border-bottom: 1px dotted #d8ddd9; font-size: 13px; }.menu-list a:hover { background:#eaf1f0; }

/* 词典条目 */
.idiom-main-title { margin: 0 0 12px; padding: 0 0 10px; border-bottom: 2px solid var(--navy); background: transparent; color: var(--ink); font-family: "STSong","SimSun",serif; font-size: 29px; font-weight: 700; line-height: 1.22; text-align:left; }.title-deco-left,.title-deco-right,.pinyin-block::before,.pinyin-block::after { display:none; }.pinyin-block { display:inline; margin-left:12px; color:var(--ink-soft); font-family:inherit; font-size:14px; font-weight:400; letter-spacing:.02em; }
.columns.info-columns { display:flex; flex-wrap:wrap; gap:5px; margin:0 0 13px; }.columns.info-columns > .column { flex:0 1 auto; width:auto; padding:0; }.info-card,.info-card.is-danger,.info-card.is-warning,.info-card.is-info { min-width:0; padding:3px 7px; border:1px solid #d7deda; border-radius:0; background:#f0f4f1; box-shadow:none; font-size:12px; }.info-card p { display:inline; white-space:normal; }.info-card p:first-child { margin-right:4px; }.info-card .has-text-danger { color:var(--ink-soft)!important; }.info-card .has-text-weight-bold { font-weight:400!important; }
.content { font-size:15px; }.attribute-tag { margin:0; padding:12px 0; border:0; border-bottom:1px solid var(--rule); }.attribute-tag h2.title.is-4,.related-idioms h2.title.is-4 { margin:0 0 7px; padding:0 0 0 9px; border-left:3px solid var(--vermilion); color:var(--navy)!important; font-size:16px; line-height:1.35; }.attribute-tag h2 i,.related-idioms h2 i { display:none; }.notification.is-danger-light,.notification.is-info-light { margin:0; padding:8px 10px; border:0; border-left:2px solid #bac9c7; border-radius:0; background:#f3f5f1; color:var(--ink); }.attribute-tag .columns { margin:0 -8px; }.attribute-tag .columns > .column { padding:0 8px; }.attribute-tag p { margin:0 0 3px; }
.word-relations { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:0; }.relation-card { min-width:0; padding:8px 10px; border:1px solid var(--rule); border-top:2px solid #c9d4d1; background:var(--surface); }.relation-card h3 { margin:0 0 7px; color:var(--navy); font-size:14px; line-height:1.35; }.relation-value { min-height:27px; color:var(--ink); font-size:14px; line-height:1.65; }.relation-words { display:flex; flex-wrap:wrap; gap:5px 6px; }.relation-word { display:inline-block; padding:1px 6px; border:1px solid #d7deda; background:#f5f7f4; color:var(--link); line-height:1.55; }.relation-more { display:inline-block; margin-top:6px; color:var(--ink-soft); font-size:12px; text-decoration:none; }.relation-more::after { content:" →"; }.relation-more:hover { color:var(--vermilion); text-decoration:underline; }
.ext-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; padding:0; border:1px solid var(--rule); border-radius:0; background:var(--surface); box-shadow:none; }.ext-item { display:grid; grid-template-columns:68px minmax(0,1fr); gap:0; align-items:baseline; min-width:0; margin:0; padding:7px 10px; border:0; border-bottom:1px solid var(--rule); }.ext-item:nth-child(odd) { border-right:1px solid var(--rule); background:#f5f6f2; }.ext-item:hover { background:#edf3f1; }.info-tag { padding:0; color:var(--ink-soft)!important; font-weight:400; }.info-tag::before { display:none; }.info-tag::after { content:"："; }.info-tag a { color:inherit; text-decoration:none; }.info-content { min-width:0; margin:0; color:var(--ink); line-height:1.6; }
.example-sentence { margin:0; padding:12px 0; border-bottom:1px solid var(--rule); background:transparent; }.example-sentence .subtitle { margin:0 0 7px!important; color:var(--navy)!important; font-size:16px; font-weight:700; }.exs-content { counter-reset:sentence; }.exs-content p,.example-sentence>p { position:relative; margin:0; padding:4px 0 4px 20px; background:transparent; color:var(--ink); font-family:inherit; font-size:14px; line-height:1.75; box-shadow:none; }.exs-content p::before { content:counter(sentence) "."; counter-increment:sentence; position:absolute; left:0; top:4px; color:var(--vermilion); font:700 12px/1.75 ui-monospace,monospace; opacity:1; transform:none; }.exs-content p::after { display:none; }.exs-toggle { margin:7px 0 0; border:0; border-bottom:1px dotted currentColor; border-radius:0; background:transparent; color:var(--link); box-shadow:none; }
.related-idioms { margin-top:12px!important; padding:14px 0 0!important; border:0; border-top:1px solid var(--rule); border-radius:0; background:transparent; box-shadow:none; }.related-idioms::before,.has-border-danger::after { display:none; }.related-idioms .columns { margin:0 -4px!important; }.related-idioms .column { padding:4px!important; }.related-idioms .idiom-card { display:block; height:100%; padding:6px 8px; border:1px solid var(--rule); border-radius:0; background:var(--surface); text-align:left!important; box-shadow:none; }.related-idioms .idiom-card:hover { border-color:#83a7ab; background:#f0f5f3; }.related-idioms .idiom-card p { margin:0; color:var(--link)!important; font-size:14px!important; }.related-idioms .idiom-card small { margin:1px 0 0; color:var(--ink-soft)!important; }

.table-container { margin:12px 0; border:1px solid var(--rule); border-radius:0; box-shadow:none; }.table td,.table th { padding:8px 10px; border-color:var(--rule); vertical-align:top; }.table th,.gradient-header th { padding:8px 10px; background:#e7edeb; color:var(--navy)!important; font-weight:700; text-shadow:none; }.gradient-header { background:#e7edeb; } tbody:nth-child(odd),tbody:nth-child(even) { background:var(--surface); } tbody tr:hover { background:#f0f5f3; transform:none; box-shadow:none; }.pagination { margin-top:16px; }.pagination-link,.pagination-previous,.pagination-next { min-width:30px;height:29px;border-radius:0;border-color:var(--rule-dark);font-size:13px; }.pagination-link.is-current { border-color:var(--navy);background:var(--navy); }
.idiom-locator,.smart-category { padding:10px;border:1px solid var(--rule-dark);border-radius:0;background:#f0f3ef;box-shadow:none; }.grid-inputs { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:0; }.input.is-border-danger { height:36px;min-width:38px;border:1px solid var(--rule-dark);border-radius:0; }.input.is-border-danger:focus { border-color:var(--vermilion);box-shadow:0 0 0 2px rgba(183,67,50,.16); }
.idiom-locator .title i { display: none; }

/* 侧栏检索器不承担首页主视觉，压缩成一个明确的小工具模块。 */
.sidebar .idiom-locator {
  margin: 0 0 10px;
  padding: 9px 10px 10px;
  border: 1px solid var(--rule-dark);
  border-top: 2px solid var(--navy);
  background: var(--surface);
}
.sidebar .idiom-locator .title.is-5 {
  margin: 0 0 8px;
  color: var(--navy) !important;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 700;
}
.sidebar .idiom-locator .columns { margin: 0 !important; align-items: center; }
.sidebar .idiom-locator .column { padding: 0; }
.sidebar .idiom-locator .column.is-narrow { padding-left: 5px; }
.sidebar .idiom-locator .grid-inputs { gap: 4px; }
.sidebar .idiom-locator .input.is-border-danger { height: 34px; min-width: 0; font-size: 15px; }
.sidebar .idiom-locator .button { min-width: 58px; height: 34px; padding: 0 9px; border-radius: 0; font-size: 13px; }

/* 组词与标签页的动态结果未使用 idiom-card 类，统一收紧其 a.box 输出。 */
.related-idioms.box {
  margin-top: 14px !important;
  padding: 12px !important;
  border: 1px solid var(--rule-dark);
  border-top: 2px solid var(--navy);
  border-radius: 0;
  background: var(--surface);
  box-shadow: none;
}
.related-idioms.box > h2.title.is-4 { margin: 0 0 9px; }
.related-idioms > .columns > .column > a.box,
.related-idioms > .columns > .column > a.idiom-card {
  display: block;
  min-height: 52px;
  height: 100%;
  padding: 7px 8px;
  border: 1px solid var(--rule);
  border-radius: 0;
  background: var(--surface);
  box-shadow: none;
}
.related-idioms > .columns > .column > a.box:hover,
.related-idioms > .columns > .column > a.idiom-card:hover { border-color: #7fa3a7; background: #eff4f1; }
.related-idioms > .columns > .column > a.box:focus:not(:focus-visible),
.related-idioms > .columns > .column > a.idiom-card:focus:not(:focus-visible) { border-color: var(--rule); }
.related-idioms > .columns > .column > a.box p { margin: 0; color: var(--link) !important; font-size: 14px; }
.related-idioms > .columns > .column > a.box small { display: block; margin-top: 2px; color: var(--ink-soft) !important; font-size: 12px; }
.related-idioms em { color: var(--vermilion); font-style: normal; font-weight: 700; }

/* 组词页的标题仅是索引页标题：无拼音副标题时收紧其空白与区块间距。 */
article.main-content:has(.idiom-main-title:not(:has(.pinyin-block))) {
  min-height: 0;
  padding: 8px 0 4px;
  border: 0;
  background: transparent;
  box-shadow: none;
}
article.main-content:has(> .idiom-main-title:not(:has(.pinyin-block))) {
  padding: 8px 0 4px !important;
  border: 0 !important;
  border-top: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
article.main-content .idiom-main-title:not(:has(.pinyin-block)) {
  margin: 0;
  padding: 2px 0 2px 12px;
  border: 0;
  border-left: 4px solid var(--vermilion);
  font-size: 29px;
  line-height: 1.3;
}
article.main-content:has(.idiom-main-title:not(:has(.pinyin-block))) + .related-idioms {
  margin-top: 12px !important;
}
@media screen and (max-width:1023px) { .navbar-brand { padding-left:8px; }.navbar-menu { padding:4px 8px;border-top:1px solid rgba(255,255,255,.14);background:var(--navy);box-shadow:none; }.navbar-item { min-height:38px; }.navbar-end .navbar-item { padding:6px 0!important; }.navbar .input { width:min(100%,280px); }.main-columns>.column { padding-top:0;padding-bottom:12px; } }
@media screen and (max-width:768px) { body { font-size:14px; } main.section { padding:8px 0 16px; }.container { padding-left:8px;padding-right:8px; }.main-columns { margin:0 -4px!important; }.main-columns>.column { padding-left:4px;padding-right:4px; }.main-content { padding:14px 12px; }.idiom-main-title { font-size:23px; }.pinyin-block { display:block;margin:5px 0 0;font-size:13px; }.attribute-tag .columns>.column { padding-top:3px;padding-bottom:3px; }.word-relations { grid-template-columns:1fr; }.ext-list { grid-template-columns:1fr; }.ext-item,.ext-item:nth-child(odd) { grid-template-columns:64px minmax(0,1fr); padding:6px; border-right:0; }.grid-cols-4 { grid-template-columns:repeat(2,minmax(0,1fr)); }.related-idioms .column { width:50%; }.table-container { overflow-x:auto; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important;transition:none!important;animation:none!important; } }

/* 首页：首页先检索，再以索引浏览 */
.home-heading {
  margin: 0;
  color: var(--navy);
  font-family: "STSong", "SimSun", serif;
  font-size: 26px;
  line-height: 1.3;
  letter-spacing: .06em;
}
.home-subtitle { margin: 4px 0 13px; color: var(--ink-soft); font-size: 13px; }
.home-search { margin: 0 0 15px; }
.home-search .idiom-locator { margin: 0; }
.home-search .idiom-locator .title { margin: 0 0 8px; color: var(--navy) !important; font-size: 15px; }
.home-search .idiom-locator .title i { display: none; }
.home-search .button { min-width: 66px; height: 36px; border-radius: 0; }
.home-search .button .icon { display: none; }
.home-tools { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0 0 16px; border-top: 1px solid var(--rule); border-left: 1px solid var(--rule); }
.home-tools a { padding: 7px 9px; border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); color: var(--link); font-size: 13px; }
.home-tools a:hover { background: #edf3f1; color: var(--vermilion); }
.home-panel { margin: 0 0 14px; border: 1px solid var(--rule-dark); border-top: 2px solid var(--navy); background: var(--surface); }
.home-panel h2 { margin: 0; padding: 8px 10px; border-bottom: 1px solid var(--rule); color: var(--navy); font-size: 16px; font-weight: 700; }
.home-panel h2 small { margin-left: 7px; color: var(--ink-soft); font-size: 12px; font-weight: 400; }
.home-panel .related-idioms { margin: 0 !important; padding: 7px !important; border: 0; }
.home-panel .related-idioms h2 { display: none; }
.home-panel .related-idioms .column { width: 33.333%; }
.home-panel .related-idioms .idiom-card { min-height: 52px; }
.home-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0 0 14px; }
.home-index { border: 1px solid var(--rule); background: var(--surface); }
.home-index h2 { margin: 0; padding: 7px 10px; border-bottom: 1px solid var(--rule); background: #e8ece9; color: var(--navy); font-size: 15px; }
.home-index .index-links { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 7px; list-style: none; }
.home-index .index-links a { display: block; padding: 4px 5px; font-size: 13px; }
.home-index .index-links a:hover { background: #edf3f1; }
.home-about { margin: 0; padding: 10px 12px; border-left: 3px solid var(--vermilion); background: #eff2ee; color: var(--ink-soft); font-size: 13px; }
.footer { margin-top: 24px; padding: 16px 0 !important; border-top: 1px solid var(--rule-dark); background: #e7ebe7 !important; color: var(--ink-soft); font-size: 12px; }
.footer .content p { margin: 0 0 3px; }.footer strong { color: var(--navy); }.footer a { color: var(--link); }

/* 近义词 / 反义词词条页 */
.lookup-panel { margin: 0; padding: 13px 0 0; border-top: 1px solid var(--rule); }
.lookup-panel h2 { margin: 0 0 8px; padding-left: 9px; border-left: 3px solid var(--vermilion); color: var(--navy); font-size: 17px; line-height: 1.35; }
.lookup-panel .table-container { margin: 0; border-color: var(--rule-dark); }
.lookup-panel .table { margin: 0; background: var(--surface); }
.lookup-panel .table th:first-child { width: 20%; }.lookup-panel .table th:nth-child(2) { width: 45%; }
.lookup-note { margin: 12px 0 0; padding: 9px 11px; border-left: 3px solid var(--vermilion); background: #eff2ee; color: var(--ink-soft); font-size: 13px; }
.index-panel { margin-top: 14px; padding: 12px; border: 1px solid var(--rule-dark); border-top: 2px solid var(--navy); background: var(--surface); }
.index-panel h2 { margin: 0 0 9px; padding-left: 9px; border-left: 3px solid var(--vermilion); color: var(--navy); font-size: 16px; }
.index-panel .index-links { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 5px; margin: 0; padding: 0; list-style: none; }
.index-panel .index-links a { display: block; padding: 6px 7px; border: 1px solid var(--rule); background: #f7f8f5; color: var(--link); font-size: 13px; }
.index-panel .index-links a:hover { border-color: #7fa3a7; background: #edf3f1; color: var(--vermilion); }
@media screen and (max-width:768px) { .lookup-panel .table th:nth-child(3),.lookup-panel .table td:nth-child(3) { display: none; }.index-panel .index-links { grid-template-columns: repeat(2,minmax(0,1fr)); } }

/* 四字定位结果页：兼容旧 reference-table 模板输出。 */
.reference-table { margin: 0 !important; padding: 13px 0 0; border-top: 1px solid var(--rule); }
.reference-table > .box { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent !important; box-shadow: none; }
.reference-table h2.title.is-4 { margin: 0 0 8px !important; padding-left: 9px; border-left: 3px solid var(--vermilion); color: var(--navy) !important; font-size: 17px; }
.reference-table h2 i { display: none; }
.reference-table .table-container { margin: 0; border-color: var(--rule-dark); }
.reference-table .table { margin: 0; background: var(--surface); }
.reference-table font[color] { color: var(--vermilion) !important; font-weight: 700; }
.related-idioms a[style] { display: inline-block; margin: 2px 5px 2px 0 !important; padding: 5px 7px; border: 1px solid var(--rule); background: #f7f8f5; color: var(--link) !important; font-size: 13px; text-decoration: none !important; }
.related-idioms a[style]:hover { border-color: #7fa3a7; background: #edf3f1; color: var(--vermilion) !important; }

/* 关键词搜索页 */
.reference-table .result-count { display: inline-block; margin-left: 8px; color: var(--ink-soft); font-family: inherit; font-size: 12px; font-weight: 400; }
.reference-table .table th:first-child { width: 18%; }.reference-table .table th:nth-child(2) { width: 36%; }.reference-table .table th:nth-child(3) { width: 46%; }
.reference-table .table td { line-height: 1.65; }.reference-table .table td:nth-child(3) { color: #46545a; font-size: 13px; }
.search-history { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 5px; }
.search-history-link { display: block; min-height: 30px; padding: 5px 7px; border: 1px solid var(--rule); background: #f7f8f5; color: var(--link); font-size: 13px; line-height: 18px; text-align: center; }
.search-history-link:hover { border-color: #7fa3a7; background: #edf3f1; color: var(--vermilion); }
.hot-searches { margin: 0; padding: 0 10px 9px; border: 1px solid var(--rule); border-top: 2px solid var(--navy); border-radius: 0; background: var(--surface); }
.hot-searches .menu-label { margin: 0 -10px 7px; }.hot-searches .menu-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }.hot-searches .menu-list li { min-width: 0; }.hot-searches .menu-list a { overflow: hidden; padding: 5px 6px; text-overflow: ellipsis; white-space: nowrap; }
@media screen and (max-width:768px) { .search-history { grid-template-columns: repeat(2,minmax(0,1fr)); }.hot-searches .menu-list { grid-template-columns: 1fr; }.reference-table .table th:nth-child(3),.reference-table .table td:nth-child(3) { display: none; } }

/* 组词分类页：沿用旧模板结构，改为紧凑的分类索引。 */
.related-idioms > .box:has(.idiom-group) {
  margin: 0;
  padding: 14px 20px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.related-idioms > .box:has(.idiom-group) > h2.title.is-4 {
  margin: 0 0 4px;
  padding: 0 0 0 9px;
  border-left: 3px solid var(--vermilion);
  color: var(--navy) !important;
  font-size: 17px;
}
.related-idioms > .box:has(.idiom-group) > h2 i,
.idiom-group h3 i { display: none; }
.idiom-group {
  margin: 0 !important;
  padding: 11px 0 10px;
  border-bottom: 1px solid var(--rule);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.idiom-group h3.subtitle.is-5 {
  margin: 0 0 7px !important;
  padding-left: 8px;
  border-left: 2px solid var(--rule-dark);
  color: var(--navy) !important;
  font-size: 15px;
  line-height: 1.35;
}
.idiom-group .columns { margin: 0 -3px !important; }
.idiom-group .column { padding: 3px !important; }
.idiom-group .tag.is-info,
.idiom-group .tag.is-warning {
  display: flex;
  width: 100%;
  min-height: 31px;
  justify-content: center;
  align-items: center;
  padding: 3px 5px;
  border: 1px solid var(--rule);
  border-radius: 0;
  background: var(--surface) !important;
  color: var(--link) !important;
  font-size: 14px;
  font-weight: 400;
}
.idiom-group .tag.is-info:hover,
.idiom-group .tag.is-warning:hover { border-color: #7fa3a7; background: #edf3f1 !important; color: var(--vermilion) !important; }
@media screen and (max-width:768px) { .related-idioms > .box:has(.idiom-group) { padding: 12px 12px 0; }.idiom-group .column.is-1 { width: 16.666%; flex: none; } }
@media screen and (max-width: 768px) {
  .home-heading { font-size: 22px; }
  .home-tools { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .home-panel .related-idioms .column { width: 50%; }
  .home-pair { grid-template-columns: 1fr; gap: 10px; }
}

/* 定位查询页：同一关键字换位置检索，不应伪装成“最近查询”大卡片 */
.query-suggestions { margin-top: 14px; }
.query-suggestion-links { display: flex; flex-wrap: wrap; gap: 5px; }
.query-suggestion-links a {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  margin: 0 !important;
  padding: 4px 8px;
  border: 1px solid var(--rule);
  background: #f7f8f5;
  color: var(--link) !important;
  font-size: 13px;
  line-height: 1.45;
  text-decoration: none !important;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}
.query-suggestion-links a:hover {
  border-color: var(--accent);
  background: #fffaf5;
  color: var(--accent) !important;
}

/* 标题分类页：标题是页面标识，列表是可缩放的词条索引。 */
.category-title-block {
  min-height: 0;
  padding: 8px 0 4px !important;
  border: 0 !important;
  border-top: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.category-page-title {
  margin: 0;
  padding: 2px 0 2px 12px;
  border-left: 4px solid var(--vermilion);
  color: var(--ink);
  font-family: "STSong","SimSun",serif;
  font-size: 29px;
  font-weight: 700;
  line-height: 1.3;
}
.category-idiom-results.related-idioms.box {
  margin-top: 12px !important;
  padding: 12px !important;
  border: 1px solid var(--rule-dark);
  border-top: 2px solid var(--navy);
  background: var(--surface);
}
.category-idiom-results > h2.title.is-4 { margin: 0 0 8px; }
.category-idiom-grid { margin: 0 -3px !important; }
.category-idiom-grid > .column.is-3 {
  flex: none;
  width: 25%;
  padding: 3px !important;
}
.category-idiom-card {
  display: block;
  min-height: 62px;
  height: 100%;
  padding: 7px 8px;
  border: 1px solid var(--rule);
  border-radius: 0;
  background: var(--surface);
  box-shadow: none;
  text-align: left;
}
.category-idiom-card p {
  margin: 0;
  color: var(--link) !important;
  font-size: 15px;
  line-height: 1.45;
}
.category-idiom-card small {
  display: block;
  margin-top: 3px;
  color: var(--ink-soft) !important;
  font-size: 12px;
  line-height: 1.35;
}
.category-idiom-card:hover {
  border-color: #7fa3a7;
  background: #edf3f1;
}
@media screen and (max-width:1023px) {
  .category-idiom-grid > .column.is-3 { width: 50%; }
}
@media screen and (max-width:600px) {
  .category-page-title { font-size: 23px; }
  .category-idiom-results.related-idioms.box { padding: 10px !important; }
  .category-idiom-grid > .column.is-3 { width: 100%; }
  .category-idiom-card { min-height: 0; padding: 8px; }
}

/* 组词页：长成语占两格，保证同一网格行的卡片高度一致。 */
.zuci-idiom-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-flow: row dense;
  gap: 6px;
  margin: 0 !important;
}
.zuci-idiom-grid > .zuci-card-wrap.column.is-3 {
  display: block;
  width: auto !important;
  min-width: 0;
  padding: 0 !important;
}
.zuci-idiom-grid > .zuci-card-wrap.is-wide { grid-column: span 2; }
.zuci-idiom-card {
  display: flex;
  min-height: 72px;
  height: 100%;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 7px 9px;
  border: 1px solid var(--rule);
  border-radius: 0;
  background: var(--surface);
  box-shadow: none;
  text-align: center;
}
.zuci-idiom-card p {
  margin: 0;
  color: var(--link) !important;
  font-size: 15px;
  line-height: 1.45;
}
.zuci-idiom-card small {
  display: block;
  margin-top: 3px;
  color: var(--ink-soft) !important;
  font-size: 12px;
  line-height: 1.4;
}
.zuci-idiom-card:hover {
  border-color: #7fa3a7;
  background: #edf3f1;
}
@media screen and (max-width:1023px) {
  .zuci-idiom-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media screen and (max-width:600px) {
  .zuci-idiom-grid { grid-template-columns: 1fr; }
  .zuci-idiom-grid > .zuci-card-wrap.is-wide { grid-column: span 1; }
  .zuci-idiom-card { min-height: 0; }
}

/* 组词页标题与说明：取消通用内容框和旧式通知条。 */
.zuci-title-block {
  min-height: 0;
  padding: 8px 0 4px !important;
  border: 0 !important;
  border-top: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.zuci-page-title {
  margin: 0;
  padding: 2px 0 2px 12px;
  border-left: 4px solid var(--vermilion);
  color: var(--ink);
  font-family: "STSong","SimSun",serif;
  font-size: 29px;
  font-weight: 700;
  line-height: 1.3;
}
.zuci-summary {
  margin: 10px 0 0;
  padding: 8px 0 0;
  border-top: 1px solid var(--rule);
  background: transparent;
  color: var(--ink-soft);
  font-size: 13px;
  line-height: 1.7;
}
@media screen and (max-width:600px) {
  .zuci-page-title { font-size: 23px; }
  .zuci-summary { margin-top: 8px; }
}

/* 组词结果仅保留一个 H1，嵌入列表标题区，避免重复和空白。 */
.zuci-idiom-results.related-idioms.box {
  margin-top: 0 !important;
}
.zuci-results-heading {
  margin: 0 0 9px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--rule);
}
.zuci-idiom-results .zuci-page-title {
  padding: 1px 0 1px 10px;
  border-left-width: 3px;
  font-family: inherit;
  font-size: 20px;
  line-height: 1.4;
}
@media screen and (max-width:600px) {
  .zuci-idiom-results .zuci-page-title { font-size: 18px; }
}

/* 组词入口页：首屏标题并入热门索引，分类作为独立有边界的工具面板。 */
.zuci-hot-panel.related-idioms.box {
  margin-top: 0 !important;
  padding: 12px !important;
  border: 1px solid var(--rule-dark);
  border-top: 2px solid var(--navy);
  background: var(--surface);
}
.zuci-hot-panel .zuci-results-heading { margin-bottom: 8px; }
.zuci-hot-panel .zuci-page-title {
  padding: 1px 0 1px 10px;
  border-left-width: 3px;
  font-family: inherit;
  font-size: 20px;
  line-height: 1.4;
}
.zuci-section-kicker {
  margin: 4px 0 0 13px;
  color: var(--ink-soft);
  font-size: 12px;
  line-height: 1.35;
}
.zuci-category-panel {
  margin-top: 14px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.zuci-category-panel > .zuci-category-box {
  margin: 0 !important;
  padding: 12px 14px 0 !important;
  border: 1px solid var(--rule-dark) !important;
  border-top: 2px solid var(--navy) !important;
  border-radius: 0 !important;
  background: var(--surface) !important;
  box-shadow: none !important;
}
.zuci-category-box > h2.title.is-4 {
  margin: 0 0 4px !important;
  padding-left: 9px;
  border-left: 3px solid var(--vermilion);
  color: var(--navy) !important;
  font-size: 17px;
}
@media screen and (max-width:600px) {
  .zuci-hot-panel.related-idioms.box { padding: 10px !important; }
  .zuci-hot-panel .zuci-page-title { font-size: 18px; }
  .zuci-category-panel > .zuci-category-box { padding: 10px 10px 0 !important; }
}

/* 近义词 / 反义词索引首页：标题并入词条面板。 */
.word-list-panel.related-idioms.box {
  margin-top: 0 !important;
  padding: 12px !important;
  border: 1px solid var(--rule-dark);
  border-top: 2px solid var(--navy);
  background: var(--surface);
}
.word-list-panel .zuci-results-heading { margin-bottom: 8px; }
.word-list-panel .zuci-page-title {
  padding: 1px 0 1px 10px;
  border-left-width: 3px;
  font-family: inherit;
  font-size: 20px;
  line-height: 1.4;
}
.word-list-summary {
  margin: 10px 0 0;
  padding-top: 8px;
  border-top: 1px solid var(--rule);
  color: var(--ink-soft);
  font-size: 13px;
  line-height: 1.7;
}
@media screen and (max-width:600px) {
  .word-list-panel.related-idioms.box { padding: 10px !important; }
  .word-list-panel .zuci-page-title { font-size: 18px; }
}
