.kr-wrap { max-width: 900px; margin: 0 auto; }
.kr-hero { text-align:center; margin-bottom:1.5rem; }
.kr-hero h1 { margin: 0 0 .25rem 0; }

.kr-form { background: var(--gp-color-2, #f7f7f9); padding:1rem; border-radius:12px; }
.kr-grid { display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap:12px; }
@media (max-width: 720px){ .kr-grid{ grid-template-columns:1fr; } }

.kr-field { display:flex; flex-direction:column; gap:6px; }
.kr-field input, .kr-field select { padding:.55rem .7rem; border:1px solid #d6d6dc; border-radius:8px; }

fieldset.kr-field { border:1px solid #e5e5ea; padding:.6rem .8rem; border-radius:8px; }
fieldset.kr-field legend { font-weight:600; }

.kr-btn { margin-top:.8rem; padding:.7rem 1rem; border:0; border-radius:10px; background:#222; color:#fff; cursor:pointer; }
.kr-btn:hover { filter:brightness(1.05); }
.kr-hinweis { margin:.5rem 0 0; font-size:.9rem; opacity:.75; }

.kr-result { margin:1.25rem 0 0; }
.kr-cards { display:grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap:12px; }
@media (max-width: 880px){ .kr-cards{ grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 520px){ .kr-cards{ grid-template-columns:1fr; } }

.kr-card { background:#fff; border:1px solid #eee; border-radius:12px; padding:1rem; }
.kr-big { font-size:1.6rem; font-weight:800; margin:.25rem 0 .15rem; }
.kr-note { font-size:.85rem; opacity:.7; }

.kr-table { width:100%; border-collapse: collapse; margin-top:.75rem; }
.kr-table th, .kr-table td { padding:.55rem .6rem; border-bottom:1px solid #eee; text-align:left; }
.kr-table tfoot th { font-weight:800; }
.kr-meal-plan { margin-top: 28px; }
.kr-meals { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.kr-meal { background:#fff; border:1px solid #eee; border-radius:10px; padding:14px; }
.kr-meal h3 { margin: 0 0 8px; font-size: 1.05rem; }
.kr-meal .kr-items { margin:0; padding-left: 18px; }
.kr-meal .kr-meal-macros { margin-top:8px; font-size:.95rem; color:#555; }
/* Mealplan dichter an Ergebnis – ist bei Dir schon ✅ */

/* Shake-Box */
.kr-shake { margin-top: 28px; }
.kr-shake .kr-note { margin: 6px 0 14px; }
.kr-shake-cards { display: grid; gap: 12px; }
@media (min-width: 720px){ .kr-shake-cards{ grid-template-columns: repeat(3,1fr); } }

.kr-shake-card{
  border:1px solid #eee; border-radius:10px; padding:14px;
  background:#fff;
}
.kr-shake-card h4{ margin:0 0 6px; font-size:1.05rem; }
.kr-shake-card .kr-shake-macros{ margin:6px 0 0; font-size:.95rem; color:#444; }
.kr-mini{ font-size:.9rem; color:#666; margin-top:10px; }