:root{--recipe-primary:#315943;--recipe-ink:#26372d;--recipe-muted:#6e7b70;--recipe-stroke:#dde5db;--recipe-paper:#fff;--recipe-soft:#f2f5f0}
*{box-sizing:border-box}
html,body{padding:0;margin:0}
body{background:#eef0eb;color:var(--recipe-ink);font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.print-toolbar{max-width:900px;margin:22px auto;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.toolbar-title{font-weight:750;color:#334b3b}.toolbar-buttons{display:flex;gap:8px;flex-wrap:wrap}
.print-toolbar button,.print-toolbar a{font-family:inherit;font-size:13px;line-height:1.1;font-weight:700;text-decoration:none;border:1px solid #c5d4c6;border-radius:8px;padding:11px 16px;cursor:pointer;background:white;color:#294331}
.print-toolbar button,.print-toolbar .toolbar-download{background:var(--recipe-primary);border-color:var(--recipe-primary);color:white}
.recipe-sheet{background:var(--recipe-paper);max-width:794px;min-height:1050px;margin:0 auto 45px;padding:45px 54px 35px;box-shadow:0 16px 48px #233c291c}
.recipe-brand{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--recipe-stroke);padding-bottom:15px}
.recipe-brand-name{font-weight:800;color:var(--recipe-primary);font-size:14px;letter-spacing:.05em}.recipe-logo{display:block;max-height:43px;max-width:200px;object-fit:contain;object-position:left}
.recipe-brand-label{font-size:10px;letter-spacing:.14em;color:#89998c;font-weight:750;white-space:nowrap}
.recipe-heading{margin-top:31px}.recipe-eyebrow{font-size:10px;font-weight:800;letter-spacing:.2em;color:var(--recipe-primary)}
h1{font-size:36px;letter-spacing:-.035em;line-height:1.15;margin:9px 0 12px;font-weight:800}
.recipe-summary{color:var(--recipe-muted);line-height:1.7;margin:0 0 22px;font-size:14px}
.recipe-image{margin:21px 0 18px;border-radius:10px;overflow:hidden;max-height:255px}.recipe-image img{width:100%;max-height:255px;object-fit:cover;display:block}
.recipe-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:26px 0 36px}
.recipe-fact{background:var(--recipe-soft);padding:12px 8px;text-align:center;border-radius:8px;break-inside:avoid}
.recipe-fact span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--recipe-muted);font-weight:750}
.recipe-fact strong{display:block;font-size:14px;color:var(--recipe-primary);margin-top:2px}
.recipe-section{margin:0 0 30px;break-inside:auto}.section-head{display:flex;align-items:baseline;gap:13px;border-bottom:1px solid var(--recipe-stroke);padding-bottom:10px;margin-bottom:17px;break-after:avoid}
.section-head>span{font-size:12px;font-weight:800;color:#88a68e}.section-head h2{margin:0;font-size:22px;line-height:1.25;letter-spacing:-.02em;color:var(--recipe-primary)}
.ingredient-group{margin:0 0 16px;break-inside:avoid-page}.ingredient-group h3{margin:0 0 9px;font-size:13px;color:#3c5544}
.ingredient-list,.recipe-method ol,.recipe-tips ul{list-style:none;margin:0;padding:0}
.ingredient-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:27px;row-gap:8px}
.ingredient-list li{display:flex;align-items:start;gap:9px;font-size:13px;line-height:1.45;break-inside:avoid}
.ingredient-list i{display:block;margin-top:3px;width:12px;height:12px;border:1px solid #a7b5aa;border-radius:3px;flex-shrink:0}
.method-step{display:flex;gap:12px;align-items:start;margin-bottom:18px;break-inside:avoid-page}.method-number{min-width:32px;height:32px;border-radius:50%;background:#e7eee3;display:grid;place-items:center;color:var(--recipe-primary);font-size:12px;font-weight:800;flex-shrink:0}
.method-step h3{margin:1px 0 3px;font-size:14px;color:var(--recipe-ink)}.method-copy{font-size:13px;color:#4c5d51;line-height:1.6}.method-copy p{margin:0 0 5px}.method-copy p:last-child{margin-bottom:0}
.recipe-tips ul{padding:13px 20px;border-left:3px solid #b4d0b1;background:#f5f7f2}.recipe-tips li{font-size:13px;line-height:1.6;margin:0 0 7px;break-inside:avoid}.recipe-tips li:last-child{margin-bottom:0}
.nutrition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.nutrition-grid>div{background:#f7f8f6;border:1px solid var(--recipe-stroke);border-radius:6px;padding:9px 11px;break-inside:avoid}.nutrition-grid span{display:block;color:var(--recipe-muted);font-size:10px}.nutrition-grid strong{font-size:13px}
.recipe-footer{border-top:1px solid var(--recipe-stroke);padding-top:13px;margin-top:28px;display:flex;justify-content:space-between;gap:12px;color:#799083;font-size:10px}
.empty-notice{color:var(--recipe-muted);font-style:italic}
@page{size:A4;margin:14mm 15mm}
@media(max-width:820px){.print-toolbar{margin:12px 15px}.recipe-sheet{margin:0 12px 20px;min-height:0;padding:26px 25px}h1{font-size:30px}}
@media(max-width:480px){.recipe-sheet{padding:21px 18px}.recipe-brand-label{font-size:8px}.recipe-facts{grid-template-columns:repeat(2,1fr)}.ingredient-list{grid-template-columns:1fr}.nutrition-grid{grid-template-columns:repeat(2,1fr)}}
@media print{
 html,body{background:white!important;color:#213a2b!important}
 .print-toolbar{display:none!important}
 .recipe-sheet{max-width:none;min-height:0;margin:0;padding:0;box-shadow:none}
 .recipe-image,.recipe-facts,.recipe-brand,.recipe-section,.recipe-footer{-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .recipe-brand{break-after:avoid}
 .recipe-heading{break-after:avoid}
 h1{font-size:30px}
 .recipe-image{max-height:190px;margin:14px 0 12px}.recipe-image img{max-height:190px}
 .recipe-facts{margin:18px 0 24px}
 .recipe-section{margin-bottom:25px}
 .recipe-footer{break-inside:avoid}
}

/* Phase 4: compact option, language shaping and predictable multi-page printing. */
.print-pdf-guidance{max-width:900px;margin:22px auto 0;padding:12px 17px;background:#eaf3e8;border:1px solid #abc7a7;color:#214329;border-radius:10px;display:flex;gap:8px;flex-wrap:wrap;font-size:13px}
.recipe-sheet--compact{padding-top:26px;padding-bottom:24px}
.recipe-sheet--compact .recipe-heading{margin-top:18px}
.recipe-sheet--compact .recipe-facts{margin:13px 0 19px}
.recipe-sheet--compact .recipe-section{margin-bottom:15px}
.recipe-sheet--compact .ingredient-group{margin-bottom:9px}
.recipe-sheet--compact .method-step{margin-bottom:10px}
.recipe-sheet--compact .recipe-image img{max-height:180px}
.recipe-sheet{overflow-wrap:anywhere;word-wrap:break-word}
.recipe-section .section-head,.recipe-section h3{break-after:avoid-page;page-break-after:avoid}
.ingredient-group{break-inside:auto;page-break-inside:auto}
.ingredient-list li,.nutrition-grid>div{break-inside:avoid-page;page-break-inside:avoid}
.method-step{break-inside:auto;page-break-inside:auto}
.method-step .method-number{break-after:avoid-page}
.method-step .method-copy p{orphans:3;widows:3}
@media(max-width:950px){.print-pdf-guidance{margin-left:15px;margin-right:15px}}
@media print{
 .print-pdf-guidance{display:none!important}
 .recipe-sheet--compact{padding:0}
 .recipe-sheet--compact .recipe-image img{max-height:135px}
 .recipe-sheet--compact .recipe-facts{margin:12px 0 15px}
 .recipe-sheet--compact .recipe-section{margin-bottom:14px}
 .recipe-sheet--compact .recipe-heading{margin-top:13px}
 .recipe-brand,.recipe-heading,.recipe-section .section-head{break-inside:avoid-page;page-break-inside:avoid}
 .recipe-method ol{margin:0}
}
