/* ================================================================
   新华字典 · 首页专用样式
   Xinhua Dictionary — Homepage CSS

   布局规则：
   - .main 不重写（继承 pretty.css 的 flex:1）
   - .content 重写为首页版（max-width 居中）
   - 间距统一由 --page-pad 控制
   ================================================================ */

/* ========== 首页容器 ========== */
.home-content{
  width:100%;
  flex:1;
  padding-left:var(--page-pad);
  padding-right:var(--page-pad);
}
.home-content .hero-unified{
  width:calc(100% + var(--page-pad) * 2);
  margin-left:calc(-1 * var(--page-pad));
}
.home-content .home-dual-entry,
.home-content .section-card,
.home-content .quick-entry,
.home-content .topic-banner{
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
}

/* ========== Hero 统一版 ========== */
.hero-unified{
  position:relative;
  padding:100px var(--page-pad) 80px;
  overflow:hidden;
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(217,119,6,0.08) 0%, transparent 60%),
    radial-gradient(ellipse 60% 50% at 20% 80%, rgba(59,130,246,0.06) 0%, transparent 50%),
    var(--bg);
  border-bottom:1px solid var(--border);
}
.hero-unified::before{
  content:'';position:absolute;inset:0;
  background:url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Ctext x='8' y='45' font-family='LXGW WenKai' font-size='32' fill='%23d97706' opacity='0.03'%3E%E6%BC%A2%3C/text%3E%3C/svg%3E");
  pointer-events:none;
}
/* Hero 底部装饰线 — 隐藏 */
.hero-unified .hero-line{
  display:none;
}

/* Hero 背景装饰 */
.hero-bg-pattern{
  position:absolute;inset:0;
  pointer-events:none;overflow:hidden;
}
.hero-bg-pattern::before{
  content:'字';position:absolute;left:-2%;top:8%;
  font-size:min(350px,44vw);font-family:var(--font-kai);
  color:var(--gold);opacity:0.035;line-height:1;
  user-select:none;pointer-events:none;
}
.hero-bg-pattern::after{
  content:'词';position:absolute;right:-4%;top:8%;
  font-size:min(350px,44vw);font-family:var(--font-kai);
  color:var(--gold);opacity:0.035;line-height:1;
  user-select:none;pointer-events:none;
}

/* Hero 内容 */
.hero-unified .hero-inner{
  max-width:720px;margin:0 auto;
  position:relative;z-index:2;text-align:center;
}
.hero-unified .hero-badge{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 18px;border-radius:24px;
  font-size:13px;font-weight:600;
  color:var(--gold);
  background:var(--gold-glow);
  border:1px solid var(--border-gold);
  margin-bottom:24px;
  letter-spacing:1px;
}
.hero-unified h1.hero-title{
  font-size:52px;font-weight:900;
  color:var(--text-primary);
  margin-bottom:16px;
  letter-spacing:3px;
  line-height:1.25;
}
.hero-unified h1.hero-title br{display:none}
.hero-unified .hero-sub{
  font-size:16px;color:var(--text-secondary);
  margin:0 auto 40px;
  line-height:1.8;
  max-width:480px;
}

/* Hero 搜索框（大号居中）— 无分割线整体圆角 */
.hero-search-lg{
  display:flex;
  max-width:600px;margin:0 auto 28px;
  background:rgba(255,255,255,0.75);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1.5px solid var(--border);
  border-radius:16px;
  box-shadow:0 4px 24px rgba(0,0,0,0.06);
  transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
  position:relative;
  z-index:100;
  overflow:hidden;
}
.hero-search-lg:focus-within{
  border-color:var(--gold);
  box-shadow:0 0 0 4px var(--gold-glow),0 8px 32px rgba(0,0,0,0.08);
}
.hero-search-lg input{
  flex:1;height:60px;
  border:none;background:transparent;
  padding:0 24px;font-size:16px;
  color:var(--text-primary);font-family:var(--font-main);
  outline:none;
}
.hero-search-lg input::placeholder{
  color:var(--text-muted);font-size:15px;
}
.hero-search-lg button{
  height:60px;padding:0 28px;
  border:none;border-radius:0;
  background:var(--gold-gradient);
  color:#fff;font-size:16px;font-weight:600;
  cursor:pointer;transition:all 0.25s ease;
}
.hero-search-lg button:hover{
  background:linear-gradient(135deg,#b45309,#d97706);
}

/* Hero 快捷链接 */
.hero-shortcuts{
  display:flex;justify-content:center;
  gap:12px;flex-wrap:wrap;
}
.hero-shortcuts .hs-link{
  display:inline-flex;align-items:center;
  padding:8px 20px;border-radius:24px;
  font-size:14px;font-weight:500;
  color:var(--text-secondary);
  background:var(--bg-card);
  border:1px solid var(--border);
  text-decoration:none;
  transition:all 0.25s ease;
}
.hero-shortcuts .hs-link:hover{
  color:var(--gold);
  border-color:var(--border-gold);
  background:var(--gold-glow);
  transform:translateY(-1px);
}

/* ========== 旧 Hero 兼容（保留给非首页使用） ========== */
.hero{
  position:relative;
  padding:80px 50px 64px;
  overflow:hidden;
  transition:var(--transition);
}
.hero-bg{
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse 60% 50% at 25% 30%, var(--gold-glow) 0%, transparent 70%),
    radial-gradient(ellipse 50% 60% at 75% 70%, rgba(255,255,255,0.5) 0%, transparent 60%),
    var(--hero-gradient);
  pointer-events:none;
}
.hero::before{
  content:'';position:absolute;inset:0;
  background:url("data:image/svg+xml,%3Csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.018'/%3E%3C/svg%3E");
  pointer-events:none;
}
.hero-watermark{
  position:absolute;
  right:-20px;top:50%;
  transform:translateY(-50%);
  font-size:min(320px,40vw);
  font-family:var(--font-kai);
  font-weight:400;
  color:var(--gold);
  opacity:0.04;
  line-height:1;
  pointer-events:none;
  user-select:none;
  letter-spacing:-10px;
}
.hero-ink{
  position:absolute;inset:0;
  overflow:hidden;pointer-events:none;
}
.hero-ink span{
  position:absolute;
  font-family:var(--font-kai);
  font-size:var(--ink-size,20px);
  color:var(--gold);
  opacity:0;
  animation:ink-float var(--ink-dur,12s) var(--ink-delay,0s) infinite ease-in-out;
  pointer-events:none;
  user-select:none;
  filter:blur(0.3px);
}
.hero-ink span:nth-child(1){--ink-size:22px;--ink-dur:14s;--ink-delay:0s;left:5%;top:20%}
.hero-ink span:nth-child(2){--ink-size:18px;--ink-dur:16s;--ink-delay:2.5s;left:88%;top:30%}
.hero-ink span:nth-child(3){--ink-size:26px;--ink-dur:13s;--ink-delay:5s;left:12%;top:75%}
.hero-ink span:nth-child(4){--ink-size:16px;--ink-dur:15s;--ink-delay:1.8s;left:78%;top:68%}
.hero-ink span:nth-child(5){--ink-size:20px;--ink-dur:17s;--ink-delay:4s;left:35%;top:12%}
.hero-ink span:nth-child(6){--ink-size:24px;--ink-dur:14s;--ink-delay:6.5s;left:60%;top:82%}
@keyframes ink-float{
  0%  {opacity:0;transform:translateY(30px) rotate(-8deg) scale(0.85)}
  20% {opacity:0.12}
  50% {opacity:0.18;transform:translateY(-20px) rotate(5deg) scale(1)}
  80% {opacity:0.08}
  100%{opacity:0;transform:translateY(-60px) rotate(-3deg) scale(0.9)}
}
.hero-inner{max-width:680px;margin:0 auto;position:relative;z-index:2;text-align:center}
.hero-badge{
  display:inline-flex;align-items:center;gap:7px;
  background:var(--bg-glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  color:var(--gold);padding:7px 20px;border-radius:28px;
  font-size:12.5px;font-weight:600;border:1px solid var(--border-gold);margin-bottom:28px;
  box-shadow:0 2px 12px var(--gold-glow);
}
.hero-badge .dot{width:7px;height:7px;background:var(--accent-green);border-radius:50%;animation:pulse-dot 2s infinite;box-shadow:0 0 6px rgba(58,157,106,0.5)}
@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.4;transform:scale(0.8)}}
.hero h1{
  font-size:42px;font-weight:900;color:var(--text-primary);
  margin-bottom:18px;letter-spacing:2px;line-height:1.3;
}
.hero h1 .gold{
  background:var(--gold-gradient);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.hero p{
  font-size:15.5px;color:var(--text-secondary);
  max-width:520px;line-height:1.9;margin:0 auto 38px;
}

/* ========== Search (旧版兼容) ========== */
.search-box{position:relative;max-width:560px;margin:0 auto}
.search-box input{
  width:100%;height:54px;
  background:rgba(255,255,255,0.6);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1.5px solid var(--border);border-radius:var(--radius-lg);
  padding:0 60px 0 22px;font-size:15px;color:var(--text-primary);font-family:var(--font-main);
  outline:none;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
  box-shadow:0 2px 16px rgba(0,0,0,0.04);
}
.search-box input:focus{
  border-color:var(--gold);
  background:rgba(255,255,255,0.8);
  box-shadow:0 0 0 4px var(--gold-glow),0 4px 24px var(--gold-glow);
}
.search-box input::placeholder{color:var(--text-muted);font-size:14px}
.search-box button{
  position:absolute;right:5px;top:5px;width:44px;height:44px;
  background:var(--gold-gradient);border:none;border-radius:calc(var(--radius-lg) - 4px);
  color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:all 0.3s cubic-bezier(0.4,0,0.2,1);box-shadow:var(--shadow-gold);
}
.search-box button:hover{transform:scale(1.06);box-shadow:0 6px 32px var(--gold-glow)}
.search-box button:active{transform:scale(0.97)}
.search-hints{display:flex;justify-content:center;gap:8px;margin-top:18px;flex-wrap:wrap}
.search-hints a{
  font-size:13px;font-weight:600;color:var(--text-muted);
  background:rgba(255,255,255,0.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  padding:5px 16px;border-radius:18px;border:1px solid transparent;
  transition:all 0.25s ease;
}
.search-hints a:hover{color:var(--gold);border-color:var(--border-gold);background:var(--gold-glow);text-decoration:none;transform:translateY(-1px)}

/* ========== Content (首页版) ========== */
/* 首页使用 .home-content，不覆盖全局 .content */

/* ========== Section ========== */
.section{margin-bottom:48px;scroll-margin-top:20px}
.section-head{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.section-ico{width:36px;height:36px;background:var(--theme-glow);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:18px;border:1px solid var(--border)}
.section-title{font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:0.5px}
.section-more{margin-left:auto;font-size:12px;color:var(--text-muted);cursor:pointer;padding:4px 12px;border-radius:8px;transition:var(--transition)}
.section-more:hover{color:var(--gold);background:var(--gold-glow)}

/* ========== Stats ========== */
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:48px}
.stat-card{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px 20px;text-align:center;transition:var(--transition);position:relative;overflow:hidden}
.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--gold-gradient);opacity:0;transition:var(--transition)}
.stat-card:hover{border-color:var(--border-gold);transform:translateY(-4px);box-shadow:var(--shadow-lg),var(--shadow-gold)}
.stat-card:hover::before{opacity:1}
.stat-num{font-size:36px;font-weight:900;background:var(--gold-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}
.stat-label{font-size:12px;color:var(--text-muted);margin-top:6px;letter-spacing:1.5px;font-weight:600}

/* ========== Pinyin Bar ========== */
.pinyin-bar{display:flex;gap:8px;flex-wrap:wrap}
.pinyin-bar a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--bg-card);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:16px;font-weight:700;color:var(--text-secondary);transition:var(--transition)}
.pinyin-bar a:hover,.pinyin-bar a.active{background:var(--gold-glow);border-color:var(--gold);color:var(--gold);text-decoration:none;transform:scale(1.08);box-shadow:var(--shadow-gold)}

/* ========== Radical Grid ========== */
.radical-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:6px;padding-right:4px}
.radical-grid a{display:flex;align-items:center;justify-content:center;height:46px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:18px;color:var(--text-secondary);transition:var(--transition);font-family:var(--font-kai)}
.radical-grid a:hover{background:var(--gold-glow);border-color:var(--gold);color:var(--gold);text-decoration:none;transform:scale(1.1);box-shadow:var(--shadow-gold)}

/* ========== Word Cloud ========== */
.word-cloud{display:flex;flex-wrap:wrap;gap:10px}
.word-cloud a{padding:7px 18px;background:var(--bg-card);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:24px;font-size:13px;color:var(--text-secondary);transition:var(--transition)}
.word-cloud a:hover{border-color:var(--border-gold);color:var(--gold);background:var(--gold-glow);text-decoration:none;transform:translateY(-2px);box-shadow:var(--shadow-gold)}
.word-cloud a.hot{border-color:var(--border-gold);color:var(--gold);background:var(--gold-glow)}
.word-cloud a .rank{font-size:9px;color:var(--text-muted);margin-left:5px;opacity:0.6}

/* ========== Recommend ========== */
.reco-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}
.reco-item{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px 20px;text-align:center;transition:var(--transition);cursor:pointer;position:relative;overflow:hidden}
.reco-item::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gold-gradient);opacity:0;transition:var(--transition)}
.reco-item:hover{border-color:var(--border-gold);transform:translateY(-4px);box-shadow:var(--shadow-lg),var(--shadow-gold)}
.reco-item:hover::after{opacity:1}
.reco-char{font-size:52px;font-family:var(--font-kai);line-height:1.1;color:var(--text-primary)}
.reco-py{font-size:12px;color:var(--gold);margin-top:6px;font-weight:600}
.reco-mean{font-size:11px;color:var(--text-muted);margin-top:8px;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}

/* ========== Bihua Bar ========== */
.bihua-bar{display:flex;gap:8px;flex-wrap:wrap}
.bihua-bar a{display:flex;flex-direction:column;align-items:center;justify-content:center;width:50px;height:50px;background:var(--bg-card);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:16px;font-weight:700;color:var(--text-secondary);transition:var(--transition)}
.bihua-bar a:hover{background:var(--gold-glow);border-color:var(--gold);color:var(--gold);text-decoration:none;transform:scale(1.08)}
.bihua-bar a span{font-size:9px;color:var(--text-muted);font-weight:400}

/* ========== 响应式 ========== */
@media(max-width:1100px){
  .hero{padding:60px 32px 50px}
  .hero-watermark{font-size:220px;right:-10px}
  .hero-inner{max-width:620px}
  .hero h1{font-size:36px}
}
@media(max-width:800px){
  .hero{padding:48px 20px 40px}
  .hero-watermark{font-size:160px;opacity:0.035}
  .hero-ink{display:none}
  .hero-inner{max-width:100%}
  .hero h1{font-size:28px;letter-spacing:1px}
  .hero p{font-size:14px;margin-bottom:28px}
  .search-box{max-width:100%}
  .search-box input{height:50px;font-size:14px}
}

/* ========= 列表页样式 ========= */
.list-content{
  max-width:1120px;
  margin:0 auto;
  padding:32px var(--page-pad) 0;
  width:100%;
  flex:1;
  overflow-x:hidden;
  word-break:break-all;
}
.list-page-title{
  font-size:26px;font-weight:700;color:var(--text-primary);
  margin:0 0 20px;text-align:center;
  padding-bottom:16px;
  border-bottom:1px solid var(--border);
}

.alpha-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(88px,1fr));
  gap:10px;
  margin:16px 0;
  clear:both;
  width:100%;
}
.alpha-item{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;
  padding:12px 6px;
  background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1px solid var(--border);border-radius:var(--radius-sm);
  text-decoration:none;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
  position:relative;overflow:hidden;
}
.alpha-item::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:var(--gold-gradient);opacity:0;transition:opacity 0.3s;
}
.alpha-item:hover{
  border-color:var(--border-gold);
  transform:translateY(-2px);
  box-shadow:var(--shadow-gold);
}
.alpha-item:hover::before{opacity:1}
.alpha-char{font-size:22px;font-weight:700;color:var(--text-primary);font-family:var(--font-display)}
.alpha-pinyin{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}

/* 分页导航 */
.pager{display:flex;align-items:center;justify-content:center;gap:12px;margin:24px 0 16px;padding:16px 0;border-top:1px solid var(--border);clear:both;width:100%}
.pager-btn{display:inline-flex;align-items:center;padding:8px 18px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;text-decoration:none;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);cursor:pointer;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary)}
.pager-btn:hover:not(.pager-disabled){background:var(--gold);color:#fff;border-color:var(--gold);box-shadow:var(--shadow-gold)}
.pager-disabled{opacity:0.4;cursor:not-allowed}
.pager-info{font-size:13px;color:var(--text-muted);padding:0 12px}

.pager-pages{display:flex;align-items:center;justify-content:center;gap:4px;margin:4px 0 20px;flex-wrap:wrap}
.pager-num{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 8px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;text-decoration:none;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}
.pager-num:hover{background:var(--gold);color:#fff;border-color:var(--gold)}
.pager-current{background:var(--gold);color:#fff;border-color:var(--gold);pointer-events:none}
.pager-ellipsis{color:var(--text-muted);padding:0 4px;font-size:14px}

@media(max-width:768px){
  .alpha-grid{grid-template-columns:repeat(auto-fill,minmax(68px,1fr));gap:6px}
  .list-page-title{font-size:20px}
  .pager{flex-wrap:wrap;gap:8px}
  .alpha-item{padding:10px 4px}
  .alpha-char{font-size:18px}
}

/* ========= 内链区样式 ========= */
.internal-links{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:4px 0;
}
.il-label{
  display:inline-flex;
  align-items:center;
  padding:6px 14px;
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  font-size:13px;
  font-weight:600;
  color:var(--text-muted);
}
.il-link{
  display:inline-flex;
  align-items:center;
  padding:6px 14px;
  background:var(--gold-glow);
  border:1px solid var(--border-gold);
  border-radius:var(--radius-sm);
  font-size:13px;
  font-weight:500;
  color:var(--gold);
  text-decoration:none;
  transition:all 0.25s ease;
}
.il-link:hover{
  background:var(--gold);
  color:#fff;
  border-color:var(--gold);
  transform:translateY(-1px);
  box-shadow:var(--shadow-gold);
}

/* ========= 拼音/部首/笔画索引页样式 ========= */
.index-nav{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin:12px 0 20px;
  padding:16px;
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  overflow-x:hidden;
}
.index-nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:40px;
  height:40px;
  padding:0 10px;
  background:var(--bg-glass);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  font-size:15px;
  font-weight:600;
  color:var(--text-secondary);
  text-decoration:none;
  transition:all 0.25s ease;
}
.index-nav a:hover,
.index-nav a.active{
  background:var(--gold);
  color:#fff;
  border-color:var(--gold);
  transform:scale(1.05);
  box-shadow:var(--shadow-gold);
}
.index-nav a .count{
  font-size:9px;
  color:var(--text-muted);
  margin-left:4px;
  font-weight:400;
}
.index-nav a:hover .count{color:rgba(255,255,255,0.7)}

/* 部首grid — 用大字楷体 */
.radical-index-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(56px,1fr));
  gap:8px;
  margin:16px 0;
  overflow-x:hidden;
}
.radical-index-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:10px 4px;
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  text-decoration:none;
  transition:all 0.25s ease;
}
.radical-index-item:hover{
  border-color:var(--border-gold);
  transform:translateY(-2px);
  box-shadow:var(--shadow-gold);
}
.radical-index-char{
  font-size:24px;
  font-weight:700;
  color:var(--text-primary);
  font-family:var(--font-kai);
}
.radical-index-count{
  font-size:10px;
  color:var(--text-muted);
}

/* 笔画索引 grid */
.bihua-index-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(80px,1fr));
  gap:10px;
  margin:16px 0;
  overflow-x:hidden;
}
.bihua-index-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:14px 8px;
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  text-decoration:none;
  transition:all 0.25s ease;
}
.bihua-index-item:hover{
  border-color:var(--border-gold);
  transform:translateY(-2px);
  box-shadow:var(--shadow-gold);
}
.bihua-index-num{
  font-size:28px;
  font-weight:900;
  color:var(--gold);
  font-family:var(--font-display);
}
.bihua-index-label{
  font-size:12px;
  color:var(--text-muted);
  margin-top:2px;
}
.bihua-index-count{
  font-size:10px;
  color:var(--text-muted);
}

/* 部首索引页左右布局 */
.radical-layout{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:24px;
  align-items:start;
}
.radical-sidebar{
  position:sticky;
  top:80px;
  max-height:calc(100vh - 120px);
  overflow-y:auto;
  padding-right:4px;
}
.radical-sidebar .radical-index-grid{
  grid-template-columns:repeat(3,1fr);
  gap:6px;
  margin:0;
}
.radical-sidebar .bihua-index-grid{
  grid-template-columns:1fr;
  gap:6px;
  margin:0;
}
.radical-main{
  min-width:0;
}

@media(max-width:900px){
  .radical-layout{grid-template-columns:1fr}
  .radical-sidebar{position:static;max-height:none;margin-bottom:16px}
  .radical-sidebar .radical-index-grid{grid-template-columns:repeat(auto-fill,minmax(48px,1fr))}
}

@media(max-width:768px){
  .radical-index-grid{grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:4px}
  .bihua-index-grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px}
}

/* ================================================================
   统一首页 · 双入口卡片（简洁版）
   ================================================================ */
.home-dual-entry{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  margin-bottom:32px;
  margin-top:8px;
}
.dual-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:36px 24px;
  border-radius:16px;
  text-decoration:none;
  color:inherit;
  border:1.5px solid var(--border);
  background:var(--bg-card);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
  position:relative;overflow:hidden;
}
.dual-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--gold-gradient);opacity:0;transition:opacity 0.3s;
}
.dual-card:hover{
  transform:translateY(-4px);
  box-shadow:0 8px 32px var(--shadow),0 0 0 1px var(--border-gold);
  border-color:var(--border-gold);
}
.dual-card:hover::before{opacity:1}
.hanzi-card:hover{border-color:var(--accent)}
.chengyu-card:hover{border-color:var(--accent-purple,#8b5cf6)}
.dc-icon{
  font-size:48px;
  font-family:var(--font-kai);
  font-weight:700;
  color:var(--text-primary);
  margin-bottom:14px;
  line-height:1;
}
.dc-title{
  font-size:20px;
  font-weight:700;
  margin-bottom:8px;
  color:var(--text-primary);
}
.dc-desc{
  font-size:13px;
  color:var(--text-muted);
  text-align:center;
}

/* 首页拼音字母快捷导航 */
.index-nav-home{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:8px 0;
}
.letter-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:36px;
  border-radius:8px;
  font-weight:700;
  font-size:15px;
  text-decoration:none;
  color:var(--text);
  background:var(--card);
  border:1px solid var(--border);
  transition:all .15s;
}
.letter-btn:hover{
  background:var(--accent);
  color:#fff;
  border-color:var(--accent);
  transform:scale(1.08);
}

/* 首页部首快捷导航 */
.radical-quick-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:8px 0;
}
.radical-quick-item{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  padding:8px 12px;
  border-radius:10px;
  text-decoration:none;
  color:var(--text);
  background:var(--card);
  border:1px solid var(--border);
  transition:all .15s;
  min-width:52px;
}
.radical-quick-item:hover{
  border-color:var(--gold);
  background:var(--gold-glow);
  transform:scale(1.05);
}
.rq-char{font-size:22px;font-weight:700;margin-bottom:2px}
.rq-count{font-size:11px;color:var(--text-muted)}

/* 首页笔画快捷导航 */
.bihua-quick-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:8px 0;
}
.bihua-quick-item{
  display:inline-flex;
  align-items:center;
  padding:6px 14px;
  border-radius:8px;
  font-size:14px;
  text-decoration:none;
  color:var(--text);
  background:var(--card);
  border:1px solid var(--border);
  transition:all .15s;
}
.bihua-quick-item:hover{
  border-color:var(--gold);
  background:var(--gold-glow);
}

/* 拼音索引页 Tab 切换 */
.pinyin-tabs{
  display:flex;
  gap:0;
  margin:16px 0;
  border-bottom:2px solid var(--border);
}
.ptab{
  padding:10px 24px;
  font-size:15px;
  font-weight:600;
  border:none;
  background:none;
  color:var(--text-muted);
  cursor:pointer;
  border-bottom:3px solid transparent;
  margin-bottom:-2px;
  transition:all .15s;
}
.ptab.active{
  color:var(--accent);
  border-bottom-color:var(--accent);
}
.ptab:hover{
  color:var(--text);
}

/* 搜索结果类型标签 */
.type-hanzi{
  background:rgba(59,130,246,0.1);
  color:#3b82f6;
}
.type-chengyu{
  background:rgba(139,92,246,0.1);
  color:#8b5cf6;
}

/* section-card more 链接 */
.sc-more{
  margin-left:auto;
  font-size:13px;
  color:var(--accent);
  text-decoration:none;
  font-weight:500;
}
.sc-more:hover{text-decoration:underline}

/* 换一换按钮 */
.shuffle-btn{
  display:inline-flex;align-items:center;gap:4px;
  margin-left:auto;margin-right:8px;
  padding:5px 14px;border-radius:16px;
  font-size:12px;font-weight:600;
  color:var(--gold);background:var(--gold-glow);
  border:1px solid var(--border-gold);
  cursor:pointer;transition:all .25s ease;
  white-space:nowrap;
}
.shuffle-btn:hover{
  background:var(--gold);color:#fff;
  transform:translateY(-1px);
  box-shadow:var(--shadow-gold);
}

/* ========== section-card 卡片容器 ========== */
.section-card{
  background:var(--bg-card);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  padding:24px 24px 20px;
  margin-bottom:24px;
  position:relative;overflow:hidden;
  transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
}
.section-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--gold-gradient);opacity:0;transition:opacity 0.3s;
}
.section-card:hover{
  border-color:var(--border-gold);
  box-shadow:0 8px 32px rgba(0,0,0,0.06);
}
.section-card:hover::before{opacity:1}
.sc-head{
  display:flex;align-items:center;gap:10px;
  margin-bottom:16px;
}
.sc-ico{
  font-size:20px;line-height:1;
}
.sc-title{
  font-size:17px;font-weight:700;
  color:var(--text-primary);
  letter-spacing:0.5px;
}

/* ========== 快捷入口 DIY 模块 ========== */
.quick-entry{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px;
  max-width:1120px;
  margin:-20px auto 32px;
  position:relative;z-index:3;
}
.qe-card{
  display:flex;flex-direction:column;align-items:center;
  padding:24px 12px;
  background:var(--bg-card);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1.5px solid var(--border);
  border-radius:var(--radius-md);
  text-decoration:none;color:inherit;
  transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
  position:relative;overflow:hidden;
}
.qe-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--gold-gradient);opacity:0;transition:opacity 0.3s;
}
.qe-card:hover{
  transform:translateY(-4px);
  box-shadow:0 8px 32px rgba(0,0,0,0.08);
  border-color:var(--border-gold);
}
.qe-card:hover::before{opacity:1}
.qe-icon{
  font-size:32px;margin-bottom:10px;line-height:1;
}
.qe-title{
  font-size:15px;font-weight:700;
  color:var(--text-primary);
  margin-bottom:4px;
}
.qe-desc{
  font-size:12px;color:var(--text-muted);
}
.qe-pinyin:hover{border-color:var(--accent-blue,#4a90e2)}
.qe-radical:hover{border-color:var(--accent-green,#27ae60)}
.qe-bihua:hover{border-color:var(--accent-purple,#9b6bff)}
.qe-hanzi:hover{border-color:var(--gold)}
.qe-chengyu:hover{border-color:#e74c3c}

@media(max-width:768px){
  .quick-entry{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:-12px}
  .qe-card{padding:16px 8px}
  .qe-icon{font-size:26px}
  .qe-title{font-size:13px}
  .qe-desc{font-size:11px}
}
@media(max-width:480px){
  .quick-entry{grid-template-columns:repeat(2,1fr);gap:8px}
  .section-card{padding:16px;border-radius:var(--radius-sm)}
}

@media(max-width:768px){
  /* Hero 响应式 */
  .hero-unified{padding:60px 16px 48px}
  .hero-unified h1.hero-title{font-size:32px;letter-spacing:1px}
  .hero-unified h1.hero-title br{display:block}
  .hero-unified .hero-sub{font-size:14px;margin-bottom:28px}
  .hero-search-lg{max-width:100%;border-radius:12px}
  .hero-search-lg input{height:52px;padding:0 16px;font-size:15px}
  .hero-search-lg button{height:52px;padding:0 20px;font-size:15px}
  .hero-shortcuts{gap:8px}
  .hero-shortcuts .hs-link{padding:6px 14px;font-size:13px}

  /* 双入口卡片 */
  .home-dual-entry{grid-template-columns:1fr;gap:14px}
  .dual-card{padding:24px 16px}
  .dc-icon{font-size:36px}
  .dc-title{font-size:18px}

  /* 字母导航 */
  .letter-btn{width:36px;height:32px;font-size:14px}

  /* 部首导航 */
  .radical-quick-item{padding:6px 8px;min-width:44px}
  .rq-char{font-size:18px}
}
