/* v6：窓の外の壁を「穴のあいた1枚」にする（巨大な影だと4K画面で描画されない不具合の対策） */
.scene-room { --win-w: min(34vw, 460px); --win-h: min(62vh, 620px); --win-top: 50%; }
.window {
  width: var(--win-w); height: var(--win-h); top: var(--win-top);
  box-shadow:
    0 0 0 10px #070e0a,
    0 0 0 11px var(--brass),
    0 0 0 22px #0b1610,
    0 40px 120px rgba(0, 0, 0, 0.55),
    0 0 90px rgba(217, 191, 140, 0.18) !important;
}
.wall {
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 45% 60% at 50% 50%, rgba(217, 191, 140, 0.12), transparent 70%),
    #060c08;
  -webkit-mask-image: url(../img/arch.svg), linear-gradient(#000, #000);
  -webkit-mask-repeat: no-repeat, no-repeat;
  -webkit-mask-size: calc(var(--win-w) * var(--ws, 1)) calc(var(--win-h) * var(--ws, 1)), 100% 100%;
  -webkit-mask-position: center var(--win-top), 0 0;
  -webkit-mask-composite: xor;
  mask-image: url(../img/arch.svg), linear-gradient(#000, #000);
  mask-repeat: no-repeat, no-repeat;
  mask-size: calc(var(--win-w) * var(--ws, 1)) calc(var(--win-h) * var(--ws, 1)), 100% 100%;
  mask-position: center var(--win-top), 0 0;
  mask-composite: exclude;
}
@media (max-width: 900px) {
  .scene-room { --win-w: 62vw; --win-h: 42vh; --win-top: 39%; }
}
