#!/usr/bin/env bash set -euo pipefail BOLD=$'\033[1m' DIM=$'\033[2m' RESET=$'\033[0m' RED=$'\033[0;31m' GREEN=$'\033[0;32m' YELLOW=$'\033[0;33m' BLUE=$'\033[0;34m' CYAN=$'\033[0;36m' summary_box() { local width=60 local border border=$(printf '─%.0s' $(seq 1 $width)) echo "" echo " ${CYAN}${border}${RESET}" while [ $# -gt 0 ]; do printf " ${CYAN}│${RESET} %-28s %s\n" "$1" "$2" shift 2 done echo " ${CYAN}${border}${RESET}" echo "" } ask_password_visible() { local label=$1 local default_password="$(openssl rand -base64 12)" local value printf " ${CYAN}?${RESET} $label [%s]: " "$default_password" >&2 read -r value