/**
 * Instagram Stories Embed - Styles
 * Version: 1.0.0
 */

/* Wrapper for Instagram Story embeds */
.instagram-story-embed-wrapper {
    margin: 20px auto;
    max-width: 540px;
    clear: both;
}

/* Ensure responsive behavior */
.instagram-story-embed-wrapper iframe {
    max-width: 100%;
    height: auto;
}

/* Center align embeds */
.instagram-story-embed-wrapper blockquote.instagram-media {
    margin: 0 auto !important;
}

/* Loading state */
.instagram-story-embed-wrapper.loading {
    position: relative;
    min-height: 400px;
}

.instagram-story-embed-wrapper.loading::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    border: 4px solid #f3f3f3;
    border-top: 4px solid #3897f0;
    border-radius: 50%;
    animation: instagram-story-spin 1s linear infinite;
}

@keyframes instagram-story-spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

/* Error message styling */
.instagram-story-error {
    background-color: #ffebee;
    border-left: 4px solid #f44336;
    padding: 15px;
    margin: 20px 0;
    color: #c62828;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* Responsive adjustments */
@media (max-width: 540px) {
    .instagram-story-embed-wrapper {
        margin: 10px 0;
    }
    
    .instagram-story-embed-wrapper blockquote.instagram-media {
        min-width: 100% !important;
    }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .instagram-story-error {
        background-color: #442726;
        border-left-color: #ef5350;
        color: #ffcdd2;
    }
}

/* Alignment options */
.alignleft .instagram-story-embed-wrapper {
    margin: 0 20px 20px 0;
    float: left;
}

.alignright .instagram-story-embed-wrapper {
    margin: 0 0 20px 20px;
    float: right;
}

.aligncenter .instagram-story-embed-wrapper {
    margin: 20px auto;
    display: block;
}

/* Clear floats after aligned embeds */
.alignleft::after,
.alignright::after {
    content: "";
    display: table;
    clear: both;
}


