/* ============================================================
   GROK DOCS THEME v5 — 对标 docs.x.ai/grok/faq
   实测参考站 token：
     bg-base        hsl(0 0% 4%)   → #0a0a0a  底色
     bg-inset       hsl(0 0% 2%)   → 更深内嵌
     bg-l1 7% · l2 10% · l3 13% · l4 15% · bg-card 10%
     border-muted   hsl(0 0% 19%)  → 极细暗边
     border-subtle  hsl(0 0% 37%)
     text           #f5f5f5 → #d4d4d4 → muted #a1a1aa
     accent         Grok 翠绿 #00c758 / #00d294
     secondary      purple #ac4bff / #c07eff
     font           universalSans (系统衬底) + GeistMono 等宽
     radius         lg .5rem · 2xl 1rem · 3xl 1.5rem
   ============================================================ */

html, body, .shell {
  color-scheme: dark !important;
  --gk-bg: #0a0a0a;
  --gk-inset: #050505;
  --gk-l1: #131313;
  --gk-l2: #191919;
  --gk-l3: #212121;
  --gk-l4: #262626;
  --gk-card: #191919;
  --gk-text: #f5f5f5;
  --gk-text-2: #d4d4d4;
  --gk-muted: #a1a1aa;
  --gk-faint: #71717a;
  --gk-border: rgba(255, 255, 255, 0.07);
  --gk-border-strong: rgba(255, 255, 255, 0.13);
  --gk-accent: #00c758;
  --gk-accent-2: #00d294;
  --gk-accent-soft: rgba(0, 199, 88, 0.12);
  --gk-violet: #ac4bff;
  --gk-violet-soft: rgba(172, 75, 255, 0.12);
  --gk-radius-sm: 0.5rem;
  --gk-radius: 1rem;
  --gk-radius-lg: 1.5rem;

  /* 覆盖设计系统 token */
  --bg: var(--gk-bg) !important;
  --bg-elevated: var(--gk-l1) !important;
  --bg-muted: var(--gk-l2) !important;
  --text: var(--gk-text) !important;
  --text-muted: var(--gk-muted) !important;
  --border: var(--gk-border) !important;
  --accent: var(--gk-accent) !important;
  --accent-soft: var(--gk-accent-soft) !important;
  --shadow: 0 1px 2px rgba(0,0,0,.3), 0 8px 24px rgba(0,0,0,.35) !important;
  --radius: var(--gk-radius) !important;

  --home-bg: var(--gk-bg) !important;
  --home-surface: var(--gk-card) !important;
  --home-muted-bg: var(--gk-l2) !important;
  --home-text: var(--gk-text) !important;
  --home-muted: var(--gk-muted) !important;
  --home-border: var(--gk-border) !important;
  --home-accent: var(--gk-accent) !important;
  --home-accent-soft: var(--gk-accent-soft) !important;
  --home-radius: var(--gk-radius) !important;

  --fg: var(--gk-text) !important;
  --muted: var(--gk-muted) !important;

  /* 参考站 vignette：近黑 + 极淡顶部辉光 */
  background-color: var(--gk-bg) !important;
  background-image:
    radial-gradient(120% 70% at 50% -20%, rgba(0, 199, 88, 0.05), transparent 55%),
    radial-gradient(90% 45% at 85% 0%, rgba(172, 75, 255, 0.04), transparent 50%),
    linear-gradient(180deg, #0d0d0d 0%, #0a0a0a 40%, #070707 100%) !important;
  background-attachment: fixed !important;
  color: var(--gk-text) !important;
  font-family: "Universal Sans", "universalSans", ui-sans-serif, system-ui, -apple-system,
    "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC",
    "Microsoft YaHei", sans-serif !important;
  font-feature-settings: "cv11", "ss01" !important;
  -webkit-font-smoothing: antialiased;
  letter-spacing: -0.011em;
}

html, body {
  min-height: 100%;
  background-color: var(--gk-bg) !important;
  color: var(--gk-text) !important;
}

#__next, main, .shell__main, .shell main {
  background-color: transparent !important;
  color: inherit !important;
}

/* ============ 顶部栏：暗色细边 ============ */
.shell .site-header {
  background: rgba(10, 10, 10, 0.85) !important;
  -webkit-backdrop-filter: saturate(140%) blur(16px) !important;
  backdrop-filter: saturate(140%) blur(16px) !important;
  border-bottom: 1px solid var(--gk-border) !important;
  box-shadow: none !important;
}

.shell .brand__name {
  font-weight: 600 !important;
  letter-spacing: -0.03em !important;
  color: #fff !important;
  background: none !important;
  -webkit-text-fill-color: #fff !important;
  text-shadow: none !important;
}

.shell .brand__name::before {
  content: "" !important;
  display: inline-block;
  width: 0.7em;
  height: 0.7em;
  margin-right: 0.45em;
  vertical-align: -0.05em;
  background: linear-gradient(135deg, var(--gk-accent-2), var(--gk-accent)) !important;
  border-radius: 4px !important;
  box-shadow: 0 0 12px rgba(0, 215, 148, 0.35);
}

.shell .nav a {
  color: var(--gk-muted) !important;
  font-weight: 500 !important;
  font-size: 0.875rem !important;
  border-radius: 0.5rem !important;
  padding: 0.4rem 0.7rem !important;
}

.shell .nav a:hover {
  color: var(--gk-text) !important;
  background: rgba(255, 255, 255, 0.05) !important;
}

.shell .nav a[data-active="true"] {
  color: #fff !important;
  background: var(--gk-accent-soft) !important;
}

.shell .header-actions .btn,
.shell .lang-switch__select {
  border: 1px solid var(--gk-border) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  color: var(--gk-text) !important;
  border-radius: 0.5rem !important;
}

.shell .theme-toggle {
  display: none !important;
}

/* ============ 按钮 ============ */
.shell :where(.btn-primary, a.btn-primary, .row-actions .btn-primary) {
  background: linear-gradient(180deg, var(--gk-accent-2), var(--gk-accent)) !important;
  color: #04120a !important;
  border: 0 !important;
  border-radius: 0.5rem !important;
  font-weight: 600 !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.15) inset, 0 4px 16px rgba(0, 199, 88, 0.25) !important;
}

.shell :where(.btn-primary, a.btn-primary):hover {
  background: linear-gradient(180deg, #00e39b, #00d274) !important;
  transform: translateY(-1px);
}

.shell :where(.btn, .btn-secondary, .btn-ghost, a.btn-secondary) {
  border-radius: 0.5rem !important;
  border: 1px solid var(--gk-border-strong) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  color: var(--gk-text) !important;
}

/* ============ 卡片 / 面板：层次灰 ============ */
.shell :where(
  .stat-card, .path-card, .module-card, .panel, .card, .table-wrap,
  .channel-card, .offer-card, .feed-card, .section-card, .faq-item,
  .channels-toolbar, .rank-toolbar, .price-quick, .products-platform-section,
  .ch-more-filters, .watch-dock__panel, .submission-center, .qq-join-panel
) {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0.005)), var(--gk-card) !important;
  border: 1px solid var(--gk-border) !important;
  border-radius: var(--gk-radius) !important;
  box-shadow: none !important;
  color: var(--gk-text-2) !important;
}

.shell :where(.path-card, .module-card, .card, .channel-card, .offer-card):hover {
  border-color: rgba(0, 199, 88, 0.3) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3) !important;
  transform: none !important;
}

/* ============ Hero：克制的大字号 ============ */
.shell :where(.hero, .home-hero, .page-hero, .landing-hero) {
  position: relative;
  border: 1px solid var(--gk-border);
  border-radius: var(--gk-radius-lg) !important;
  background:
    radial-gradient(ellipse 70% 55% at 50% -15%, rgba(0, 199, 88, 0.08), transparent 60%),
    var(--gk-l1);
  box-shadow: none !important;
  overflow: hidden;
}

.shell :where(.hero h1, .home-hero h1, .page-hero h1, .hero__title) {
  font-size: clamp(2rem, 4.2vw, 3.2rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.1 !important;
  color: #fff !important;
  background: none !important;
  -webkit-text-fill-color: #fff !important;
}

.shell :where(.hero p, .home-hero p, .hero__lead) {
  color: var(--gk-muted) !important;
  font-size: 1.02rem !important;
  line-height: 1.6 !important;
}

/* ============ 表格 ============ */
.shell :where(th, .col-n, .col-goods, .col-shop, .col-kind, .col-time, .col-stock, .col-act) {
  color: var(--gk-faint) !important;
  font-weight: 500 !important;
  font-size: 0.72rem !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  border-bottom-color: var(--gk-border) !important;
  background: transparent !important;
}

.shell :where(td) {
  border-bottom-color: var(--gk-border) !important;
  color: var(--gk-text-2) !important;
}

.shell :where(tr:hover td) {
  background: rgba(255, 255, 255, 0.025) !important;
}

/* ============ 输入 ============ */
.shell :where(.input, .select, input[type="text"], input[type="search"], select, textarea) {
  background: var(--gk-inset) !important;
  border: 1px solid var(--gk-border-strong) !important;
  color: var(--gk-text) !important;
  border-radius: var(--gk-radius-sm) !important;
}

.shell :where(.input, .select, input, select, textarea):focus-visible {
  border-color: rgba(0, 199, 88, 0.55) !important;
  box-shadow: 0 0 0 3px rgba(0, 199, 88, 0.15) !important;
  outline: none !important;
}

/* ============ 徽标 / 链接 ============ */
.shell :where(.badge, .chip, .tag, .pill, .site-rec-card__tag, .ch-dot) {
  background: var(--gk-violet-soft) !important;
  color: #d8b9ff !important;
  border: 1px solid rgba(172, 75, 255, 0.25) !important;
  border-radius: 999px !important;
}

.shell main a:not(.btn):not(.btn-primary):not(.nav a):not(.brand) {
  color: var(--gk-accent-2);
}

.shell main a:not(.btn):not(.btn-primary):hover {
  color: #0ee08f;
}

/* ============ 文字层级 ============ */
.shell :where(h1, h2, h3) {
  color: var(--gk-text) !important;
  letter-spacing: -0.03em !important;
  font-weight: 600 !important;
  text-shadow: none !important;
}

.shell :where(.muted, [class*="__desc"], [class*="__hint"], [class*="__sub"], [class*="__label"], .channels-footnote, .col-warranty, .col-time, .col-stock) {
  color: var(--gk-muted) !important;
}

.shell :where(.price, .price-value, .amount, .price-main, .price-main__yen, .price-quick__price, .price-quick__yen, .ch-stat__value, .pb-price) {
  color: var(--gk-accent-2) !important;
  font-variant-numeric: tabular-nums;
  font-weight: 600 !important;
}

/* ============ 页脚 ============ */
.shell .site-footer {
  background: transparent !important;
  border-top: 1px solid var(--gk-border) !important;
  color: var(--gk-muted) !important;
}

.shell .site-footer a {
  color: var(--gk-text-2) !important;
}

.shell .site-footer a:hover {
  color: #fff !important;
}

/* ============ 交互态 ============ */
.shell :where(.platform-tab, .rank-sort-pill, .rank-view-btn, .price-preset) {
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid var(--gk-border-strong) !important;
  color: var(--gk-text-2) !important;
  border-radius: 0.5rem !important;
}

.shell :where(.platform-tab[data-active="true"], .platform-tab.is-active, .rank-sort-pill[data-active="true"], .rank-sort-pill.is-active, .rank-view-btn[data-active="true"], .rank-view-btn.is-active) {
  background: var(--gk-accent-soft) !important;
  border-color: rgba(0, 199, 88, 0.35) !important;
  color: #fff !important;
}

.shell :where(.price-quick__card, .site-rec-card, .content-related__card, .product-cell, .compare-check, .lowest-merchant) {
  background: var(--gk-l1) !important;
  border: 1px solid var(--gk-border) !important;
  border-radius: var(--gk-radius-sm) !important;
  color: var(--gk-text-2) !important;
}

.shell :where(.price-quick__card:hover, .site-rec-card:hover, .content-related__card:hover) {
  border-color: rgba(0, 199, 88, 0.3) !important;
  background: var(--gk-l2) !important;
}

/* 等宽数字/代码风格 */
.shell :where(code, .kbd, [class*="__code"]) {
  font-family: "GeistMono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
  font-size: 0.85em !important;
  color: var(--gk-text-2) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border-radius: 6px;
}

/* 内联浅色兜底 */
.shell [style*="background:#fff"],
.shell [style*="background: #fff"],
.shell [style*="background:#ffffff"],
.shell [style*="background-color:#fff"] {
  background: var(--gk-card) !important;
}

.shell [style*="background:#fff"]:where(.btn, button),
.shell [style*="background:#ffffff"]:where(.btn, button) {
  background: linear-gradient(180deg, var(--gk-accent-2), var(--gk-accent)) !important;
  color: #04120a !important;
}

.shell :where(hr, [class*="__divider"], [class*="__sep"]) {
  border-color: var(--gk-border) !important;
  background: var(--gk-border) !important;
}

.shell :where(a, button):focus-visible {
  outline: 2px solid rgba(0, 199, 88, 0.55) !important;
  outline-offset: 2px;
}

.shell ::-webkit-scrollbar-thumb,
body ::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.13);
  border-radius: 999px;
}

.shell,
html,
body {
  scrollbar-color: rgba(255, 255, 255, 0.15) transparent;
}
