/* =========================================================
   SAVORIAHUB — RECETAS / TARJETA DEFINITIVA 0.20.32
   Diseño aprobado: foto limpia 3:4 + marco vertical + bloque sólido.
   - SIN manchas / mask-image.
   - TODAS las tarjetas comparten exactamente la misma geometría.
   - El color se toma del Código visual de cada receta.
========================================================= */

.savoria-recipe-style-card .sh-recipes-organic-grid {
    align-items: start;
    gap: 34px 24px;
}

.savoria-recipe-style-card .sh-organic-recipe-card {
    --recipe-card-accent: #9fb8a8;
    min-width: 0;
}

/*
 * La regla del tema para nth-child(even) tenía mayor especificidad y era la
 * razón por la que las tarjetas 2 y 4 seguían mostrando la mancha. Aquí se
 * neutralizan explícitamente pares e impares, además de la regla base.
 */
.savoria-recipe-style-card .sh-organic-recipe-link,
.savoria-recipe-style-card .sh-organic-recipe-card:nth-child(odd) .sh-organic-recipe-link,
.savoria-recipe-style-card .sh-organic-recipe-card:nth-child(even) .sh-organic-recipe-link {
    position: relative !important;
    isolation: isolate;
    display: flex !important;
    flex-direction: column;
    width: 100%;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    padding: 0 !important;
    box-sizing: border-box;
    border: 4px solid var(--recipe-card-accent) !important;
    border-radius: 24px !important;
    background: #fffdfa !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
    -webkit-mask-size: auto !important;
    mask-size: auto !important;
    filter: none !important;
    transform: none !important;
    box-shadow: 0 16px 30px rgba(24,53,47,.11);
    text-decoration: none;
    transition: transform .25s ease, box-shadow .25s ease;
}

.savoria-recipe-style-card .sh-organic-recipe-link:hover,
.savoria-recipe-style-card .sh-organic-recipe-card:nth-child(odd) .sh-organic-recipe-link:hover,
.savoria-recipe-style-card .sh-organic-recipe-card:nth-child(even) .sh-organic-recipe-link:hover {
    transform: translateY(-4px) !important;
    filter: none !important;
    box-shadow: 0 23px 38px rgba(24,53,47,.15);
}

/* La fotografía conserva su proporción 3:4 real. */
.savoria-recipe-style-card .sh-organic-recipe-media {
    position: relative !important;
    z-index: 1;
    inset: auto !important;
    display: block;
    width: 100%;
    aspect-ratio: 3 / 4;
    flex: 0 0 auto;
    overflow: hidden;
    border-radius: 19px 19px 0 0;
    background: #f7f4ed !important;
}

.savoria-recipe-style-card .sh-organic-recipe-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: 1 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    transform: scale(1.001) !important;
    transition: transform .32s ease;
}

.savoria-recipe-style-card .sh-organic-recipe-link:hover .sh-organic-recipe-media img {
    opacity: 1 !important;
    transform: scale(1.025) !important;
}

/* La capa que antes teñía la fotografía desaparece completamente. */
.savoria-recipe-style-card .sh-organic-recipe-tint {
    display: none !important;
}

/*
 * El bloque inferior y el marco son una misma decisión cromática. El marco
 * baja alrededor de la foto y se integra visualmente con el bloque de datos.
 */
.savoria-recipe-style-card .sh-organic-recipe-content,
.savoria-recipe-style-card .sh-organic-recipe-card:nth-child(odd) .sh-organic-recipe-content,
.savoria-recipe-style-card .sh-organic-recipe-card:nth-child(even) .sh-organic-recipe-content {
    position: relative !important;
    z-index: 4;
    inset: auto !important;
    display: flex !important;
    flex-direction: column;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    width: 100%;
    height: 142px;
    min-height: 142px;
    padding: 15px 17px 16px !important;
    border-top: 1px solid rgba(255,255,255,.62);
    background: var(--recipe-card-accent) !important;
    color: #0d2b25 !important;
    text-align: left !important;
    pointer-events: none;
}

.savoria-recipe-style-card .sh-organic-recipe-number,
.savoria-recipe-style-card .sh-organic-recipe-card:nth-child(odd) .sh-organic-recipe-number,
.savoria-recipe-style-card .sh-organic-recipe-card:nth-child(even) .sh-organic-recipe-number {
    position: static !important;
    display: inline-block;
    margin: 0 0 7px !important;
    padding: 0 !important;
    color: #17372f !important;
    font-family: "Sniglet", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: .68rem !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: .08em;
    text-shadow: none !important;
}

.savoria-recipe-style-card .sh-organic-recipe-content h2 {
    position: relative;
    z-index: 5;
    max-width: none !important;
    margin: 0 !important;
    color: #0d2b25 !important;
    font-family: "Sniglet", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: clamp(1rem,1.35vw,1.28rem) !important;
    font-weight: 400 !important;
    line-height: 1.14 !important;
    text-align: left !important;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    text-wrap: balance;
    text-shadow: none !important;
}

.savoria-recipe-style-card .sh-organic-recipe-open {
    position: relative;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin: auto 0 0 !important;
    padding-top: 10px;
    color: #17372f !important;
    font-family: "Sniglet", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: .7rem !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-shadow: none !important;
}

.savoria-recipe-style-card .sh-organic-recipe-open::after {
    content: "↗";
}

@media (max-width: 980px) {
    .savoria-recipe-style-card .sh-recipes-organic-grid {
        gap: 26px 18px;
    }

    .savoria-recipe-style-card .sh-organic-recipe-content,
    .savoria-recipe-style-card .sh-organic-recipe-card:nth-child(odd) .sh-organic-recipe-content,
    .savoria-recipe-style-card .sh-organic-recipe-card:nth-child(even) .sh-organic-recipe-content {
        height: 134px;
        min-height: 134px;
        padding: 13px 14px 14px !important;
    }
}

@media (max-width: 640px) {
    .savoria-recipe-style-card .sh-organic-recipe-link,
    .savoria-recipe-style-card .sh-organic-recipe-card:nth-child(odd) .sh-organic-recipe-link,
    .savoria-recipe-style-card .sh-organic-recipe-card:nth-child(even) .sh-organic-recipe-link {
        border-radius: 20px !important;
    }

    .savoria-recipe-style-card .sh-organic-recipe-media {
        border-radius: 15px 15px 0 0;
    }

    .savoria-recipe-style-card .sh-organic-recipe-content,
    .savoria-recipe-style-card .sh-organic-recipe-card:nth-child(odd) .sh-organic-recipe-content,
    .savoria-recipe-style-card .sh-organic-recipe-card:nth-child(even) .sh-organic-recipe-content {
        height: 128px;
        min-height: 128px;
        padding: 12px 13px 13px !important;
    }

    .savoria-recipe-style-card .sh-organic-recipe-content h2 {
        font-size: 1rem !important;
    }
}
