/* =====================================================
   Image Placeholder System
   Styled divs with gradients + labels indicating
   what synthetic image should be generated later.
   ===================================================== */

.img-placeholder {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background-position: center;
}

/* Label overlay */
.img-placeholder::after {
  content: attr(data-placeholder);
  position: absolute;
  bottom: 8px;
  right: 8px;
  background: rgba(0,0,0,0.5);
  color: rgba(255,255,255,0.7);
  font-size: 0.6rem;
  font-family: 'Inter', monospace;
  padding: 3px 8px;
  border-radius: 4px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  pointer-events: none;
  z-index: 2;
  backdrop-filter: blur(4px);
}

/* Gradient themes for different contexts */

/* Professional / Corporate */
.ph-corporate {
  background: linear-gradient(135deg, #1a2a4a 0%, #2d4a7a 40%, #4a6a9a 70%, #8aa0c0 100%);
}

/* Warm / Community */
.ph-community {
  background: linear-gradient(135deg, #8B6914 0%, #C8951A 30%, #D4A838 60%, #E8C55A 100%);
}

/* Tech / Digital */
.ph-digital {
  background: linear-gradient(135deg, #0d0d1a 0%, #1A1A2E 30%, #2d2d5e 60%, #4a4a8e 100%);
}

/* Lifestyle / Youth */
.ph-lifestyle {
  background: linear-gradient(135deg, #1a3a2a 0%, #2a6a4a 40%, #4a9a6a 70%, #8ac0a0 100%);
}

/* Cityscape / Architecture */
.ph-cityscape {
  background: linear-gradient(145deg, #2d2418 0%, #5a4a30 30%, #8a7a60 50%, #c8b090 70%, #e8d8c0 100%);
}

/* Financial / Growth */
.ph-financial {
  background: linear-gradient(135deg, #002868 0%, #004AAD 40%, #D4A838 90%);
}

/* Education / Family */
.ph-family {
  background: linear-gradient(135deg, #4a2a1a 0%, #8a5a3a 30%, #c09060 60%, #e8c8a0 100%);
}

/* Nature / Burkina landscape */
.ph-landscape {
  background: linear-gradient(160deg, #c8a060 0%, #a08040 20%, #607830 50%, #406020 70%, #2a4010 100%);
}

/* Abstract pattern overlay for visual interest */
.img-placeholder .ph-pattern {
  position: absolute;
  inset: 0;
  opacity: 0.08;
  background:
    radial-gradient(circle at 30% 40%, white 0%, transparent 50%),
    radial-gradient(circle at 70% 60%, white 0%, transparent 40%);
  z-index: 1;
}

/* Silhouette shapes for context */
.ph-silhouette {
  position: absolute;
  z-index: 1;
  opacity: 0.12;
}

/* Person silhouette */
.ph-person::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 40%;
  height: 70%;
  background: rgba(255,255,255,0.1);
  border-radius: 40% 40% 0 0;
  z-index: 1;
}

/* Building silhouette */
.ph-building::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 10%;
  width: 25%;
  height: 60%;
  background: rgba(255,255,255,0.08);
  z-index: 1;
}
.ph-building::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 15%;
  width: 20%;
  height: 45%;
  background: rgba(255,255,255,0.06);
  z-index: 1;
}
