/* ================================================================
   Nova Edge theme overlay — 金牌链接工厂
   Loaded LAST on every page. Re-skins the whole app by redefining the
   design tokens every page CSS already uses (two naming families:
   --ink/--surface/--line/--accent  and  --text/--panel/--border/--primary).
   Layout/structure untouched; only token values + light global polish.
   Palette: deep navy + electric blue (Nova Edge Design System).
   ================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@600;700&display=swap');

:root {
  /* backgrounds */
  --bg: #EEF2F9;
  --surface: #FFFFFF;
  --surface-soft: #F2F6FD;
  --surface-2: #F2F6FD;
  --panel: #FFFFFF;
  --panel-strong: #F2F6FD;
  --panel-2: #F2F6FD;

  /* lines / borders */
  --line: #DCE4F0;
  --line-strong: #C9D5E6;
  --border: #DCE4F0;
  --border-strong: #C9D5E6;

  /* text / ink */
  --ink: #0A1B3D;
  --ink-soft: #46556F;
  --text: #0A1B3D;
  --text-soft: #46556F;
  --muted: #7C8AA3;

  /* accent — electric blue */
  --accent: #0A5FEF;
  --accent-soft: #E7EFFD;
  --accent-bg: #F2F6FD;
  --primary: #0A5FEF;
  --primary-soft: #E7EFFD;

  /* semantic */
  --success: #1A7A4A;
  --success-soft: #E6F6EC;
  --warn: #C8852B;
  --warn-soft: #FBEFD6;
  --danger: #C0392B;
  --danger-soft: #FBE7E4;

  /* shadow */
  --shadow: 0 8px 30px rgba(10, 27, 61, 0.08);
  --shadow-sm: 0 1px 3px rgba(10, 27, 61, 0.06), 0 1px 2px rgba(10, 27, 61, 0.04);

  /* radius — keep close to original to avoid layout shifts */
  --radius: 12px;
  --radius-sm: 8px;
  --radius-lg: 16px;

  /* code blocks (debug) — stay dark navy */
  --code-bg: #050E28;
  --code-text: #E7EEF9;

  /* Nova brand fonts */
  --nova-serif: 'Noto Serif SC', 'Songti SC', 'STSong', serif;
}

/* ---- signature serif on display headings (recognizable Nova touch) ---- */
h1,
.page-heading,
.brand-main,
.display,
.page-head h1,
h2.title {
  font-family: var(--nova-serif);
  letter-spacing: -0.005em;
}

/* ---- accent links ---- */
a { color: var(--accent); }

/* ---- pill-ify the primary/accent action buttons (broad, safe selectors) ---- */
.btn,
.button,
.primary-button,
.secondary-button,
button.primary,
.btn-primary {
  border-radius: 100px;
}

/* ---- focus ring in brand accent ---- */
input:focus,
select:focus,
textarea:focus {
  outline: none;
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 3px rgba(10, 95, 239, 0.12);
}

/* ---- thin brand scrollbar ---- */
* { scrollbar-color: var(--line-strong) transparent; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb { background: var(--line-strong); border-radius: 100px; border: 2px solid transparent; background-clip: content-box; }
::-webkit-scrollbar-thumb:hover { background: var(--muted); }
