/* luna-fx-scene.css — scene系(FK04/07/10) 共通表示基盤スタイル
 * フルスクリーン2層クロスフェード。scope は .luna-fx-scene-stage 配下（scene系FKのみ）。
 * FK固有は各 luna-fkNN.css に最小限だけ追加する。 */

.luna-fx-scene-stage {
  position: fixed; inset: 0; z-index: 1; overflow: hidden;
  container-type: size; pointer-events: none; isolation: isolate; background: #05060c;
}

/* 読み込み失敗時に見える標準背景（fallback）。scene が載らなくても質問・結果へ到達可能。 */
.luna-fx-scene-stage .luna-scene-fallback {
  position: absolute; inset: 0; z-index: 0;
  background:
    radial-gradient(80% 46% at 50% 6%, oklch(0.26 0.05 285 / .5), transparent 70%),
    radial-gradient(120% 70% at 50% 120%, oklch(0.20 0.05 300 / .5), transparent 62%),
    linear-gradient(178deg, oklch(0.17 0.03 272), oklch(0.10 0.028 266) 52%, oklch(0.06 0.02 262));
}

/* scene 2層（A/B）。中央 cover・中央安全領域は background-position:center で担保。
   CLS: absolute inset:0 のためレイアウトシフトなし（width/height 相当）。 */
.luna-fx-scene-stage .luna-scene-layer {
  position: absolute; inset: 0; z-index: 1;
  background-repeat: no-repeat; background-position: center center; background-size: cover;
  opacity: 0; transition: opacity .85s ease;
  will-change: opacity;
}
.luna-fx-scene-stage .luna-scene-layer.is-on { opacity: 1; }

/* 結果画面はやや沈めて本文の可読性を上げる（scene系共通） */
.luna-fx-scene-stage[data-fx-state="result"] .luna-scene-layer { filter: brightness(.72) saturate(.92); }
.luna-fx-scene-stage[data-fx-state="gathering"] .luna-scene-layer { filter: brightness(.86); }

/* ===== 既存の小さな .luna-scene ボックスは scene系FKでは隠す（フルスクリーン版に一本化） ===== */
.luna-fx--fk04 .luna-scene, .luna-fx--fk07 .luna-scene, .luna-fx--fk10 .luna-scene { display: none !important; }

/* モーダルUIを scene に載せる（scene系共通・他占い不変） */
.luna-fx--fk04 .luna-diagnosis__veil, .luna-fx--fk07 .luna-diagnosis__veil, .luna-fx--fk10 .luna-diagnosis__veil { background: none; }
.luna-fx--fk04 .luna-modal, .luna-fx--fk07 .luna-modal, .luna-fx--fk10 .luna-modal,
.luna-fx--fk04 .luna-imm .luna-modal, .luna-fx--fk07 .luna-imm .luna-modal, .luna-fx--fk10 .luna-imm .luna-modal {
  background: rgba(6,7,14,.46); backdrop-filter: blur(12px);
}
.luna-fx--fk04 .luna-gather, .luna-fx--fk07 .luna-gather, .luna-fx--fk10 .luna-gather { background: transparent; }
.luna-fx--fk04 .luna-result, .luna-fx--fk07 .luna-result, .luna-fx--fk10 .luna-result {
  background: linear-gradient(180deg, rgba(16,14,34,.6), rgba(10,9,26,.72));
  border: 1px solid rgba(212,180,106,.22); border-radius: 20px;
  padding: clamp(20px,4vh,40px) clamp(18px,5vw,44px); backdrop-filter: blur(3px);
}

/* ===== reduced-motion: クロスフェードを即時切替に ===== */
@media (prefers-reduced-motion: reduce) {
  .luna-fx-scene-stage .luna-scene-layer { transition: none !important; }
}

/* 設問モーダル中は scene 背景をぼかして手前のパネルを強調（2026-07-19 人間指示）。result では解除 */
.luna-fx-scene-stage .luna-scene-layer,
.luna-fx-scene-stage .luna-scene-fallback { transition: filter .5s ease, transform .5s ease; }
.luna-fx-scene-stage[data-fx-quizmode="1"] .luna-scene-layer,
.luna-fx-scene-stage[data-fx-quizmode="1"] .luna-scene-fallback { filter: blur(18px) brightness(.58); transform: scale(1.1); }
