/* Eiweiß-Wochenplan - vollständig im Browser, ohne externe Schriftarten. */
.protein-book-feature{background:#edf1df;border-block:1px solid #dce3ce}
.protein-book-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:65px;align-items:center;max-width:1020px}
.protein-book-visual{display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}
.protein-book-visual>a{display:block}
.protein-small-cover{width:166.4px;height:223.6px;background-size:1424.8px auto;background-position:-678.6px -136.5px;border-radius:2px}
.protein-book-cover{max-width:190px;max-height:300px;object-fit:contain;box-shadow:12px 15px 24px #344a3625}
.protein-book-visual>span{font-size:.85rem;line-height:1.5;color:#52694f}
.protein-book-copy h2{font-size:clamp(2.8rem,4.7vw,4.6rem)!important;margin-top:12px}
.protein-book-copy h2 em{color:#5a7648;font-weight:400}
.protein-book-copy>p{max-width:680px;color:#53604e;font-size:1.05rem}
.protein-feature-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:25px}
.protein-feature-actions .button{background:#426146}
.protein-feature-small{font-size:.8rem!important;margin-top:19px}
.protein-intro{padding-block:64px;background:linear-gradient(120deg,#faf7ef,#eaf0db)}
.protein-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:65px;align-items:center}
.protein-intro h1{font:400 clamp(2.9rem,5vw,4.7rem)/1.08 var(--serif);letter-spacing:-.04em;margin:20px 0}
.protein-intro h1 em{font-weight:400;color:#5a754b}
.protein-lead{font-size:1.14rem;max-width:730px;color:#52614e}
.protein-intro-note{padding:30px;background:#fffdf8;border:1px solid #dce3cf;border-radius:22px;text-align:center;box-shadow:0 16px 32px #4261460a}
.protein-note-number{display:block;font:400 5.5rem/1 var(--serif);color:#6b8056;margin-bottom:10px}
.protein-intro-note strong{display:block;font-size:1.13rem}
.protein-intro-note p{font-size:.87rem;color:#626d59}
.protein-intro-note>span:last-child{font-size:.8rem;color:#52694f}
.protein-workspace{padding-block:55px 80px}
.protein-form-panel{padding:32px 36px;background:white;border:1px solid #dedfce;border-radius:18px}
.protein-form-panel h2{font-size:2.65rem;margin:8px 0 14px}
.protein-form-panel>p{max-width:940px;color:#646858;font-size:.92rem}
.protein-fields{display:grid;grid-template-columns:1fr 1fr 1.65fr;gap:20px;margin-top:26px;align-items:start}
.protein-fields>div{min-width:0}
.protein-fields label{display:block;font-size:.9rem;font-weight:700;margin-bottom:7px}
.protein-fields input,.protein-fields select{display:block;width:100%;min-height:49px;font:inherit;border:1px solid #9fa98e;border-radius:9px;background:#fdfcf8;padding:11px 12px;color:#343b2d}
.protein-fields input:focus-visible,.protein-fields select:focus-visible,.protein-print-option input:focus-visible{outline:3px solid #5c7950;outline-offset:3px}
.protein-fields [aria-invalid="true"]{border-color:#ad3227}
.protein-fields small{display:block;font-size:.79rem;color:#636957;margin-top:7px}
#as-protein-training-field{grid-column:3}
.protein-field-help,.protein-factor-help{font-size:.84rem;color:#5e6654;margin:14px 0;line-height:1.55}
.protein-form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:24px}
.protein-form-actions button,.protein-print-tools button{border:0;cursor:pointer;background:#426146}
.protein-privacy{font-size:.78rem;max-width:360px;color:#677059;line-height:1.5}
.protein-error{padding:12px 15px;background:#fff0ea;color:#9c3327;border-left:3px solid #b44737;margin:20px 0 0;font-size:.92rem}
.protein-page [hidden]{display:none!important}
.protein-result{margin-top:50px;scroll-margin-top:28px}
.protein-result:focus{outline:0}
.protein-result-head{display:flex;align-items:center;justify-content:space-between;gap:26px}
.protein-result-head h2{font-size:2.7rem}
.protein-result-head p{color:#647059}
.protein-print-tools{display:flex;flex-direction:column;gap:12px;align-items:flex-start;flex-shrink:0}
.protein-print-option{display:flex;align-items:center;gap:8px;font-size:.83rem}
.protein-print-option input{width:17px;height:17px;accent-color:#426146}
.protein-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:23px 0 20px}
.protein-metric{background:#edf2e3;border:1px solid #d6dfc7;border-radius:13px;padding:20px}
.protein-metric strong{display:block;font:400 2.25rem/1.15 var(--serif);color:#3f603e}
.protein-metric span{display:block;font-size:.8rem;color:#556749;margin-top:9px}
.protein-plan-note{font-size:.88rem;color:#68705e;max-width:960px}
.protein-days{display:grid;gap:22px;margin-top:30px}
.protein-day{background:#fffefb;border:1px solid #dedfcf;border-radius:17px;overflow:hidden}
.protein-day-heading{background:#edf2e3;padding:16px 22px;display:flex;justify-content:space-between;gap:16px;align-items:center}
.protein-day-heading h3{margin:0;font:400 1.7rem var(--serif)}
.protein-day-heading p{margin:0;font-size:.87rem;color:#496240}
.protein-meals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.protein-meal{padding:22px 24px;min-width:0}
.protein-meal+.protein-meal{border-left:1px solid #ecebdc}
.protein-meal-type{color:#69775d;letter-spacing:.08em;font-size:.69rem;text-transform:uppercase;font-weight:800}
.protein-meal h4{font:400 1.5rem/1.2 var(--serif);margin:8px 0 10px}
.protein-meal strong.protein-meal-value{font-size:.84rem;color:#456b42}
.protein-meal ul{padding-left:18px;margin:12px 0 0;line-height:1.7;font-size:.85rem;color:#626858}
.protein-meal details{margin-top:14px;font-size:.84rem}
.protein-meal summary{cursor:pointer;color:#456642;font-weight:700}
.protein-meal ol{padding-left:19px;color:#626858;line-height:1.7}
.protein-extras{border-top:1px solid #ecebdc;padding:13px 23px;font-size:.85rem;color:#5d6751;background:#fffdf6}
.protein-extras strong{color:#465e3d}
.protein-shopping{padding:30px 32px;background:#eff2e5;border:1px solid #d9dfcc;border-radius:17px;margin-top:35px}
.protein-shopping h3{font:400 2.4rem var(--serif);margin:12px 0}
.protein-shopping>p{font-size:.87rem;color:#66735b}
.protein-shopping-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:22px 0}
.protein-shopping-group h4{font-size:.85rem;margin:0 0 12px;color:#45623e}
.protein-shopping-group ul{list-style:none;padding:0;margin:0}
.protein-shopping-group li{position:relative;padding:7px 0 7px 24px;font-size:.85rem;border-bottom:1px solid #dae1ce}
.protein-shopping-group li:before{content:"";position:absolute;left:0;top:12px;width:12px;height:12px;border:1px solid #718269;border-radius:2px}
.protein-method{margin-top:30px;padding:20px 24px;border:1px solid #dedfcf;border-radius:12px;background:#fffdfa;font-size:.86rem;color:#626a57}
.protein-method summary{font-size:.93rem;font-weight:700;cursor:pointer;color:#496540}
.protein-method ul{padding-left:20px;line-height:1.9}
.protein-method p{max-width:1030px}
@media(max-width:1100px){.protein-fields{grid-template-columns:1fr 1fr}.protein-fields>div:nth-child(3),#as-protein-training-field{grid-column:1/-1}.protein-result-head{align-items:start;flex-direction:column}.protein-book-grid{gap:40px}.protein-intro-grid{gap:30px;grid-template-columns:minmax(0,1fr) 260px}}
@media(max-width:760px){.protein-book-grid,.protein-intro-grid{grid-template-columns:1fr;gap:30px}.protein-book-copy{order:1}.protein-book-visual{order:2}.protein-book-copy h2{font-size:3rem!important}.protein-intro{padding-block:40px}.protein-intro-note{display:none}.protein-workspace{padding-top:30px}.protein-form-panel{padding:24px 20px}.protein-fields{gap:18px}.protein-form-actions{align-items:stretch;flex-direction:column}.protein-form-actions button{width:100%}.protein-metrics{gap:8px}.protein-metric{padding:13px 10px}.protein-metric strong{font-size:1.55rem}.protein-metric span{font-size:.7rem}.protein-meals{grid-template-columns:1fr}.protein-meal+.protein-meal{border-left:0;border-top:1px solid #ecebdc}.protein-meal{padding:19px 21px}.protein-result-head h2{font-size:2.35rem}.protein-day-heading{padding:15px 18px}.protein-day-heading p{font-size:.79rem}.protein-shopping{padding:24px 20px}.protein-shopping-grid{grid-template-columns:1fr}.protein-feature-actions{align-items:flex-start;flex-direction:column}}
@media(max-width:400px){.protein-fields{grid-template-columns:1fr}.protein-fields>div,#as-protein-training-field{grid-column:1}.protein-day-heading{align-items:start;flex-direction:column;gap:5px}.protein-metrics{grid-template-columns:1fr}.protein-metric{display:flex;gap:12px;align-items:center}.protein-metric span{margin-top:0}.protein-metric strong{font-size:1.5rem;min-width:90px}}

.protein-step-title{display:flex;align-items:center;gap:10px;font-size:1.1rem;margin:25px 0 13px}.protein-step-title>span{display:inline-grid;place-items:center;border-radius:50%;width:29px;height:29px;background:#edf2e3;color:#426146;font-size:.9rem}.protein-body-fields,.protein-goal-fields{grid-template-columns:1fr 1fr;margin-top:0}.protein-goal-fields #as-protein-training-field{grid-column:2}@media(max-width:760px){.protein-goal-fields{grid-template-columns:1fr}.protein-goal-fields #as-protein-training-field{grid-column:1}}

.protein-book-reference{padding:8px 10px;background:#f0f3e7;border-radius:7px;font-size:.78rem;line-height:1.5;color:#536747;margin:9px 0 12px}.protein-book-reference strong,.protein-book-reference span{display:block}.protein-book-reference span{font-size:.73rem;margin-top:2px}.protein-book-page-note{font-size:.88rem;color:#526b46;padding:13px 16px;background:#edf2e3;border-radius:9px}.protein-food-table-wrap{overflow-x:auto;margin:18px 0}.protein-food-values{width:100%;border-collapse:collapse;font-size:.83rem}.protein-food-values th,.protein-food-values td{padding:8px 12px;text-align:left;border-bottom:1px solid #dde3d1}.protein-food-values th{background:#eef2e5}.protein-food-values a{color:#416539}.protein-method h3{font-size:1.03rem;margin-top:24px}


/* Flexible Mahlzeitenwahl, Version 2.8.0. */
.protein-meal-count-field{grid-template-columns:minmax(160px,280px);margin-top:0}
.protein-meal-choice{min-width:0;border:0;padding:0;margin:20px 0 0}
.protein-meal-choice legend{font-size:.9rem;font-weight:700;margin-bottom:12px;padding:0}
.protein-meal-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.protein-meal-option{display:flex;align-items:flex-start;gap:10px;min-width:0;min-height:65px;padding:14px 12px;border:1px solid #c9d3be;border-radius:10px;background:#f7f9f2;cursor:pointer;font-size:.85rem;line-height:1.45}
.protein-meal-option input{flex:none;width:18px;height:18px;min-height:0;margin:2px 0 0;accent-color:#426146}
.protein-meal-option span{min-width:0;overflow-wrap:anywhere}.protein-meal-option small{display:block;color:#637258;font-size:.78rem}
.protein-meal-option:has(input:checked){background:#eaf1df;border-color:#6c875e}
.protein-meal-option input:focus-visible{outline:3px solid #5c7950;outline-offset:3px}
.protein-meal-choice[aria-invalid="true"]{outline:2px solid #ad3227;outline-offset:5px;border-radius:8px}
.protein-meals{grid-template-columns:repeat(var(--protein-meal-columns,3),minmax(0,1fr))}
.protein-meal:nth-child(3n+1){border-left:0}.protein-meal:nth-child(n+4){border-top:1px solid #ecebdc}
.protein-meal-additions{margin-top:13px;padding:10px 12px;background:#f0f4e8;border-radius:8px;font-size:.8rem;color:#536747}
.protein-meal-additions>strong{font-size:.78rem}.protein-meal-additions ul{margin:5px 0 0;padding-left:16px;font-size:.8rem}
@media(max-width:1000px){.protein-meal-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.protein-meals{grid-template-columns:1fr}.protein-meal+.protein-meal{border-left:0;border-top:1px solid #ecebdc}.protein-meal-options{grid-template-columns:repeat(2,minmax(0,1fr))}.protein-meal-count-field{grid-template-columns:1fr}.protein-meal-option{min-height:60px}}
@media(max-width:380px){.protein-meal-options{grid-template-columns:1fr}}

/* Optional calorie goal and clearer nutrient totals. */
.protein-body-fields{grid-template-columns:1fr 1fr 1.35fr}.protein-optional{font-weight:400;color:#637258}.protein-day-heading p{flex-shrink:0}.protein-meal-value{display:block;line-height:1.6}@media(max-width:900px){.protein-body-fields{grid-template-columns:1fr 1fr}.protein-body-fields>div:last-child{grid-column:1/-1}.protein-day-heading{align-items:start;flex-wrap:wrap}}@media(max-width:500px){.protein-body-fields{grid-template-columns:1fr}.protein-body-fields>div:last-child{grid-column:1}.protein-metrics{grid-template-columns:1fr 1fr}.protein-metric{display:block}.protein-metric strong{font-size:1.4rem;min-width:0}.protein-metric span{font-size:.73rem;margin-top:9px}}@media(max-width:380px){.protein-metrics{grid-template-columns:1fr}}
