/* ==========================================================================
   Spac2 - Native OS-like App Launch Transition & Expansion Animation
   Path: /data/open_app/open_app.css
   ========================================================================== */

#open-app-bg {
  position: fixed;
  z-index: 999998;
  will-change: transform, border-radius, opacity;
  transform-origin: top left;
  background-color: var(--color-bg, #0c0d12);
  border-radius: 28px;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.5);
  transition: transform 0.42s cubic-bezier(0.16, 1, 0.3, 1), border-radius 0.42s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
  pointer-events: auto;
}

#open-app-bg.active {
  border-radius: 0;
  box-shadow: none;
}

#open-app-icon-clone {
  position: fixed;
  z-index: 999999;
  will-change: transform, opacity;
  transform-origin: center center;
  border-radius: 20px;
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: transform 0.42s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.22s ease 0.2s, box-shadow 0.42s ease;
}

#open-app-icon-clone.active {
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.7);
}

/* Press state on interactive cards & icons */
.app-card.pressing,
.tool-card.pressing,
.mini-app-item.pressing,
.sub-nav-pill.pressing,
.icon.pressing {
  transform: scale(0.95) !important;
  opacity: 0.90;
  transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease;
}

/* Background push back scaling transition for main content */
.main-content-flow.scale-back,
.main-container.scale-back {
  transform: scale(0.96) !important;
  opacity: 0.45 !important;
  filter: blur(4px) !important;
  pointer-events: none !important;
  transition: transform 0.42s cubic-bezier(0.16, 1, 0.3, 1), filter 0.4s ease, opacity 0.4s ease !important;
  will-change: transform, filter, opacity;
}