/* ==========================================================================
   🌌 Jio 导航站 - 恢复稳定版 (custom.css)
   ========================================================================== */

* {
  box-sizing: border-box;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif !important;
  -webkit-font-smoothing: antialiased;
}

/* 核心修复：消除内层多余框 */
#services a *, .service-card *, .bookmark-card * {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* 卡片统一 74px 高度 */
#services a, .service-card, .bookmark-card {
  height: 74px !important;        /* 统一固定高度 */
  padding: 12px 18px !important;  /* 统一内边距 */
  background: rgba(13, 17, 28, 0.55) !important;
  backdrop-filter: blur(20px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 16px !important;
  box-shadow: inset 0 1px 0 0 rgba(255, 255, 255, 0.2), 0 8px 25px -8px rgba(0, 0, 0, 0.4) !important;
  transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
}

/* 悬浮轻盈弹出与高光 */
#services a:hover, .service-card:hover, .bookmark-card:hover {
  transform: translateY(-4px) !important;
  background: rgba(26, 33, 56, 0.75) !important;
  border-color: rgba(167, 139, 250, 0.6) !important;
  box-shadow: inset 0 1px 0 0 rgba(255, 255, 255, 0.4), 
              0 14px 28px -8px rgba(124, 58, 237, 0.45), 
              0 0 20px 2px rgba(167, 139, 250, 0.25) !important;
}

/* 图标统一大小与对齐 */
#services a img, #services a svg {
  width: 30px !important;
  height: 30px !important;
  margin-right: 14px !important;
  flex-shrink: 0 !important;
}

/* 文字防溢出与单行省略 */
#services a span, #services a div {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* 分组标题与呼吸灯 */
h2, h3, .group-header {
  display: flex !important;
  align-items: center !important;
  font-size: 1.2rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.8px !important;
  margin-top: 22px !important;
  margin-bottom: 14px !important;
  background: linear-gradient(135deg, #c084fc 0%, #a855f7 50%, #e879f9 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

h2::before, h3::before, .group-header::before {
  content: "" !important;
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  background-color: #34d399 !important;
  border-radius: 50% !important;
  margin-right: 10px !important;
  box-shadow: 0 0 8px #34d399 !important;
  animation: pulse-glow 2s infinite ease-in-out !important;
}

@keyframes pulse-glow {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(0.8); }
}

/* 🔍 放大并下移搜索框 */
form[action*="search"], div[class*="SearchContainer"], div[class*="search"] {
  margin-top: 16px !important;
  margin-bottom: 22px !important;
}

input[type="search"], input[type="text"] {
  background: rgba(15, 23, 42, 0.65) !important;
  backdrop-filter: blur(20px) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.25) !important;
  border-radius: 999px !important;
  padding: 14px 32px !important;
  font-size: 1.05rem !important;
  min-width: 460px !important;
  color: #fff !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4) !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

input[type="search"]:focus, input[type="text"]:focus {
  background: rgba(30, 41, 59, 0.85) !important;
  border-color: #a78bfa !important;
  min-width: 500px !important;
  box-shadow: 0 0 35px rgba(167, 139, 250, 0.5), 0 0 0 3px rgba(167, 139, 250, 0.2) !important;
  transform: translateY(2px) scale(1.01) !important;
}

/* 顶部状态栏 */
.widget-item {
  background: rgba(15, 23, 42, 0.5) !important;
  backdrop-filter: blur(14px) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 999px !important;
  padding: 5px 16px !important;
}