/* ═══════════════════════════════════════════════════════════════════
   eonnest × Pelle d'Umore 適配層 (v0.9.7)
   Mood skins: Pelle d'Umore by Cu & Lunedì — CC BY 4.0
   https://github.com/29-Cu/pelle-d-umore

   mood.css本体は無改造（git pull更新可能を保つ）。ここは翻訳層：
   ・咱家の気泡はReact inline styleでCSS変数が届かない
     → mood時だけ!importantで打ち抜き、色はmood.cssが
       body[data-mood]下で定義済のtokenを引く（5皮膚全自動追従）
   ・壁紙層(.chat-wallpaper)は普段透明な空気、mood時だけ世界を張る
   ・mood退場（data-mood除去）=ここの全ルール失効、零残留
   ═══════════════════════════════════════════════════════════════════ */

/* ── 壁紙層：mood時に底色+氛围グラデを張る。moonlightの星と流星は
      mood.jsがこの中に子要素として注ぐ（z-index:-1でroot背景の上・全内容の下） ── */
body[data-mood] .chat-wallpaper {
  background-color: var(--bg);
  background-image: var(--aurora, none);
  background-size: cover;
}

/* ── AI気泡：mood.cssの--chat-panel-*を引いて着替え ── */
body[data-mood] .assistant-msg {
  background: var(--chat-panel-bg) !important;
  border-color: var(--chat-panel-border) !important;
  color: var(--text) !important;
}

/* ── 思贤の気泡：--chat-me-*を引いて着替え ── */
body[data-mood] .user-msg {
  background: var(--chat-me-bg) !important;
  border-color: var(--chat-me-border) !important;
  color: var(--chat-me-text) !important;
}

/* ── moonlight星透過チューニング：気泡をさらに透かして星を通す。
      不透明度の旋钮はここ（0.30 = 30%地）。物足りなければ下げ、
      文字が読みにくければ上げる ── */
body[data-mood="moonlight"] .assistant-msg {
  background: oklch(0.26 0.05 var(--mood-moon-hue, 255) / 0.30) !important;
}
body[data-mood="moonlight"] .user-msg {
  background: oklch(0.42 0.07 var(--mood-moon-hue, 255) / 0.32) !important;
}

/* ── vuoto加濃オプション：素の vuoto は「灰の上に灰」で karasu 主題だと
      ほぼ見えない（demoで思贤が確認済の現象）。空虚感を一段はっきりさせる：
      壁紙をさらに暗く+全画面に薄い灰霧。要らなければこのブロックごと削除 ── */
body[data-mood="vuoto"] .chat-wallpaper {
  background-color: oklch(0.11 0 0);
}
body[data-mood="vuoto"] .assistant-msg,
body[data-mood="vuoto"] .user-msg {
  filter: saturate(0);
}

/* ═══ v0.9.7b 補刀（思贤の初回験収レポートより）═══ */

/* ── ①房間の外も同じ天気に：壁紙はchat root内だけなので、キーボード出現時に
      rootの下から覗くbodyが原主題色のまま白く光っていた。bodyの底色もmoodに従わせる。
      v0.9.8c: !important昇格——main.jsが主題切替時にbody inline背景を刷る疑い、
      inline styleは!importantでしか打ち抜けない ── */
body[data-mood] {
  background: var(--bg) !important;
}

/* ── ②浅色主題(sora/sakura/mono)の深色文字がmoodの深底で隠身する問題。
      頂栏・タイトル・入力欄の文字色をmood.cssのtext系tokenに従わせる ── */
body[data-mood] .chat-topbar {
  background: var(--chat-scrim-top, oklch(0.15 0.02 300 / 0.5)) !important;
  border-bottom-color: var(--border-soft, transparent) !important;
}
body[data-mood] .chat-title {
  color: var(--text-strong, oklch(0.92 0.02 305)) !important;
}
body[data-mood] .chat-input {
  color: var(--text-strong, oklch(0.92 0.02 305)) !important;
}
body[data-mood] .chat-input::placeholder {
  color: var(--text-mute, oklch(0.68 0.02 305)) !important;
}

/* ── ③搜索モード：頂欄の白い兜底色(0.92白)がmoodで大白横幅になる問題+
      検索入力欄と月暦もmoodのtokenに従わせる ── */
body[data-mood] .chat-search-bar {
  background: var(--chat-scrim-top, oklch(0.15 0.02 300 / 0.6)) !important;
  border-bottom-color: var(--border-soft, transparent) !important;
}
body[data-mood] .chat-search-input {
  background: oklch(1 0 0 / 0.08) !important;
  color: var(--text-strong, oklch(0.92 0.02 305)) !important;
}
body[data-mood] .chat-search-input::placeholder {
  color: var(--text-mute, oklch(0.68 0.02 305)) !important;
}
body[data-mood] .chat-search-calendar {
  background: var(--panel-solid, oklch(0.17 0.02 300)) !important;
  border-bottom-color: var(--border-soft, transparent) !important;
}

/* ── v0.9.8e glow素顔色旋钮：off時の発光を紫→霁蓝。
      fx.cssの--accent fallback紫を上書きするだけ、本体無改造。
      mood時はmood.cssのbody定義が勝つ＝皮膚色自動追従は不変。
      色を変えたい時はoklchの数字をいじる（L明るさ C鮮やかさ H色相245=蓝） ── */
:root { --accent: oklch(0.75 0.09 245); }

/* ── v0.9.8e glow素顔色旋钮：off時の発光を紫→霁蓝。
      fx.cssの--accent fallback紫を上書きするだけ、本体無改造。
      mood時はmood.cssのbody定義が勝つ＝皮膚色自動追従は不変。
      色を変えたい時はoklchの数字をいじる（L明るさ C鮮やかさ H色相245=蓝） ── */
:root { --accent: oklch(0.75 0.09 245); }

/* ── v0.9.57 fg衣柜のmood档（chat.js v0.9.57連携）：頂栏名前・面板小字は
      var(--chat-fg-*)を着る。mood時はここでmood.cssのtokenに写像——
      body定義はhtml(壁纸档)より子で常に勝つ＝優先順mood>壁纸>主題が自然成立。
      面板pillの未選中「一括」が深moodで隠身する件もこれで着地 ── */
body[data-mood] {
  --chat-fg-title: var(--text-strong, oklch(0.92 0.02 305));
  --chat-fg-sub: var(--text-mute, oklch(0.68 0.02 305));
}
