.mpe105-blog-widget,
.mpe105-blog-widget * {
    box-sizing: border-box;
}

.mpe105-blog-widget {
    --mpe-primary: #168848;
    --mpe-primary-dark: #0f743b;
    --mpe-surface: #f7f1e8;
    --mpe-surface-2: #fbf8f2;
    --mpe-card: #ffffff;
    --mpe-text: #202020;
    --mpe-muted: #6f756d;
    --mpe-line: rgba(96, 111, 89, 0.16);
    --mpe-shadow: 0 10px 30px rgba(39, 42, 38, 0.055);
    --mpe-radius: 14px;

    direction: ltr !important;
    width: 100% !important;
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 282px !important;
    grid-template-areas: "content sidebar" !important;
    align-items: start !important;
    gap: 30px !important;
    color: var(--mpe-text);
    font-family: inherit;
}

.mpe105-blog-widget.no-sidebar {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas: "content" !important;
}

.mpe105-blog-widget a {
    color: inherit;
    text-decoration: none;
}

.mpe105-blog-widget img {
    max-width: 100%;
}

.mpe105-content {
    grid-area: content !important;
    direction: rtl !important;
    min-width: 0;
    width: 100%;
}

.mpe105-sidebar {
    grid-area: sidebar !important;
    direction: rtl !important;
    min-width: 0;
    width: 100%;
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
}

.mpe105-toolbar {
    direction: ltr !important;
    width: 100%;
    display: grid !important;
    grid-template-columns: 220px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 18px !important;
    margin: 0 !important;
}

.mpe105-search {
    grid-column: 1 !important;
    direction: ltr !important;
    width: 100% !important;
    min-height: 40px !important;
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 13px 0 14px !important;
    border: 1px solid rgba(128, 102, 69, 0.18) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.9) !important;
    box-shadow: 0 8px 22px rgba(39, 42, 38, 0.04) !important;
}

.mpe105-search input {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 38px !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: var(--mpe-text) !important;
    font-family: inherit !important;
    font-size: 13px !important;
    line-height: 1 !important;
    text-align: right !important;
    box-shadow: none !important;
}

.mpe105-search input::placeholder {
    color: rgba(111, 117, 109, 0.78);
}

.mpe105-search button {
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--mpe-muted) !important;
    cursor: pointer !important;
    box-shadow: none !important;
}

.mpe105-tabs {
    grid-column: 2 !important;
    direction: rtl !important;
    min-width: 0;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
}

.mpe105-tab {
    min-height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 18px !important;
    border: 1px solid rgba(128, 102, 69, 0.16) !important;
    border-radius: 11px !important;
    background: linear-gradient(180deg, rgba(251, 248, 242, 0.98), rgba(246, 239, 229, 0.96)) !important;
    color: var(--mpe-text) !important;
    box-shadow: 0 8px 20px rgba(39, 42, 38, 0.045) !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    transition: transform 0.18s ease, background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

.mpe105-tab:hover,
.mpe105-tab.is-active {
    border-color: var(--mpe-primary) !important;
    background: linear-gradient(180deg, var(--mpe-primary), var(--mpe-primary-dark)) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.mpe105-featured-card,
.mpe105-post-card,
.mpe105-newsletter-box,
.mpe105-pagination a,
.mpe105-pagination span {
    border: 1px solid var(--mpe-line) !important;
    box-shadow: var(--mpe-shadow) !important;
}

.mpe105-featured-card {
    direction: ltr !important;
    display: grid !important;
    grid-template-columns: minmax(0, 0.93fr) minmax(0, 1.07fr) !important;
    min-height: 286px !important;
    overflow: hidden !important;
    margin: 0 0 24px !important;
    border-radius: var(--mpe-radius) !important;
    background: var(--mpe-card) !important;
}

.mpe105-featured-text {
    direction: rtl !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-width: 0;
    padding: 34px 34px 28px !important;
    text-align: right !important;
}

.mpe105-featured-text h2 {
    margin: 10px 0 14px !important;
    color: var(--mpe-text) !important;
    font-size: clamp(24px, 2.15vw, 32px) !important;
    line-height: 1.62 !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em;
}

.mpe105-featured-text p {
    margin: 0 0 24px !important;
    color: var(--mpe-muted) !important;
    font-size: 15px !important;
    line-height: 2.05 !important;
}

.mpe105-featured-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin-top: auto !important;
}

.mpe105-featured-image,
.mpe105-post-image {
    position: relative !important;
    display: block !important;
    overflow: hidden !important;
    background: var(--mpe-surface) !important;
}

.mpe105-featured-image {
    min-height: 286px !important;
}

.mpe105-featured-image img,
.mpe105-post-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.24s ease;
}

.mpe105-featured-card:hover .mpe105-featured-image img,
.mpe105-post-card:hover .mpe105-post-image img {
    transform: scale(1.035);
}

.mpe105-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: flex-start !important;
    min-height: 26px !important;
    padding: 3px 10px !important;
    border: 1px solid rgba(22, 136, 72, 0.26) !important;
    border-radius: 8px !important;
    background: rgba(22, 136, 72, 0.07) !important;
    color: var(--mpe-primary) !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}

.mpe105-read-more {
    min-width: 126px !important;
    min-height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 0 16px !important;
    border: 1px solid rgba(22, 136, 72, 0.55) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, 0.68) !important;
    color: var(--mpe-primary) !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

.mpe105-read-more:hover {
    border-color: var(--mpe-primary) !important;
    background: var(--mpe-primary) !important;
    color: #fff !important;
}

.mpe105-read-more.is-small {
    min-width: 118px !important;
    min-height: 34px !important;
    padding: 0 14px !important;
    font-size: 12px !important;
}

.mpe105-featured-footer time,
.mpe105-card-footer time {
    color: var(--mpe-muted) !important;
    font-size: 12px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.mpe105-post-grid {
    direction: rtl !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px 26px !important;
}

.mpe105-post-card {
    overflow: hidden !important;
    border-radius: var(--mpe-radius) !important;
    background: var(--mpe-card) !important;
}

.mpe105-post-image {
    aspect-ratio: 1.82 / 1 !important;
}

.mpe105-post-image .mpe105-badge {
    position: absolute !important;
    right: 12px !important;
    bottom: 10px !important;
    min-height: 24px !important;
    padding: 3px 9px !important;
    border-color: rgba(114, 90, 61, 0.18) !important;
    background: rgba(255, 255, 255, 0.88) !important;
    color: #725a3d !important;
    backdrop-filter: blur(8px);
}

.mpe105-post-body {
    padding: 15px 17px 16px !important;
}

.mpe105-post-body h3 {
    min-height: 58px !important;
    margin: 0 0 14px !important;
    color: var(--mpe-text) !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
    font-weight: 800 !important;
    text-align: right !important;
    letter-spacing: -0.01em;
}

.mpe105-card-footer {
    direction: rtl !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

.mpe105-sidebar-box {
    width: 100% !important;
}

.mpe105-categories-box {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.mpe105-categories-box h3 {
    margin: 0 0 16px !important;
    color: var(--mpe-text) !important;
    font-size: 20px !important;
    line-height: 1.5 !important;
    font-weight: 800 !important;
    text-align: right !important;
}

.mpe105-side-cats {
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
}

.mpe105-side-cat {
    direction: rtl !important;
    min-height: 51px !important;
    display: grid !important;
    grid-template-columns: 32px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 9px 12px 9px 14px !important;
    border: 1px solid rgba(128, 102, 69, 0.12) !important;
    border-radius: 10px !important;
    background: linear-gradient(180deg, rgba(250, 246, 239, 0.98), rgba(244, 237, 227, 0.96)) !important;
    color: var(--mpe-text) !important;
    box-shadow: 0 8px 18px rgba(39, 42, 38, 0.035) !important;
    transition: transform 0.18s ease, color 0.18s ease, border-color 0.18s ease, background-color 0.18s ease;
}

.mpe105-side-cat:hover,
.mpe105-side-cat.is-active {
    border-color: rgba(22, 136, 72, 0.26) !important;
    background: linear-gradient(180deg, rgba(250, 246, 239, 1), rgba(239, 232, 220, 0.98)) !important;
    color: var(--mpe-primary) !important;
    transform: translateY(-1px);
}

.mpe105-side-cat span:not(.mpe105-cat-icon) {
    min-width: 0;
    overflow: hidden;
    color: inherit !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: right !important;
}

.mpe105-side-cat small {
    direction: ltr !important;
    color: var(--mpe-muted) !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
}

.mpe105-cat-icon {
    width: 32px !important;
    height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--mpe-primary) !important;
}

.mpe105-cat-icon svg,
.mpe105-search svg,
.mpe105-arrow,
.mpe105-plant-svg {
    display: block !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.mpe105-cat-icon svg {
    width: 23px !important;
    height: 23px !important;
}

.mpe105-search svg {
    width: 21px !important;
    height: 21px !important;
}

.mpe105-arrow {
    width: 18px !important;
    height: 18px !important;
}

.mpe105-newsletter-box {
    overflow: hidden !important;
    min-height: 430px !important;
    padding: 34px 18px 20px !important;
    border-radius: var(--mpe-radius) !important;
    background: linear-gradient(145deg, rgba(247, 241, 232, 0.98), rgba(255, 255, 255, 0.88)) !important;
    text-align: center !important;
}

.mpe105-newsletter-box h3 {
    margin: 0 0 16px !important;
    color: var(--mpe-text) !important;
    font-size: 20px !important;
    line-height: 1.5 !important;
    font-weight: 800 !important;
}

.mpe105-newsletter-box p {
    max-width: 232px !important;
    margin: 0 auto 20px !important;
    color: var(--mpe-muted) !important;
    font-size: 13px !important;
    line-height: 2 !important;
}

.mpe105-newsletter-form {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    max-width: 244px !important;
    margin: 0 auto 18px !important;
}

.mpe105-newsletter-form input,
.mpe105-newsletter-form button,
.mpe105-newsletter-shortcode input,
.mpe105-newsletter-shortcode button,
.mpe105-newsletter-shortcode input[type="submit"] {
    width: 100% !important;
    min-height: 44px !important;
    border-radius: 9px !important;
    font-family: inherit !important;
}

.mpe105-newsletter-form input,
.mpe105-newsletter-shortcode input {
    border: 1px solid rgba(96, 111, 89, 0.14) !important;
    background: #fff !important;
    padding: 0 14px !important;
    color: var(--mpe-text) !important;
    text-align: center !important;
}

.mpe105-newsletter-form button,
.mpe105-newsletter-shortcode button,
.mpe105-newsletter-shortcode input[type="submit"] {
    border: 0 !important;
    background: linear-gradient(180deg, var(--mpe-primary), var(--mpe-primary-dark)) !important;
    color: #fff !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

.mpe105-newsletter-image {
    display: block !important;
    width: min(190px, 82%) !important;
    height: auto !important;
    margin: 14px auto 0 !important;
}

.mpe105-newsletter-plant {
    width: 168px !important;
    height: 168px !important;
    margin: 14px auto 0 !important;
    color: var(--mpe-primary) !important;
}

.mpe105-pagination {
    direction: rtl !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    margin-top: 26px !important;
}

.mpe105-pagination a,
.mpe105-pagination span {
    min-width: 40px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: var(--mpe-text) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

.mpe105-pagination a.is-active,
.mpe105-pagination a:hover {
    border-color: var(--mpe-primary) !important;
    background: var(--mpe-primary) !important;
    color: #fff !important;
}

.mpe105-dots {
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
}

.mpe105-empty-state {
    padding: 50px 20px !important;
    border: 1px dashed rgba(96, 111, 89, 0.25) !important;
    border-radius: var(--mpe-radius) !important;
    background: var(--mpe-surface) !important;
    text-align: center !important;
}

.mpe105-empty-state h3 {
    margin: 0 0 8px !important;
    font-size: 22px !important;
}

.mpe105-empty-state p {
    margin: 0 !important;
    color: var(--mpe-muted) !important;
}

.mpe105-image-placeholder {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 160px !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--mpe-primary) !important;
    background: linear-gradient(145deg, rgba(247, 241, 232, 0.92), rgba(255, 255, 255, 0.76)) !important;
}

.mpe105-image-placeholder svg {
    width: 120px !important;
    height: 120px !important;
}

@media (max-width: 1180px) {
    .mpe105-blog-widget {
        grid-template-columns: minmax(0, 1fr) 260px !important;
        gap: 24px !important;
    }

    .mpe105-post-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 900px) {
    .mpe105-blog-widget {
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "content"
            "sidebar" !important;
    }

    .mpe105-toolbar {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .mpe105-search,
    .mpe105-tabs {
        grid-column: 1 !important;
    }

    .mpe105-search {
        width: 100% !important;
    }

    .mpe105-tabs {
        overflow-x: auto !important;
        flex-wrap: nowrap !important;
        padding-bottom: 4px !important;
    }

    .mpe105-featured-card {
        grid-template-columns: 1fr !important;
    }

    .mpe105-featured-image {
        order: -1 !important;
        min-height: 230px !important;
    }
}

@media (max-width: 640px) {
    .mpe105-featured-text {
        padding: 24px 20px 22px !important;
    }

    .mpe105-featured-footer,
    .mpe105-card-footer {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .mpe105-read-more,
    .mpe105-read-more.is-small {
        width: 100% !important;
    }

    .mpe105-post-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .mpe105-side-cat {
        grid-template-columns: 30px minmax(0, 1fr) auto !important;
    }

    .mpe105-post-body h3 {
        min-height: auto !important;
    }
}

/* v1.0.5 AJAX/live-search refinements */
.mpe105-blog-widget {
    position: relative !important;
    direction: ltr !important;
    grid-template-columns: minmax(0, 1fr) 282px !important;
    grid-template-areas: "content sidebar" !important;
}

.mpe105-blog-widget.is-loading .mpe105-content,
.mpe105-blog-widget.is-loading .mpe105-sidebar {
    opacity: 0.48 !important;
    pointer-events: none !important;
    transition: opacity 0.18s ease !important;
}

.mpe105-toolbar {
    grid-template-columns: 198px minmax(0, 1fr) !important;
    gap: 16px !important;
    margin-bottom: 18px !important;
}

.mpe105-search {
    width: 198px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    padding: 0 11px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.86) !important;
    box-shadow: 0 7px 18px rgba(39, 42, 38, 0.035) !important;
}

.mpe105-search input {
    height: 34px !important;
    min-height: 34px !important;
    font-size: 12px !important;
    font-weight: 400 !important;
}

.mpe105-search button {
    width: 20px !important;
    height: 20px !important;
    min-height: 20px !important;
}

.mpe105-search svg {
    width: 18px !important;
    height: 18px !important;
}

.mpe105-tab {
    min-height: 36px !important;
    padding: 0 16px !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
}

.mpe105-side-cat span:not(.mpe105-cat-icon),
.mpe105-pagination a,
.mpe105-pagination span,
.mpe105-read-more,
.mpe105-read-more.is-small,
.mpe105-badge {
    font-weight: 600 !important;
}

.mpe105-featured-text h2 {
    font-weight: 700 !important;
    letter-spacing: -0.015em !important;
}

.mpe105-featured-text p,
.mpe105-newsletter-box p,
.mpe105-empty-state p {
    font-weight: 400 !important;
}

.mpe105-post-body h3,
.mpe105-categories-box h3,
.mpe105-newsletter-box h3 {
    font-weight: 700 !important;
    letter-spacing: -0.012em !important;
}

.mpe105-post-body h3 {
    font-size: 16.5px !important;
}

.mpe105-newsletter-box {
    min-height: 460px !important;
    padding: 32px 18px 18px !important;
    background: linear-gradient(145deg, #f7f1e8 0%, #fbf7ef 54%, #f4ecdf 100%) !important;
    border-color: rgba(128, 102, 69, 0.13) !important;
}

.mpe105-newsletter-box h3 {
    margin-bottom: 14px !important;
    font-size: 19px !important;
}

.mpe105-newsletter-box p {
    margin-bottom: 18px !important;
    font-size: 12.5px !important;
    line-height: 1.95 !important;
}

.mpe105-newsletter-form {
    display: block !important;
    max-width: 244px !important;
    margin: 0 auto !important;
}

.mpe105-newsletter-form input,
.mpe105-newsletter-shortcode input {
    width: 100% !important;
    min-height: 42px !important;
    height: 42px !important;
    margin: 0 0 10px !important;
    border-radius: 9px !important;
    background: rgba(255, 255, 255, 0.78) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.22) !important;
}

.mpe105-newsletter-bottom {
    direction: ltr !important;
    display: grid !important;
    grid-template-columns: 102px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 8px !important;
    min-height: 245px !important;
}

.mpe105-newsletter-form button,
.mpe105-newsletter-shortcode button,
.mpe105-newsletter-shortcode input[type="submit"] {
    width: 102px !important;
    min-height: 42px !important;
    height: 42px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

.mpe105-newsletter-image {
    align-self: end !important;
    justify-self: end !important;
    display: block !important;
    width: 150px !important;
    max-width: 150px !important;
    height: auto !important;
    margin: 0 -4px 0 0 !important;
    background: transparent !important;
    mix-blend-mode: multiply !important;
    filter: saturate(1.02) contrast(1.01) !important;
}

.mpe105-newsletter-image.is-shortcode {
    width: min(178px, 80%) !important;
    max-width: 178px !important;
    margin: 16px auto 0 !important;
}

.mpe105-newsletter-message {
    min-height: 22px !important;
    margin-top: 8px !important;
    color: var(--mpe-primary) !important;
    font-size: 12px !important;
    line-height: 1.8 !important;
    font-weight: 500 !important;
    text-align: center !important;
}

.mpe105-newsletter-message.is-error {
    color: #b42318 !important;
}

.mpe105-newsletter-form.is-loading button {
    opacity: 0.7 !important;
    cursor: wait !important;
}

@media (max-width: 900px) {
    .mpe105-search {
        width: min(198px, 100%) !important;
    }
}

@media (max-width: 640px) {
    .mpe105-toolbar {
        grid-template-columns: 1fr !important;
    }

    .mpe105-search {
        width: 100% !important;
    }

    .mpe105-newsletter-bottom {
        grid-template-columns: 102px minmax(0, 1fr) !important;
    }

    .mpe105-newsletter-image {
        width: 138px !important;
        max-width: 138px !important;
    }
}

/* v1.0.7 — definitive responsive override.
 * Keep this block after all desktop refinements so the later desktop grid
 * cannot force the 282px sidebar beside a squeezed mobile content column.
 */
@media (max-width: 900px) {
    .mpe105-blog-widget,
    .mpe105-blog-widget.no-sidebar {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "content"
            "sidebar" !important;
        gap: 24px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .mpe105-blog-widget.no-sidebar {
        grid-template-areas: "content" !important;
    }

    .mpe105-content,
    .mpe105-sidebar {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .mpe105-toolbar {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    .mpe105-search,
    .mpe105-tabs {
        grid-column: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .mpe105-tabs {
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding: 2px 0 6px !important;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .mpe105-tabs::-webkit-scrollbar {
        display: none;
    }

    .mpe105-featured-card {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .mpe105-featured-image {
        order: -1 !important;
        min-height: 230px !important;
    }

    .mpe105-post-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 640px) {
    .mpe105-blog-widget,
    .mpe105-blog-widget.no-sidebar {
        gap: 20px !important;
    }

    .mpe105-toolbar {
        margin-bottom: 14px !important;
    }

    .mpe105-tab {
        flex: 0 0 auto !important;
        min-height: 36px !important;
        padding-inline: 14px !important;
    }

    .mpe105-featured-card {
        min-height: 0 !important;
        margin-bottom: 18px !important;
    }

    .mpe105-featured-image {
        min-height: 0 !important;
        aspect-ratio: 16 / 10 !important;
    }

    .mpe105-featured-text {
        padding: 22px 18px 20px !important;
    }

    .mpe105-featured-text h2 {
        margin: 8px 0 10px !important;
        font-size: clamp(21px, 6.4vw, 27px) !important;
        line-height: 1.55 !important;
    }

    .mpe105-featured-text p {
        margin-bottom: 18px !important;
        font-size: 14px !important;
        line-height: 1.9 !important;
    }

    .mpe105-featured-footer,
    .mpe105-card-footer {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .mpe105-read-more,
    .mpe105-read-more.is-small {
        width: 100% !important;
    }

    .mpe105-post-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 16px !important;
    }

    .mpe105-post-body h3 {
        min-height: 0 !important;
    }

    .mpe105-sidebar {
        gap: 20px !important;
    }

    .mpe105-side-cat {
        grid-template-columns: 30px minmax(0, 1fr) auto !important;
    }

    .mpe105-newsletter-box {
        min-height: 0 !important;
        padding: 28px 16px 18px !important;
    }

    .mpe105-newsletter-form {
        width: 100% !important;
        max-width: 280px !important;
    }
}

/* v1.0.8 — search field vertical alignment.
 * Keep this final so Elementor/theme input rules cannot push the Persian
 * placeholder or entered text toward the top of the pill.
 */
.mpe105-blog-widget .mpe105-search input[type="search"] {
    box-sizing: border-box !important;
    height: 34px !important;
    min-height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 34px !important;
    vertical-align: middle !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

.mpe105-blog-widget .mpe105-search input[type="search"]::placeholder {
    line-height: 34px !important;
}

.mpe105-blog-widget .mpe105-search input[type="search"]::-webkit-search-decoration,
.mpe105-blog-widget .mpe105-search input[type="search"]::-webkit-search-cancel-button,
.mpe105-blog-widget .mpe105-search input[type="search"]::-webkit-search-results-button,
.mpe105-blog-widget .mpe105-search input[type="search"]::-webkit-search-results-decoration {
    -webkit-appearance: none !important;
}
