/* ── CORE FAB — Botón flotante ───────────── */

#core-fab-outlet {
  position: absolute;
  bottom: var(--fab-bottom);
  right: 16px;
  z-index: var(--z-overlay);
  pointer-events: none;
}

#core-fab-outlet > * {
  pointer-events: auto;
}

.core-fab__backdrop {
  position: fixed;
  inset: 0;
  background: rgba(12, 10, 7, 0.46);
  backdrop-filter: blur(3px);
  z-index: -1;
  animation: fadeIn var(--duration-standard) var(--ease-standard) both;
}

.core-fab__wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--space-2);
}

/* ── Acciones (pills) ───────────────────── */

.core-fab__actions {
  display: flex;
  flex-direction: column;
  gap: 9px;
  align-items: flex-end;
}

.core-fab__pill {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 18px 9px 9px;
  border-radius: 50px;
  border: none;
  color: #fff;
  font-size: var(--text-label-lg);
  font-weight: var(--fw-semibold);
  white-space: nowrap;
  cursor: pointer;
  height: 48px;
  animation: corePillIn 0.26s cubic-bezier(0.16, 1, 0.3, 1) both;
  transition: transform var(--duration-fast) var(--ease-standard);
}

.core-fab__pill:active {
  transform: scale(0.96);
}

.core-fab__pill-icon {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.22);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  flex-shrink: 0;
}

/* ── Botón principal ────────────────────── */

.core-fab__btn {
  width: var(--ctrl-fab);
  height: var(--ctrl-fab);
  border-radius: var(--radius-circle);
  background: var(--color-brand-primary);
  border: none;
  box-shadow: 0 4px 20px rgba(42, 64, 48, 0.28), 0 2px 6px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.3s ease;
}

.core-fab__btn--open {
  transform: scale(1.04);
  box-shadow: 0 6px 28px rgba(42, 64, 48, 0.36), 0 2px 8px rgba(0, 0, 0, 0.12);
}

.core-fab__logo,
.core-fab__close {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition:
    opacity 0.2s ease,
    transform 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}

.core-fab__logo--hidden {
  opacity: 0;
  transform: scale(0.65) rotate(-15deg);
}

.core-fab__close--hidden {
  opacity: 0;
  transform: scale(0.65) rotate(15deg);
}
