/* Baba Kocht – Meine Rezepte v1.0.22
   Einheitlich mit Rezeptarchiv / Küchentricks: editorial, warm, ruhig. */

.baba-favorites,
.baba-favorites *,
.baba-favorites *::before,
.baba-favorites *::after { box-sizing: border-box; }

/* CLS-Fix v1.0.22: Blocksy-Seitenkopf und vertikale Theme-Abstände
   sind schon beim ersten Rendern fest definiert. Kein nachträgliches
   JavaScript-Verschieben der Sammlung mehr. */
body.baba-my-recipes-page .hero-section,
body.baba-my-recipes-page .page-header,
body.baba-my-recipes-page .page-header-section,
body.baba-my-recipes-page .ct-page-header,
body.baba-my-recipes-page .ct-page-title {
    display:none !important;
}

body.baba-my-recipes-page #main-container .ct-container-full[data-vertical-spacing*="top"],
body.baba-my-recipes-page #main-container .ct-container[data-vertical-spacing*="top"] {
    padding-top:0 !important;
}

body.baba-my-recipes-page #main-container .ct-container-full[data-vertical-spacing*="bottom"],
body.baba-my-recipes-page #main-container .ct-container[data-vertical-spacing*="bottom"] {
    padding-bottom:0 !important;
}

body.baba-my-recipes-page #main-container,
body.baba-my-recipes-page .site-main,
body.baba-my-recipes-page .site-content {
    background:
        radial-gradient(circle at 92% 4%, rgba(190,126,78,.055), transparent 24%),
        linear-gradient(180deg,#faf7f2 0%,#f5f0e9 48%,#f2ece4 100%) !important;
}

.baba-favorites {
    --bk-ink:#211914;
    --bk-copy:#5f544b;
    --bk-muted:#81746a;
    --bk-accent:#a46137;
    --bk-accent-light:#ca9467;
    --bk-green:#75886d;
    --bk-line:#e4d8cc;
    --bk-line-soft:rgba(116,80,54,.09);
    --bk-card:#fffdf9;
    --bk-card-soft:#fbf6f0;

    width:min(1460px,100%);
    margin:28px auto 0;
    padding:48px 34px 88px;
    color:var(--bk-ink);
    font-family:inherit;
}

/* ===== Editorial Header – gleiche Sprache wie Rezeptarchiv/Küchentricks ===== */
.baba-favorites__head {
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,800px) 1fr auto;
    align-items:end;
    gap:42px;
    margin:0 0 38px;
    padding:0 0 31px;
    border-bottom:1px solid var(--bk-line);
}

.baba-favorites__head::after {
    content:"";
    position:absolute;
    left:0;
    bottom:-1px;
    width:92px;
    height:2px;
    border-radius:99px;
    background:linear-gradient(90deg,#91502b,#d0a06f);
}

.baba-favorites__head-copy { grid-column:1/2; }

.baba-favorites__eyebrow {
    display:flex;
    align-items:center;
    gap:10px;
    margin:0 0 11px;
    color:var(--bk-accent);
    font-size:9px;
    line-height:1.2;
    font-weight:750;
    letter-spacing:.19em;
    text-transform:uppercase;
}

.baba-favorites__eyebrow::before {
    content:"";
    width:25px;
    height:1px;
    background:var(--bk-accent-light);
}

.baba-favorites__head h1 {
    margin:0 0 13px !important;
    color:var(--bk-ink) !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:clamp(44px,4.1vw,61px) !important;
    line-height:.98 !important;
    font-weight:400 !important;
    letter-spacing:-.038em !important;
}

.baba-favorites__head p {
    max-width:800px;
    margin:0 !important;
    color:var(--bk-copy) !important;
    font-size:15.5px !important;
    line-height:1.67 !important;
    font-weight:400;
}

.baba-favorites__signature {
    display:flex;
    align-items:center;
    gap:9px;
    margin-top:13px;
    color:#8b7666;
    font-family:Georgia,"Times New Roman",serif;
    font-size:12px;
    font-style:italic;
    letter-spacing:.01em;
}

.baba-favorites__signature span { color:#b6774d; font-style:normal; }

.baba-favorites__count {
    grid-column:3/4;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    justify-content:flex-end;
    min-width:95px;
    padding:0 2px 4px 30px;
    border-left:1px solid var(--bk-line-soft);
}

.baba-favorites__count strong {
    color:var(--bk-ink);
    font-family:Georgia,"Times New Roman",serif;
    font-size:42px;
    line-height:.9;
    font-weight:400;
    letter-spacing:-.045em;
}

.baba-favorites__count > span:last-child {
    margin-top:7px;
    color:var(--bk-muted);
    font-size:8.5px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.14em;
}

/* ===== Gespeicherte Karten – bewusst wie Rezeptarchiv ===== */
.baba-favorites__grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:31px 24px;
    align-items:stretch;
}

.baba-favorite-card {
    min-width:0;
    height:100%;
    margin:0;
    padding:0;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    background:linear-gradient(180deg,#fffefa 0%,#fffaf5 100%);
    border:1px solid var(--bk-line);
    border-radius:19px;
    box-shadow:0 1px 0 rgba(255,255,255,.92) inset, 0 8px 24px rgba(56,39,27,.04);
    transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

@media(hover:hover) {
    .baba-favorite-card:hover {
        transform:translateY(-4px);
        border-color:rgba(156,101,65,.20);
        box-shadow:0 1px 0 rgba(255,255,255,.95) inset, 0 17px 38px rgba(56,39,27,.075);
    }
}

.baba-favorite-card__media-shell {
    position:relative;
    width:100%;
    overflow:hidden;
    background:#eee3d7;
}

.baba-favorite-card__media {
    display:block;
    overflow:hidden;
    width:100%;
    aspect-ratio:4/3;
    background:#eee3d7;
    text-decoration:none !important;
}

.baba-favorite-card__media img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .42s cubic-bezier(.2,.7,.2,1);
}

@media(hover:hover) {
    .baba-favorite-card:hover .baba-favorite-card__media img { transform:scale(1.018); }
}

.baba-favorite-card__placeholder {
    display:grid;
    place-items:center;
    width:100%;
    height:100%;
    background:linear-gradient(145deg,#faf5ef,#eadbc9);
    color:var(--bk-accent);
    font-size:42px;
}

.baba-favorite-card__remove {
    appearance:none;
    -webkit-appearance:none;
    position:absolute;
    right:12px;
    bottom:12px;
    z-index:5;
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    min-width:44px;
    min-height:44px;
    margin:0;
    padding:0;
    color:#fff;
    background:#dc2638;
    border:1px solid #dc2638;
    border-radius:999px;
    box-shadow:0 9px 24px rgba(220,38,56,.26);
    cursor:pointer;
    transition:transform .16s ease, box-shadow .16s ease;
}

.baba-favorite-card__remove svg {
    width:22px;
    height:22px;
    fill:currentColor;
    stroke:currentColor;
    pointer-events:none;
}

.baba-favorite-card__remove-tip {
    position:absolute;
    right:calc(100% + 8px);
    top:50%;
    transform:translate(5px,-50%);
    padding:7px 9px;
    border-radius:8px;
    background:#201812;
    color:#fff;
    font-size:10px;
    line-height:1;
    font-weight:700;
    white-space:nowrap;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .14s ease,transform .14s ease,visibility .14s ease;
}

@media(hover:hover) {
    .baba-favorite-card__remove:hover { transform:translateY(-2px); box-shadow:0 11px 26px rgba(220,38,56,.30); }
    .baba-favorite-card__remove:hover .baba-favorite-card__remove-tip,
    .baba-favorite-card__remove:focus-visible .baba-favorite-card__remove-tip {
        opacity:1;
        visibility:visible;
        transform:translate(0,-50%);
    }
}

.baba-favorite-card__remove:focus-visible {
    outline:3px solid rgba(245,143,45,.32);
    outline-offset:3px;
}

.baba-favorite-card__body {
    padding:18px 19px 17px;
    border-top:1px solid rgba(117,80,54,.07);
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
}

.baba-favorite-card__kicker {
    margin:0 0 7px;
    color:var(--bk-accent);
    font-size:9.5px;
    line-height:1.25;
    font-weight:730;
    text-transform:uppercase;
    letter-spacing:.11em;
}

.baba-favorite-card h2 {
    margin:0 0 11px !important;
    min-height:47.2px;
    color:var(--bk-ink) !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:20px !important;
    line-height:1.18 !important;
    font-weight:400 !important;
    letter-spacing:-.012em !important;
    overflow:hidden;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
}

.baba-favorite-card h2 a {
    color:inherit !important;
    text-decoration:none !important;
}

.baba-favorite-card h2 a:hover { color:var(--bk-accent) !important; }

.baba-favorite-card__meta {
    display:flex;
    align-items:center;
    gap:5px;
    min-height:30px;
    margin:0;
    color:var(--bk-muted);
    font-size:11.5px;
    line-height:1.4;
}

.baba-favorite-card__meta::before {
    content:"♡";
    color:var(--bk-green);
    font-size:14px;
    line-height:1;
}

.baba-favorite-card__actions {
    display:block;
    margin-top:auto;
    padding-top:13px;
    border-top:1px solid rgba(117,80,54,.09);
}

.baba-favorite-card__open {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    color:#5f5045 !important;
    font-size:10.5px;
    font-weight:720;
    letter-spacing:.045em;
    text-transform:uppercase;
    text-decoration:none !important;
    transition:color .16s ease;
}

.baba-favorite-card__open::after {
    content:"→";
    color:var(--bk-accent);
    font-size:15px;
    line-height:1;
    transition:transform .16s ease;
}

.baba-favorite-card__open:hover { color:var(--bk-accent) !important; }
.baba-favorite-card__open:hover::after { transform:translateX(3px); }

/* ===== Leerer Zustand ===== */
.baba-favorites__empty {
    padding:58px 26px;
    text-align:center;
    background:rgba(255,253,249,.82);
    border:1px solid var(--bk-line);
    border-radius:19px;
    box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 9px 28px rgba(56,39,27,.035);
}

.baba-favorites__empty-heart {
    display:grid;
    place-items:center;
    width:58px;
    height:58px;
    margin:0 auto 17px;
    color:#dc2638;
    font-size:32px;
    line-height:1;
    background:#fffefa;
    border:1px solid rgba(220,38,56,.20);
    border-radius:999px;
}

.baba-favorites__empty h2 {
    margin:0 0 10px !important;
    color:var(--bk-ink) !important;
    font-family:Georgia,"Times New Roman",serif !important;
    font-size:32px !important;
    line-height:1.05 !important;
    font-weight:400 !important;
    letter-spacing:-.025em !important;
}

.baba-favorites__empty p {
    max-width:620px;
    margin:0 auto 20px !important;
    color:var(--bk-copy) !important;
    font-size:15px !important;
    line-height:1.65 !important;
}

.baba-favorites__empty a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:43px;
    padding:0 18px;
    color:#fff !important;
    background:#241b15;
    border:1px solid #241b15;
    border-radius:10px;
    font-size:11px;
    font-weight:720;
    text-decoration:none !important;
    transition:background .16s ease, transform .16s ease;
}

.baba-favorites__empty a:hover { background:#3b2b21; transform:translateY(-1px); }

.baba-favorites__device-note {
    margin:28px 0 0 !important;
    padding:14px 16px;
    color:#75665b !important;
    background:rgba(255,253,249,.72);
    border:1px solid var(--bk-line);
    border-left:3px solid var(--bk-accent-light);
    border-radius:12px;
    font-size:12px !important;
    line-height:1.55 !important;
}

/* ===== Theme-Doppelungen nur auf Meine Rezepte entfernen ===== */
body.baba-my-recipes-page .page-header,
body.baba-my-recipes-page .entry-header,
body.baba-my-recipes-page .page-title-area,
body.baba-my-recipes-page .page-title-section,
body.baba-my-recipes-page .page-title-wrap,
body.baba-my-recipes-page .page-title-bar,
body.baba-my-recipes-page .page-title,
body.baba-my-recipes-page .page-header-wrapper,
body.baba-my-recipes-page .page-header-inner,
body.baba-my-recipes-page .breadcrumb-area,
body.baba-my-recipes-page .breadcrumbs-area,
body.baba-my-recipes-page .breadcrumb-section,
body.baba-my-recipes-page .site-breadcrumbs,
body.baba-my-recipes-page .ct-breadcrumbs,
body.baba-my-recipes-page .kadence-breadcrumbs,
body.baba-my-recipes-page .rank-math-breadcrumb,
body.baba-my-recipes-page .yoast-breadcrumb,
body.baba-my-recipes-page .ast-breadcrumbs-wrapper,
body.baba-my-recipes-page .ast-page-builder-template .entry-header,
body.baba-my-recipes-page .wp-block-group.page-header,
body.baba-my-recipes-page .wp-block-cover.page-header { display:none !important; }

body.baba-my-recipes-page #content,
body.baba-my-recipes-page #primary,
body.baba-my-recipes-page main,
body.baba-my-recipes-page .site-main,
body.baba-my-recipes-page .content-area,
body.baba-my-recipes-page .site-content,
body.baba-my-recipes-page .content-wrapper,
body.baba-my-recipes-page .main-content,
body.baba-my-recipes-page article.page,
body.baba-my-recipes-page article.type-page,
body.baba-my-recipes-page .entry-content {
    margin-top:0 !important;
    margin-bottom:0 !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
}

body.baba-my-recipes-page .entry-content > :first-child { margin-top:0 !important; }
body.baba-my-recipes-page .entry-content > :last-child { margin-bottom:0 !important; }

/* ===== Responsive ===== */
@media (max-width:1180px) {
    .baba-favorites__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:900px) {
    .baba-favorites { padding:42px 26px 72px; }
    .baba-favorites__head { grid-template-columns:minmax(0,1fr) auto; gap:28px; }
    .baba-favorites__head-copy { grid-column:1/2; }
    .baba-favorites__count { grid-column:2/3; }
    .baba-favorites__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:620px) {
    .baba-favorites {
        width:100%;
        margin-top:18px;
        padding:30px 16px 54px;
    }
    .baba-favorites__head {
        display:block;
        margin-bottom:24px;
        padding-bottom:23px;
    }
    .baba-favorites__head::after { width:58px; }
    .baba-favorites__eyebrow { font-size:8.5px; margin-bottom:9px; }
    .baba-favorites__eyebrow::before { width:15px; }
    .baba-favorites__head h1 { font-size:42px !important; line-height:1 !important; }
    .baba-favorites__head p { font-size:14px !important; }
    .baba-favorites__signature { font-size:11px; }
    .baba-favorites__count { display:none; }
    .baba-favorites__grid { grid-template-columns:1fr; gap:18px; }
    .baba-favorites__empty { padding:42px 20px; }
    .baba-favorites__empty h2 { font-size:28px !important; }
    .baba-favorite-card { border-radius:18px; }
}
