/* KBG AI VIDEO ENGINE — 主题变量层。只放颜色/字体/基础背景，不放具体组件
   样式（组件样式在 kbg-components.css），改配色只需要改这一个文件。 */
:root {
  --kbg-bg-0: #050505;
  --kbg-bg-1: #080808;
  --kbg-bg-2: #0D0D0D;
  --kbg-card-bg: rgba(15, 15, 15, 0.88);
  --kbg-card-bg-solid: #111111;

  --kbg-gold-1: #F5B942;
  --kbg-gold-2: #FFB000;
  --kbg-gold-3: #D99A16;
  --kbg-orange: #FF8A00;

  --kbg-text: #FFFFFF;
  --kbg-text-2: #B8B8B8;
  --kbg-text-3: #7A7A7A;

  --kbg-success: #00E58B;
  --kbg-warning: #FFB020;
  --kbg-error: #FF4D4F;
  --kbg-info: #3AA0FF;

  --kbg-border-gold: rgba(245, 185, 66, 0.35);
  --kbg-shadow-gold: rgba(255, 176, 0, 0.18);

  --kbg-radius: 10px;
  --kbg-radius-lg: 16px;
  --kbg-font-cn: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", -apple-system, sans-serif;
  --kbg-font-en: "Inter", "Rajdhani", var(--kbg-font-cn);
  --kbg-font-tech: "Orbitron", "Rajdhani", var(--kbg-font-cn);
}

* { box-sizing: border-box; }

html { background: var(--kbg-bg-0); }

body {
  margin: 0;
  background: var(--kbg-bg-0);
  color: var(--kbg-text);
  font-family: var(--kbg-font-cn);
  line-height: 1.6;
  /* 首屏防止横向滚动条（要求二十三：不出现横向滚动条） */
  overflow-x: hidden;
  position: relative;
}

/* 视觉验收反馈修复："Hero是一块黑卡片浮在别的背景上"——原因是Hero自己的
   网格/光晕背景只画在 .kbg-hero 这一个区块内，往下滚动过了Hero就是纯色
   body，看起来像两张背景拼接。这里用 body::before 铺一层同一套视觉语言
   （网格线+点阵+暗金光晕），fixed定位贯穿整个页面高度，强度比Hero自己的
   背景低很多（point 9要求"不要堆大量发光"），保证滚动时背景连续，不是
   看得出接缝的两段。z-index:-1 保证不挡内容、不影响点击。 */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 60% 40% at 15% 0%, rgba(255, 176, 0, 0.05), transparent 60%),
    radial-gradient(ellipse 50% 35% at 90% 100%, rgba(217, 154, 22, 0.045), transparent 60%),
    linear-gradient(180deg, var(--kbg-bg-1) 0%, var(--kbg-bg-0) 40%, var(--kbg-bg-0) 100%);
}
body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(245, 185, 66, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(245, 185, 66, 0.03) 1px, transparent 1px);
  background-size: 48px 48px;
}

a { color: var(--kbg-gold-1); text-decoration: none; }
a:hover { color: var(--kbg-gold-2); }

::selection { background: var(--kbg-gold-2); color: #000; }

/* prefers-reduced-motion：用户系统选择减少动画时，全站动画统一收敛，不是
   每个组件各自判断一次——集中在这里管，新组件也自动遵守。 */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}
