@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,500;12..96,600;12..96,700&family=Karla:wght@400;500;600;700&display=swap');
:root{--tafel-bg:#fbf8f3;--tafel-surface:#fff;--tafel-alt:#f5f1ea;--tafel-ink:#2a2622;--tafel-soft:#5c5650;--tafel-muted:#8c857c;--tafel-border:#e8e1d6;--tafel-primary:#b81c46;--tafel-primary-dark:#8f1636;--tafel-sage:#706c68;--tafel-accent:#e8a93e}
body:has(.recipes-page){background:var(--tafel-bg)!important;color:var(--tafel-ink)!important;font-family:'Karla',sans-serif!important}
body:has(.recipes-page){font-size:18px!important}.recipes-page p,.recipes-page label,.recipes-page select,.recipes-page input,.recipes-page button{font-size:1rem!important}.recipes-page .filter-title{font-size:1rem!important}.recipes-page .meta{font-size:.95rem!important}.recipes-page .recipe-body a{font-size:1rem!important}
.recipes-page .search-hero,.recipes-page .search-hero h1,.recipes-page .search-hero p,.yumdo-marketing-strip,.yumdo-marketing-strip h2,.yumdo-marketing-strip p{font-family:'Bricolage Grotesque','Arial',sans-serif!important}.yumdo-marketing-strip{font-size:18px!important}.yumdo-marketing-strip h2{font-size:clamp(30px,4vw,48px)!important;line-height:1.1!important}.yumdo-marketing-strip p{font-size:20px!important;line-height:1.55!important}.recipes-page .search-hero h1{font-size:clamp(42px,6vw,72px)!important;line-height:1.05!important}.recipes-page .search-hero p{font-size:20px!important;line-height:1.55!important}
.recipes-page .filter-title,.recipes-page label span{font-size:18px!important;line-height:1.35!important;font-weight:700!important}.recipes-page select,.recipes-page input{font-size:18px!important;min-height:46px!important}.recipes-page .search-button,.recipes-page button{font-size:18px!important;min-height:46px!important}.recipes-page .recipe-body h2{font-size:22px!important;line-height:1.2!important}.recipes-page .recipe-body p{font-size:17px!important;line-height:1.45!important}.recipes-page .meta{font-size:16px!important}.recipes-page .recipe-body a{font-size:17px!important}
.recipes-page{min-height:calc(100vh - 80px);background:var(--tafel-bg);color:var(--tafel-ink);position:relative;overflow:hidden;padding:32px 0 64px}.recipes-page:before{content:'';position:absolute;inset:0 0 auto;height:260px;background:radial-gradient(circle at 85% 10%,#e8a93e22,transparent 32%),linear-gradient(135deg,#fffaf6,#fbf8f3 65%,#f5f1ea);pointer-events:none}.recipes-page>.container{position:relative}.recipes-page h1,.recipes-page h2,.recipes-page h3,.recipes-page .filter-title,.recipes-page label span{font-family:'Bricolage Grotesque',Georgia,serif;color:var(--tafel-ink)!important}.recipes-page h1{font-size:clamp(38px,6vw,68px);line-height:1.02;font-weight:700;text-shadow:none!important}.recipes-page p,.recipes-page label,.recipes-page select,.recipes-page input{color:var(--tafel-ink)!important}.recipes-page .search-hero{padding:68px 0 40px;max-width:760px}.recipes-page .search-hero:before{content:'YUMDO.DE · REZEPTPLATTFORM';display:block;color:var(--tafel-sage);font-size:12px;font-weight:700;letter-spacing:.16em;margin-bottom:12px}.recipes-page .search-box,.recipes-page .filter-panel,.recipes-page .recipe-card{background:var(--tafel-surface);border:1px solid var(--tafel-border);border-radius:18px}.recipes-page .search-box{display:flex;gap:12px;padding:8px 8px 8px 20px;box-shadow:0 14px 30px -22px #2a26224d}.recipes-page .search-box input{border:0;background:none;flex:1;padding:10px;font-size:16px}.recipes-page .search-box input:focus{outline:0}.recipes-page button,.recipes-page .search-button{background:var(--tafel-primary);color:#fff!important;border:0;border-radius:12px;padding:11px 20px;font-weight:600}.recipes-page .filter-panel{padding:22px;box-shadow:0 18px 40px -30px #2a262273}.recipes-page select{width:100%;border:1px solid var(--tafel-border);border-radius:10px;padding:9px 12px;background:var(--tafel-alt)}.recipes-page .recipe-card{overflow:hidden;height:100%;transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 12px 30px -26px #2a262266}.recipes-page .recipe-card:hover{transform:translateY(-3px);box-shadow:0 20px 34px -22px #b81c464d}.recipes-page .recipe-card img,.recipes-page .recipe-placeholder{width:100%;height:168px;object-fit:cover}.recipes-page .recipe-placeholder{display:grid;place-items:center;background:#f5f1ea;color:var(--tafel-sage);font:34px Georgia,serif}.recipes-page .recipe-body{padding:16px 18px 18px}.recipes-page .recipe-body h2{font-size:18px;margin:0 0 6px}.recipes-page .recipe-body p{font-size:14px;color:var(--tafel-soft)!important;margin:0 0 12px}.recipes-page .meta{display:flex;justify-content:space-between;color:var(--tafel-muted);font-size:13px}.recipes-page .rating{color:#a56e14!important;font-weight:700}.recipes-page .recipe-body a{display:inline-block;color:var(--tafel-primary);font-weight:700;text-decoration:none;border-bottom:1px solid var(--tafel-accent);margin-top:10px}@media(max-width:767px){.recipes-page .search-hero{padding:42px 0 28px}.recipes-page .search-hero h1{font-size:42px}.recipes-page .search-box{flex-wrap:wrap;padding:12px}.recipes-page .search-button{width:100%}}
.recipe-pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin:36px 0 8px;flex-wrap:wrap}.recipe-page-link{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 12px;border:1px solid var(--tafel-border);border-radius:10px;background:var(--tafel-surface);color:var(--tafel-primary);text-decoration:none;font-weight:700}.recipe-page-link.is-active{background:var(--tafel-primary);border-color:var(--tafel-primary);color:#fff}.recipe-page-link.is-disabled{opacity:.45;pointer-events:none}

/* yumdo palette overrides for legacy module components. */
.recipe-admin-table th{background:#f5f1ea}
.recipe-admin-table tbody tr:hover{background:#fffaf6}
.recipe-admin-button--secondary:hover{background:#fff0f1}

/* Marketing copy blocks from the yumdo platform concept. */
.yumdo-marketing-strip{max-width:920px;margin:0 auto 24px;padding:28px 32px;border:1px solid #e8e1d6;border-radius:18px;background:#fff;box-shadow:0 14px 30px -24px rgba(42,38,34,.28)}
.yumdo-marketing-strip .eyebrow{display:block;margin-bottom:8px;color:#b81c46;font-size:12px;font-weight:700;letter-spacing:.14em}
.yumdo-marketing-strip h2{margin:0 0 10px;color:#2a2622;font-family:'Bricolage Grotesque',Georgia,serif}
.yumdo-marketing-strip h2 span{color:#b81c46}
.yumdo-marketing-strip p{max-width:680px;margin:0;color:#5c5650}
.tafel-detail,.tafel-detail body{background:#fbf8f3!important;color:#2a2622!important}.tafel-detail .hero,.tafel-detail .card,.tafel-detail .rating-card{background:#fff!important;border-color:#e8e1d6!important}.tafel-detail .share-actions button,.tafel-detail .share-actions a,.tafel-detail button[type=submit]{background:#b81c46!important;border-color:#8f1636!important;color:#fff!important}.tafel-detail .share-actions button:hover,.tafel-detail .share-actions a:hover{background:#8f1636!important}.tafel-detail .portion-control{background:#f5f1ea!important;border-color:#e8e1d6!important}.tafel-detail .portion-control button{color:#b81c46!important;border-color:#e8e1d6!important}.tafel-detail .ingredient-list li{border-color:#e8e1d6!important}.tafel-detail .ingredient-amount{color:#b81c46!important}.tafel-detail .step-number{background:#f7e3ea!important;color:#a52c62!important}.tafel-detail select,.tafel-detail textarea,.tafel-detail input[type=file]{border-color:#e8e1d6!important;background:#f5f1ea!important}.tafel-detail .rating-stars,.tafel-detail .star-picker label:has(input:checked) span,.tafel-detail .star-picker label:hover span{color:#e8a93e!important}.rating-login-actions a:last-child{background:#e8a93e!important;color:#2a2622!important}
.rating-breakdown{max-width:980px;margin:0 auto 24px;padding:16px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.rating-breakdown>div{padding:14px 16px;background:#fff;border:1px solid #e8e1d6;border-radius:14px}.rating-breakdown strong,.rating-breakdown span,.rating-breakdown small{display:block}.rating-breakdown span{margin:5px 0;color:#e8a93e;letter-spacing:2px;font-weight:700}.rating-breakdown small{color:#5c5650}.rating-breakdown__total{border-top:4px solid #b81c46!important}.rating-breakdown__total span{color:#b81c46}@media(max-width:720px){.rating-breakdown{grid-template-columns:1fr 1fr}.rating-breakdown__total{grid-column:1/-1}}

/* Admin moderation: task-focused table with a predictable action area. */
.recipe-admin-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:8px 0 28px}.recipe-admin-head h1{margin:6px 0 8px;color:var(--tafel-ink);font-family:'Bricolage Grotesque',Georgia,serif;font-size:clamp(30px,4vw,48px);line-height:1.05}.recipe-admin-head p{margin:0;color:var(--tafel-soft)}.recipe-admin-eyebrow{color:var(--tafel-sage);font-size:11px;font-weight:700;letter-spacing:.14em}.recipe-admin-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 14px;border:1px solid transparent;border-radius:10px;font:700 14px/1 'Karla',sans-serif;text-decoration:none;white-space:nowrap;cursor:pointer}.recipe-admin-button--primary{background:var(--tafel-primary);border-color:var(--tafel-primary);color:#fff}.recipe-admin-button--primary:hover{background:var(--tafel-primary-dark);border-color:var(--tafel-primary-dark)}.recipe-admin-button--secondary{background:#fff;border-color:var(--tafel-border);color:var(--tafel-primary)}.recipe-admin-button--secondary:hover{border-color:var(--tafel-primary);background:#f8f3f6}.recipe-admin-button--danger{background:#fff7f5;border-color:#e6b8ad;color:#9d3d2d}.recipe-admin-button--danger:hover{background:#9d3d2d;color:#fff}.recipe-admin-alert{margin-bottom:18px;padding:13px 16px;border-radius:10px;border:1px solid var(--tafel-border);background:#fff;color:var(--tafel-ink);font-weight:700}.recipe-admin-alert--error{border-color:#e6b8ad;background:#fff7f5;color:#9d3d2d}.recipe-admin-panel{overflow:hidden;border:1px solid var(--tafel-border);border-radius:18px;background:#fff;box-shadow:0 16px 34px -28px #241b2273}.recipe-admin-panel__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;border-bottom:1px solid var(--tafel-border)}.recipe-admin-panel__head h2{margin:0 0 4px;color:var(--tafel-ink);font:700 22px/1.15 'Bricolage Grotesque',Georgia,serif}.recipe-admin-panel__head p{margin:0;color:var(--tafel-muted);font-size:14px}.recipe-admin-count{padding:7px 10px;border-radius:999px;background:var(--tafel-alt);color:var(--tafel-soft);font-size:13px;font-weight:700}.recipe-admin-table-wrap{overflow-x:auto}.recipe-admin-table{width:100%;min-width:920px;border-collapse:collapse;text-align:left}.recipe-admin-table th{padding:13px 16px;background:#f8f9f1;color:var(--tafel-muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.recipe-admin-table td{padding:16px;border-top:1px solid #edf0e5;vertical-align:middle;color:var(--tafel-ink);font-size:14px}.recipe-admin-table tbody tr:hover{background:#fcfcf8}.recipe-admin-table__id{width:54px;color:var(--tafel-muted)!important;font-variant-numeric:tabular-nums}.recipe-admin-title{max-width:260px;font-weight:700}.recipe-admin-meta{margin-top:4px;color:var(--tafel-muted);font-size:12px}.recipe-admin-muted{color:var(--tafel-muted)!important}.recipe-admin-status{display:inline-flex;padding:6px 9px;border-radius:999px;background:#f0eee8;color:#625c54;font-size:12px;font-weight:700}.recipe-admin-status--published{background:#e8f2e5;color:#3f6d3d}.recipe-admin-status--pending{background:#fff4d9;color:#89651c}.recipe-admin-status--draft{background:#eeeef1;color:#5e5e6a}.recipe-admin-status--rejected{background:#fff0ed;color:#9d3d2d}.recipe-admin-table__actions{width:190px}.recipe-admin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.recipe-admin-delete-form{margin:0}.recipe-admin-empty{display:grid;gap:6px;padding:48px 24px;text-align:center;color:var(--tafel-soft)}.recipe-admin-empty strong{color:var(--tafel-ink);font-size:18px}.recipe-admin-pagination{display:flex;justify-content:center;gap:8px;margin:22px 0;flex-wrap:wrap}.recipe-admin-page-link{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;border:1px solid var(--tafel-border);border-radius:10px;background:#fff;color:var(--tafel-primary);font-weight:700;text-decoration:none}.recipe-admin-page-link.is-active{border-color:var(--tafel-primary);background:var(--tafel-primary);color:#fff}@media(max-width:800px){.recipe-admin-head{align-items:stretch;flex-direction:column}.recipe-admin-head .recipe-admin-button{align-self:flex-start}.recipe-admin-panel__head{align-items:flex-start;flex-direction:column}.recipe-admin-table{min-width:0}.recipe-admin-table thead{display:none}.recipe-admin-table,.recipe-admin-table tbody,.recipe-admin-table tr,.recipe-admin-table td{display:block;width:100%}.recipe-admin-table tr{padding:14px 16px;border-top:1px solid #edf0e5}.recipe-admin-table td{display:flex;justify-content:space-between;gap:18px;padding:7px 0;border:0;text-align:right}.recipe-admin-table td::before{content:attr(data-label);color:var(--tafel-muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-align:left}.recipe-admin-table__id{width:100%}.recipe-admin-table__actions{width:100%;justify-content:flex-end}.recipe-admin-actions{justify-content:flex-end}}
