/* ============================================================
   Robot HWAI Lab — GitHub Dark 主题 v3
   2026-05-17: 修正选择器，使用 Homepage v1.13.1 真实 class 名
   ============================================================

   分区 Accent:
     核心入口     blue    #58a6ff
     项目 Wiki    violet  #a78bfa
     Obsidian 文档 amber  #fbbf24
     LLM 服务     emerald #34d399
     服务器服务    rose    #fb7185
   ============================================================ */

:root {
  --rh-bg-canvas:  #0d1117;
  --rh-bg-overlay: #161b22;
  --rh-bg-subtle:  #1e2a3a;
  --rh-border:     #3d444d;
  --rh-fg-default: #e6edf3;
  --rh-fg-muted:   #8b949e;
  --rh-font: "Inter","Noto Sans CJK SC","PingFang SC","Microsoft YaHei",
             system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;

  --rh-blue:    #58a6ff;
  --rh-violet:  #a78bfa;
  --rh-amber:   #fbbf24;
  --rh-emerald: #34d399;
  --rh-rose:    #fb7185;
}

/* ---------- 全局基底 ---------- */
html, body {
  background: var(--rh-bg-canvas) !important;
  color: var(--rh-fg-default);
  font-family: var(--rh-font);
  letter-spacing: .005em;
  -webkit-font-smoothing: antialiased;
}

body {
  background-image:
    radial-gradient(ellipse 1200px 600px at 15% -10%, rgba(88,166,255,.07), transparent 60%),
    radial-gradient(ellipse 1000px 500px at 85% 110%, rgba(52,211,153,.05), transparent 60%) !important;
  background-attachment: fixed !important;
}

/* ---------- 容器限宽 ---------- */
main, main > div, [class*="layout"] > main {
  max-width: 1320px !important;
  margin: 0 auto !important;
}

/* ---------- Greeting logo ---------- */
.information-widget-greeting > span,
[class*=information-widget-greeting] > span {
  background: linear-gradient(135deg, #58a6ff 0%, #79c0ff 25%, #a371f7 55%, #ff7b72 90%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  font-weight: 800 !important;
  font-size: 1.9rem !important;
  letter-spacing: -.02em !important;
  line-height: 1.2 !important;
  filter: drop-shadow(0 1px 3px rgba(88,166,255,.18));
  padding: 2px 0;
}
.information-widget-greeting > span::after,
[class*=information-widget-greeting] > span::after {
  content: ' · peter.zhou';
  font-size: .45em;
  font-weight: 400;
  letter-spacing: 0;
  margin-left: 8px;
  vertical-align: middle;
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: #8b949e !important;
  color: #8b949e !important;
  text-shadow: none;
  filter: none;
  opacity: .9;
}

/* ================================================================
   分区标题 (.service-group-name / .bookmark-group-name)
   ================================================================ */

.service-group-name,
.bookmark-group-name {
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  position: relative !important;
  padding-left: 14px !important;
}

/* 通用左侧彩线（默认蓝，被分区色 override） */
.service-group-name::before,
.bookmark-group-name::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 16px;
  border-radius: 2px;
  background: var(--rh-blue);
}

/* 分区色 — 服务分区 */
[data-rh-group="blue"]    .service-group-name::before { background: var(--rh-blue) !important; }
[data-rh-group="violet"]  .service-group-name::before { background: var(--rh-violet) !important; }
[data-rh-group="amber"]   .service-group-name::before { background: var(--rh-amber) !important; }
[data-rh-group="emerald"] .service-group-name::before { background: var(--rh-emerald) !important; }
[data-rh-group="rose"]    .service-group-name::before { background: var(--rh-rose) !important; }

/* 分区色 — 书签分区 */
[data-rh-bm-group="0"] .bookmark-group-name::before { background: var(--rh-blue) !important; }
[data-rh-bm-group="1"] .bookmark-group-name::before { background: var(--rh-violet) !important; }
[data-rh-bm-group="2"] .bookmark-group-name::before { background: var(--rh-emerald) !important; }

/* ================================================================
   服务卡片 (.service) hover 增强
   ================================================================ */

/* 通用 hover */
.service:hover {
  transform: translateY(-2px) !important;
  transition: transform 200ms cubic-bezier(.4,0,.2,1) !important;
}

/* 通用 hover 背景 — 卡片内层（bg-theme-200/50 dark:bg-theme-900/20 的那个 div） */
.service:hover > * {
  background-color: #1e2a3a !important;
}

/* 分区色 hover 左边框 + 光晕 */
[data-rh-group="blue"]    .service:hover { box-shadow: -3px 0 0 var(--rh-blue), 0 8px 24px rgba(0,0,0,.4) !important; }
[data-rh-group="violet"]  .service:hover { box-shadow: -3px 0 0 var(--rh-violet), 0 8px 24px rgba(0,0,0,.4) !important; }
[data-rh-group="amber"]   .service:hover { box-shadow: -3px 0 0 var(--rh-amber), 0 8px 24px rgba(0,0,0,.4) !important; }
[data-rh-group="emerald"] .service:hover { box-shadow: -3px 0 0 var(--rh-emerald), 0 8px 24px rgba(0,0,0,.4) !important; }
[data-rh-group="rose"]    .service:hover { box-shadow: -3px 0 0 var(--rh-rose), 0 8px 24px rgba(0,0,0,.4) !important; }

/* 分区色 图标颜色 */
[data-rh-group="blue"]    .service-icon svg,
[data-rh-group="blue"]    .service-icon img  { color: var(--rh-blue) !important; }
[data-rh-group="violet"]  .service-icon svg,
[data-rh-group="violet"]  .service-icon img  { color: var(--rh-violet) !important; }
[data-rh-group="amber"]   .service-icon svg,
[data-rh-group="amber"]   .service-icon img  { color: var(--rh-amber) !important; }
[data-rh-group="emerald"] .service-icon svg,
[data-rh-group="emerald"] .service-icon img  { color: var(--rh-emerald) !important; }
[data-rh-group="rose"]    .service-icon svg,
[data-rh-group="rose"]    .service-icon img  { color: var(--rh-rose) !important; }

/* 图标 hover 发光 */
[data-rh-group="blue"]    .service:hover .service-icon svg { filter: drop-shadow(0 0 6px rgba(88,166,255,.6)) !important; color: #79c0ff !important; }
[data-rh-group="violet"]  .service:hover .service-icon svg { filter: drop-shadow(0 0 6px rgba(167,139,250,.6)) !important; color: #c4b5fd !important; }
[data-rh-group="amber"]   .service:hover .service-icon svg { filter: drop-shadow(0 0 6px rgba(251,191,36,.6)) !important; color: #fcd34d !important; }
[data-rh-group="emerald"] .service:hover .service-icon svg { filter: drop-shadow(0 0 6px rgba(52,211,153,.6)) !important; color: #6ee7b7 !important; }
[data-rh-group="rose"]    .service:hover .service-icon svg { filter: drop-shadow(0 0 6px rgba(251,113,133,.6)) !important; color: #fda4af !important; }

/* 服务名称 */
.service-name {
  color: var(--rh-fg-default) !important;
  font-weight: 600 !important;
}
/* 服务描述 */
.service-description {
  color: var(--rh-fg-muted) !important;
}

/* ================================================================
   Resources 进度条
   ================================================================ */

/* 容器背景 */
.resource-usage {
  background: rgba(255,255,255,.08) !important;
  border-radius: 4px !important;
  height: 5px !important;
}

/* 填充条: JS 会动态设置 --bar-color */
.resource-usage > div {
  background: var(--bar-color, #34d399) !important;
  border-radius: 4px !important;
  transition: background 600ms ease, width 1s ease !important;
}

/* ================================================================
   书签 (.bookmark / .bookmark-group)
   ================================================================ */

/* 书签列轻微区分 */
[data-rh-bm-group="0"] .bookmark {
  border-color: rgba(88,166,255,.18) !important;
}
[data-rh-bm-group="1"] .bookmark {
  border-color: rgba(167,139,250,.18) !important;
}
[data-rh-bm-group="2"] .bookmark {
  border-color: rgba(52,211,153,.18) !important;
}

/* 书签 abbr 默认 */
.bookmark-icon {
  transition: all 150ms;
}

/* 品牌色 — JS 会按文字加 data-abbr */
[data-abbr="GH"] { background: #24292e !important; color: #f0f6fc !important; border-color: #444c56 !important; }
[data-abbr="HF"] { background: #ff9d00 !important; color: #000 !important; border-color: #e68900 !important; }
[data-abbr="PY"] { background: #3775a9 !important; color: #fff !important; border-color: #2c5f8a !important; }
[data-abbr="IL"] { background: #76b900 !important; color: #fff !important; border-color: #5e9200 !important; }
[data-abbr="R2"] { background: #22314e !important; color: #82c4e4 !important; border-color: #304970 !important; }
[data-abbr="RH"] { background: rgba(88,166,255,.15) !important; color: #58a6ff !important; border-color: rgba(88,166,255,.3) !important; }
[data-abbr="DB"] { background: rgba(167,139,250,.15) !important; color: #a78bfa !important; border-color: rgba(167,139,250,.3) !important; }

/* ================================================================
   滚动条
   ================================================================ */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--rh-bg-canvas); }
::-webkit-scrollbar-thumb { background: var(--rh-border); border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: #484f58; }

/* ================================================================
   移动端
   ================================================================ */
@media (max-width: 640px) {
  .service-name { font-size: .85rem !important; }
  .service-description { font-size: .7rem !important; }
}
/* ================================================================
   均衡排版修正 (zhuye2.png 反馈: 主页底部留白过多)
   2026-05-17
   ================================================================ */

/* 主体垂直填充 + 顶部呼吸 */
#__next > div,
body > div > div {
  min-height: 100vh !important;
}

main {
  min-height: calc(100vh - 24px) !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 40px 28px 56px !important;
  gap: 32px !important;
}

/* 信息栏（greeting）顶部呼吸感更大 */
main > div:first-child {
  margin-top: 8px !important;
  margin-bottom: 16px !important;
}

/* 服务分区垂直间距大幅加大 */
.services-group {
  margin-bottom: 36px !important;
}
.services-group:last-child {
  margin-bottom: 0 !important;
}

/* 分区标题与下方卡片间距 */
.service-group-name {
  margin-bottom: 18px !important;
  font-size: 1.15rem !important;
}

/* 卡片整体抬高，给信息呼吸感 */
.service {
  min-height: 116px !important;
}

/* 卡片内层 padding 加大 */
.service > a,
.service > div {
  padding: 18px 20px !important;
}

/* 图标更大 */
.service-icon {
  width: 44px !important;
  height: 44px !important;
  flex-shrink: 0 !important;
}
.service-icon svg,
.service-icon img {
  width: 100% !important;
  height: 100% !important;
}

/* 服务名字号调大 */
.service-name {
  font-size: 1.05rem !important;
  margin-bottom: 4px !important;
}

/* 描述更易读 */
.service-description {
  font-size: .82rem !important;
  line-height: 1.6 !important;
}

/* 卡片网格水平间距 */
.services-group > div {
  gap: 14px !important;
}
