/*
 * Sub Jove 品牌层 · Halo theme-earth（icdat.top）
 * 在 earth 自带样式之后加载（系统设置 → 代码注入 → 全局 head），只写差异，不改主题文件。
 * 分区：1 手写（站名字图 / 首页顶部 / 杂项）；2 生成分区（颜色覆盖，由 tools/gen_theme.py 生成）。
 * earth 深色模式 = <html class="dark">，浅色 = <html class="light">；深色变体选择器为 .dark\:xxx:is(.dark *)。
 */

/* ===== 1a 导航栏站名：Logo 图形 + 站名字图（文字保留给读屏与 SEO，视觉隐藏） ===== */
#site-title {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: calc(34px + 8px + 92px);
  height: 32px;
  font-size: 0;
  color: transparent !important;
  background: url(/sj/img/brand/name-light.png) right center / 92px 28px no-repeat;
}
#site-title::before {
  content: "";
  width: 34px;
  height: 32px;
  flex: none;
  background: url(/sj/img/brand/mark.png) center / contain no-repeat;
}
html.dark #site-title { background-image: url(/sj/img/brand/name-dark.png); }

/* ===== 1b 页脚站名：同一套字图（左侧 Logo 图片由 earth 输出，沿用 site.logo） ===== */
footer > div:first-child > a[href="/"] > span {
  display: inline-block;
  width: 92px;
  height: 28px;
  font-size: 0;
  color: transparent !important;
  background: url(/sj/img/brand/name-light.png) center / contain no-repeat;
}
html.dark footer > div:first-child > a[href="/"] > span { background-image: url(/sj/img/brand/name-dark.png); }

/* ===== 1c 首页顶部：夜幕蓝星空 + 竖排组合图（浅/深色都在夜幕蓝上，统一用 dark 版） ===== */
section > .bg-cover.h-96 {
  background:
    radial-gradient(2.8px 2.8px at 12% 18%, rgba(255, 209, 90, 1.00), transparent 100%),
    radial-gradient(2.2px 2.2px at 24% 62%, rgba(172, 223, 255, 0.90), transparent 100%),
    radial-gradient(3.2px 3.2px at 84% 16%, rgba(255, 209, 90, 1.00), transparent 100%),
    radial-gradient(2.2px 2.2px at 73% 70%, rgba(172, 223, 255, 0.85), transparent 100%),
    radial-gradient(2.6px 2.6px at 93% 52%, rgba(255, 209, 90, 0.90), transparent 100%),
    radial-gradient(2.2px 2.2px at 6% 44%, rgba(172, 223, 255, 0.75), transparent 100%),
    radial-gradient(2.6px 2.6px at 38% 12%, rgba(172, 223, 255, 0.80), transparent 100%),
    radial-gradient(2.0px 2.0px at 61% 30%, rgba(255, 209, 90, 0.80), transparent 100%),
    radial-gradient(ellipse 50% 60% at 50% 45%, rgba(7, 159, 250, 0.16), transparent 70%),
    linear-gradient(180deg, #0B1B30 0%, #10253F 60%, #16304D 100%) !important;
}
section > .bg-cover.h-96 > div {
  background: url(/sj/img/brand/hero-vertical-dark.png) center / auto min(300px, 78%) no-repeat;
}
section > .bg-cover.h-96 > div > span {
  font-size: 0 !important;
  color: transparent !important;
}

/* ===== 1d 杂项 ===== */
/* 文本选中色 */
::selection { background: rgba(7, 159, 250, 0.25); }
html.dark ::selection { background: rgba(93, 180, 245, 0.35); }
/* Tailwind 基础规则里的默认边框色（*,::before,::after 的 border-color #E5E7EB）换成冷蓝灰。
   用 :where() 把优先级降到 0（与 Tailwind 基础规则相同），只靠加载顺序生效，不会盖掉 .border-xxx 工具类 */
:where(html.light *, html.light ::before, html.light ::after) { border-color: #E1E8EF; }
:where(html.dark *, html.dark ::before, html.dark ::after) { border-color: #2F5075; }
/* 深色导航栏与页面之间补一条细边，避免阴影在深底上看不出层次 */
html.dark .sticky.top-0.h-16 { box-shadow: 0 1px 0 #1B3552; }

/* ===== 生成分区 BEGIN（由 tools/gen_theme.py 生成，勿手改） ===== */
html .divide-gray-100>:not([hidden])~:not([hidden]){border-color:rgb(241 244 248/var(--tw-divide-opacity,1))}
html .divide-gray-50>:not([hidden])~:not([hidden]){border-color:rgb(248 250 252/var(--tw-divide-opacity,1))}
html .\!border-indigo-400{border-color:rgb(7 159 250/var(--tw-border-opacity,1))!important}
html .border-gray-100{border-color:rgb(241 244 248/var(--tw-border-opacity,1))}
html .border-gray-200{border-color:rgb(225 232 239/var(--tw-border-opacity,1))}
html .border-gray-300{border-color:rgb(204 214 225/var(--tw-border-opacity,1))}
html .\!bg-gray-100{background-color:rgb(241 244 248/var(--tw-bg-opacity,1))!important}
html .\!bg-gray-200{background-color:rgb(225 232 239/var(--tw-bg-opacity,1))!important}
html .bg-gray-100{background-color:rgb(241 244 248/var(--tw-bg-opacity,1))}
html .bg-gray-50{background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}
html .bg-slate-50{background-color:rgb(244 248 252/var(--tw-bg-opacity,1))}
html .bg-white{background-color:rgb(252 253 255/var(--tw-bg-opacity,1))}
html .\!text-gray-900{color:rgb(21 25 29/var(--tw-text-opacity,1))!important}
html .text-gray-300{color:rgb(204 214 225/var(--tw-text-opacity,1))}
html .text-gray-400{color:rgb(150 164 179/var(--tw-text-opacity,1))}
html .text-gray-500{color:rgb(98 115 135/var(--tw-text-opacity,1))}
html .text-gray-600{color:rgb(73 85 100/var(--tw-text-opacity,1))}
html .text-gray-700{color:rgb(56 65 77/var(--tw-text-opacity,1))}
html .text-gray-800{color:rgb(35 41 48/var(--tw-text-opacity,1))}
html .text-gray-900{color:rgb(21 25 29/var(--tw-text-opacity,1))}
html .text-sky-600{color:rgb(21 95 175/var(--tw-text-opacity,1))}
html .text-white{color:rgb(252 253 255/var(--tw-text-opacity,1))}
html .ring-blue-500{--tw-ring-color:rgb(7 159 250/var(--tw-ring-opacity,1))}
html .ring-gray-300{--tw-ring-color:rgb(204 214 225/var(--tw-ring-opacity,1))}
html .hover\:border-gray-400:hover{border-color:rgb(150 164 179/var(--tw-border-opacity,1))}
html .hover\:border-indigo-400:hover{border-color:rgb(7 159 250/var(--tw-border-opacity,1))}
html .hover\:bg-gray-100:hover{background-color:rgb(241 244 248/var(--tw-bg-opacity,1))}
html .hover\:bg-gray-200:hover{background-color:rgb(225 232 239/var(--tw-bg-opacity,1))}
html .hover\:bg-gray-50:hover{background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}
html .hover\:text-blue-600:hover{color:rgb(21 95 175/var(--tw-text-opacity,1))}
html .hover\:text-gray-500:hover{color:rgb(98 115 135/var(--tw-text-opacity,1))}
html .hover\:text-gray-600:hover{color:rgb(73 85 100/var(--tw-text-opacity,1))}
html .hover\:text-gray-900:hover{color:rgb(21 25 29/var(--tw-text-opacity,1))}
html .hover\:ring-blue-500:hover{--tw-ring-color:rgb(7 159 250/var(--tw-ring-opacity,1))}
html .group:hover .group-hover\:bg-gray-100{background-color:rgb(241 244 248/var(--tw-bg-opacity,1))}
html .group:hover .group-hover\:bg-gray-200{background-color:rgb(225 232 239/var(--tw-bg-opacity,1))}
html .group:hover .group-hover\:bg-white{background-color:rgb(252 253 255/var(--tw-bg-opacity,1))}
html .group:hover .group-hover\:text-gray-900{color:rgb(21 25 29/var(--tw-text-opacity,1))}
html .group:hover .group-hover\:text-indigo-500{color:rgb(21 95 175/var(--tw-text-opacity,1))}
html .dark\:divide-slate-600:is(.dark *)>:not([hidden])~:not([hidden]){border-color:rgb(47 80 117/var(--tw-divide-opacity,1))}
html .dark\:divide-slate-700:is(.dark *)>:not([hidden])~:not([hidden]){border-color:rgb(35 64 95/var(--tw-divide-opacity,1))}
html .dark\:divide-slate-800:is(.dark *)>:not([hidden])~:not([hidden]){border-color:rgb(22 48 77/var(--tw-divide-opacity,1))}
html .dark\:\!border-indigo-200:is(.dark *){border-color:rgb(172 223 255/var(--tw-border-opacity,1))!important}
html .dark\:border-slate-500:is(.dark *){border-color:rgb(112 144 181/var(--tw-border-opacity,1))}
html .dark\:border-slate-600:is(.dark *){border-color:rgb(47 80 117/var(--tw-border-opacity,1))}
html .dark\:border-slate-700:is(.dark *){border-color:rgb(35 64 95/var(--tw-border-opacity,1))}
html .dark\:border-slate-800:is(.dark *){border-color:rgb(22 48 77/var(--tw-border-opacity,1))}
html .dark\:\!bg-slate-700:is(.dark *){background-color:rgb(35 64 95/var(--tw-bg-opacity,1))!important}
html .dark\:bg-gray-800:is(.dark *){background-color:rgb(11 27 48/var(--tw-bg-opacity,1))}
html .dark\:bg-gray-900:is(.dark *){background-color:rgb(11 27 48/var(--tw-bg-opacity,1))}
html .dark\:bg-slate-600:is(.dark *){background-color:rgb(47 80 117/var(--tw-bg-opacity,1))}
html .dark\:bg-slate-700:is(.dark *){background-color:rgb(35 64 95/var(--tw-bg-opacity,1))}
html .dark\:bg-slate-800:is(.dark *){background-color:rgb(22 48 77/var(--tw-bg-opacity,1))}
html .dark\:bg-slate-900:is(.dark *){background-color:rgb(16 37 63/var(--tw-bg-opacity,1))}
html .dark\:\!text-slate-100:is(.dark *){color:rgb(242 245 248/var(--tw-text-opacity,1))!important}
html .dark\:\!text-slate-300:is(.dark *){color:rgb(202 214 227/var(--tw-text-opacity,1))!important}
html .dark\:\!text-slate-50:is(.dark *){color:rgb(249 250 252/var(--tw-text-opacity,1))!important}
html .dark\:text-gray-100:is(.dark *){color:rgb(242 245 248/var(--tw-text-opacity,1))}
html .dark\:text-gray-600:is(.dark *){color:rgb(61 86 115/var(--tw-text-opacity,1))}
html .dark\:text-slate-100:is(.dark *){color:rgb(242 245 248/var(--tw-text-opacity,1))}
html .dark\:text-slate-200:is(.dark *){color:rgb(226 232 240/var(--tw-text-opacity,1))}
html .dark\:text-slate-300:is(.dark *){color:rgb(202 214 227/var(--tw-text-opacity,1))}
html .dark\:text-slate-400:is(.dark *){color:rgb(139 164 193/var(--tw-text-opacity,1))}
html .dark\:text-slate-50:is(.dark *){color:rgb(249 250 252/var(--tw-text-opacity,1))}
html .dark\:text-slate-500:is(.dark *){color:rgb(112 144 181/var(--tw-text-opacity,1))}
html .dark\:text-slate-600:is(.dark *){color:rgb(47 80 117/var(--tw-text-opacity,1))}
html .dark\:ring-slate-600:is(.dark *){--tw-ring-color:rgb(47 80 117/var(--tw-ring-opacity,1))}
html .dark\:ring-slate-700:is(.dark *){--tw-ring-color:rgb(35 64 95/var(--tw-ring-opacity,1))}
html .dark\:hover\:border-indigo-200:hover:is(.dark *){border-color:rgb(172 223 255/var(--tw-border-opacity,1))}
html .dark\:hover\:border-slate-700:hover:is(.dark *){border-color:rgb(35 64 95/var(--tw-border-opacity,1))}
html .dark\:hover\:bg-slate-600:hover:is(.dark *){background-color:rgb(47 80 117/var(--tw-bg-opacity,1))}
html .dark\:hover\:bg-slate-700:hover:is(.dark *){background-color:rgb(35 64 95/var(--tw-bg-opacity,1))}
html .dark\:hover\:text-blue-400:hover:is(.dark *){color:rgb(93 180 245/var(--tw-text-opacity,1))}
html .dark\:hover\:text-gray-300:hover:is(.dark *){color:rgb(202 214 227/var(--tw-text-opacity,1))}
html .dark\:hover\:text-slate-100:hover:is(.dark *){color:rgb(242 245 248/var(--tw-text-opacity,1))}
html .dark\:hover\:text-slate-200:hover:is(.dark *){color:rgb(226 232 240/var(--tw-text-opacity,1))}
html .dark\:hover\:text-slate-300:hover:is(.dark *){color:rgb(202 214 227/var(--tw-text-opacity,1))}
html .dark\:hover\:text-slate-50:hover:is(.dark *){color:rgb(249 250 252/var(--tw-text-opacity,1))}
html .dark\:hover\:text-slate-500:hover:is(.dark *){color:rgb(112 144 181/var(--tw-text-opacity,1))}
html .dark\:hover\:text-slate-600:hover:is(.dark *){color:rgb(47 80 117/var(--tw-text-opacity,1))}
html .dark\:hover\:text-white:hover:is(.dark *){color:rgb(254 255 255/var(--tw-text-opacity,1))}
html .group:hover .dark\:group-hover\:bg-slate-500:is(.dark *){background-color:rgb(112 144 181/var(--tw-bg-opacity,1))}
html .group:hover .dark\:group-hover\:bg-slate-600:is(.dark *){background-color:rgb(47 80 117/var(--tw-bg-opacity,1))}
html .group:hover .dark\:group-hover\:bg-slate-700:is(.dark *){background-color:rgb(35 64 95/var(--tw-bg-opacity,1))}
html .is-active-link{background-color:rgb(241 244 248/var(--tw-bg-opacity,1))}
html .is-active-link:is(.dark *){background-color:rgb(47 80 117/var(--tw-bg-opacity,1))}
html.light .markdown-body{--color-fg-default:#1E232A;--color-fg-muted:#5D6E80;--color-fg-subtle:#66788C;--color-accent-fg:#155FAF;--color-accent-emphasis:#155FAF;--color-canvas-default:#FCFDFF;--color-canvas-subtle:#F0F5FB;--color-border-default:#D3DFEB;--color-border-muted:#E4EDF7;--color-attention-fg:#A76B00}
html.dark .markdown-body{--color-fg-default:#E7ECF2;--color-fg-muted:#8BA4C1;--color-fg-subtle:#7896BA;--color-accent-fg:#5DB4F5;--color-accent-emphasis:#5DB4F5;--color-canvas-default:#16304D;--color-canvas-subtle:#0F2339;--color-border-default:#2F5075;--color-border-muted:#23405F;--color-attention-fg:#FFD15A}
/* ===== 生成分区 END ===== */
