/* 12kochen shopping print: screen preview and A4 paper share one document. */
body.kk-print-preview { background:#e8ede9!important; }
body.kk-print-preview > :not(#kochen-print-root) { display:none!important; }
#kochen-print-root { display:block; color:#193c32; font:10pt/1.45 Arial,Helvetica,sans-serif; text-align:left; }
#kochen-print-root, #kochen-print-root * { box-sizing:border-box; }
#kochen-print-root h1, #kochen-print-root h2, #kochen-print-root h3, #kochen-print-root p { margin:0; }
#kochen-print-root a { color:inherit; text-decoration:none; }
#kochen-print-root .kkp-toolbar { max-width:210mm; margin:0 auto; padding:20px 12px; display:flex; flex-wrap:wrap; gap:12px; align-items:center; justify-content:space-between; }
#kochen-print-root .kkp-toolbar button { border:1px solid #173c32; border-radius:9px; padding:12px 18px; font:700 14px/1.3 Arial,sans-serif; cursor:pointer; }
#kochen-print-root .kkp-back { background:white; color:#173c32; }
#kochen-print-root .kkp-print { background:#173c32; color:white; }
#kochen-print-root :focus-visible { outline:3px solid #6b8234; outline-offset:4px; }
#kochen-print-root .kkp-screen-hint { width:100%; color:#52635a; font-size:12px; line-height:1.5; }
#kochen-print-root .kkp-sheet { width:210mm; min-height:297mm; margin:0 auto 24px; padding:13mm 12mm; background:#fff; box-shadow:0 4px 24px #173c3212; }
#kochen-print-root .kkp-brand-row { display:flex; align-items:baseline; justify-content:space-between; padding-bottom:3mm; border-bottom:0.5mm solid #193c32; margin-bottom:4mm; gap:5mm; }
#kochen-print-root .kkp-brand { font-size:23pt; font-weight:800; letter-spacing:-1.2pt; line-height:1; }
#kochen-print-root .kkp-tagline { font-size:8pt; color:#5c6b64; }
#kochen-print-root .kkp-eyebrow { font-size:8pt; letter-spacing:1.1pt; text-transform:uppercase; margin-bottom:1.5mm; color:#5c6b64; }
#kochen-print-root h1 { font-size:26pt; line-height:1.1; letter-spacing:-0.8pt; font-weight:750; margin-bottom:4mm; }
#kochen-print-root .kkp-meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap:2mm; font-size:9pt; border-top:0.25mm solid #cad3cc; border-bottom:0.25mm solid #cad3cc; padding:2.5mm 0; margin-bottom:3mm; }
#kochen-print-root .kkp-section-title { font-size:10pt; font-weight:700; margin:3mm 0 2mm; break-after:avoid; }
#kochen-print-root .kkp-items { columns:2; column-gap:8mm; padding:0; margin:0; list-style:none; }
#kochen-print-root .kkp-item { display:flex; align-items:flex-start; gap:2mm; padding:0.7mm 0; border-bottom:0.2mm solid #e0e5e0; break-inside:avoid; page-break-inside:avoid; font-size:9.5pt; line-height:1.3; }
#kochen-print-root .kkp-check { display:inline-block; flex:0 0 3.5mm; width:3.5mm; height:3.5mm; border:0.25mm solid #66756b; border-radius:0.45mm; font-size:9pt; line-height:3mm; text-align:center; position:relative; top:0.2mm; }
#kochen-print-root .kkp-item-name { flex:1 1 auto; min-width:0; overflow-wrap:anywhere; }
#kochen-print-root .kkp-amount { font-size:9pt; font-weight:700; text-align:right; flex:0 0 auto; max-width:42%; overflow-wrap:normal; }
#kochen-print-root .kkp-item.is-done { color:#718078; }
#kochen-print-root .is-done .kkp-item-name { text-decoration:line-through; }
#kochen-print-root .kkp-notes { break-inside:avoid; margin-top:3mm; }
#kochen-print-root .kkp-writing-line { border-bottom:0.2mm solid #d7dfd8; height:6mm; }
#kochen-print-root .kkp-tip { border-left:0.7mm solid #8b9b7b; padding:2mm 0 2mm 3mm; margin-top:3mm; font-size:8pt; break-inside:avoid; }
#kochen-print-root .kkp-tip p { margin-top:1mm; color:#56665b; }
#kochen-print-root .kkp-footer { font-size:8pt; line-height:1.45; color:#59675e; margin-top:3mm; padding-top:2mm; border-top:0.25mm solid #cad3cc; break-inside:avoid; }
#kochen-print-root .kkp-week { width:100%; border-collapse:collapse; font-size:9pt; margin:0; }
#kochen-print-root .kkp-week th, #kochen-print-root .kkp-week td { padding:1.8mm 2mm; border-bottom:0.2mm solid #dce3dc; text-align:left; vertical-align:top; }
#kochen-print-root .kkp-week thead th { font-size:8pt; text-transform:uppercase; letter-spacing:0.35pt; color:#52665a; border-bottom:0.35mm solid #8b9b7b; }
#kochen-print-root .kkp-week tbody th { width:24mm; font-weight:700; padding-left:0; }
#kochen-print-root .kkp-week td:last-child, #kochen-print-root .kkp-week thead th:last-child { width:19mm; text-align:right; padding-right:0; }
#kochen-print-root .kkp-week tr { break-inside:avoid; }
#kochen-print-root .kkp-recipe-number { display:inline-block; font-size:8pt; font-weight:700; min-width:7mm; color:#657955; }
#kochen-print-root .kkp-open { color:#859087; font-style:italic; }
#kochen-print-root .kkp-qr-title { font-size:17pt; letter-spacing:-0.25pt; line-height:1.2; margin-top:7mm; break-after:avoid; }
#kochen-print-root .kkp-qr-intro { font-size:8pt; color:#59675e; margin:1.5mm 0 4mm; break-after:avoid; }
#kochen-print-root .kkp-recipes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:3mm; }
#kochen-print-root .kkp-recipe { display:flex; justify-content:space-between; align-items:center; gap:2mm; padding:3mm; border:0.25mm solid #c9d3ca; border-radius:2mm; min-height:42mm; break-inside:avoid; page-break-inside:avoid; }
#kochen-print-root .kkp-recipe-copy { flex:1 1 auto; min-width:0; }
#kochen-print-root .kkp-recipe-meta { font-size:7pt; font-weight:700; color:#637650; margin-bottom:1.5mm; }
#kochen-print-root .kkp-recipe h3 { font-size:10pt; font-weight:700; line-height:1.28; overflow-wrap:anywhere; }
#kochen-print-root .kkp-planned { font-size:7.5pt; line-height:1.35; margin-top:1.8mm; color:#59675e; }
#kochen-print-root .kkp-qr-link { display:block; flex:0 0 32mm; width:32mm; text-align:center; font-size:6.5pt; line-height:1.1; }
#kochen-print-root .kkp-qr { width:32mm; height:32mm; display:block; background:#fff; }
#kochen-print-root .kkp-qr-link > span { display:block; margin-top:0.5mm; }
#kochen-print-root .kkp-empty { font-size:10pt; color:#59675e; padding:4mm 0; }
#kochen-print-root .kkp-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
@media screen and (max-width:820px) {
 #kochen-print-root .kkp-sheet { width:calc(100% - 24px); min-height:0; padding:24px 20px; margin-bottom:18px; }
 #kochen-print-root .kkp-brand-row { gap:12px; }
 #kochen-print-root .kkp-tagline { font-size:9px; text-align:right; max-width:90px; }
 #kochen-print-root h1 { font-size:29px; }
 #kochen-print-root .kkp-items { columns:1; }
 #kochen-print-root .kkp-recipes { grid-template-columns:1fr; }
 #kochen-print-root .kkp-toolbar { padding:16px 12px; }
 #kochen-print-root .kkp-toolbar button { flex:1 1 auto; }
 #kochen-print-root .kkp-week { font-size:11px; }
 #kochen-print-root .kkp-week thead th { font-size:9px; letter-spacing:0; }
 #kochen-print-root .kkp-week tbody th { width:auto; }
 #kochen-print-root .kkp-week td, #kochen-print-root .kkp-week th { padding:8px 4px; overflow-wrap:anywhere; }
}
@page kochen-list { size:A4 portrait; margin:13mm 12mm; }
@media print {
 body.kk-printing { margin:0!important; padding:0!important; background:#fff!important; }
 body.kk-printing > :not(#kochen-print-root) { display:none!important; }
 body.kk-printing #kochen-print-root { display:block!important; width:auto!important; margin:0!important; padding:0!important; page:kochen-list; color:#193c32!important; }
 #kochen-print-root .kkp-toolbar { display:none!important; }
 #kochen-print-root .kkp-sheet { width:auto; min-height:0; margin:0; padding:0; box-shadow:none; }
 #kochen-print-root .kkp-recipe-sheet { break-before:page; page-break-before:always; }
 #kochen-print-root .kkp-qr { print-color-adjust:exact; -webkit-print-color-adjust:exact; }
 #kochen-print-root a { color:inherit!important; }
 #kochen-print-root a::after { content:none!important; }
}
