/* EnFavori V4 final public list style — shared desktop/mobile system.
   Loaded only by lists.public-v4, never by saved legacy/admin preview. */
.ef-design-preview{
    --ef-v4-button-height:46px;
    padding-inline:16px;
    overflow-x:clip;
}
.ef-design-preview > .ef-design-preview__container{
    width:100%;
    max-width:1180px;
    margin-inline:auto;
}
.ef-design-preview__layout{
    display:grid;
    grid-template-columns:minmax(0,380px) minmax(0,1fr);
    gap:22px;
    align-items:start;
}
.ef-design-preview__sidebar{
    min-width:0;
    align-self:stretch;
}
.ef-design-preview__ranking{
    min-width:0;
    /* Favorite intent panels are not allowed to be clipped by list overflow. */
    overflow:visible;
}
.ef-design-preview__ranking-header{border-radius:17px 17px 0 0}
.ef-design-preview__ranking-header--no-sort{grid-template-columns:minmax(0,1fr)}
.ef-design-preview__item:has(.fav--intent.is-open){
    position:relative;
    z-index:15;
}
.ef-design-preview__price{
    display:inline-flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:5px;
}
.ef-design-preview__price small{
    color:var(--ep-muted);
    font-size:10px;
    font-weight:650;
}
/* Product-only price treatment mirrors the product detail emphasis.
   Price, previous price and note are read from the same admin-managed item. */
.ef-design-preview .ef-design-preview__product-price{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:2px;
    min-width:0;
    margin:10px 0 8px;
    color:var(--ep-ink);
}
.ef-design-preview .ef-design-preview__product-price-label{
    color:var(--ep-muted);
    font-size:11px;
    font-weight:750;
    line-height:1.45;
}
.ef-design-preview .ef-design-preview__product-price-values{
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:7px 13px;
    min-width:0;
    line-height:1.15;
}
.ef-design-preview .ef-design-preview__product-price-values strong{
    color:var(--ep-ink);
    font-size:clamp(22px,2vw,28px);
    line-height:1.2;
    font-weight:950;
    font-variant-numeric:tabular-nums;
    letter-spacing:-.035em;
    overflow-wrap:anywhere;
}
.ef-design-preview .ef-design-preview__product-price-values s{
    color:var(--ep-muted);
    font-size:12px;
    font-weight:650;
}
.ef-design-preview .ef-design-preview__product-price-note{
    color:var(--ep-text);
    font-size:11px;
    line-height:1.45;
}
.ef-design-preview .ef-design-preview__product-price-disclaimer{
    color:var(--ep-muted);
    font-size:10px;
    line-height:1.45;
}
@media(max-width:550px){
    .ef-design-preview .ef-design-preview__product-price{margin:7px 0 6px;gap:1px}
    .ef-design-preview .ef-design-preview__product-price-label{font-size:10px}
    .ef-design-preview .ef-design-preview__product-price-values strong{font-size:22px}
    .ef-design-preview .ef-design-preview__product-price-values s{font-size:11px}
    .ef-design-preview .ef-design-preview__product-price-disclaimer{font-size:9.5px}
}

.ef-design-preview__below--full{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    width:100%;
    gap:16px;
}
.ef-design-preview__below--full :is(.ef-design-preview__about,.ef-design-preview__related){
    grid-column:1/-1;
    width:100%;
    min-width:0;
}
/* V4 ranked item: ranking badge in the free top-right corner; 1:1 photo gets priority. */
.ef-design-preview .ef-design-preview__item{
    position:relative;
    grid-template-columns:152px minmax(0,1fr);
    grid-template-areas:"photo content" "actions actions";
    align-items:start;
    column-gap:18px;
    row-gap:12px;
    padding:18px;
}
.ef-design-preview .ef-design-preview__item .ef-design-preview__number{
    position:absolute;
    z-index:1;
    top:14px;
    right:14px;
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    align-self:auto;
    font-size:20px;
    border-radius:10px;
}
.ef-design-preview .ef-design-preview__item .ef-design-preview__image{
    display:grid;
    place-items:center;
    width:152px;
    height:152px;
    max-width:100%;
    aspect-ratio:1 / 1;
    flex:none;
    overflow:hidden;
    border-radius:12px;
    background:var(--ep-paper,#fff);
}
/* Public item photos: fixed square card, legacy portrait/wide photos intact.
   Never crop older uploads just to fill a square thumbnail. */
.ef-design-preview .ef-design-preview__item .ef-design-preview__image.ef-item-media--unified > img{
    display:block;
    box-sizing:border-box;
    width:100%;
    height:100%;
    max-width:100%;
    padding:0;
    aspect-ratio:1 / 1;
    object-fit:contain;
    object-position:center;
    background:#fff;
}
.ef-design-preview .ef-design-preview__item .ef-design-preview__item-meta{
    min-height:0;
    padding-right:49px; /* keep type/sponsor text clear of the rank badge */
}
.ef-design-preview__item .ef-design-preview__item-content>p{
    font-size:12.5px;
    line-height:1.55;
}
.ef-design-preview__item .ef-design-preview__item-meta,
.ef-design-preview__item .ef-design-preview__entry-subline{
    font-size:11px;
}
/* V4 credits: compact, real, clickable author/editor identities.
   All avatars remain square and blue fallback appears only without a logo. */
.ef-design-preview .ef-design-preview__item-credits{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
    max-width:100%;
    min-width:0;
    margin:0 0 7px;
}
.ef-design-preview .ef-v4-credit{
    display:inline-flex;
    align-items:center;
    gap:5px;
    max-width:100%;
    min-width:0;
    padding:2px 4px 2px 2px;
    border:1px solid transparent;
    border-radius:6px;
    background:transparent;
    box-shadow:none;
    text-shadow:none;
    filter:none;
    color:#17324d;
    text-decoration:none;
    font-size:11px;
    line-height:1.3;
    font-weight:650;
}
.ef-design-preview .ef-v4-credit:hover{
    color:#0f766e;
    background:transparent;
    border-color:transparent;
    text-decoration:underline;
    text-underline-offset:2px;
}
.ef-design-preview .ef-v4-credit:focus-visible{
    outline:2px solid #0f9f93;
    outline-offset:2px;
}
.ef-design-preview .ef-v4-credit__avatar{
    flex:0 0 20px;
    width:20px;
    height:20px;
    display:grid;
    place-items:center;
    overflow:hidden;
    border-radius:6px;
    background:#17324d;
    color:#fff;
    border:0;
    box-shadow:none;
    filter:none;
}
.ef-design-preview .ef-v4-credit__avatar img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    background:transparent;
    border:0;
    box-shadow:none;
    filter:none;
}
.ef-design-preview .ef-v4-credit__label{flex:none;color:#64748b;font-weight:600}
.ef-design-preview .ef-v4-credit__name{
    display:block;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-weight:750;
    font-size:inherit;
    color:#17324d;
}
.ef-design-preview .ef-v4-credit:hover .ef-v4-credit__name{
    color:#0f766e;
}
.ef-design-preview .ef-v4-credit__arrow{flex:none;font-size:13px;color:#64748b}
.ef-design-preview .ef-v4-credit--fact{margin-left:auto;justify-content:flex-end;text-align:right}
/* Editor identity: label above, actual profile on the next line, left-aligned. */
.ef-design-preview .ef-design-preview__facts > .ef-design-preview__fact--editor,
.ef-design-preview .ef-design-preview__mobile-facts > .ef-design-preview__fact--editor{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:5px;
}
.ef-design-preview .ef-design-preview__fact--editor > .ef-v4-credit--fact{
    align-self:flex-start;
    justify-content:flex-start;
    margin:0;
    max-width:100%;
    text-align:left;
}
.ef-design-preview .ef-design-preview__fact--editor > strong{
    text-align:left;
}

/* Long lists (4+ items): label left and editor identity to the far right,
   matching other fact rows. Sparse lists retain stacked, left-aligned credits. */
.ef-design-preview:not(.ef-design-preview--sparse) :is(.ef-design-preview__facts,.ef-design-preview__mobile-facts) > .ef-design-preview__fact--editor{
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.ef-design-preview:not(.ef-design-preview--sparse) :is(.ef-design-preview__facts,.ef-design-preview__mobile-facts) > .ef-design-preview__fact--editor > .ef-v4-credit--fact{
    align-self:center;
    justify-content:flex-end;
    min-width:0;
    max-width:65%;
    margin:0 0 0 auto;
    text-align:right;
}
.ef-design-preview:not(.ef-design-preview--sparse) :is(.ef-design-preview__facts,.ef-design-preview__mobile-facts) > .ef-design-preview__fact--editor > strong{
    margin-left:auto;
    text-align:right;
}

.ef-design-preview .ef-v4-credit--fact .ef-v4-credit__label{display:none}
.ef-design-preview .ef-v4-credit--fact .ef-v4-credit__name{
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    overflow-wrap:anywhere;
}
.ef-design-preview .ef-design-preview__facts .ef-v4-credit__name,
.ef-design-preview .ef-design-preview__mobile-facts .ef-v4-credit__name{color:inherit}
.ef-design-preview .ef-design-preview__item-meta .ef-design-preview__type-label{
    color:var(--ep-muted);
    font-weight:700;
}
@media(max-width:550px){
    .ef-design-preview .ef-design-preview__item-credits{gap:3px;margin:0 0 5px}
    .ef-design-preview .ef-v4-credit{gap:4px;font-size:10px;padding:1px 2px}
    .ef-design-preview .ef-v4-credit__avatar{flex-basis:18px;width:18px;height:18px}
    .ef-design-preview .ef-v4-credit__arrow{font-size:12px}
}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview .ef-v4-credit{color:#e2e8f0}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview .ef-v4-credit__label,
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview .ef-v4-credit__arrow{color:#94a3b8}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview .ef-v4-credit__name{color:#e2e8f0}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview .ef-v4-credit:hover .ef-v4-credit__name{color:#5eead4}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview .ef-v4-credit:hover{color:#5eead4;background:transparent}

.ef-design-preview .ef-design-preview__item--hotel{
    grid-template-areas:"photo content" "actions actions" "offers offers";
}
.ef-design-preview__item--hotel .ef-design-preview__hotel-offers{
    grid-area:offers;
    grid-column:1/-1;
    width:100%;
    min-width:0;
}
/* Explicitly own the V4 action grid for ALL list types.
 * The preserved V3 preview CSS has a more specific mobile HOTEL
 * two-column rule on the outer actions element. V4's two columns belong
 * to the INNER action-controls instead: this full-width wrapper is one
 * column, so Favorite/Share never occupy just half of the hotel card.
 * Also overrides legacy mobile (<=550px / <=365px) grid declarations.
 */
.ef-design-preview .ef-design-preview__item-actions,
.ef-design-preview .ef-design-preview__item--hotel .ef-design-preview__item-actions{
    grid-area:actions;
    grid-column:1/-1;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    width:100%;
    min-width:0;
    gap:8px;
    margin-top:0;
    align-items:stretch;
    justify-content:stretch;
}
.ef-design-preview .ef-design-preview__item-actions > .ef-design-preview__action-controls{
    grid-column:1/-1;
    width:100%;
}
.ef-design-preview .ef-design-preview__item-actions > .ef-design-preview__action-primary{
    grid-column:1/-1;
    width:100%;
}
.ef-design-preview__action-controls{
    display:grid;
    grid-template-columns:repeat(var(--ef-v4-action-columns,3),minmax(0,1fr));
    gap:8px;
    width:100%;
    min-width:0;
}
.ef-design-preview__action-controls > .ef-design-preview__action{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    width:100%;
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    padding:0;
    margin:0;
    border:1px solid var(--ep-line);
    border-radius:10px;
    font-size:11.5px;
    font-weight:800;
    line-height:1.25;
    text-align:center;
    color:var(--ep-ink);
    background:var(--ep-paper);
}
.ef-design-preview__action-controls > a.ef-design-preview__action,
.ef-design-preview__action-controls > button.ef-design-preview__action{
    padding:8px;
}
.ef-design-preview__action-controls > .ef-design-preview__action:is(:hover,:focus-visible){
    border-color:#76bfb3;
    background:var(--ep-item);
}
.ef-design-preview__action-primary{
    width:100%;
    min-width:0;
}
.ef-design-preview__action-primary > .ef-design-preview__open{
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    padding:8px 11px;
    border-radius:10px;
    text-align:center;
    white-space:normal;
    font-size:11.5px;
    line-height:1.25;
}
.ef-design-preview__action-primary .ef-design-preview__public-cta-pair{
    width:100%;
    margin:0;
    align-items:stretch;
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.ef-design-preview__action-primary .ef-design-preview__public-cta-pair .ef-design-preview__open{
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    border-radius:10px;
    padding:8px 11px;
    font-size:11.5px;
    line-height:1.25;
}
.ef-design-preview__hotel-booking-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
    min-width:0;
    gap:10px;
}
.ef-design-preview__hotel-booking-actions :is(.ef-design-preview__hotel-details-link,.ef-design-preview__hotel-booking-link){
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    border-radius:10px;
    font-size:11.5px;
    line-height:1.25;
}
@media(max-width:1100px){
    .ef-design-preview .ef-design-preview__item{grid-template-columns:140px minmax(0,1fr);column-gap:15px}
    .ef-design-preview .ef-design-preview__item .ef-design-preview__image{width:140px;height:140px}

    .ef-design-preview__layout{
        grid-template-columns:minmax(0,1fr);
        gap:15px;
    }
    .ef-design-preview__sidebar{display:block}
    .ef-design-preview__sticky-summary{display:none}
}
@media(max-width:760px){
    .ef-design-preview .ef-design-preview__item{grid-template-columns:128px minmax(0,1fr);column-gap:12px;padding:13px}
    .ef-design-preview .ef-design-preview__item .ef-design-preview__image{width:128px;height:128px}
    .ef-design-preview .ef-design-preview__item .ef-design-preview__number{top:11px;right:11px}

    .ef-design-preview{padding-inline:12px}
}
@media(max-width:550px){
    .ef-design-preview .ef-design-preview__item{
        grid-template-columns:clamp(96px,28vw,120px) minmax(0,1fr);
        grid-template-areas:"photo content" "actions actions";
        column-gap:10px;row-gap:6px;padding:10px;
    }
    .ef-design-preview .ef-design-preview__item--hotel{
        grid-template-areas:"photo content" "actions actions" "offers offers";
    }
    .ef-design-preview .ef-design-preview__item .ef-design-preview__image{
        width:clamp(96px,28vw,120px);
        height:clamp(96px,28vw,120px);
    }
    .ef-design-preview .ef-design-preview__item .ef-design-preview__number{
        width:37px;height:37px;top:10px;right:10px;font-size:16px;
    }
    .ef-design-preview .ef-design-preview__item .ef-design-preview__item-meta{
        min-height:0;padding-right:40px;
    }

    /* A compact two-row action bar keeps tap targets usable without
       consuming half the card; the same height drives nested favorite/vote controls. */
    .ef-design-preview{--ef-v4-button-height:40px}
    .ef-design-preview .ef-design-preview__item-actions{gap:5px}
    .ef-design-preview__action-controls{gap:5px}
    /* Mobile: four visible actions use two equal columns rather than
       compressing four labels into one row. */
    .ef-design-preview .ef-design-preview__item-actions > .ef-design-preview__action-controls[style*="columns: 4"]{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    /* Three controls: favorite first, vote and share on the second row. */
    .ef-design-preview__action-controls[style*="columns: 3"]:has(> .ef-design-preview__member-action){
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .ef-design-preview__action-controls[style*="columns: 3"] > .ef-design-preview__member-action{
        grid-column:1/-1;
    }
    .ef-design-preview__action-controls > .ef-design-preview__action{
        height:var(--ef-v4-button-height);
        min-height:var(--ef-v4-button-height);
        padding:4px 6px;
        border-radius:8px;
        font-size:10.5px;
        line-height:1.15;
        white-space:normal;
        overflow-wrap:break-word;
    }
    .ef-design-preview__action-controls > .ef-design-preview__action :is(button,a){
        white-space:normal;
        max-width:100%;
        text-align:center;
    }
    .ef-design-preview__action-primary > .ef-design-preview__open{
        height:var(--ef-v4-button-height);
        min-height:var(--ef-v4-button-height);
        padding:5px 9px;
        border-radius:8px;
        font-size:11px;
    }
    .ef-design-preview__action-primary .ef-design-preview__public-cta-pair{gap:5px}
    .ef-design-preview__action-primary .ef-design-preview__public-cta-pair .ef-design-preview__open{font-size:10.5px}
    .ef-design-preview__item--hotel .ef-design-preview__action-controls{
        grid-template-columns:repeat(var(--ef-v4-action-columns,2),minmax(0,1fr));
    }
    /* Hotels with Compare + Favorite + Share must never leave half-empty rows.
       Preserve DOM/tab order: Compare on row 1, Favorite and Share on row 2.
       This overrides the generic three-action Favorite full-row rule above. */
    .ef-design-preview .ef-design-preview__item--hotel .ef-design-preview__action-controls[style*="columns: 3"]{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:7px;
        align-items:stretch;
    }
    .ef-design-preview .ef-design-preview__item--hotel .ef-design-preview__action-controls[style*="columns: 3"] > .ef-design-preview__compare{
        grid-column:1/-1;
    }
    .ef-design-preview .ef-design-preview__item--hotel .ef-design-preview__action-controls[style*="columns: 3"] > .ef-design-preview__member-action,
    .ef-design-preview .ef-design-preview__item--hotel .ef-design-preview__action-controls[style*="columns: 3"] > .ef-design-preview__share--item{
        grid-column:auto;
    }
}
/* At very narrow widths prioritize readable labels over two compressed buttons. */
@media(max-width:365px){
    .ef-design-preview .ef-design-preview__item--hotel .ef-design-preview__action-controls[style*="columns: 3"]{
        grid-template-columns:minmax(0,1fr);
    }
    .ef-design-preview .ef-design-preview__item--hotel .ef-design-preview__action-controls[style*="columns: 3"] > .ef-design-preview__compare{
        grid-column:auto;
    }
}
@media(max-width:390px){
    .ef-design-preview__action-primary .ef-design-preview__public-cta-pair{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:6px;
    }
    .ef-design-preview__action-primary .ef-design-preview__public-cta-pair .ef-design-preview__open{
        padding-inline:5px;
        font-size:10px;
    }
}

/* The overview buttons mirror the equal-width two-button hotel CTA row. */
.ef-design-preview .ef-design-preview__engagement{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    align-items:stretch;
    width:100%;
}
.ef-design-preview .ef-design-preview__engagement--follow-only{
    grid-template-columns:minmax(0,1fr);
}
.ef-design-preview__follow-wrap{
    flex:none;
    min-width:0;
    width:100%;
}
.ef-design-preview .ef-design-preview__share{
    width:100%;
    min-width:0;
    height:var(--ef-v4-button-height);
}
.ef-design-preview .ef-design-preview__share > summary{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    padding:8px 10px;
    border-radius:10px;
    font-size:12px;
}
/* Listedekiler uses the exact same dropdown as the list header.
   Keep it a full-width grid action and float the menu above adjacent cards. */
.ef-design-preview__action-controls > .ef-design-preview__share--item{
    min-width:0;
    width:100%;
    height:var(--ef-v4-button-height);
}
.ef-design-preview .ef-design-preview__action-controls > .ef-design-preview__share--item > summary{
    border-color:var(--ep-line);
    background:var(--ep-paper);
    font-size:11.5px;
}
.ef-design-preview .ef-design-preview__item:has(.ef-design-preview__share--item[open]){
    z-index:20;
}
@media(max-width:550px){
    .ef-design-preview .ef-design-preview__action-controls > .ef-design-preview__share--item > summary{
        font-size:10.5px;
        padding:4px 6px;
        border-radius:8px;
    }
}
.ef-design-preview__follow-wrap .follow{
    width:100%;
    margin:0;
}
.ef-design-preview__follow-wrap .follow__btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    width:100%;
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    /* Guests receive an <a class="fav__btn">, which has a global 14px
       margin-top. Reset it for both the guest link and member button. */
    margin:0;
    padding:8px 10px;
    border:1px solid #087f77;
    border-radius:9px;
    background:#087f77;
    color:#fff;
    font-size:12px;
    font-weight:850;
    line-height:1.35;
}
.ef-design-preview__follow-wrap .follow__btn:is(:hover,:focus-visible,.is-on){
    background:#076f68;
    border-color:#076f68;
    color:#fff;
}
.ef-design-preview__follow-wrap .follow__btn svg{
    display:block;
    width:18px;
    height:18px;
    flex:0 0 18px;
    stroke:currentColor;
    fill:none;
}
.ef-design-preview__member-action,
.ef-design-preview__vote-action{
    position:relative;
    min-width:0;
    padding:0;
}
/* Favorite action: the slot owns spacing only. The inner link/button
   alone owns the visible border, background and interactive states. */
.ef-design-preview .ef-design-preview__action-controls > .ef-design-preview__member-action,
.ef-design-preview .ef-design-preview__action-controls > .ef-design-preview__member-action:is(:hover,:focus-within){
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:stretch;
    width:100%;
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    box-sizing:border-box;
    margin:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
.ef-design-preview__member-action .fav{
    display:block;
    width:100%;
    height:100%;
    min-height:0;
    margin:0;
}
.ef-design-preview__member-action .fav__btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    box-sizing:border-box;
    margin:0;
    padding:8px;
    border:1px solid var(--ep-line);
    border-radius:10px;
    background:var(--ep-paper);
    color:var(--ep-ink);
    box-shadow:none;
    text-decoration:none;
    font:inherit;
    font-size:11.5px;
    font-weight:800;
    line-height:1.25;
    text-align:center;
    cursor:pointer;
}
.ef-design-preview__member-action .fav__btn.is-on{
    color:#087f77;
    background:#e2f3ed;
}
.ef-design-preview .ef-design-preview__member-action .fav__btn:hover:not(.is-on){
    color:var(--ep-ink);
    background:var(--ep-item);
    border-color:#76bfb3;
}
.ef-design-preview .ef-design-preview__member-action .fav__btn:focus-visible{
    outline:2px solid #087f77;
    outline-offset:2px;
}
.ef-design-preview__member-action .fav__btn svg{
    display:block;
    align-self:center;
    width:18px;
    height:18px;
    flex:0 0 18px;
    margin:0;
    fill:none;
    stroke:currentColor;
}
.ef-design-preview__member-action .fav__btn > span{
    display:inline-flex;
    align-items:center;
    line-height:1;
    margin:0;
}
.ef-design-preview__member-action .fav-intent{
    z-index:30;
    color:#18334c;
    text-align:left;
    white-space:normal;
    font-size:12px;
}
.ef-design-preview__vote-action .ef-design-preview__live-vote{
    display:flex;
    justify-content:center;
    width:100%;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
}
.ef-design-preview__vote-action .vote__btn--down{
    display:none !important;
}
.ef-design-preview__vote-action .vote__btn--up{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    min-width:0;
    width:100%;
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    margin:0;
    padding:7px 5px;
    border:0;
    border-radius:7px;
    background:transparent;
    color:#087f77;
    font:inherit;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
    cursor:pointer;
}
.ef-design-preview__vote-action .vote__btn--up svg{
    display:block;
    flex:0 0 15px;
    width:15px;
    height:15px;
}
.ef-design-preview__vote-action .vote__btn--up strong{
    color:inherit;
    font-size:inherit;
    line-height:1.2;
}
.ef-design-preview__vote-action .vote__btn--up::after{
    content:"Oy Ver";
    font-size:inherit;
}
.ef-design-preview__vote-action .vote__btn--up:is(:hover,[aria-pressed="true"]){
    background:#ddf2ea;
}
.ef-design-preview__public-cta-pair{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    flex:1 0 100%;
    gap:8px;
    min-width:0;
    width:100%;
    margin-top:2px;
}
.ef-design-preview__public-cta-pair .ef-design-preview__open{
    display:flex;
    min-width:0;
    min-height:38px;
    white-space:normal;
    overflow-wrap:anywhere;
    text-align:center;
    padding:7px 9px;
}
.ef-design-preview__open--detail{
    border:1px solid #c3d7db;
    background:#fff;
    color:#183750;
}
.ef-design-preview__open--detail:hover{
    background:#e8f4f2;
    color:#087f77;
    border-color:#83c8bd;
}
.ef-design-preview__open--commercial,
.ef-design-preview__public-cta-pair .ef-design-preview__open--commercial{
    background:#f59e0b;
    border-color:#f59e0b;
    color:#fff;
}
.ef-design-preview__open--commercial:is(:hover,:active,:focus-visible){
    background:#e38d04;
    border-color:#e38d04;
    color:#fff;
}
.ef-design-preview__extra-links{
    grid-column:1/-1;
    min-width:0;
    margin-top:1px;
    border-top:1px solid var(--ep-line);
    padding-top:7px;
}
.ef-design-preview__extra-links summary{
    color:var(--ep-teal);
    font-size:10.5px;
    font-weight:800;
    cursor:pointer;
}
.ef-design-preview__extra-links>div{
    display:flex;
    flex-wrap:wrap;
    gap:7px 12px;
    margin-top:9px;
}
.ef-design-preview__extra-links a{
    color:var(--ep-teal);
    font-size:11px;
    font-weight:750;
    text-decoration:underline;
    text-underline-offset:3px;
}
.ef-design-preview__commercial{
    grid-column:1/-1;
    list-style:none;
    min-width:0;
    max-width:100%;
    overflow-wrap:anywhere;
}
.ef-design-preview__commercial--after{
    margin:7px 13px;
}
/* Small devices retain full-width member controls; the outer V4 grid sets rows. */
@media(max-width:550px){
    .ef-design-preview__member-action,
    .ef-design-preview__vote-action{min-width:0;padding:0}
    .ef-design-preview__member-action .fav__btn,
    .ef-design-preview__vote-action .vote__btn--up{
        min-height:var(--ef-v4-button-height);
        padding:4px 6px;
        font-size:10.5px;
        border-radius:8px;
    }
    .ef-design-preview__item{
        row-gap:8px;
    }
    .ef-design-preview__item .ef-design-preview__item-content>p{
        font-size:11.5px;
        line-height:1.5;
    }
    .ef-design-preview__ranking-header--no-sort{
        grid-template-columns:minmax(0,1fr);
    }
    .ef-design-preview__price small{font-size:9px}
    .ef-design-preview__public-cta-pair .ef-design-preview__open{
        grid-column:auto;
        min-width:0;
    }
}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview__member-action .fav__btn{
    color:#e5f4f8;
}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview__member-action .fav__btn.is-on{
    color:#a5f5e6;
    background:#1e494d;
}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview__member-action .fav-intent{
    color:#e6f4f8;
}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview__vote-action .vote__btn--up{
    color:#8ff3e6;
}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview__open--detail{
    color:#e5f4f8;
    background:#233f51;
    border-color:#466a77;
}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview__open--commercial{
    color:#fff;
    background:#f59e0b;
    border-color:#f59e0b;
}

/* EF-V4-TOAST-TOP-V1 */
.ef-design-preview__vote-action .tercih__msg {
  position:fixed;
  top:72px;
  left:50%;
  transform:translateX(-50%);
  z-index:99999;
  display:block;
  width:max-content;
  max-width:calc(100vw - 32px);
  box-sizing:border-box;
  margin:0;
  padding:11px 16px;
  border:1px solid #8fd0b5;
  border-radius:12px;
  background:#e8f8ef;
  color:#086846;
  box-shadow:0 8px 24px rgba(0,0,0,.15);
  font-size:13px;
  font-weight:800;
  line-height:1.4;
  text-align:center;
  white-space:normal;
  pointer-events:none;
}
.ef-design-preview__vote-action .tercih__msg:empty {
  display:none;
}

/* EF-V4-FLOATING-COMPARISON-20261018 */
body > .ef-design-preview__compare-dock {
    position:fixed;
    left:50%;
    right:auto;
    bottom:max(12px, env(safe-area-inset-bottom));
    transform:translateX(-50%);
    z-index:100000;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    align-items:center;
    gap:8px;
    width:min(680px,calc(100vw - 24px));
    box-sizing:border-box;
    margin:0;
    padding:12px;
    border:1px solid #267e83;
    border-radius:14px;
    background:#102a43;
    color:#fff;
    box-shadow:0 12px 34px rgba(0,20,40,.32);
}
body > .ef-design-preview__compare-dock[hidden] {
    display:none!important;
}
body > .ef-design-preview__compare-dock > div {
    min-width:0;
}
body > .ef-design-preview__compare-dock strong {
    display:block;
    color:#fff;
    font-size:13px;
}
body > .ef-design-preview__compare-dock p {
    color:#d7e9f0;
    font-size:11px;
    line-height:1.3;
}
body > .ef-design-preview__compare-dock :is(button,a) {
    min-height:44px;
    padding:8px 11px;
    white-space:nowrap;
}
body > .ef-design-preview__compare-dock a {
    background:#18b7a7;
    border-color:#18b7a7;
    color:#082c32;
}
body.ef-v4-compare-open {
    padding-bottom:140px;
}
@media(max-width:420px) {
    body > .ef-design-preview__compare-dock {
        gap:6px;
        padding:10px;
    }
    body > .ef-design-preview__compare-dock :is(button,a) {
        padding:7px 8px;
        font-size:11px;
    }
    body > .ef-design-preview__compare-dock strong {
        font-size:12px;
    }
    body > .ef-design-preview__compare-dock p {
        font-size:10px;
    }
}



/* Unified LIST ITEM action controls — one interactive frame per button.
   The outer Favorite/Vote/Share grid cells are layout-only; the actual
   button/summary/anchor owns its visible border. Shared for 1-3 and 4+ lists. */
.ef-design-preview .ef-design-preview__item-actions,
.ef-design-preview .ef-design-preview__hotel-booking-actions{
    --ef-item-action-radius:10px;
    --ef-item-action-font:11.5px;
}
.ef-design-preview .ef-design-preview__action-controls > :is(.ef-design-preview__member-action,.ef-design-preview__vote-action,.ef-design-preview__share--item){
    box-sizing:border-box;
    display:flex;
    align-items:stretch;
    justify-content:stretch;
    width:100%;
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    margin:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
.ef-design-preview .ef-design-preview__action-controls > :is(.ef-design-preview__member-action,.ef-design-preview__vote-action) > :is(.fav,.ef-design-preview__live-vote),
.ef-design-preview .ef-design-preview__action-controls > .ef-design-preview__vote-action .tercih{
    display:flex;
    align-items:stretch;
    justify-content:stretch;
    width:100%;
    height:100%;
    min-height:0;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
    box-shadow:none;
}
.ef-design-preview :is(.ef-design-preview__item-actions,.ef-design-preview__hotel-booking-actions) :is(
    .ef-design-preview__compare,
    .ef-design-preview__member-action .fav__btn,
    .ef-design-preview__vote-action .vote__btn--up,
    .ef-design-preview__share--item > summary,
    .ef-design-preview__action-primary .ef-design-preview__open,
    .ef-design-preview__hotel-details-link,
    .ef-design-preview__hotel-booking-link
){
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    height:var(--ef-v4-button-height);
    min-height:var(--ef-v4-button-height);
    margin:0;
    padding:8px 10px;
    border:1px solid var(--ep-line);
    border-radius:var(--ef-item-action-radius);
    box-shadow:none;
    font-size:var(--ef-item-action-font);
    font-weight:800;
    line-height:1.25;
    text-align:center;
    text-decoration:none;
}
.ef-design-preview :is(.ef-design-preview__item-actions,.ef-design-preview__hotel-booking-actions) :is(
    .ef-design-preview__compare,
    .ef-design-preview__member-action .fav__btn,
    .ef-design-preview__vote-action .vote__btn--up,
    .ef-design-preview__share--item > summary
){
    background:var(--ep-paper);
    color:var(--ep-ink);
}
.ef-design-preview .ef-design-preview__item-actions .ef-design-preview__vote-action .vote__btn--up{
    color:#087f77;
}
.ef-design-preview .ef-design-preview__item-actions .ef-design-preview__member-action .fav__btn.is-on,
.ef-design-preview .ef-design-preview__item-actions .ef-design-preview__compare[aria-pressed="true"],
.ef-design-preview .ef-design-preview__item-actions .ef-design-preview__vote-action .vote__btn--up[aria-pressed="true"]{
    color:#087f77;
    background:#e2f3ed;
    border-color:#76bfb3;
}
.ef-design-preview :is(.ef-design-preview__item-actions,.ef-design-preview__hotel-booking-actions) :is(
    .ef-design-preview__compare,
    .ef-design-preview__member-action .fav__btn,
    .ef-design-preview__vote-action .vote__btn--up,
    .ef-design-preview__share--item > summary
):hover{
    background:var(--ep-item);
    border-color:#76bfb3;
}
.ef-design-preview :is(.ef-design-preview__item-actions,.ef-design-preview__hotel-booking-actions) :is(
    .ef-design-preview__compare,
    .ef-design-preview__member-action .fav__btn,
    .ef-design-preview__vote-action .vote__btn--up,
    .ef-design-preview__share--item > summary,
    .ef-design-preview__open,
    .ef-design-preview__hotel-details-link,
    .ef-design-preview__hotel-booking-link
):focus-visible{
    outline:2px solid #087f77;
    outline-offset:2px;
}
.ef-design-preview :is(.ef-design-preview__item-actions,.ef-design-preview__hotel-booking-actions) :is(
    .ef-design-preview__open--commercial,
    .ef-design-preview__hotel-booking-link
){
    border-color:transparent;
}
@media(max-width:550px){
    .ef-design-preview .ef-design-preview__item-actions,
    .ef-design-preview .ef-design-preview__hotel-booking-actions{
        --ef-item-action-radius:8px;
        --ef-item-action-font:10.5px;
    }
}

/* EnFavori V4 / One coherent hierarchy for sparse list detail pages.
   1-3 items: summary above full-width results; 4+ items: desktop sidebar.
   The original buttons, commerce, votes, ranking and list images are untouched. */
.ef-design-preview.ef-design-preview--sparse .ef-design-preview__layout{
    grid-template-columns:minmax(0,1fr);
    gap:16px;
}
.ef-design-preview.ef-design-preview--sparse .ef-design-preview__sidebar{
    display:block;
}
.ef-design-preview.ef-design-preview--sparse .ef-design-preview__sticky-summary{
    display:none;
}
@media(min-width:811px){
    .ef-design-preview.ef-design-preview--sparse .ef-design-preview__intro{
        display:grid;
        grid-template-columns:minmax(0,1fr) minmax(220px,30%);
        grid-template-areas:
            "title cover"
            "description cover"
            "topics cover"
            "stats cover"
            "facts cover"
            "engagement cover"
            "extra cover"
            "disclosure disclosure"
            "submission submission"
            "tags tags";
        align-items:start;
        column-gap:clamp(22px,3vw,38px);
        row-gap:12px;
        padding:24px clamp(22px,3vw,34px);
    }
    .ef-design-preview.ef-design-preview--sparse:not(.ef-design-preview--has-cover) .ef-design-preview__intro{
        grid-template-columns:minmax(0,1fr);
        grid-template-areas:
            "title"
            "description"
            "topics"
            "stats"
            "facts"
            "engagement"
            "extra"
            "disclosure"
            "submission"
            "tags";
    }
    .ef-design-preview--sparse .ef-design-preview__intro > h1{
        grid-area:title;
        max-width:none;
        margin:0;
        font-size:clamp(27px,2.6vw,37px);
        overflow-wrap:anywhere;
    }
    .ef-design-preview--sparse .ef-design-preview__intro-text{
        grid-area:description;
        max-width:74ch;
        margin:0;
    }
    .ef-design-preview--sparse .ef-design-preview__topic-tags{
        grid-area:topics;
        margin:0;
    }
    .ef-design-preview--sparse .ef-design-preview__stats{
        grid-area:stats;
        max-width:460px;
        width:100%;
        margin:0;
    }
    .ef-design-preview--sparse .ef-design-preview__facts{
        grid-area:facts;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:8px;
        width:100%;
        max-width:560px;
        margin:0;
        border:0;
    }
    .ef-design-preview--sparse .ef-design-preview__facts > div{
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:4px;
        min-width:0;
        padding:9px 11px;
        border:1px solid #d3e3e7;
        border-radius:9px;
        background:rgba(255,255,255,.65);
    }
    .ef-design-preview--sparse .ef-design-preview__facts strong{
        text-align:left;
    }
    .ef-design-preview--sparse .ef-design-preview__engagement{
        grid-area:engagement;
        margin:0;
        max-width:465px;
    }
    .ef-design-preview--sparse .ef-design-preview__mobile-extra{grid-area:extra}
    .ef-design-preview--sparse .ef-design-preview__photo{
        grid-area:cover;
        align-self:start;
        width:100%;
        margin:0;
        border:1px solid #c9dfe2;
        background:#fff;
    }
    .ef-design-preview--sparse .ef-design-preview__photo img{
        width:100%;
        height:auto;
        max-height:none;
        aspect-ratio:auto;
        object-fit:contain;
    }
    .ef-design-preview--sparse .ef-design-preview__disclosure{
        grid-area:disclosure;
        margin:0;
    }
    .ef-design-preview--sparse .ef-design-preview__submission{
        grid-area:submission;
        margin:0;
    }
    .ef-design-preview--sparse .ef-design-preview__tags{
        grid-area:tags;
        margin:0;
    }
}
.ef-design-preview--sparse .ef-design-preview__ranking-header{
    padding:20px clamp(18px,2.4vw,28px);
}
.ef-design-preview--sparse .ef-design-preview__ranking-heading .ef-design-preview__eyebrow{
    display:none;
}
.ef-design-preview--sparse .ef-design-preview__ranking-context{
    padding:11px clamp(18px,2.4vw,28px);
}
.ef-design-preview--sparse .ef-design-preview__items{
    padding:16px clamp(14px,2.2vw,24px);
}
@media(min-width:811px){
    .ef-design-preview--sparse .ef-design-preview__item{
        grid-template-columns:170px minmax(0,1fr);
    }
    .ef-design-preview--sparse .ef-design-preview__item .ef-design-preview__image{
        width:170px;
        height:170px;
    }
}
/* Sparse desktop lists: display the three list facts together; align all item
   action rows to the content column, not underneath the square photo.
   At <=810px the existing full-width mobile action grid remains unchanged. */
@media(min-width:811px){
    .ef-design-preview.ef-design-preview--sparse .ef-design-preview__facts{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
    .ef-design-preview.ef-design-preview--sparse .ef-design-preview__item{
        grid-template-areas:"photo content" ". actions";
    }
    .ef-design-preview.ef-design-preview--sparse .ef-design-preview__item .ef-design-preview__item-actions{
        grid-column:2 / -1;
        min-width:0;
    }
    .ef-design-preview.ef-design-preview--sparse .ef-design-preview__item--hotel{
        grid-template-areas:"photo content" ". actions" ". offers";
    }
    .ef-design-preview.ef-design-preview--sparse .ef-design-preview__item--hotel .ef-design-preview__hotel-offers{
        grid-column:2 / -1;
    }
}
/* Full-width accent follows the real card edge, rather than a cropped inset rule. */
.ef-design-preview--sparse .ef-design-preview__intro::before{
    left:0;
    right:0;
    border-radius:16px 16px 0 0;
}
/* Maintain usable list-detail typography before the two-column layout runs out
   of room; never let ranking content slide beyond the viewport. */
@media(max-width:1180px){
    .ef-design-preview:not(.ef-design-preview--sparse) .ef-design-preview__layout{
        grid-template-columns:minmax(0,1fr);
        gap:16px;
    }
    .ef-design-preview:not(.ef-design-preview--sparse) .ef-design-preview__sticky-summary{
        display:none;
    }
}
@media(max-width:810px){
    .ef-design-preview--sparse .ef-design-preview__intro{
        display:flex;
        flex-direction:column;
        align-items:stretch;
        padding:17px 18px;
        gap:0;
    }
    .ef-design-preview--sparse .ef-design-preview__intro > :is(
        .ef-design-preview__topic-tags,
        .ef-design-preview__facts,
        .ef-design-preview__photo,
        .ef-design-preview__disclosure,
        .ef-design-preview__submission,
        .ef-design-preview__tags
    ){display:none}
    .ef-design-preview--sparse .ef-design-preview__intro-text{
        margin-top:8px;
    }
    .ef-design-preview--sparse .ef-design-preview__stats{
        margin-top:12px;
    }
    .ef-design-preview--sparse .ef-design-preview__engagement{
        margin-top:12px;
        max-width:none;
    }
    .ef-design-preview--sparse .ef-design-preview__mobile-extra{
        display:block;
        margin-top:10px;
    }
    .ef-design-preview--sparse .ef-design-preview__ranking-header{
        padding:16px;
    }
    .ef-design-preview--sparse .ef-design-preview__ranking-context{
        padding:11px 14px;
    }
    .ef-design-preview--sparse .ef-design-preview__items{
        padding:10px;
    }
}
@media(max-width:550px){
    .ef-design-preview--sparse .ef-design-preview__intro{padding:15px}
    .ef-design-preview--sparse .ef-design-preview__ranking-header{padding:14px}
    .ef-design-preview--sparse .ef-design-preview__items{padding:8px}
}
/* Strong contrast for guest/member follow controls in every interaction state.
   Global .fav__btn styles previously overrode the list header's hover styling. */
.ef-design-preview .ef-design-preview__follow-wrap .follow__btn,
.ef-design-preview .ef-design-preview__follow-wrap .follow__btn:visited,
.ef-design-preview .ef-design-preview__follow-wrap .follow__btn:is(:hover,:focus-visible,:active,.is-on){
    background:#087f77 !important;
    border-color:#087f77 !important;
    color:#fff !important;
}
.ef-design-preview .ef-design-preview__follow-wrap .follow__btn:is(:hover,:focus-visible,:active){
    background:#076d67 !important;
    border-color:#076d67 !important;
}
.ef-design-preview .ef-design-preview__follow-wrap .follow__btn:focus-visible{
    outline:3px solid #18b7a7;
    outline-offset:3px;
}
:is(html[data-theme="dark"],html[data-bs-theme="dark"],html.dark,body[data-theme="dark"],body.dark,body.theme-dark,body.dark-mode) .ef-design-preview--sparse .ef-design-preview__facts > div{
    background:#183847;
    border-color:#365f6a;
}
@media(prefers-reduced-motion:reduce){
    .ef-design-preview .ef-design-preview__follow-wrap .follow__btn{transition:none}
}

/* Wave38: lead with content, not controls. Same markup for 1-3 and 4+ items.
   Keep actions, ranking, pricing, sponsorship and external links operational. */
.ef-design-preview .ef-design-preview__item .ef-design-preview__item-content{
    align-self:start;
    min-width:0;
}
.ef-design-preview .ef-design-preview__item .ef-design-preview__item-content > h3{
    margin:0;
    font-size:20px;
    font-weight:830;
    line-height:1.24;
    letter-spacing:-.02em;
    overflow-wrap:anywhere;
}
/* The rank badge sits in the card's upper-right corner; long titles need clearance. */
.ef-design-preview .ef-design-preview__item:has(> .ef-design-preview__number) .ef-design-preview__item-content > h3{
    padding-inline-end:56px;
}
.ef-design-preview .ef-design-preview__item .ef-design-preview__item-content > p{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:4;
    line-clamp:4;
    overflow:hidden;
    margin:9px 0 0;
    font-size:13.5px;
    line-height:1.6;
}
.ef-design-preview .ef-design-preview__item-attribution{
    display:flex;
    flex-wrap:wrap;
    gap:5px 16px;
    align-items:center;
    min-width:0;
    margin:10px 0 0;
}
.ef-design-preview .ef-design-preview__item-attribution > .ef-design-preview__item-credits{
    display:flex;
    align-items:center;
    margin:0;
    min-width:0;
    max-width:100%;
}
.ef-design-preview .ef-design-preview__item-attribution > .ef-design-preview__item-meta{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:5px 8px;
    min-width:0;
    min-height:0;
    padding:0;
    margin:0;
    font-size:11px;
}
.ef-design-preview .ef-design-preview__item-attribution .ef-v4-credit{
    font-size:11px;
}
.ef-design-preview .ef-design-preview__item-attribution + :is(.ef-design-preview__product-price,.ef-design-preview__type-facts,.ef-design-preview__entry-subline){
    margin-top:9px;
}
@media(max-width:760px){
    .ef-design-preview .ef-design-preview__item .ef-design-preview__item-content > h3{
        font-size:17px;
        line-height:1.25;
    }
    .ef-design-preview .ef-design-preview__item:has(> .ef-design-preview__number) .ef-design-preview__item-content > h3{
        padding-inline-end:44px;
    }
    .ef-design-preview .ef-design-preview__item .ef-design-preview__item-content > p{
        font-size:12.5px;
        line-height:1.5;
        -webkit-line-clamp:4;
        line-clamp:4;
    }
    .ef-design-preview .ef-design-preview__item-attribution{
        gap:4px 10px;
        margin-top:7px;
    }
}
@media(max-width:390px){
    .ef-design-preview .ef-design-preview__item .ef-design-preview__item-content > h3{font-size:16px}
    .ef-design-preview .ef-design-preview__item .ef-design-preview__item-content > p{
        -webkit-line-clamp:3;
        line-clamp:3;
    }
}

/* Wave39: compact rank badge without overlapping the article excerpt. */
.ef-design-preview .ef-design-preview__item .ef-design-preview__number{
    width:30px;
    height:30px;
    top:11px;
    right:11px;
    font-size:13px;
    line-height:1;
    border-radius:8px;
    border-left-width:2px;
}
.ef-design-preview .ef-design-preview__item:has(> .ef-design-preview__number) .ef-design-preview__item-content > :is(h3,p){
    padding-inline-end:40px;
}
@media(max-width:760px){
    .ef-design-preview .ef-design-preview__item .ef-design-preview__number{
        width:27px;
        height:27px;
        top:8px;
        right:8px;
        font-size:12px;
        border-radius:7px;
    }
    .ef-design-preview .ef-design-preview__item:has(> .ef-design-preview__number) .ef-design-preview__item-content > :is(h3,p){
        padding-inline-end:34px;
    }
}
