/* ==========================================================================
   Kompaktes Rezeptseiten-Design (rd2-*, geprefixt um Kollisionen mit
   style.css zu vermeiden - style.css bleibt zusätzlich eingebunden für
   Cookie-Banner, Merkliste-Icon, Bewertungssterne, Buttons etc.)
   ========================================================================== */
.rd2-page{--green:#2f7d45;--green-dark:#215d32;--green-soft:#eef7f0;--cream:#fff8ef;--orange:#d86523;--rd2-text:#243127;--rd2-muted:#6d786f;--rd2-line:#dfe7e1;--rd2-bg:#f7faf7}
.rd2-page{background:var(--rd2-bg);color:var(--rd2-text);font-family:Arial,Helvetica,sans-serif;line-height:1.6}
.rd2-header{background:#fff;border-bottom:1px solid var(--rd2-line)}
.rd2-topbar{max-width:1180px;margin:auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.rd2-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--green-dark);font-weight:800;font-size:1.2rem}
.rd2-brand img{width:44px;height:44px;object-fit:contain}
.rd2-nav{display:flex;gap:26px;flex-wrap:wrap}
.rd2-nav a{color:#29362d;text-decoration:none;font-weight:700;font-size:.95rem}
.rd2-nav a:hover{color:var(--green-dark)}
.rd2-main{max-width:1060px;margin:0 auto;padding:22px 24px 60px}
.rd2-back{display:inline-flex;align-items:center;gap:6px;background:var(--green);color:#fff;text-decoration:none;font-weight:700;font-size:.85rem;padding:7px 14px;border-radius:999px;margin-bottom:10px;transition:background .15s,transform .15s}
.rd2-back:hover{background:var(--green-dark);text-decoration:none;transform:translateY(-1px)}
.rd2-breadcrumb{font-size:.95rem;color:var(--green-dark);margin:4px 0 18px}
.rd2-hero{position:relative;border-radius:24px;overflow:hidden;min-height:260px}
.rd2-hero img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3}
.rd2-badge{position:absolute;left:24px;bottom:24px;background:var(--orange);color:#fff;padding:12px 20px;border-radius:999px;font-size:1.2rem;font-weight:800;box-shadow:0 5px 16px rgba(0,0,0,.2)}
.rd2-page h1.rd2-h1{font-size:clamp(2.1rem,5vw,3.7rem);line-height:1.1;margin:26px 0 12px;color:var(--rd2-text)}
.rd2-intro{font-size:1.12rem;color:#3f4b42;max-width:900px}
.rd2-action-row{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.rd2-action-row button{border:1px solid var(--rd2-line);background:#fff;border-radius:999px;padding:9px 16px;font-weight:700;font-size:.9rem;cursor:pointer;color:var(--rd2-text)}
.rd2-action-row button:hover{background:var(--green-soft)}
.rd2-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0 34px}
.rd2-info-card{background:#fff;border:1px solid var(--rd2-line);border-radius:18px;padding:18px 20px;display:flex;align-items:center;gap:14px}
.rd2-info-icon{font-size:28px}
.rd2-info-card small{display:block;color:var(--rd2-muted);font-size:.78rem;font-weight:800;letter-spacing:.08em}
.rd2-info-card strong{display:block;font-size:1.12rem}
.rd2-servings-wrap{margin:0 0 24px}
.rd2-section{background:#fff;border:1px solid var(--rd2-line);border-radius:20px;padding:26px;margin-top:22px}
.rd2-section h2{font-size:1.75rem;color:var(--green-dark);margin:0 0 16px}
.rd2-section h3{color:var(--green-dark);margin:22px 0 8px}
.rd2-table-wrap{overflow:auto;border:1px solid var(--rd2-line);border-radius:14px}
table.rd2-table{width:100%;border-collapse:collapse;min-width:420px}
table.rd2-table th,table.rd2-table td{padding:13px 16px;border-bottom:1px solid var(--rd2-line);text-align:left}
table.rd2-table th{background:var(--green-soft);color:var(--green-dark)}
table.rd2-table th:last-child,table.rd2-table td:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
table.rd2-table tr:last-child td{border-bottom:0}
.rd2-price-box{margin-top:18px;border:1px solid #cfe0d2;border-radius:14px;overflow:hidden}
.rd2-price-row{display:grid;grid-template-columns:1fr 130px;align-items:center;padding:14px 18px;background:var(--green-soft);font-weight:800;border-bottom:1px solid #cfe0d2}
.rd2-price-row:last-child{border-bottom:0;background:var(--green);color:#fff}
.rd2-price-row span:last-child{text-align:right;font-variant-numeric:tabular-nums}
.rd2-note{margin-top:16px;padding:18px;background:var(--cream);border-left:5px solid var(--green);border-radius:12px}
.rd2-note p{margin:6px 0}
.rd2-steps{counter-reset:step;display:grid;gap:14px}
.rd2-step{counter-increment:step;position:relative;border:1px solid var(--rd2-line);border-radius:14px;padding:16px 18px 16px 68px;background:#fff}
.rd2-step:before{content:counter(step);position:absolute;left:18px;top:17px;width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:800}
.rd2-tips{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rd2-tip{background:var(--green-soft);border:1px solid #d8e8db;border-radius:14px;padding:16px}
.rd2-nutrition{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.rd2-nutri{text-align:center;border:1px solid var(--rd2-line);border-radius:14px;padding:15px}
.rd2-nutri strong{display:block;color:var(--green-dark);font-size:1.25rem}
.rd2-faq details{border:1px solid var(--rd2-line);border-radius:12px;padding:14px 16px;margin-top:10px}
.rd2-faq summary{cursor:pointer;font-weight:800;color:var(--green-dark)}
.rd2-rating-box{margin-top:22px}
.rd2-footer{margin-top:34px;padding:26px 24px 40px;color:var(--rd2-muted);font-size:.92rem;text-align:center;border-top:1px solid var(--rd2-line)}
.rd2-footer a{color:var(--green-dark);text-decoration:none;font-weight:700;margin:0 8px}
.rd2-footer a:hover{text-decoration:underline}
@media(max-width:800px){
  .rd2-nav{display:none}
  .rd2-info-grid{grid-template-columns:1fr 1fr}
  .rd2-tips,.rd2-nutrition{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .rd2-main{padding:14px}
  .rd2-topbar{padding:14px}
  .rd2-hero{border-radius:18px}
  .rd2-badge{left:14px;bottom:14px;font-size:1rem}
  .rd2-info-grid,.rd2-tips,.rd2-nutrition{grid-template-columns:1fr}
  .rd2-section{padding:20px}
  .rd2-price-row{grid-template-columns:1fr 100px}
  table.rd2-table{min-width:0}
  table.rd2-table th,table.rd2-table td{padding:10px 10px;font-size:.92rem}
}
