.pmx-media-frame { position: relative; }
.pmx-media-frame > .pmx-media-placeholder {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: #f1f3f5;
    color: #7b8491;
    font-size: 13px;
    text-align: center;
    pointer-events: none;
    border-radius: inherit;
}
.pmx-media-frame .pmx-media-pending { opacity: 0; }
.pmx-loading-logo {
    width: 56px !important;
    height: 56px !important;
    object-fit: contain !important;
    filter: grayscale(1);
    opacity: .5;
    border-radius: 12px;
    animation: pmxMediaPulse 1.5s ease-in-out infinite;
}
#home-posts-grid .pmx-posts-loading { flex-direction: column; gap: 12px; background: #f1f3f5; border-radius: 16px; }
@keyframes pmxMediaPulse { 50% { opacity: .25; } }
@media (prefers-reduced-motion: reduce) { .pmx-loading-logo { animation: none; } }
