/* ═══════════════════════════════════════════════════════════
 * Xiyin Acoustics · MkDocs Material 品牌变量（v1.3 锁定版）
 * 基于 XIYIN-DESIGN-SPEC.md v1.3
 * 三字法典：曦紫霞 · 音玫瑰金 · 声极光青
 * ═══════════════════════════════════════════════════════════ */

/* ─── 英文专用字体（通过 unicode-range 只作用于英文字符）─── */
@font-face {
  font-family: 'XiyinLatin';
  src: local('Inter'), local('-apple-system'), local('BlinkMacSystemFont');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215;
  font-display: swap;
}

/* ─── xiyin-light（浅色模式）──── */
[data-md-color-scheme="xiyin-light"] {
  /* ━━━ 三字主色（Trinity · 严格使用）━━━ */
  --xi-color:         #9D4EDD;
  --xi-color-light:   #C77DFF;
  --xi-color-deep:    #6A1FA3;

  --yin-color:        #D4A574;
  --yin-color-light:  #E8C9A0;
  --yin-color-deep:   #A87E4C;

  --sheng-color:      #5DDECF;
  --sheng-color-light:#8FEDE0;
  --sheng-color-deep: #2E8D7E;

  /* ━━━ 品牌底色（Night Stack）━━━ */
  --night-abyss: #050812;
  --night-deep:  #0B1C2E;
  --night-mid:   #14283F;
  --night-soft:  #1E3A52;

  /* ━━━ 珍珠 / 米纸 ━━━ */
  --pearl:      #F0F4F8;
  --pearl-dim:  #B8C5D1;
  --pearl-mute: #7A8A9B;

  --paper:      #FBFAF6;
  --paper-warm: #F5F2EA;
  --line:       #E8E4DA;

  /* ━━━ 文字色（浅色底专用）━━━ */
  --xy-text-primary: #1A2332;
  --xy-text-body:    #4A5968;
  --xy-text-muted:   #8994A3;

  /* ━━━ 语义状态色 ━━━ */
  --status-done:     #5DA88E;
  --status-wip:      #C9A33F;
  --status-plan:     #7A8A9B;
  --status-archived: #A89B8A;
  --status-error:    #B87A6F;

  /* ━━━ IDE 模块功能色 ━━━ */
  --mod-input:    #5DDECF;
  --mod-filter:   #D4A574;
  --mod-dynamics: #E8C9A0;
  --mod-ai:       #4A9EFF;
  --mod-effect:   #9D4EDD;
  --mod-output:   #E8C9A0;

  /* ━━━ 核心渐变（Must Use）━━━ */
  --gradient-trinity:
    linear-gradient(90deg, #9D4EDD, #D4A574, #5DDECF);
  --gradient-trinity-conic:
    conic-gradient(from 0deg, #9D4EDD 0%, #D4A574 33%, #5DDECF 66%, #9D4EDD 100%);
  --gradient-brand-name:
    linear-gradient(180deg, #F0F4F8 0%, #E8C9A0 45%, #D4A574 80%, #A87E4C 100%);
  --gradient-hero:
    linear-gradient(180deg, #050812 0%, #0B1C2E 50%, #14283F 100%);
  --gradient-topline:
    linear-gradient(90deg, transparent, #9D4EDD 20%, #D4A574 50%, #5DDECF 80%, transparent);

  /* ━━━ 字体栈（unicode-range 分治英中）━━━ */
  --font-serif-cn: 'Noto Serif SC', 'Source Han Serif SC', serif;
  --font-sans-cn:  'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --font-serif-en: 'Cormorant Garamond', 'Noto Serif SC', serif;
  --font-sans-mixed: 'XiyinLatin', 'Inter', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --font-mono: 'JetBrains Mono', 'Consolas', 'Menlo', monospace;

  /* ━━━ 圆角 / 阴影 / 动画 ━━━ */
  --radius-xs: 2px;
  --radius-sm: 3px;
  --radius-md: 4px;
  --radius-lg: 6px;
  --radius-xl: 8px;

  --shadow-card:       0 20px 40px -16px rgba(11,28,46,0.12);
  --shadow-card-hover: 0 20px 40px -16px rgba(11,28,46,0.20);
  --shadow-ide:        0 30px 60px -20px rgba(0,0,0,0.5);
  --shadow-glow-gold:  0 0 25px rgba(212,165,116,0.5), 0 0 50px rgba(212,165,116,0.3);

  --dur-fast:    150ms;
  --dur-normal:  300ms;
  --dur-slow:    500ms;
  --dur-breathe: 4s;
  --dur-rotate-slow:   20s;
  --dur-rotate-slower: 40s;

  /* ─── 映射到 Material 默认变量（覆盖）──────────────── */
  --md-primary-fg-color:           #A87E4C;
  --md-primary-fg-color--light:    #D4A574;
  --md-primary-fg-color--dark:     #6A1FA3;
  --md-primary-bg-color:           #FBFAF6;
  --md-primary-bg-color--light:    #F5F2EA;

  --md-accent-fg-color:            #D4A574;
  --md-accent-fg-color--transparent: rgba(212,165,116,0.1);
  --md-accent-bg-color:             #FBFAF6;
  --md-accent-bg-color--light:      rgba(212,165,116,0.1);

  --md-default-fg-color:           #1A2332;
  --md-default-fg-color--light:    #4A5968;
  --md-default-fg-color--lighter:  #8994A3;
  --md-default-fg-color--lightest: #B8C5D1;

  --md-default-bg-color:           #FBFAF6;
  --md-default-bg-color--light:    #F5F2EA;
  --md-default-bg-color--lighter:  #FFFFFF;

  --md-typeset-color:              #1A2332;
  --md-typeset-a-color:            #A87E4C;

  --md-code-fg-color:              #A87E4C;
  --md-code-bg-color:              rgba(212,165,116,0.08);

  --md-typeset-table-color:        rgba(11,28,46,0.12);
  --md-typeset-table-color--light: #F5F2EA;

  --md-code-hl-color:              rgba(93,222,207,0.5);
  --md-code-hl-number-color:       #C77DFF;
  --md-code-hl-special-color:      #5DDECF;
  --md-code-hl-function-color:     #D4A574;
  --md-code-hl-constant-color:     #C77DFF;
  --md-code-hl-keyword-color:      #9D4EDD;
  --md-code-hl-string-color:       #2E8D7E;
  --md-code-hl-name-color:         #1A2332;
  --md-code-hl-operator-color:     #4A5968;
  --md-code-hl-punctuation-color:  #4A5968;
  --md-code-hl-comment-color:      #8994A3;
  --md-code-hl-generic-color:      #4A5968;
  --md-code-hl-variable-color:     #A87E4C;

  --md-text-font: var(--font-sans-mixed);
  --md-code-font: var(--font-mono);
}

/* ─── xiyin-dark（深色模式）──── */
[data-md-color-scheme="xiyin-dark"] {
  /* 三字主色（深色模式不变，但使用时偏向 light 变体）*/
  --xi-color:         #9D4EDD;
  --xi-color-light:   #C77DFF;
  --xi-color-deep:    #6A1FA3;

  --yin-color:        #D4A574;
  --yin-color-light:  #E8C9A0;
  --yin-color-deep:   #A87E4C;

  --sheng-color:      #5DDECF;
  --sheng-color-light:#8FEDE0;
  --sheng-color-deep: #2E8D7E;

  --night-abyss: #050812;
  --night-deep:  #0B1C2E;
  --night-mid:   #14283F;
  --night-soft:  #1E3A52;

  --pearl:      #F0F4F8;
  --pearl-dim:  #B8C5D1;
  --pearl-mute: #7A8A9B;

  --paper:      #FBFAF6;
  --paper-warm: #F5F2EA;
  --line:       #E8E4DA;

  --status-done:     #5DA88E;
  --status-wip:      #C9A33F;
  --status-plan:     #7A8A9B;
  --status-archived: #A89B8A;
  --status-error:    #B87A6F;

  --mod-input:    #5DDECF;
  --mod-filter:   #D4A574;
  --mod-dynamics: #E8C9A0;
  --mod-ai:       #4A9EFF;
  --mod-effect:   #9D4EDD;
  --mod-output:   #E8C9A0;

  --gradient-trinity:
    linear-gradient(90deg, #9D4EDD, #D4A574, #5DDECF);
  --gradient-trinity-conic:
    conic-gradient(from 0deg, #9D4EDD 0%, #D4A574 33%, #5DDECF 66%, #9D4EDD 100%);
  --gradient-brand-name:
    linear-gradient(180deg, #F0F4F8 0%, #E8C9A0 45%, #D4A574 80%, #A87E4C 100%);
  --gradient-hero:
    linear-gradient(180deg, #050812 0%, #0B1C2E 50%, #14283F 100%);
  --gradient-topline:
    linear-gradient(90deg, transparent, #9D4EDD 20%, #D4A574 50%, #5DDECF 80%, transparent);

  --font-serif-cn: 'Noto Serif SC', 'Source Han Serif SC', serif;
  --font-sans-cn:  'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --font-serif-en: 'Cormorant Garamond', 'Noto Serif SC', serif;
  --font-sans-mixed: 'XiyinLatin', 'Inter', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --font-mono: 'JetBrains Mono', 'Consolas', 'Menlo', monospace;

  --radius-xs: 2px;
  --radius-sm: 3px;
  --radius-md: 4px;
  --radius-lg: 6px;
  --radius-xl: 8px;

  --shadow-card:       0 20px 40px -16px rgba(0,0,0,0.5);
  --shadow-card-hover: 0 24px 48px -16px rgba(0,0,0,0.7);
  --shadow-ide:        0 30px 60px -20px rgba(0,0,0,0.7);
  --shadow-glow-gold:  0 0 25px rgba(232,201,160,0.4), 0 0 50px rgba(212,165,116,0.25);

  --dur-fast:    150ms;
  --dur-normal:  300ms;
  --dur-slow:    500ms;
  --dur-breathe: 4s;
  --dur-rotate-slow:   20s;
  --dur-rotate-slower: 40s;

  /* Material 默认变量覆盖（深色） */
  --md-primary-fg-color:           #D4A574;
  --md-primary-fg-color--light:    #E8C9A0;
  --md-primary-fg-color--dark:     #A87E4C;
  --md-primary-bg-color:           #0B1C2E;

  --md-accent-fg-color:            #E8C9A0;
  --md-accent-fg-color--transparent: rgba(232,201,160,0.15);
  --md-accent-bg-color:             #14283F;

  --md-default-fg-color:           #F0F4F8;
  --md-default-fg-color--light:    #B8C5D1;
  --md-default-fg-color--lighter:  #7A8A9B;
  --md-default-fg-color--lightest: #546E7A;

  --md-default-bg-color:           #0B1C2E;
  --md-default-bg-color--light:    #14283F;
  --md-default-bg-color--lighter:  #1E3A52;

  --md-typeset-color:              #F0F4F8;
  --md-typeset-a-color:            #E8C9A0;

  --md-code-fg-color:              #E8C9A0;
  --md-code-bg-color:              rgba(212,165,116,0.1);

  --md-typeset-table-color:        rgba(212,165,116,0.2);
  --md-typeset-table-color--light: rgba(20,40,63,0.5);

  --md-code-hl-color:              rgba(93,222,207,0.3);
  --md-code-hl-number-color:       #C77DFF;
  --md-code-hl-special-color:      #5DDECF;
  --md-code-hl-function-color:     #E8C9A0;
  --md-code-hl-constant-color:     #C77DFF;
  --md-code-hl-keyword-color:      #C77DFF;
  --md-code-hl-string-color:       #5DDECF;
  --md-code-hl-name-color:         #F0F4F8;
  --md-code-hl-operator-color:     #B8C5D1;
  --md-code-hl-punctuation-color:  #B8C5D1;
  --md-code-hl-comment-color:      #7A8A9B;
  --md-code-hl-generic-color:      #B8C5D1;
  --md-code-hl-variable-color:     #E8C9A0;

  --md-text-font: var(--font-sans-mixed);
  --md-code-font: var(--font-mono);

  /* 深色专用 header / footer 背景 */
  --md-header-bg-color: #0B1C2E;
  --md-footer-bg-color: #050812;
  --md-footer-bg-color--dark: #0B1C2E;
}

/* ─── 语言适配：根据 html[lang] 切换字体栈 ─────────── */
html[lang^="zh"] body {
  font-family: var(--font-sans-mixed);
}
html[lang^="zh"] .md-typeset h1,
html[lang^="zh"] .md-typeset h2,
html[lang^="zh"] .md-typeset h3 {
  font-family: var(--font-serif-cn);
}
html[lang^="zh"] body.level-l3 .md-typeset h1,
html[lang^="zh"] body.level-l3 .md-typeset h2,
html[lang^="zh"] body.level-l3 .md-typeset h3 {
  font-family: var(--font-sans-cn);
  font-weight: 800;
}

html[lang^="en"] body {
  font-family: 'Inter', -apple-system, sans-serif;
}
html[lang^="en"] .md-typeset h1,
html[lang^="en"] .md-typeset h2,
html[lang^="en"] .md-typeset h3 {
  font-family: 'Cormorant Garamond', 'Playfair Display', 'Georgia', serif;
}
html[lang^="en"] body.level-l3 .md-typeset h1,
html[lang^="en"] body.level-l3 .md-typeset h2,
html[lang^="en"] body.level-l3 .md-typeset h3 {
  font-family: 'Inter', -apple-system, sans-serif;
  font-weight: 800;
}