/* ============================================================
   Bloom intro — the film overlay. Sits on top of lotus-intro.css,
   which still supplies .if-splash's fixed position, z-index and the
   html.if-splash-open rules that hide the page's floating furniture.
   ============================================================ */

.if-splash.if-bloom {
  display: block;
  padding: 0;
  cursor: default;
  background: #000;
  opacity: 1;
  visibility: visible;
  transition: opacity 1.1s ease, visibility 1.1s ease;
}

.if-bloom__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000;
}

.if-bloom__sound,
.if-bloom__skip {
  position: absolute;
  z-index: 2;
  background: none;
  border: 0;
  cursor: pointer;
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: 12px;
  letter-spacing: .32em;
  color: #ffdc94;
  padding: 12px 16px;
  text-shadow: 0 0 8px rgba(255,190,90,.9), 0 0 22px rgba(255,150,40,.6);
  white-space: nowrap;
  -webkit-tap-highlight-color: transparent;
  transition: opacity .6s ease;
}

.if-bloom__sound {
  left: 50%;
  bottom: max(22px, env(safe-area-inset-bottom));
  transform: translateX(-50%);
  animation: if-bloom-breathe 2.6s ease-in-out infinite;
}
.if-bloom__sound.is-on { animation: none; opacity: .6; }
.if-bloom__sound.is-gone { opacity: 0; pointer-events: none; }

.if-bloom__skip {
  top: max(18px, env(safe-area-inset-top));
  right: 18px;
  opacity: .7;
}
.if-bloom__skip:hover, .if-bloom__sound:hover { color: #fff1cc; }

@keyframes if-bloom-breathe { 0%, 100% { opacity: .4 } 50% { opacity: 1 } }

.if-splash.if-bloom.is-leaving { opacity: 0; visibility: hidden; pointer-events: none; }
