p {
    display: inline-block;
}

.show-more-less {
    margin-left: 10px;
}

.d-block {
    display: block;
}

ion-card {
    border-radius: 0;

    ion-card-header {
        padding: var(--ion-padding-10);
        background: var(--ion-background-button);
        border-top: 2px solid var(--ion-color);
        flex-direction: column;

        ion-card-title {
            font-size: var(--ion-font-size-14);
            position: relative;

            ion-icon {
                width: 23px;
                height: 23px;
                padding: 3px 6px;
                border-radius: var(--ion-border-radius-100);
                color: var(--ion-color);
                background: none;
            }

            .post-title {
                width: calc(100% - 52px);

                p {
                    font-size: var(--ion-font-size-14);
                    color: var(--ion-color-black);
                    font-weight: 600;
                    display: inline;
                    word-break: break-word;
                }

                span {
                    font-size: var(--ion-font-size-12);
                    margin-top: 2px;
                    font-weight: 500;
                    color: var(--ion-color-light-text);

                    &:last-child {
                        display: block;

                        ion-chip {
                            --background: rgba(255, 99, 49, 0.1);
                            --color: #FF6331;
                            margin: var(--ion-margin-0);
                            padding: 3px 7px;
                            font-size: 10px;
                            height: auto;
                            border-radius: 2px;
                            text-transform: uppercase;
                        }
                    }
                }
            }
        }

        img {
            width: 42px;
            height: 42px;
            background: var(--ion-background-content);
            border-radius: 50%;
            object-fit: cover;
            margin-right: var(--ion-margin-10);
        }

        p {
            font-size: 12px;
            margin-top: 5px;
            border-radius: 10px;
            color: var(--ion-color);
        }

    }

    ion-card-content {
        font-size: var(--ion-font-size-14);
        display: block;

        p {
            margin: var(--ion-margin-0) var(--ion-margin-10) var(--ion-margin-10);
            color: var(--ion-color-black);
            font-weight: 500;

            span {
                color: var(--ion-color);
            }

            a {
                span {
                    color: var(--ion-color, #3880ff);
                }
            }

            &.pre-fill {
                display: -webkit-box;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;
                overflow: hidden;
                margin-bottom: 3px;

                &.d-block {
                    display: block;
                }
            }
        }

        .img-upload {

            .swiper {
                width: 100%;
                background: var(--ion-background-gray-medium);
            }
        }

        .footer-icon {
            padding: 0 var(--ion-padding-10);

            .footer-icon-wrap {
                color: var(--ion-color-black);
                flex-wrap: wrap;
                width: 100%;

                .footer-row {
                    padding: var(--ion-padding-10) 0;
                    width: 100%;

                    &:not(:last-child) {
                        border-bottom: 1px solid var(--ion-background-gray-light);
                    }

                    &.post-count {
                        font-size: var(--ion-font-size-12);

                        ion-icon {
                            height: 18px;
                            width: 18px;
                        }
                    }

                    span {
                        padding-left: var(--ion-padding-10);
                        min-width: 30px;

                        &.like-text {
                            padding-left: 36px;
                        }
                    }
                }
            }

            .icon-wrap {
                position: relative;
            }

            ion-icon {
                width: 22px;
                height: 22px;
                color: var(--ion-color);
                position: relative;

                &.heart {
                    color: var(--ion-color-danger);
                }
            }

            .like-btn {
                width: 80px;
                height: 100px;
                position: absolute;
                left: -36px;
                bottom: -39px;
                background: url('/assets/images/web-like-animation.svg') no-repeat;
                background-position: 0 0;
                cursor: pointer;
                background-size: 2900px 100px;
                z-index: -1;

                &.pray-icon {
                    background: url('/assets/images/web-pray-animation.svg') no-repeat;
                }

                &.filled-like {
                    background-position: -2800px 0;
                }

                &.effect {
                    transition: background 1s steps(28);
                    animation: fave-like-btn 1s steps(28);
                    background-position: -2800px 0;
                }
            }
        }

        swiper-container {
            swiper-slide {
                height: auto;
            }
        }

        .post-desc {
            margin-top: 5px;
            padding-top: 10px
        }
    }
}

@keyframes fave-like-btn {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: -2800px 0;
    }
}
/* --- FINAL FIX: REMOVE ALL EXTRA SPACE AROUND SWIPER IMAGES (ANDROID 11–15) --- */

/* Wrapper alignment reset */
.img-upload,
.swiper-container,
.swiper-slide,
.swiper-zoom-container,
.single-slide {
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box;
}

/* Ensure the swiper container itself doesn’t add margins or internal spacing */
swiper-container {
    --swiper-pagination-bottom: 0px;
    --swiper-pagination-top: 0px;
    --swiper-pagination-color: var(--ion-color, #000);
    --swiper-pagination-bullet-inactive-color: rgba(0, 0, 0, 0.3);
    --swiper-pagination-bullet-size: 6px;
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    box-sizing: border-box;
}

/* Fix for slide internal layout and image spacing */
swiper-slide,
.swiper-slide-active {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}

/* Image behavior — no space anywhere */
.img-upload img {
    width: 100%;
    height: auto;
    display: block;
    /* removes inline gap */
    object-fit: contain;
    /* prevents cropping */
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0;
    /* removes font baseline gap */
    vertical-align: middle;
    box-sizing: border-box;
}

/* Remove default IonCardContent padding/margin */
ion-card-content {
    padding: 0 !important;
    margin: 0 !important;
}

/* Remove residual padding in md mode (for Android) */
ion-card-content.md.card-content-md.hydrated {
    padding: 0 !important;
    margin: 0 !important;
}

/* Ensure container fits image exactly with no background gap */
.img-upload {
    background: transparent !important;
    border: none !important;
}